Add native target for FreeBSD/riscv.
[external/binutils.git] / gdb / ChangeLog
1 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2
3         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
4         * NEWS: Mention new FreeBSD/riscv native configuration.
5         * configure.host: Add riscv*-*-freebsd*.
6         * configure.nat: Likewise.
7         * riscv-fbsd-nat.c: New file.
8
9 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
10
11         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
12         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
13         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
14         * NEWS: Mention new FreeBSD/riscv target.
15         * configure.tgt: Add riscv*-*-freebsd*.
16         * riscv-fbsd-tdep.c: New file.
17         * riscv-fbsd-tdep.h: New file.
18
19 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
20
21         * regcache.h (struct regcache_map_entry): Note that this type can
22         be used with traditional frame caches.
23         * trad-frame.c (trad_frame_set_reg_regmap): New.
24         * trad-frame.h (trad_frame_set_reg_regmap): New.
25
26 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
27
28         PR c++/16841
29         * valops.c (get_virtual_base_offset): New function.
30         (value_struct_elt_for_reference): Use it to get virtual base offset
31         and add it in calculating class member address.
32
33 2018-10-08   John Darrington <john@darrington.wattle.id.au>
34
35     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
36       (check_producer): Check if the producer is codewarrior.
37       (producer_is_codewarrior): New function.
38       (lnp_state_machine::record_line): Ignore is_stmt flag for records
39        produced by codewarrior.
40       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
41
42 2018-10-06  Tom Tromey  <tom@tromey.com>
43
44         PR python/19399:
45         * python/py-inferior.c: Add "architecture" entry.
46         (infpy_architecture): New function.
47
48 2018-10-06  Tom Tromey  <tom@tromey.com>
49
50         PR python/21765:
51         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
52         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
53         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
54         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
55
56 2018-10-06  Tom Tromey  <tom@tromey.com>
57
58         PR build/17077:
59         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
60         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
61         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
62         #include.
63
64 2018-10-06  Tom Tromey  <tom@tromey.com>
65
66         * python/py-breakpoint.c (bppy_get_location): Handle a
67         bp_breakpoint without a location.
68
69 2018-10-06  Tom Tromey  <tom@tromey.com>
70
71         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
72         (_RegEx): Reformat help text.
73         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
74         (AnyCallerIs, AnyCallerMatches): Reformat help text.
75         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
76         text.
77         * python/lib/gdb/command/xmethods.py (InfoXMethod)
78         (EnableXMethod, DisableXMethod): Remove help indentation.
79         Capitalize meta-syntactic variables.
80         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
81         (EnableUnwinder, DisableUnwinder): Remove help indentation.
82         Capitalize meta-syntactic variables.
83         * python/lib/gdb/command/explore.py (ExploreCommand)
84         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
85         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
86         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
87         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
88         Remove help indentation.
89         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
90         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
91         (DisableFrameFilter, SetFrameFilterPriority)
92         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
93
94 2018-10-06  Tom Tromey  <tom@tromey.com>
95
96         PR tui/28819:
97         * tui/tui-io.c (gdb_wgetch): New function.
98         (tui_mld_getc, tui_getc): Use it.
99
100 2018-10-05  Tom Tromey  <tom@tromey.com>
101
102         * sol-thread.c (sol_thread_target::wait): Rename inner
103         "save_ptid".
104
105 2018-10-04  Tom Tromey  <tom@tromey.com>
106
107         * configure: Rebuild.
108         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
109
110 2018-10-04  Tom Tromey  <tom@tromey.com>
111
112         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
113         declaration of "block".
114
115 2018-10-04  Tom Tromey  <tom@tromey.com>
116
117         * common/filestuff.c (fdwalk): Remove inner declaration of
118         "result".
119
120 2018-10-04  Tom Tromey  <tom@tromey.com>
121
122         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
123         "structs_addr" and hoist declaration.
124
125 2018-10-04  Tom Tromey  <tom@tromey.com>
126
127         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
128         variable "size".
129
130 2018-10-04  Tom Tromey  <tom@tromey.com>
131
132         * mdebugread.c (parse_partial_symbols): Use std::string.
133
134 2018-10-04  Tom Tromey  <tom@tromey.com>
135
136         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
137         * p-valprint.c (pascal_val_print): Split inner "i" variable.
138         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
139         header.
140         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
141         more inner scope.
142         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
143         * varobj.c (varobj_update): Rename inner "newobj",
144         "type_changed".
145         * valprint.c (generic_emit_char): Rename inner "buf".
146         * valops.c (find_overload_match): Rename inner "temp".
147         (value_struct_elt_for_reference): Declare "v" in more inner
148         scope.
149         * v850-tdep.c (v850_push_dummy_call): Rename "len".
150         * unittests/array-view-selftests.c (run_tests): Rename inner
151         "vec".
152         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
153         header.
154         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
155         "tsv" in more inner scope.
156         (print_one_static_tracepoint_marker): Rename inner
157         "tuple_emitter".
158         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
159         (tic6x_push_dummy_call): Don't redeclare "addr".
160         * target-float.c: Declare "dto" lower.
161         * symtab.c (lookup_local_symbol): Rename inner "sym".
162         (find_pc_sect_line): Rename inner "pc".
163         * stack.c (print_frame): Don't redeclare "gdbarch".
164         (return_command): Rename inner "gdbarch".
165         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
166         "sp".
167         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
168         header.
169         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
170         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
171         scope.
172         * remote.c (remote_target::update_thread_list): Don't redeclare
173         "tp".
174         (remote_target::process_initial_stop_replies): Rename inner
175         "thread".
176         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
177         (remote_target::wait_as): Don't redeclare "stop_reply".
178         (remote_target::get_thread_local_address): Rename inner
179         "result".
180         (remote_target::get_tib_address): Likewise.
181
182         * regcache.c (cooked_read_test): Rename "regnum".
183         * record-btrace.c (cmd_record_btrace_start): Rename inner
184         "exception".
185         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
186         loop header.
187         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
188         header.
189         (ppu2spu_sniffer): Rename inner "buf".
190         * parse.c (operator_check_standard): Rename inner "type",
191         "objfile".
192         * p-valprint.c (pascal_val_print): Introduce new scope for
193         "low_bound", "high_bound".
194         * p-exp.y (yylex): Declare "i" in loop header.
195         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
196         Lower declaration of "s".
197         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
198         header.
199         (nios2_push_dummy_call): Rename "len".
200         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
201         "buf".
202         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
203         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
204         (linux_xfer_osdata_modules): Likewise.
205         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
206         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
207         (mips_o64_push_dummy_call): Likewise.
208         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
209         "op".
210         * mi/mi-main.c (list_available_thread_groups): Rename inner
211         "tuple_emitter".
212         (mi_cmd_data_read_memory): Rename inner "opts".
213         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
214         "tuple_emitter".
215         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
216         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
217         more inner scope.
218         (parse_partial_symbols): Rename inner "pst", "p", "name"
219         * main.c (captured_main_1): Rename inner "i"s.
220         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
221         "oso2".
222         * linux-tdep.c (linux_info_proc): Rename inner "filename".
223         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
224         * infrun.c (handle_no_resumed): Don't redeclare "thread".
225         (handle_signal_stop): Rename inner "gdbarch".
226         (handle_command): Declare "signum" in loop header.
227         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
228         "status".
229         (examine_prologue): Rename inner "sol" and "sof".
230         (ia64_extract_return_value): Rename inner "val".  Declare another
231         "val" in a more inner scope.
232         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
233         inner scope.
234         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
235         "except".
236         * findvar.c (default_read_var_value): Don't redeclare "addr".
237         * f-exp.y (yylex): Declare "i" in loop header.
238         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
239         Rename inner "type", "expect_type".
240         (evaluate_subexp_for_sizeof): Rename inner "pc".
241         * elfread.c (elf_symfile_read): Rename inner "abfd".
242         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
243         "bytes_read".
244         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
245         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
246         (dwarf_decode_line_header): Rename inner "lh".
247         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
248         "offset".  Declare "i" in loop header.
249         (disassemble_dwarf_expression): Rename inner "addr_size".
250         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
251         inner "result".
252         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
253         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
254         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
255         "inner_list_emitter".
256         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
257         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
258         declaration in a block.
259         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
260         * cp-valprint.c (cp_print_value_fields): Don't redeclare
261         "obstack_final_size".
262         * cp-support.c (inspect_type): Declare "i" in loop header.
263         * compile/compile.c (compile_instance::insert_symbol_error):
264         Rename inner "e".
265         * common/agent.c (agent_run_command): Remove inner "ret"
266         declaration.
267         * coffread.c (coff_symfile_read): Rename inner "name".
268         (coff_symfile_read): Rename inner "abfd".
269         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
270         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
271         "high".
272         * c-exp.y (lex_one_token): Move "len" declaration lower.
273         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
274         "gdbarch".
275         (create_exception_master_breakpoint): Likewise.  Don't redeclare
276         "b".
277         (watch_command_1): Declare "mark" later.
278         (clear_command): Don't shadow "a" or "b".
279         (delete_command): Rename inner "b".
280         (delete_trace_command): Likewise.
281         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
282         "op".
283         (arm_gdbarch_init): Remove inner "e_flags".
284         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
285         "offset" in inner blocks.
286
287 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
288
289         * dwarf-index-write.c (file_write): Don't write if the vector is
290         empty.
291
292 2018-10-05  Tom de Vries  <tdevries@suse.de>
293
294         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
295         PyArg_ParseTuple call.
296
297 2018-10-05  Tom de Vries  <tdevries@suse.de>
298
299         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
300         PyArg_ParseTuple call.
301
302 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
303
304         * psymtab.c (recursively_search_psymtabs): Reformat parameters
305         to avoid exceeding 80 characters per line limit.
306
307 2018-10-04  Tom Tromey  <tom@tromey.com>
308
309         * symfile.c (syms_from_objfile_1, finish_new_objfile)
310         (reread_symbols): Update.
311         * complaints.h (clear_complaints): Remove argument.
312         * complaints.c (enum complaint_series): Remove.
313         (series): Remove global.
314         (complaint_internal): Update.
315         (clear_complaints): Remove argument.
316
317 2018-10-04  Tom Tromey  <tom@tromey.com>
318
319         * symfile.c (symbol_file_add_with_addrs): Do not print "no
320         debugging symbols" message if there is a separate debug objfile.
321
322 2018-10-04  Tom Tromey  <tom@tromey.com>
323
324         PR cli/19551:
325         * symfile.c (symbol_file_add_with_addrs): Update output.
326         * psymtab.c (require_partial_symbols): Update output.
327
328 2018-10-04  Tom Tromey  <tom@tromey.com>
329
330         PR cli/22234:
331         * complaints.c: Emit \n.
332
333 2018-10-04  Tom Tromey  <tom@tromey.com>
334
335         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
336         (separate_debug_file_exists, find_separate_debug_file)
337         (add_symbol_file_command, reread_symbols, allocate_symtab)
338         (allocate_compunit_symtab): Use filtered printing, not
339         unfiltered.
340         * psymtab.c (require_partial_symbols, dump_psymtab)
341         (allocate_psymtab): Use filtered printing, not unfiltered.
342
343 2018-10-04  Tom Tromey  <tom@tromey.com>
344
345         * complaints.c (complaint_internal): Correctly check complaint
346         count.
347
348 2018-10-04  Tom Tromey  <tom@tromey.com>
349
350         * complaints.h (struct complaints): Remove declaration.
351         * complaints.c (clear_complaints): Remove an unused variable.
352
353 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
354
355         * MAINTAINERS (Write After Approval): Add self.
356
357 2018-10-03  Tom Tromey  <tom@tromey.com>
358
359         * guile/scm-value.c (gdbscm_value_to_string): Initialize
360         "buffer_contents".
361         * coffread.c (coff_symtab_read): Initialize "newobj".
362
363 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
364
365         * dwarf2read.c (read_func_scope): Remove struct keyword in
366         range-based for.
367
368 2018-10-03  Tom Tromey  <tom@tromey.com>
369
370         * README: Mention --enable-ubsan.
371         * NEWS: Mention --enable-ubsan.
372         * acinclude.m4: Include sanitize.m4.
373         * configure: Rebuild.
374         * configure.ac: Call AM_GDB_UBSAN.
375         * sanitize.m4: New file.
376
377 2018-10-03  Tom Tromey  <tom@tromey.com>
378
379         * expression.h (enum exp_opcode): Use uint8_t as base type.
380         * expprint.c (op_name): Handle invalid opcodes.
381
382 2018-10-03  Tom Tromey  <tom@tromey.com>
383
384         * parse.c (prefixify_expression): Add assert.
385         (parse_exp_in_context_1): Throw exception if the expression is
386         empty.
387
388 2018-10-03  Tom Tromey  <tom@tromey.com>
389
390         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
391
392 2018-10-03  Tom Tromey  <tom@tromey.com>
393
394         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
395
396 2018-10-03  Tom Tromey  <tom@tromey.com>
397
398         * dwarf2read.c (read_subrange_type): Make "negative_mask"
399         unsigned.
400
401 2018-10-03  Tom Tromey  <tom@tromey.com>
402
403         * findvar.c (extract_integer): Do work in an unsigned type.
404
405 2018-10-03  Tom Tromey  <tom@tromey.com>
406
407         * common/enum-flags.h (enum_flags::operator~): Add static assert.
408         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
409         base type.
410         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
411         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
412         type.
413         * c-lang.h (enum c_string_type_values): Use unsigned as base
414         type.
415         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
416
417 2018-10-03  Tom Tromey  <tom@tromey.com>
418
419         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
420         <~dwarf2_frame_state_reg_info>: Update.
421         <dwarf2_frame_state_reg_info>: Update.
422         <alloc_regs>: Add assertion.  Update.
423         <reg>: Now a std::vector.
424         <num_regs>: Remove.
425         <swap>: Update.
426         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
427         (execute_cfa_program_test, dwarf2_frame_cache): Update.
428
429 2018-10-03  Tom Tromey  <tom@tromey.com>
430
431         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
432
433 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
434
435         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
436
437 2018-10-02  Tom Tromey  <tom@tromey.com>
438
439         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
440
441 2018-10-02  John Darrington <john@darrington.wattle.id.au>
442
443         * NEWS: Mention changed commands.
444         * ser-uds.c: New file.
445         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
446         * configure: Regenerate.
447         * Makefile.in: Add new file.
448         * serial.c (serial_open): Check if filename is a socket
449           and lookup the appropriate interface accordingly.
450
451 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
452
453         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
454         define.
455         (AARCH64_EXTRA_MAGIC): Likewise.
456         (AARCH64_FPSIMD_MAGIC): Likewise.
457         (AARCH64_SVE_MAGIC): Likewise.
458         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
459         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
460         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
461         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
462         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
463         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
464         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
465         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
466         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
467         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
468         (read_aarch64_ctx): Add function.
469         (aarch64_linux_sigframe_init): Detect FP registers.
470
471 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
472
473         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
474         (AARCH64_D0_REGNUM): Likewise.
475         (AARCH64_S0_REGNUM): Likewise.
476         (AARCH64_H0_REGNUM): Likewise.
477         (AARCH64_B0_REGNUM): Likewise.
478         (AARCH64_SVE_V0_REGNUM): Likewise.
479         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
480         (AARCH64_D0_REGNUM): Likewise.
481         (AARCH64_S0_REGNUM): Likewise.
482         (AARCH64_H0_REGNUM): Likewise.
483         (AARCH64_B0_REGNUM): Likewise.
484         (AARCH64_SVE_V0_REGNUM): Likewise.
485
486 2018-10-01  Gary Benson <gbenson@redhat.com>
487
488         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
489         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
490         prfpregset_t instead of gdb_prfpregset_t.
491         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
492         * configure, config.in: Rebuild.
493
494 2018-10-01  Gary Benson <gbenson@redhat.com>
495
496         * common/gdb_proc_service.h: New file, factored out from...
497         * gdb_proc_service.h: Moved common code to the above file.
498         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
499
500 2018-10-01  Gary Benson <gbenson@redhat.com>
501
502         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
503         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
504
505 2018-10-01  Gary Benson <gbenson@redhat.com>
506
507         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
508         (AC_CHECK_HEADERS): Check for linux/elf.h.
509         * configure, config.in: Rebuild.
510         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
511         doesn't define elf_fpregset_t.
512
513 2018-10-01  Gary Benson <gbenson@redhat.com>
514
515         * gdb_proc_service.h: Whitespace change.
516
517 2018-10-01  Tom Tromey  <tom@tromey.com>
518
519         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
520         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
521         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
522
523 2018-10-01  Tom Tromey  <tom@tromey.com>
524
525         * README: Minor change.
526
527 2018-09-30  Pedro Alves  <palves@redhat.com>
528
529         * darwin-nat-info.c (darwin_debug_regions_recurse)
530         (info_mach_exceptions_command): Remove unused local variables.
531         * darwin-nat.c (darwin_decode_notify_message)
532         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
533         (darwin_stop_inferior, darwin_setup_exceptions)
534         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
535         (darwin_nat_target::attach, darwin_nat_target::detach)
536         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
537         local variables.
538         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
539         variables.
540
541 2018-09-29  Tom Tromey  <tom@tromey.com>
542
543         * README: Remove some leftover text.
544
545 2018-09-29  Tom Tromey  <tom@tromey.com>
546
547         * PROBLEMS: Rewrite.
548         * README: Update.
549
550 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
551
552         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
553         case with explicit breakpoint kind.
554         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
555         'additional_info' and related logic.
556         (riscv_debug_breakpoints): New variable.
557         (riscv_breakpoint_kind_from_pc): Use the length of the existing
558         instruction to determine the breakpoint kind.
559         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
560         flag.  Update description of 'set/show riscv
561         use-compressed-breakpoints' flag.
562
563 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
564
565         (NEWS): Mention changes to frame related commands.
566         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
567         (add_prefix_cmd_suppress_notification): New function.
568         (add_com_suppress_notification): Call
569         add_cmd_suppress_notification.
570         * command.h (add_cmd_suppress_notification): Declare.
571         (add_prefix_cmd_suppress_notification): Declare.
572         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
573         (parse_frame_specification): Moved from stack.c, with
574         simplification to handle a single argument.
575         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
576         switch to the selected frame.  Add a header comment.
577         * stack.c: Remove 'safe-ctype.h' include.
578         (find_frame_for_function): Add declaration.
579         (find_frame_for_address): New function.
580         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
581         (frame_selection_by_function_completer): New function.
582         (info_frame_command): Rename to...
583         (info_frame_command_core): ...this, and update parameter types.
584         (select_frame_command): Rename to...
585         (select_frame_command_core): ...this, and update parameter types.
586         (frame_command): Rename to...
587         (frame_command_core): ...this, and update parameter types.
588         (class frame_command_helper): New class to wrap implementations of
589         frame related sub-commands.
590         (frame_apply_cmd_list): New static global.
591         (frame_cmd_list): Make static.
592         (select_frame_cmd_list): New global for sub-commands.
593         (info_frame_cmd_list): New global for sub-commands.
594         (_initialize_stack): Register sub-commands for 'frame',
595         'select-frame', and 'info frame'.  Update 'frame apply' commands
596         to use frame_apply_cmd_list.  Move function local static
597         frame_apply_list to file static frame_apply_cmd_list for
598         consistency.
599         * stack.h (select_frame_command): Delete declarationn.
600         (select_frame_for_mi): Declare new function.
601
602 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
603
604         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
605         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
606         and NOP.
607
608 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
609
610         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
611
612 2018-09-26  Tom Tromey  <tom@tromey.com>
613
614         * valops.c (auto_abandon): Remove dead code.
615
616 2018-09-26  Tom Tromey  <tom@tromey.com>
617
618         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
619
620 2018-09-24  Tom Tromey  <tom@tromey.com>
621
622         * common/pathstuff.c (get_standard_cache_dir): Make
623         "xdg_cache_home" and "home" const.
624         * top.c (init_history): Make "tmpenv" const.
625         * main.c (get_init_files): Make "homedir" const.
626
627 2018-09-23  Tom Tromey  <tom@tromey.com>
628
629         PR python/18852:
630         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
631
632 2018-09-23  Tom Tromey  <tom@tromey.com>
633
634         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
635         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
636         * python/python-internal.h (gdbpy_handle_exception): Declare.
637         * python/py-utils.c (gdbpy_handle_exception): New function.
638
639 2018-09-23  Tom Tromey  <tom@tromey.com>
640
641         PR python/17284:
642         * python/py-type.c (typy_template_argument): Check for negative
643         argument number.
644
645 2018-09-23  Tom Tromey  <tom@tromey.com>
646
647         PR python/14062:
648         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
649
650 2018-09-23  Tom Tromey  <tom@tromey.com>
651
652         PR python/18170:
653         * python/py-value.c (valpy_int): Allow conversion from pointer
654         type.
655
656 2018-09-23  Tom Tromey  <tom@tromey.com>
657
658         PR python/20126:
659         * python/py-value.c (valpy_int): Respect type sign.
660
661 2018-09-23  Tom Tromey  <tom@tromey.com>
662
663         PR python/18352;
664         * python/py-value.c (valpy_float): Allow conversions from int or
665         char.
666         (valpy_int, valpy_long): Allow conversions from float.
667
668 2018-09-23  Tom Tromey  <tom@tromey.com>
669
670         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
671         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
672
673 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
674
675         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
676         __sighndlr.
677         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
678
679 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
680
681         * windows-nat.c (windows_nat_target::wait): Remove a spurious
682         target_terminal::ours().
683
684 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
685
686         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
687         of vl to ULONGEST.
688
689 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
690
691         * breakpoint.c (update_inserted_breakpoint_locations): Remove
692         redundant condition.
693
694 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
695
696         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
697
698         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
699         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
700         * sol-thread.c (ps_pdmodel): Don't guard definition.
701
702         * procfs.c: Fix formatting.
703
704         * procfs.c (sysset_t_alloc): Remove.
705         (create_procinfo): Use XNEW instead of sysset_t_alloc.
706         (procfs_debug_inferior): Likewise.
707         (procfs_set_exec_trap): Likewise.
708         (proc_set_traced_sysentry): Don't allocate argp dynamically.
709         (proc_set_traced_sysexit): Likewise.
710
711         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
712         (dead_procinfo): Likewise.
713         (proc_warn): Likewise.
714         (proc_error): Likewise.
715         (proc_get_LDT_entry): Likewise.
716         (do_attach): Likewise.
717         (procfs_target::pid_to_str): Likewise.
718         (iterate_over_mappings): Likewise.
719
720         * procfs.c (create_procinfo): Fix ARI warning.
721         (proc_get_status): Likewise.
722         (proc_stop_process): Likewise.
723         (proc_run_process): Likewise.
724         (proc_kill): Likewise.
725         (proc_get_LDT_entry): Likewise.
726         (procfs_find_LDT_entry): Likewise.
727         (proc_update_threads): Likewise.
728         (proc_iterate_over_threads): Likewise.
729         (do_attach): Likewise.
730         (procfs_xfer_memory): Likewise.
731         (invalidate_cache): Likewise.
732         (procfs_target::resume): Likewise.
733         (procfs_init_inferior): Likewise.
734         (procfs_set_exec_trap): Likewise.
735         (procfs_target::thread_alive): Likewise.
736         (procfs_target::pid_to_exec_file): Likewise.
737         (iterate_over_mappings): Likewise.
738         (procfs_target::make_corefile_notes): Likewise.
739         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
740
741         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
742         (procfs_find_LDT_entry): Likewise.
743         * sol-thread.c (ps_lgetLDT): Likewise.
744
745 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
746
747         PR tdep/17903
748         * procfs.c (procfs_target): Declare pid_to_exec_file.
749         (procfs_target::pid_to_exec_file): New.
750
751 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
752
753         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
754         renaming.
755         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
756         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
757
758 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
759
760         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
761         (supply_fpregset, fill_fpregset): Move ...
762         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
763         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
764         Remove references to ioctl-based procfs.
765         Include <sys/reg.h>.
766         Remove PR_MODEL_NATIVE guards.
767         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
768         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
769
770 2018-09-19  Xavier Roirand  <roirand@adacore.com>
771
772         PR gdb/20981:
773         * solib-darwin.c (darwin_get_dyld_bfd): New function.
774         (darwin_solib_get_all_image_info_addr_at_init): Update call.
775         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
776
777 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
778
779         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
780         (fbsd_print_sockaddr_in6): Likewise.
781
782 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
783             Chris January  <chris.january@arm.com>
784
785         * eval.c (skip_undetermined_arglist): Skip argument list helper.
786         (evaluate_subexp_standard): Return a dummy type when
787         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
788         OP_F77_UNDETERMINED_ARGLIST case.
789         * expression.h (enum noside): Update comment.
790
791 2018-09-19  George Vasick <george.vasick@oracle.com>
792
793         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
794
795 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
796             April Chin <april.chin@oracle.com>
797             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
798
799         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
800         uint_t lwpid_t.
801         (create_procinfo): Print pids in /proc without leading zeros.
802
803 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
804
805         * nios2-tdep.c (nios2_gcc_target_options): New.
806         (nios2_gdb_arch_init): Install new hook.
807
808 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
809
810         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
811         New file.
812         * update-gnulib.sh: Apply patch.
813         * configure: Re-generate.
814
815 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
816
817         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
818         description.  Make "info proc" command descriptions more
819         consistent.
820
821 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
822
823         * NEWS: Mention 'info proc files' command.
824
825 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
826
827         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
828         descriptors for IP_FILES and IP_ALL.
829
830 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
831
832         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
833         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
834         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
835         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
836         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
837         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
838         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
839         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
840         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
841         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
842         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
843         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
844         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
845         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
846         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
847         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
848         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
849         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
850         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
851         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
852         (struct fbsd_sockaddr_un): New types.
853         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
854         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
855         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
856         (fbsd_core_info_proc_files): New functions.
857         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
858         IP_ALL.
859         * fbsd-tdep.h (fbsd_info_proc_files_header)
860         (fbsd_info_proc_files_entry): New.
861
862 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
863
864         * defs.h (enum info_proc_what) [IP_FILES]: New value.
865         * infcmd.c (info_proc_cmd_files): New function.
866         (_initialize_infcmd): Register 'info proc files' command.
867
868 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
869
870         * gnulib/aclocal-m4-deps.mk: Re-generate.
871         * gnulib/aclocal.m4: Re-generate.
872         * gnulib/config.in: Re-generate.
873         * gnulib/configure: Re-generate.
874         * gnulib/import/Makefile.am: Re-generate.
875         * gnulib/import/Makefile.in: Re-generate.
876         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
877         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
878         * gnulib/import/arpa_inet.in.h: New file.
879         * gnulib/import/inet_ntop.c: New file.
880         * gnulib/import/m4/arpa_inet_h.m4: New file.
881         * gnulib/import/m4/inet_ntop.m4: New file.
882         * gnulib/import/m4/netinet_in_h.m4: New file.
883         * gnulib/import/m4/socklen.m4: New file.
884         * gnulib/import/m4/sockpfaf.m4: New file.
885         * gnulib/import/m4/stdalign.m4: New file.
886         * gnulib/import/m4/sys_uio_h.m4: New file.
887         * gnulib/import/netinet_in.in.h: New file.
888         * gnulib/import/stdalign.in.h: New file.
889         * gnulib/import/sys_socket.c: New file.
890         * gnulib/import/sys_socket.in.h: New file.
891         * gnulib/import/sys_uio.in.h: New file.
892         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
893         module.
894
895 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
896
897         * gnulib/aclocal-m4-deps.mk: New file.
898         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
899         deterministically.
900
901 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
902
903         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
904         KVE_PATH.
905
906 2018-09-18  Tom Tromey  <tom@tromey.com>
907
908         * compile/compile-object-load.c (struct
909         link_hash_table_cleanup_data): Add constructor and destructor.
910         Use DISABLE_COPY_AND_ASSIGN.
911         (~link_hash_table_cleanup_data): Rename from
912         link_hash_table_free.  Now a destructor.
913         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
914
915 2018-09-18  Tom Tromey  <tom@tromey.com>
916
917         * compile/compile-object-run.c (do_module_cleanup): Use delete.
918         * compile/compile-object-load.c (struct munmap_list): Move to
919         header file.
920         (munmap_list::add): Rename from munmap_list_add; rewrite.
921         (munmap_list::~munmap_list): Rename from munmap_list_free.
922         (munmap_listp_free_cleanup): Remove.
923         (compile_object_load): Update.
924         * compile/compile-object-load.h (struct munmap_list): Move from
925         compile-object-load.c.  Rewrite.
926
927 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
928
929         * aarch64-tdep.c (pass_in_v): Use register size.
930         (aarch64_extract_return_value): Likewise.
931         (aarch64_store_return_value): Likewise.
932
933 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
934
935         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
936         rlim_t.
937
938 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
939
940         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
941         Fix short help line.
942
943 2018-09-17  Tom Tromey  <tom@tromey.com>
944
945         PR python/20445:
946         * configure: Rebuild.
947         * configure.ac: Conditionally use -DNDEBUG for Python.
948
949 2018-09-17  Tom Tromey  <tom@tromey.com>
950
951         * configure: Rebuild.
952         * configure.ac: Use gmp as a library dependency when checking for
953         mpfr.
954
955 2018-09-17  Pedro Alves  <palves@redhat.com>
956
957         * python/py-inferior.c (find_inferior_object): Delete.
958
959 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
960
961         * compile/compile-cplus-types.c
962         (compile_cplus_instance::enter_scope): Don't use new_scope after
963         std::move.
964
965 2018-09-17  Tom Tromey  <tom@tromey.com>
966
967         * common/pathstuff.c (get_standard_cache_dir): Use
968         ~/Library/Caches on macOS.
969         * common/pathstuff.h (get_standard_cache_dir): Update comment.
970
971 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
972
973         PR python/23669
974         * breakpoint.c (commands_cmd_element): New.
975         (_initialize_breakpoint): Assign commands_cmd_element.
976         * breakpoint.h (commands_cmd_element): New.
977         * cli/cli-script.c (while_cmd_element, if_command,
978         define_cmd_element): New.
979         (command_name_equals): Remove.
980         (process_next_line): Compare commands by pointer, not by name.
981         (_initialize_cli_script): Assign the various cmd_list_element
982         variables.
983         * compile/compile.c (compile_cmd_element): New.
984         (_initialize_compile): Assign compile_cmd_element.
985         * compile/compile.h (compile_cmd_element): New.
986         * guile/guile.c (guile_cmd_element): New.
987         (install_gdb_commands): Assign guile_cmd_element.
988         * guile/guile.h (guile_cmd_element): New.
989         * python/python.c (python_cmd_element): New.
990         (_initialize_python): Assign python_cmd_element.
991         * python/python.h (python_cmd_element): New.
992         * tracepoint.c (while_stepping_cmd_element): New.
993         (_initialize_tracepoint): Assign while_stepping_cmd_element.
994         * tracepoint.h (while_stepping_cmd_element): New.
995
996 2018-09-17  Tom Tromey  <tom@tromey.com>
997
998         * infrun.c (save_infcall_suspend_state): Return
999         infcall_suspend_state_up.
1000         (save_infcall_control_state): Return infcall_control_state_up.
1001         * inferior.h (save_infcall_suspend_state)
1002         (save_infcall_control_state): Declare later.  Return unique
1003         pointers.
1004
1005 2018-09-17  Tom Tromey  <tom@tromey.com>
1006
1007         * infrun.c (struct stop_context): Declare constructor,
1008         destructor, "changed" method.
1009         (stop_context::stop_context): Rename from save_stop_context.
1010         (stop_context::~stop_context): Rename from
1011         release_stop_context_cleanup.
1012         (normal_stop): Update.
1013         (stop_context::changed): Rename from stop_context_changed.  Return
1014         bool.
1015
1016 2018-09-17  Tom Tromey  <tom@tromey.com>
1017
1018         * inferior.h (struct infcall_suspend_state_deleter): New.
1019         (infcall_suspend_state_up): New typedef.
1020         (struct infcall_control_state_deleter): New.
1021         (infcall_control_state_up): New typedef.
1022         (make_cleanup_restore_infcall_suspend_state)
1023         (make_cleanup_restore_infcall_control_state): Don't declare.
1024         * infcall.c (call_function_by_hand_dummy): Update.
1025         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1026         (make_cleanup_restore_infcall_suspend_state): Remove.
1027         (do_restore_infcall_control_state_cleanup)
1028         (make_cleanup_restore_infcall_control_state): Remove.
1029
1030 2018-09-17  Tom Tromey  <tom@tromey.com>
1031
1032         * gdbthread.h (struct thread_control_state): Add initializer.
1033         (class thread_info) <control>: Remove initializer.
1034         * inferior.h (struct inferior_control_state): Add initializer.
1035         (class inferior) <control>: Remove initializer.
1036         (exit_inferior_1): Update.
1037         * infrun.c (struct infcall_control_state): Add constructors.
1038         (save_infcall_control_state): Use new.
1039         (restore_infcall_control_state, discard_infcall_control_state):
1040         Use delete.
1041
1042 2018-09-17  Tom Tromey  <tom@tromey.com>
1043
1044         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1045         unique_ptr.
1046         <siginfo_data>: Now a unique_xmalloc_ptr.
1047         (save_infcall_suspend_state, restore_infcall_suspend_state)
1048         (discard_infcall_suspend_state)
1049         (get_infcall_suspend_state_regcache): Update.
1050
1051 2018-09-17  Tom Tromey  <tom@tromey.com>
1052
1053         * gdbthread.h (struct thread_suspend_state): Add initializers.
1054         (class thread_info) <suspend>: Remove initializer.
1055         * infrun.c (struct infcall_suspend_state): Add initializers.
1056         (save_infcall_suspend_state): Use new.
1057         (discard_infcall_suspend_state): Use delete.
1058
1059 2018-09-16  Tom Tromey  <tom@tromey.com>
1060
1061         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1062         Remove.
1063         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1064         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1065         (py_varobj_iter_new): Likewise.
1066         (py_varobj_get_iterator): Use gdbpy_ref.
1067
1068 2018-09-16  Tom Tromey  <tom@tromey.com>
1069
1070         * python/py-threadevent.c (py_get_event_thread): Simplify.
1071         * python/py-inferior.c (infpy_thread_from_thread_handle):
1072         Return immediately after calling thread_to_thread_object.  Use
1073         Py_RETURN_NONE.
1074         (thread_to_thread_object): Set the exception on a NULL return.
1075
1076 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1077
1078         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1079
1080 2018-09-16  Tom Tromey  <tom@tromey.com>
1081
1082         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1083         Remove.
1084
1085 2018-09-16  Tom Tromey  <tom@tromey.com>
1086
1087         * python/python-internal.h (thread_to_thread_object): Change
1088         return type.
1089         * python/py-inferior.c (thread_to_thread_object): Return a new
1090         reference.
1091         (infpy_thread_from_thread_handle): Update.
1092         * python/py-infthread.c (gdbpy_selected_thread): Update.
1093         * python/py-stopevent.c (create_stop_event_object): Update.
1094         * python/py-threadevent.c (py_get_event_thread): Return a new
1095         reference.
1096         (py_get_event_thread): Update.
1097         * python/py-event.h (py_get_event_thread): Change return type.
1098         * python/py-continueevent.c (create_continue_event_object):
1099         Update.
1100
1101 2018-09-16  Tom Tromey  <tom@tromey.com>
1102
1103         * python/py-progspace.c (pspy_get_objfiles): Update.
1104         * python/python-internal.h (objfile_to_objfile_object): Change
1105         return type.
1106         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1107         Update.
1108         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1109         Update.
1110         * python/python.c (gdbpy_get_current_objfile): Update.
1111         (gdbpy_objfiles): Update.
1112         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1113         Update.
1114         (objfile_to_objfile_object): Return a new reference.
1115         * python/py-symtab.c (stpy_get_objfile): Update.
1116         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1117         Update.
1118
1119 2018-09-16  Tom Tromey  <tom@tromey.com>
1120
1121         * python/py-inferior.c (infpy_get_progspace): Update.
1122         * python/python-internal.h (pspace_to_pspace_object): Change
1123         return type.
1124         * python/py-newobjfileevent.c
1125         (create_clear_objfiles_event_object): Update.
1126         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1127         Update.
1128         * python/python.c (gdbpy_get_current_progspace): Update.
1129         (gdbpy_progspaces): Update.
1130         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1131         reference.
1132         * python/py-objfile.c (objfpy_get_progspace): Update.
1133         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1134         Update.
1135
1136 2018-09-16  Tom Tromey  <tom@tromey.com>
1137
1138         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1139         (solib_name, block_for_pc, find_pc_line): New functions.
1140         (execute_unwinders): Update.
1141         * python/py-block.c (gdbpy_block_for_pc): Remove.
1142         * python/py-inferior.c (infpy_get_progspace): New function.
1143         (inferior_object_getset) <progspace>: Add.
1144         * python/py-progspace.c (pspy_objfiles): Rewrite.
1145         (pspy_solib_name, pspy_block_for_pc)
1146         (pspy_find_pc_line, pspy_is_valid): New functions.
1147         (progspace_object_methods): Add entries for solib_name,
1148         block_for_pc, find_pc_line, is_valid.
1149         * python/python-internal.h (gdbpy_block_for_pc)
1150         (build_objfiles_list): Don't declare.
1151         * python/python.c: Don't include solib.h.
1152         (gdbpy_solib_name, gdbpy_find_pc_line)
1153         (gdbpy_get_current_progspace, build_objfiles_list)
1154         (gdbpy_objfiles): Remove.
1155         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1156         solib_name, find_pc_line>: Remove entries.
1157
1158 2018-09-16  Tom Tromey  <tom@tromey.com>
1159
1160         * top.c (new_ui_command): Use GNU style for metasyntactic
1161         variables.
1162         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1163         variables.
1164         * maint.c (maintenance_translate_address): Remove "<>" around
1165         text.
1166         * interps.c (interpreter_exec_cmd): Use GNU style for
1167         metasyntactic variables.
1168         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1169         metasyntactic variables.
1170         * tracepoint.c (tfind_range_command): Use GNU style for
1171         metasyntactic variables.
1172         (tfind_outside_command): Likewise.
1173         (_initialize_tracepoint): Likewise.
1174         * remote.c (extended_remote_target::create_inferior): Use GNU
1175         style for metasyntactic variables.
1176         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1177         metasyntactic variables.
1178         (adi_assign_command): Likewise.
1179
1180 2018-09-16  Tom Tromey  <tom@tromey.com>
1181
1182         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1183         metasyntactic variables.  Print message if no disassembler options
1184         are available.
1185
1186 2018-09-15  Tom Tromey  <tom@tromey.com>
1187
1188         * infcmd.c (get_inferior_args): Return const char *.
1189         * inferior.h (get_inferior_args): Return type now const.
1190         * linux-tdep.c (linux_fill_prpsinfo): Update.
1191         * procfs.c (procfs_target::make_corefile_notes): Update.
1192
1193 2018-09-07  Tom Tromey  <tom@tromey.com>
1194
1195         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1196         inside the TRY.
1197
1198 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1199
1200         * nios2-tdep.c (nios2_type_align): New.
1201         (nios2_gdb_arch_init): Install type_align hook.
1202
1203 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1204
1205         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1206         type that is neither object file owned, nor gdbarch owned.
1207         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1208         gdbarch is non-NULL.
1209         (alloc_type_instance): Allocate non-objfile owned types on the
1210         gdbarch obstack.
1211         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1212         using TYPE_ALLOC to ensure memory is allocated on the correct
1213         obstack.
1214         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1215         obstack, or the gdbarch obstack.
1216         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1217
1218 2018-09-14  Tom Tromey  <tom@tromey.com>
1219
1220         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1221         block.
1222
1223 2018-09-14  Tom Tromey  <tom@tromey.com>
1224
1225         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1226
1227 2018-09-13  Tom Tromey  <tom@tromey.com>
1228
1229         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1230         static.
1231
1232 2018-09-13  Tom Tromey  <tom@tromey.com>
1233
1234         * exec.c (try_open_exec_file): Use std::string.
1235
1236 2018-09-13  Tom Tromey  <tom@tromey.com>
1237
1238         * utils.h (gdb_bfd_errmsg): Return std::string.
1239         * exec.c (exec_file_attach): Update.
1240         * compile/compile-object-load.c (compile_object_load): Update.
1241         * utils.c (gdb_bfd_errmsg): Return std::string.
1242
1243 2018-09-13  Tom Tromey  <tom@tromey.com>
1244
1245         * procfs.c (struct procinfo_deleter): New.
1246         (procinfo_up): New typedef.
1247         (do_destroy_procinfo_cleanup): Remove.
1248         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
1249
1250 2018-09-13  Tom Tromey  <tom@tromey.com>
1251
1252         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
1253
1254 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1255 2018-09-13  Tom Tromey  <tom@tromey.com>
1256
1257         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
1258         (pspy_get_objfiles): New function.
1259         (progspace_object_methods): New.
1260         (pspace_object_type): Add tp_methods callback.
1261         * python/python-internal.h (build_objfiles_list): New
1262         declaration.
1263         * python/python.c (build_objfiles_list): New function.
1264         (gdbpy_objfiles): Implement using build_objfiles_list.
1265         * NEWS: Mention the Progspace.objfiles method.
1266
1267 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1268
1269         * python/py-inferior.c (infpy_get_progspace): New function.
1270         (inferior_object_getset): Add progspace property.
1271         * NEWS: Mention the new property.
1272
1273 2018-09-13  Tom Tromey  <tom@tromey.com>
1274
1275         PR rust/23650:
1276         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
1277
1278 2018-09-13  Tom Tromey  <tom@tromey.com>
1279
1280         PR rust/23626:
1281         * rust-lang.c (rust_enum_variant): Now static.
1282         (rust_empty_enum_p): New function.
1283         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
1284         Handle empty enum.
1285
1286 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1287
1288         * python/py-inferior.c (infpy_repr): New.
1289         (inferior_object_type): Register infpy_repr.
1290         * python/py-objfile.c (objfpy_repr): New.
1291         (objfile_object_type): Register objfpy_repr.
1292
1293 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1294
1295         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
1296
1297 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1298
1299         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
1300         typo.
1301
1302 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
1303
1304         * common/common-utils.c: Don't include '<sys/stat.h>'.
1305         (is_regular_file): Move to...
1306         * common/filestuff.c (is_regular_file): ... here.
1307         * common/common-utils.h (is_regular_file): Move to...
1308         * common/filestuff.h (is_regular_file): ... here.
1309
1310 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
1311
1312         * skip.c (debug_skip): New variable.
1313         (skiplist_entry::do_skip_file_p): Add debug output.
1314         (skiplist_entry::do_skip_gfile_p): Likewise.
1315         (skiplist_entry::skip_function_p): Likewise.
1316         (_initialize_step_skip): Create debug command.
1317         * NEWS: Mention set/show debug skip.
1318
1319 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1320
1321         * darwin-nat.c (should_disable_startup_with_shell):
1322         New function.
1323         (darwin_nat_target::create_inferior): Add call.
1324
1325 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1326
1327         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
1328         inf_port, msg_state>: Initialize.
1329         (struct darwin_thread_info) <signaled, single_step>: Change
1330         type and initialize.
1331         (struct darwin_thread_info) <event>: Initialize.
1332
1333 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1334
1335         PR gdb/23555
1336         PR gdb/23558
1337         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
1338         guesses.
1339
1340 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1341
1342         Revert:
1343         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1344
1345         PR gdb/23555
1346         PR gdb/23558
1347         * gnulib/aclocal.m4: Regenerate.
1348         * gnulib/config.in: Regenerate.
1349         * gnulib/configure: Regenerate.
1350         * gnulib/import/Makefile.am: Update.
1351         * gnulib/import/Makefile.in: Update.
1352         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1353         * gnulib/import/_Noreturn.h: ... this.
1354         * gnulib/import/alloca.in.h: Update.
1355         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
1356         * gnulib/import/arg-nonnull.h: ... this.
1357         * gnulib/import/assure.h: Update.
1358         * gnulib/import/at-func.c: Update.
1359         * gnulib/import/basename-lgpl.c: Update.
1360         * gnulib/import/extra/snippet/c++defs.h: Rename to...
1361         * gnulib/import/c++defs.h: ... this.
1362         * gnulib/import/canonicalize-lgpl.c: Update.
1363         * gnulib/import/cdefs.h: Update.
1364         * gnulib/import/chdir-long.c: Update.
1365         * gnulib/import/chdir-long.h: Update.
1366         * gnulib/import/cloexec.c: Update.
1367         * gnulib/import/cloexec.h: Update.
1368         * gnulib/import/close.c: Update.
1369         * gnulib/import/closedir.c: Update.
1370         * gnulib/import/config.charset: Update.
1371         * gnulib/import/dirent-private.h: Update.
1372         * gnulib/import/dirent.in.h: Update.
1373         * gnulib/import/dirfd.c: Update.
1374         * gnulib/import/dirname-lgpl.c: Update.
1375         * gnulib/import/dirname.h: Update.
1376         * gnulib/import/dosname.h: Update.
1377         * gnulib/import/dup-safer-flag.c: Update.
1378         * gnulib/import/dup-safer.c: Update.
1379         * gnulib/import/dup.c: Update.
1380         * gnulib/import/dup2.c: Update.
1381         * gnulib/import/errno.in.h: Update.
1382         * gnulib/import/error.c: Update.
1383         * gnulib/import/error.h: Update.
1384         * gnulib/import/exitfail.c: Update.
1385         * gnulib/import/exitfail.h: Update.
1386         * gnulib/import/extra/update-copyright: Update.
1387         * gnulib/import/fchdir.c: Update.
1388         * gnulib/import/fcntl.c: Update.
1389         * gnulib/import/fcntl.in.h: Update.
1390         * gnulib/import/fd-hook.c: Update.
1391         * gnulib/import/fd-hook.h: Update.
1392         * gnulib/import/fd-safer-flag.c: Update.
1393         * gnulib/import/fd-safer.c: Update.
1394         * gnulib/import/fdopendir.c: Update.
1395         * gnulib/import/filename.h: Update.
1396         * gnulib/import/filenamecat-lgpl.c: Update.
1397         * gnulib/import/filenamecat.h: Update.
1398         * gnulib/import/flexmember.h: Update.
1399         * gnulib/import/float+.h: Update.
1400         * gnulib/import/float.c: Update.
1401         * gnulib/import/float.in.h: Update.
1402         * gnulib/import/fnmatch.c: Update.
1403         * gnulib/import/fnmatch.in.h: Update.
1404         * gnulib/import/fnmatch_loop.c: Update.
1405         * gnulib/import/fpucw.h: Update.
1406         * gnulib/import/frexp.c: Update.
1407         * gnulib/import/frexpl.c: Update.
1408         * gnulib/import/fstat.c: Update.
1409         * gnulib/import/fstatat.c: Update.
1410         * gnulib/import/getcwd-lgpl.c: Update.
1411         * gnulib/import/getcwd.c: Update.
1412         * gnulib/import/getdtablesize.c: Update.
1413         * gnulib/import/getlogin_r.c: Update.
1414         * gnulib/import/getprogname.c: Update.
1415         * gnulib/import/getprogname.h: Update.
1416         * gnulib/import/gettext.h: Update.
1417         * gnulib/import/gettimeofday.c: Update.
1418         * gnulib/import/glob-libc.h: Update.
1419         * gnulib/import/glob.c: Update.
1420         * gnulib/import/glob.in.h: Update.
1421         * gnulib/import/glob_internal.h: Update.
1422         * gnulib/import/glob_pattern_p.c: Update.
1423         * gnulib/import/globfree.c: Update.
1424         * gnulib/import/hard-locale.c: Update.
1425         * gnulib/import/hard-locale.h: Update.
1426         * gnulib/import/intprops.h: Update.
1427         * gnulib/import/inttypes.in.h: Update.
1428         * gnulib/import/isnan.c: Update.
1429         * gnulib/import/isnand-nolibm.h: Update.
1430         * gnulib/import/isnand.c: Update.
1431         * gnulib/import/isnanl-nolibm.h: Update.
1432         * gnulib/import/isnanl.c: Update.
1433         * gnulib/import/itold.c: Update.
1434         * gnulib/import/libc-config.h: Update.
1435         * gnulib/import/limits.in.h: Update.
1436         * gnulib/import/localcharset.c: Update.
1437         * gnulib/import/localcharset.h: Update.
1438         * gnulib/import/localtime-buffer.c: Update.
1439         * gnulib/import/localtime-buffer.h: Update.
1440         * gnulib/import/lstat.c: Update.
1441         * gnulib/import/m4/00gnulib.m4: Update.
1442         * gnulib/import/m4/__inline.m4: Update.
1443         * gnulib/import/m4/absolute-header.m4: Update.
1444         * gnulib/import/m4/alloca.m4: Update.
1445         * gnulib/import/m4/builtin-expect.m4: Update.
1446         * gnulib/import/m4/canonicalize.m4: Update.
1447         * gnulib/import/m4/chdir-long.m4: Update.
1448         * gnulib/import/m4/close.m4: Update.
1449         * gnulib/import/m4/closedir.m4: Update.
1450         * gnulib/import/m4/configmake.m4: Update.
1451         * gnulib/import/m4/d-ino.m4: Update.
1452         * gnulib/import/m4/d-type.m4: Update.
1453         * gnulib/import/m4/dirent_h.m4: Update.
1454         * gnulib/import/m4/dirfd.m4: Update.
1455         * gnulib/import/m4/dirname.m4: Update.
1456         * gnulib/import/m4/double-slash-root.m4: Update.
1457         * gnulib/import/m4/dup.m4: Update.
1458         * gnulib/import/m4/dup2.m4: Update.
1459         * gnulib/import/m4/eealloc.m4: Update.
1460         * gnulib/import/m4/environ.m4: Update.
1461         * gnulib/import/m4/errno_h.m4: Update.
1462         * gnulib/import/m4/error.m4: Update.
1463         * gnulib/import/m4/exponentd.m4: Update.
1464         * gnulib/import/m4/exponentl.m4: Update.
1465         * gnulib/import/m4/extensions.m4: Update.
1466         * gnulib/import/m4/extern-inline.m4: Update.
1467         * gnulib/import/m4/fchdir.m4: Update.
1468         * gnulib/import/m4/fcntl-o.m4: Update.
1469         * gnulib/import/m4/fcntl.m4: Update.
1470         * gnulib/import/m4/fcntl_h.m4: Update.
1471         * gnulib/import/m4/fdopendir.m4: Update.
1472         * gnulib/import/m4/filenamecat.m4: Update.
1473         * gnulib/import/m4/flexmember.m4: Update.
1474         * gnulib/import/m4/float_h.m4: Update.
1475         * gnulib/import/m4/fnmatch.m4: Update.
1476         * gnulib/import/m4/fnmatch_h.m4: Update.
1477         * gnulib/import/m4/fpieee.m4: Update.
1478         * gnulib/import/m4/frexp.m4: Update.
1479         * gnulib/import/m4/frexpl.m4: Update.
1480         * gnulib/import/m4/fstat.m4: Update.
1481         * gnulib/import/m4/fstatat.m4: Update.
1482         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1483         * gnulib/import/m4/getcwd-path-max.m4: Update.
1484         * gnulib/import/m4/getcwd.m4: Update.
1485         * gnulib/import/m4/getdtablesize.m4: Update.
1486         * gnulib/import/m4/getlogin.m4: Update.
1487         * gnulib/import/m4/getlogin_r.m4: Update.
1488         * gnulib/import/m4/getpagesize.m4: Update.
1489         * gnulib/import/m4/getprogname.m4: Update.
1490         * gnulib/import/m4/gettimeofday.m4: Update.
1491         * gnulib/import/m4/glibc21.m4: Update.
1492         * gnulib/import/m4/glob.m4: Update.
1493         * gnulib/import/m4/glob_h.m4: Update.
1494         * gnulib/import/m4/gnulib-cache.m4: Update.
1495         * gnulib/import/m4/gnulib-common.m4: Update.
1496         * gnulib/import/m4/gnulib-comp.m4: Update.
1497         * gnulib/import/m4/gnulib-tool.m4: Update.
1498         * gnulib/import/m4/hard-locale.m4: Update.
1499         * gnulib/import/m4/include_next.m4: Update.
1500         * gnulib/import/m4/inttypes-pri.m4: Update.
1501         * gnulib/import/m4/inttypes.m4: Update.
1502         * gnulib/import/m4/isnand.m4: Update.
1503         * gnulib/import/m4/isnanl.m4: Update.
1504         * gnulib/import/m4/largefile.m4: Update.
1505         * gnulib/import/m4/limits-h.m4: Update.
1506         * gnulib/import/m4/localcharset.m4: Update.
1507         * gnulib/import/m4/locale-fr.m4: Update.
1508         * gnulib/import/m4/locale-ja.m4: Update.
1509         * gnulib/import/m4/locale-zh.m4: Update.
1510         * gnulib/import/m4/localtime-buffer.m4: Update.
1511         * gnulib/import/m4/longlong.m4: Update.
1512         * gnulib/import/m4/lstat.m4: Update.
1513         * gnulib/import/m4/malloc.m4: Update.
1514         * gnulib/import/m4/malloca.m4: Update.
1515         * gnulib/import/m4/math_h.m4: Update.
1516         * gnulib/import/m4/mbrtowc.m4: Update.
1517         * gnulib/import/m4/mbsinit.m4: Update.
1518         * gnulib/import/m4/mbsrtowcs.m4: Update.
1519         * gnulib/import/m4/mbstate_t.m4: Update.
1520         * gnulib/import/m4/memchr.m4: Update.
1521         * gnulib/import/m4/memmem.m4: Update.
1522         * gnulib/import/m4/mempcpy.m4: Update.
1523         * gnulib/import/m4/memrchr.m4: Update.
1524         * gnulib/import/m4/mkdir.m4: Update.
1525         * gnulib/import/m4/mkstemp.m4: Update.
1526         * gnulib/import/m4/mmap-anon.m4: Update.
1527         * gnulib/import/m4/mode_t.m4: Update.
1528         * gnulib/import/m4/msvc-inval.m4: Update.
1529         * gnulib/import/m4/msvc-nothrow.m4: Update.
1530         * gnulib/import/m4/multiarch.m4: Update.
1531         * gnulib/import/m4/nocrash.m4: Update.
1532         * gnulib/import/m4/off_t.m4: Update.
1533         * gnulib/import/m4/onceonly.m4: Update.
1534         * gnulib/import/m4/open-cloexec.m4: Update.
1535         * gnulib/import/m4/open.m4: Update.
1536         * gnulib/import/m4/openat.m4: Update.
1537         * gnulib/import/m4/opendir.m4: Update.
1538         * gnulib/import/m4/pathmax.m4: Update.
1539         * gnulib/import/m4/rawmemchr.m4: Update.
1540         * gnulib/import/m4/readdir.m4: Update.
1541         * gnulib/import/m4/readlink.m4: Update.
1542         * gnulib/import/m4/realloc.m4: Update.
1543         * gnulib/import/m4/rename.m4: Update.
1544         * gnulib/import/m4/rewinddir.m4: Update.
1545         * gnulib/import/m4/rmdir.m4: Update.
1546         * gnulib/import/m4/save-cwd.m4: Update.
1547         * gnulib/import/m4/secure_getenv.m4: Update.
1548         * gnulib/import/m4/setenv.m4: Update.
1549         * gnulib/import/m4/signal_h.m4: Update.
1550         * gnulib/import/m4/ssize_t.m4: Update.
1551         * gnulib/import/m4/stat-time.m4: Update.
1552         * gnulib/import/m4/stat.m4: Update.
1553         * gnulib/import/m4/std-gnu11.m4: Update.
1554         * gnulib/import/m4/stdbool.m4: Update.
1555         * gnulib/import/m4/stddef_h.m4: Update.
1556         * gnulib/import/m4/stdint.m4: Update.
1557         * gnulib/import/m4/stdio_h.m4: Update.
1558         * gnulib/import/m4/stdlib_h.m4: Update.
1559         * gnulib/import/m4/strchrnul.m4: Update.
1560         * gnulib/import/m4/strdup.m4: Update.
1561         * gnulib/import/m4/strerror.m4: Update.
1562         * gnulib/import/m4/string_h.m4: Update.
1563         * gnulib/import/m4/strstr.m4: Update.
1564         * gnulib/import/m4/strtok_r.m4: Update.
1565         * gnulib/import/m4/sys_socket_h.m4: Update.
1566         * gnulib/import/m4/sys_stat_h.m4: Update.
1567         * gnulib/import/m4/sys_time_h.m4: Update.
1568         * gnulib/import/m4/sys_types_h.m4: Update.
1569         * gnulib/import/m4/tempname.m4: Update.
1570         * gnulib/import/m4/time_h.m4: Update.
1571         * gnulib/import/m4/unistd-safer.m4: Update.
1572         * gnulib/import/m4/unistd_h.m4: Update.
1573         * gnulib/import/m4/warn-on-use.m4: Update.
1574         * gnulib/import/m4/wchar_h.m4: Update.
1575         * gnulib/import/m4/wchar_t.m4: Update.
1576         * gnulib/import/m4/wctype_h.m4: Update.
1577         * gnulib/import/m4/wint_t.m4: Update.
1578         * gnulib/import/malloc.c: Update.
1579         * gnulib/import/malloc/scratch_buffer.h: Update.
1580         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1581         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1582         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1583         * gnulib/import/malloca.c: Update.
1584         * gnulib/import/malloca.h: Update.
1585         * gnulib/import/malloca.valgrind: Update.
1586         * gnulib/import/math.in.h: Update.
1587         * gnulib/import/mbrtowc.c: Update.
1588         * gnulib/import/mbsinit.c: Update.
1589         * gnulib/import/mbsrtowcs-impl.h: Update.
1590         * gnulib/import/mbsrtowcs-state.c: Update.
1591         * gnulib/import/mbsrtowcs.c: Update.
1592         * gnulib/import/memchr.c: Update.
1593         * gnulib/import/memmem.c: Update.
1594         * gnulib/import/mempcpy.c: Update.
1595         * gnulib/import/memrchr.c: Update.
1596         * gnulib/import/mkdir.c: Update.
1597         * gnulib/import/mkstemp.c: Update.
1598         * gnulib/import/msvc-inval.c: Update.
1599         * gnulib/import/msvc-inval.h: Update.
1600         * gnulib/import/msvc-nothrow.c: Update.
1601         * gnulib/import/msvc-nothrow.h: Update.
1602         * gnulib/import/open.c: Update.
1603         * gnulib/import/openat-die.c: Update.
1604         * gnulib/import/openat-priv.h: Update.
1605         * gnulib/import/openat-proc.c: Update.
1606         * gnulib/import/openat.c: Update.
1607         * gnulib/import/openat.h: Update.
1608         * gnulib/import/opendir.c: Update.
1609         * gnulib/import/pathmax.h: Update.
1610         * gnulib/import/pipe-safer.c: Update.
1611         * gnulib/import/rawmemchr.c: Update.
1612         * gnulib/import/readdir.c: Update.
1613         * gnulib/import/readlink.c: Update.
1614         * gnulib/import/realloc.c: Update.
1615         * gnulib/import/ref-add.sin: Update.
1616         * gnulib/import/ref-del.sin: Update.
1617         * gnulib/import/rename.c: Update.
1618         * gnulib/import/rewinddir.c: Update.
1619         * gnulib/import/rmdir.c: Update.
1620         * gnulib/import/same-inode.h: Update.
1621         * gnulib/import/save-cwd.c: Update.
1622         * gnulib/import/save-cwd.h: Update.
1623         * gnulib/import/scratch_buffer.h: Update.
1624         * gnulib/import/secure_getenv.c: Update.
1625         * gnulib/import/setenv.c: Update.
1626         * gnulib/import/signal.in.h: Update.
1627         * gnulib/import/stat-time.c: Update.
1628         * gnulib/import/stat-time.h: Update.
1629         * gnulib/import/stat-w32.c: Update.
1630         * gnulib/import/stat-w32.h: Update.
1631         * gnulib/import/stat.c: Update.
1632         * gnulib/import/stdbool.in.h: Update.
1633         * gnulib/import/stddef.in.h: Update.
1634         * gnulib/import/stdint.in.h: Update.
1635         * gnulib/import/stdio.in.h: Update.
1636         * gnulib/import/stdlib.in.h: Update.
1637         * gnulib/import/str-two-way.h: Update.
1638         * gnulib/import/strchrnul.c: Update.
1639         * gnulib/import/strdup.c: Update.
1640         * gnulib/import/streq.h: Update.
1641         * gnulib/import/strerror-override.c: Update.
1642         * gnulib/import/strerror-override.h: Update.
1643         * gnulib/import/strerror.c: Update.
1644         * gnulib/import/string.in.h: Update.
1645         * gnulib/import/stripslash.c: Update.
1646         * gnulib/import/strnlen1.c: Update.
1647         * gnulib/import/strnlen1.h: Update.
1648         * gnulib/import/strstr.c: Update.
1649         * gnulib/import/strtok_r.c: Update.
1650         * gnulib/import/sys_stat.in.h: Update.
1651         * gnulib/import/sys_time.in.h: Update.
1652         * gnulib/import/sys_types.in.h: Update.
1653         * gnulib/import/tempname.c: Update.
1654         * gnulib/import/tempname.h: Update.
1655         * gnulib/import/time.in.h: Update.
1656         * gnulib/import/unistd--.h: Update.
1657         * gnulib/import/unistd-safer.h: Update.
1658         * gnulib/import/unistd.in.h: Update.
1659         * gnulib/import/unsetenv.c: Update.
1660         * gnulib/import/verify.h: Update.
1661         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1662         * gnulib/import/wchar.in.h: Update.
1663         * gnulib/import/wctype.in.h: Update.
1664         * gnulib/import/xalloc-oversized.h: Update.
1665         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1666         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1667
1668 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
1669
1670         * record-btrace.c (get_thread_current_frame): Remove
1671         old_inferior_ptid.
1672
1673 2018-09-10  Jerome Guitton  <guitton@adacore.com>
1674
1675         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
1676         with check_tag to 1 if and only if the type is tagged and the
1677         component being searched cannot been found in the current
1678         view. Otherwise, always call ada_to_fixed_type with
1679         check_tag to 0.
1680
1681 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1682
1683         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
1684         declaration.
1685         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
1686         * ada-varobj.c (ada_varobj_get_number_of_children,
1687         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
1688
1689 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1690
1691         * ada-valprint.c (ada_value_print): Use type instead of
1692         enclosing type.
1693
1694 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1695
1696         * ada-lang.c (ada_value_subscript): Handle case when parameter is
1697         an array of access to unconstrained array.
1698
1699 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1700
1701         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
1702         (ada_check_typedef): Use it.
1703
1704 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1705
1706         * ada-varobj.c (ada_varobj_describe_struct_child)
1707         (ada_varobj_describe_child): Handle union case like struct one.
1708
1709 2018-09-10  Tom Tromey  <tom@tromey.com>
1710
1711         PR python/18380:
1712         * python/python.c (_initialize_python): Make example in "python"
1713         help work in Python 3.
1714
1715 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
1716
1717         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
1718         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
1719         $(EXEEXT) to the script, as it is not a program.
1720
1721 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
1722
1723         * python/py-prettyprint.c (pretty_print_one_value): Return
1724         gdbpy_ref<>.
1725         (print_string_repr): Adjust.
1726         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
1727         * python/python-internal.h (apply_varobj_pretty_printer): Return
1728         gdbpy_ref<>.
1729         * varobj.c (varobj_value_get_print_value): Adjust.
1730
1731 2018-09-08  Tom Tromey  <tom@tromey.com>
1732
1733         PR python/16047:
1734         * python/py-prettyprint.c (pretty_print_one_value): Check for
1735         to_string method.
1736
1737 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1738
1739         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
1740         replace_operator_with_call.
1741
1742 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1743
1744         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
1745
1746 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1747
1748         * ada-typeprint.c (print_range): Print the bounds using TYPE
1749         rather than its TYPE_TARGET_TYPE.
1750
1751 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1752
1753         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
1754         call to ada_to_fixed_value_create.
1755
1756 2018-09-08  Jerome Guitton  <guitton@adacore.com>
1757
1758         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
1759
1760 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1761
1762         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
1763         by calls to error.
1764
1765 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1766
1767         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
1768         Move update of loop variable "fi".
1769
1770 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1771
1772         * ada-lang.c (value_assign_to_component): In the case of
1773         big-endian targets, extract the bits of the given VAL
1774         using an src_offset of zero if container is not a scalar.
1775
1776 2018-09-06  Simon Ser  <contact@emersion.fr>
1777
1778         PR gdb/23105
1779         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
1780         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
1781         * fbsd-tdep.c (fbsd_make_note_desc): New.
1782         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
1783         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
1784         * target.h (enum target_object) Add FreeBSD-specific
1785         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
1786
1787 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1788
1789         * compile/compile-c.h (generate_c_for_variable_locations):
1790         Change reference to pointer.
1791         * compile/compile-c-support.c (compile_program) <compute>:
1792         Likewise.
1793         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
1794         (generate_c_for_for_one_variable): Likewise
1795         (generate_c_for_variable_locations): Likewise
1796         * compile/compile-c-types.c (compile_c_instance::convert_type):
1797         Likewise
1798         * compile/compile-cplus-symbols.c (convert_one_symbol):
1799         std::move the scope passed to enter_scope.
1800         * compile/compile-cplus-types.c
1801         (compile_cplus_instance::enter_scope): Make parameter
1802         rvalue-reference.
1803         (compile_cplus_instance::new_scope): Change reference to
1804         pointer.
1805         (compile_cplus_instance::convert_type): Likewise
1806         (compile_cplus_convert_typedef): std::move the scope passed to
1807         enter_scope.
1808         (compile_cplus_convert_struct_or_union): Likewise.
1809         (compile_cplus_convert_enum): Likewise.
1810         (compile_cplus_convert_namespace): Likewise.
1811         * compile/compile-cplus.h (compile_cplus_instance)
1812         <enter_scope>: Make parameter rvalue-reference.
1813         * compile/compile-internal.h (compile_instance)
1814         <get_cached_type>: Likewise
1815         * compile/compile-loc2c.c (push): Likewise
1816         (pushf): Likewise
1817         (unary): Likewise
1818         (binary): Likewise
1819         (print_label): Likewise
1820         (pushf_register_address): Likewise
1821         (pushf_register): Likewise
1822         (do_compile_dwarf_expr_to_c): Likewise
1823         (compile_dwarf_expr_to_c): Likewise
1824         (compile_dwarf_bounds_to_c): Likewise
1825         * compile/compile.c (compile_instance::get_cached_type):
1826         Likewise
1827         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
1828         (compile_dwarf_bounds_to_c): Likewise
1829         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
1830         (dwarf2_compile_property_to_c): Likewise
1831         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
1832         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
1833         Likewise
1834
1835 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1836
1837         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
1838         * tui/tui-data.c (init_content_element): Don't initialize it.
1839
1840 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1841
1842         * tui/tui-data.h (struct tui_win_info)
1843         <detail::opaque>: Remove.
1844         * tui/tui-data.c (init_win_info): Remove assignment.
1845
1846 2018-09-05  Tom Tromey  <tom@tromey.com>
1847
1848         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
1849         -Wformat-nonliteral.
1850         * target-float.c (host_float_ops<T>::to_string)
1851         (host_float_ops<T>::from_string): Use
1852         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
1853         * configure: Rebuild.
1854
1855 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
1856
1857         * printcmd.c (printf_c_string): Use
1858         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
1859         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
1860
1861 2018-09-05  Tom Tromey  <tom@tromey.com>
1862
1863         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
1864
1865 2018-09-05  Tom de Vries  <tdevries@suse.de>
1866
1867         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
1868         with resolve_abstract_p == true.
1869         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
1870         defaulting to false. Propagate resolve_abstract_p to
1871         dwarf2_fetch_die_loc_sect_off.
1872         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
1873         parameter, defaulting to false.
1874         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
1875         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
1876         parameter.
1877         * dwarf2read.h (struct die_info): Forward-declare.
1878         (die_info_ptr): New typedef.
1879         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
1880
1881 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
1882
1883         GDB 8.2 released.
1884
1885 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
1886             Pedro Alves  <palves@redhat.com>
1887
1888         * gnulib/Makefile.in (aclocal_m4_deps): Move to
1889         "aclocal-m4-deps.mk".  Include file here.
1890         $(srcdir)/aclocal.m4: Add "configure.ac".
1891         * gnulib/aclocal-m4-deps.mk: New file.
1892         * gnulib/update-gnulib.sh: Automatically update
1893         "aclocal-m4-deps.mk".
1894
1895 2018-09-04  Tom Tromey  <tom@tromey.com>
1896
1897         * configure: Rebuild.
1898         * configure.ac: Remove multi-ice code.
1899
1900 2018-09-04  Tom Tromey  <tom@tromey.com>
1901
1902         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
1903         (ada-exp.o): Update.
1904
1905 2018-09-04  Tom Tromey  <tom@tromey.com>
1906
1907         * Makefile.in (printcmd.o, target-float.o): Remove.
1908         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
1909
1910 2018-09-04  Tom Tromey  <tom@tromey.com>
1911
1912         * gnulib/Makefile.in: Remove obsolete comment.
1913         * Makefile.in: Remove obsolete comment.
1914
1915 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
1916
1917         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
1918         line with '+'.
1919
1920 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
1921
1922         * riscv-tdep.c: Add 'prologue-value.h' include.
1923         (struct riscv_unwind_cache): New struct.
1924         (riscv_debug_unwinder): New global.
1925         (riscv_scan_prologue): Update arguments, capture register details
1926         from prologue scan.
1927         (riscv_skip_prologue): Reformat arguments line, move end of
1928         prologue calculation into riscv_scan_prologue.
1929         (riscv_frame_cache): Update return type, create
1930         riscv_unwind_cache, scan the prologue, and fill in remaining cache
1931         details.
1932         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
1933         (riscv_frame_prev_register): Use the trad_frame within the
1934         riscv_unwind_cache.
1935         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
1936         flag.
1937
1938 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
1939
1940         * trad-frame.h (trad_frame_set_realreg): Declare.
1941         (trad_frame_set_addr): Declare.
1942         * trad-frame.c (trad_frame_set_realreg): Define new function.
1943         (trad_frame_set_addr): Define new function.
1944         (trad_frame_set_reg_realreg): Use new function.
1945         (trad_frame_set_reg_addr): Use new function.
1946
1947 2018-09-01  Keith Seitz  <keiths@redhat.com>
1948
1949         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
1950         pulongest instead of "%lld".
1951         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
1952         ATTRIBUTE_UNUSED.
1953
1954 2018-08-31  Tom Tromey  <tom@tromey.com>
1955
1956         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
1957         variant part type.
1958
1959 2018-08-31  Pedro Alves  <palves@redhat.com>
1960
1961         * gdbarch.h: Regenerate.
1962
1963 2018-08-31  Pedro Alves  <palves@redhat.com>
1964
1965         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
1966         * target.h (Hardware watchpoint interfaces): Describe
1967         continuable/steppable/non-steppable watchpoints.
1968         * gdbarch.h, gdbarch.c: Regenerate.
1969
1970 2018-08-31  Pedro Alves  <palves@redhat.com>
1971
1972         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
1973         Delete.
1974         * s390-linux-nat.c
1975         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
1976         * target.h (target_ops::have_continuable_watchpoint): Delete.
1977         (target_have_continuable_watchpoint): Delete.
1978         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
1979         * target-delegates.c: Regenerate.
1980
1981 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1982
1983         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
1984         the files present in "gnulib/import/m4/".
1985
1986 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
1987
1988         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
1989         c.sw, c.swsp, and c.sdsp.
1990
1991 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
1992
1993         * riscv-tdep.c (struct riscv_inferior_data): Delete.
1994         (riscv_read_misa_reg): Don't cache value read into inferior data.
1995         (riscv_new_inferior_data): Delete.
1996         (riscv_inferior_data_cleanup): Delete.
1997         (riscv_inferior_data): Delete.
1998         (riscv_invalidate_inferior_data): Delete.
1999         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2000
2001 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2002
2003         * compile/compile-cplus-types.c
2004         (compile_cplus_instance::leave_scope): Take the address of scope
2005         object.
2006         (compile_cplus_instance::convert_qualified_base): Compare quals
2007         to 0.
2008
2009 2018-08-30  Keith Seitz  <keiths@redhat.com>
2010
2011         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2012         Use "%s" and host_address_to_string instead of "%p" in printf.
2013
2014 2018-08-29  Keith Seitz  <keiths@redhat.com>
2015
2016         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2017         and compile-cplus-types.c.
2018         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2019         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2020         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2021         Declare.
2022         * compile/compile-c-support.c: Include compile-cplus.h.
2023         (load_libcompile): Templatize.
2024         (get_compile_context): "New" function.
2025         (c_get_compile_context): Use get_compile_context.
2026         (cplus_get_compile_context): New function.
2027         (cplus_push_user_expression, cplus_pop_user_expression)
2028         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2029         (cplus_compute_program): Define new structs/functions.
2030         * compile/compile-cplus-symmbols.c: New file.
2031         * compile/compile-cplus-types.c: New file.
2032         * compile/compile-cplus.h: New file.
2033         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2034         Declare.
2035         * compile/compile-object-load.c (get_out_value_type): Use
2036         strncmp_iw when comparing symbol names.
2037         (compile_object_load): Add mst_bss and mst_data.
2038         * compile/compile.c (_initialize_compile): Remove
2039         -Wno-implicit-function-declaration from `compile_args'.
2040         * compile/gcc-cp-plugin.h: New file.
2041         * NEWS: Mention C++ compile support and new debug options.
2042
2043 2018-08-29  Keith Seitz  <keiths@redhat.com>
2044
2045         * linespec.c (collect_info::add_symbol): Make virtual.
2046         (struct symbol_searcher_collect_info): New struct.
2047         (symbol_searcher::find_all_symbols): New method.
2048         * symtab.h (class symbol_searcher): New class.
2049
2050 2018-08-29  Keith Seitz  <keiths@redhat.com>
2051
2052         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2053         Change to vector of block_symbol.  Update all users.
2054         (struct collect_info) <symbols>: Likewise.
2055         (collect_info::add_symbol): Take block_symbol as argument.
2056         Update all callers.
2057         (decode_compound_collector) <m_symbols>: Change type to vector
2058         of block_symbol.  Update all users.
2059         (decode_compound_collector::operator ()): Change parameter type
2060         to block_symbol.
2061         (find_method, find_function_symbols, find_linespec_symbols)
2062         (find_label_symbols_in_block, find_label_symbols): Change symbol
2063         vectors to block_symbol vectors.
2064         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2065         block_symbol.
2066
2067 2018-08-29  Keith Seitz  <keiths@redhat.com>
2068
2069         * linespec.c (symbolp): Remove typedef and VEC definitions.
2070         (bound_minimal_symbol_d): Likewise.
2071
2072 2018-08-29  Keith Seitz  <keiths@redhat.com>
2073
2074         * linespec.c (decode_compound_collector::decode_compound_collector):
2075         Remove initialization for `m_symtabs'.
2076         (decode_compound_collector::release_symbols): Change return type
2077         to std::vector.  Update all callers.
2078         (class decode_compound_collector) <m_symbols>: Change type to
2079         std::vector.
2080         (lookup_prefix_sym): Change return type to std::vector.  Update all
2081         callers.
2082         (compare_symbols): Remove.
2083         (std_compare_symbols): Rename to `compare_symbols'.
2084         (find_method): Change `sym_classes' parameter to std::vector.
2085         Update all callers.  Use std::sort to sort sym_classes.
2086         (find_linespec_symbols): Remove cleanup.
2087
2088 2018-08-29  Keith Seitz  <keiths@redhat.com>
2089
2090         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2091         std::vector.  Update all users.
2092         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2093         (struct collect_info) <minimal_symbols>: Likewise.
2094         (compare_msymbols): Return bool.  Change parameters to const
2095         bound_minimal_symbol references.
2096         (find_method, find_function_symbols, find_linespec_symbols): Change
2097         `minsyms' parameter to std::vector.  Update all callers.
2098
2099 2018-08-29  Keith Seitz  <keiths@redhat.com>
2100
2101         * linespec.c (struct linespec) <label_symbols>: Change type to
2102         std::vector.  Update all users.
2103         (find_label_symbols_in_block): Change `result' parameter to
2104         std::vector.  Update all callers.
2105         (find_label_symbols): Return std::vector.  Update all callers.
2106
2107 2018-08-29  Keith Seitz  <keiths@redhat.com>
2108
2109         * linespec.c (struct linespec) <function_symbols>: Change type to
2110         std::vector.  Update all users.
2111         (struct collect_info) <function_symbols>: Likewise.
2112         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2113         (std_compare_symbols): New function.
2114         (find_method, find_function_symbols, find_linespec_symbols)
2115         (find_label_symbols_in_block): Change `symbols' parameter to
2116         std::vector.  Update all callers.
2117         (find_label_symbols): Likewise for `function_symbols' and
2118         `label_funcs_ret'.
2119
2120 2018-08-29  Keith Seitz  <keiths@redhat.com>
2121
2122         * linespec.c (symtab_vector_up): Define.
2123         (struct linespec) <file_symtabs>: Change type to std::vector *.
2124         Update all uses.
2125         (struct collect_info) <file_symtabs>: Likewise.
2126         (collect_symtabs_from_filename): Return symtab_vector_up.
2127         Update all callers.
2128         (decode_objc): Remove cleanup.
2129         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2130         (symtab_collector::release_symtabs): Return symtab_vector_up.
2131         Update all callers.
2132         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2133         Update all users.
2134         (collect_symtabs_from_filename, symtabs_from_filename): Return
2135         symtab_vector_up.  Update all callers.
2136
2137 2018-08-29  Tom Tromey  <tom@tromey.com>
2138
2139         * csky-tdep.c (csky_analyze_prologue): Use
2140         core_addr_to_string_nz.
2141
2142 2018-08-29  Tom Tromey  <tom@tromey.com>
2143
2144         * windows-nat.c (struct xlate_exception) <them>: Change type to
2145         DWORD.
2146         (xlate): Fix formatting.  Remove last entry.
2147         (struct xlate_exception, xlate): Comment out.
2148         (windows_nat_target::resume): Use ranged for.
2149
2150 2018-08-29  Jim Wilson  <jimw@sifive.com>
2151
2152         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2153         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2154         of NT_PRFPREG.
2155         (riscv_linux_nat_target::store_registers): Likewise.
2156
2157 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2158
2159         PR gdb/23555
2160         PR gdb/23558
2161         * gnulib/aclocal.m4: Regenerate.
2162         * gnulib/config.in: Regenerate.
2163         * gnulib/configure: Regenerate.
2164         * gnulib/import/Makefile.am: Update.
2165         * gnulib/import/Makefile.in: Update.
2166         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2167         * gnulib/import/_Noreturn.h: ... this.
2168         * gnulib/import/alloca.in.h: Update.
2169         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2170         * gnulib/import/arg-nonnull.h: ... this.
2171         * gnulib/import/assure.h: Update.
2172         * gnulib/import/at-func.c: Update.
2173         * gnulib/import/basename-lgpl.c: Update.
2174         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2175         * gnulib/import/c++defs.h: ... this.
2176         * gnulib/import/canonicalize-lgpl.c: Update.
2177         * gnulib/import/cdefs.h: Update.
2178         * gnulib/import/chdir-long.c: Update.
2179         * gnulib/import/chdir-long.h: Update.
2180         * gnulib/import/cloexec.c: Update.
2181         * gnulib/import/cloexec.h: Update.
2182         * gnulib/import/close.c: Update.
2183         * gnulib/import/closedir.c: Update.
2184         * gnulib/import/config.charset: Update.
2185         * gnulib/import/dirent-private.h: Update.
2186         * gnulib/import/dirent.in.h: Update.
2187         * gnulib/import/dirfd.c: Update.
2188         * gnulib/import/dirname-lgpl.c: Update.
2189         * gnulib/import/dirname.h: Update.
2190         * gnulib/import/dosname.h: Update.
2191         * gnulib/import/dup-safer-flag.c: Update.
2192         * gnulib/import/dup-safer.c: Update.
2193         * gnulib/import/dup.c: Update.
2194         * gnulib/import/dup2.c: Update.
2195         * gnulib/import/errno.in.h: Update.
2196         * gnulib/import/error.c: Update.
2197         * gnulib/import/error.h: Update.
2198         * gnulib/import/exitfail.c: Update.
2199         * gnulib/import/exitfail.h: Update.
2200         * gnulib/import/extra/update-copyright: Update.
2201         * gnulib/import/fchdir.c: Update.
2202         * gnulib/import/fcntl.c: Update.
2203         * gnulib/import/fcntl.in.h: Update.
2204         * gnulib/import/fd-hook.c: Update.
2205         * gnulib/import/fd-hook.h: Update.
2206         * gnulib/import/fd-safer-flag.c: Update.
2207         * gnulib/import/fd-safer.c: Update.
2208         * gnulib/import/fdopendir.c: Update.
2209         * gnulib/import/filename.h: Update.
2210         * gnulib/import/filenamecat-lgpl.c: Update.
2211         * gnulib/import/filenamecat.h: Update.
2212         * gnulib/import/flexmember.h: Update.
2213         * gnulib/import/float+.h: Update.
2214         * gnulib/import/float.c: Update.
2215         * gnulib/import/float.in.h: Update.
2216         * gnulib/import/fnmatch.c: Update.
2217         * gnulib/import/fnmatch.in.h: Update.
2218         * gnulib/import/fnmatch_loop.c: Update.
2219         * gnulib/import/fpucw.h: Update.
2220         * gnulib/import/frexp.c: Update.
2221         * gnulib/import/frexpl.c: Update.
2222         * gnulib/import/fstat.c: Update.
2223         * gnulib/import/fstatat.c: Update.
2224         * gnulib/import/getcwd-lgpl.c: Update.
2225         * gnulib/import/getcwd.c: Update.
2226         * gnulib/import/getdtablesize.c: Update.
2227         * gnulib/import/getlogin_r.c: Update.
2228         * gnulib/import/getprogname.c: Update.
2229         * gnulib/import/getprogname.h: Update.
2230         * gnulib/import/gettext.h: Update.
2231         * gnulib/import/gettimeofday.c: Update.
2232         * gnulib/import/glob-libc.h: Update.
2233         * gnulib/import/glob.c: Update.
2234         * gnulib/import/glob.in.h: Update.
2235         * gnulib/import/glob_internal.h: Update.
2236         * gnulib/import/glob_pattern_p.c: Update.
2237         * gnulib/import/globfree.c: Update.
2238         * gnulib/import/hard-locale.c: Update.
2239         * gnulib/import/hard-locale.h: Update.
2240         * gnulib/import/intprops.h: Update.
2241         * gnulib/import/inttypes.in.h: Update.
2242         * gnulib/import/isnan.c: Update.
2243         * gnulib/import/isnand-nolibm.h: Update.
2244         * gnulib/import/isnand.c: Update.
2245         * gnulib/import/isnanl-nolibm.h: Update.
2246         * gnulib/import/isnanl.c: Update.
2247         * gnulib/import/itold.c: Update.
2248         * gnulib/import/libc-config.h: Update.
2249         * gnulib/import/limits.in.h: Update.
2250         * gnulib/import/localcharset.c: Update.
2251         * gnulib/import/localcharset.h: Update.
2252         * gnulib/import/localtime-buffer.c: Update.
2253         * gnulib/import/localtime-buffer.h: Update.
2254         * gnulib/import/lstat.c: Update.
2255         * gnulib/import/m4/00gnulib.m4: Update.
2256         * gnulib/import/m4/__inline.m4: Update.
2257         * gnulib/import/m4/absolute-header.m4: Update.
2258         * gnulib/import/m4/alloca.m4: Update.
2259         * gnulib/import/m4/builtin-expect.m4: Update.
2260         * gnulib/import/m4/canonicalize.m4: Update.
2261         * gnulib/import/m4/chdir-long.m4: Update.
2262         * gnulib/import/m4/close.m4: Update.
2263         * gnulib/import/m4/closedir.m4: Update.
2264         * gnulib/import/m4/configmake.m4: Update.
2265         * gnulib/import/m4/d-ino.m4: Update.
2266         * gnulib/import/m4/d-type.m4: Update.
2267         * gnulib/import/m4/dirent_h.m4: Update.
2268         * gnulib/import/m4/dirfd.m4: Update.
2269         * gnulib/import/m4/dirname.m4: Update.
2270         * gnulib/import/m4/double-slash-root.m4: Update.
2271         * gnulib/import/m4/dup.m4: Update.
2272         * gnulib/import/m4/dup2.m4: Update.
2273         * gnulib/import/m4/eealloc.m4: Update.
2274         * gnulib/import/m4/environ.m4: Update.
2275         * gnulib/import/m4/errno_h.m4: Update.
2276         * gnulib/import/m4/error.m4: Update.
2277         * gnulib/import/m4/exponentd.m4: Update.
2278         * gnulib/import/m4/exponentl.m4: Update.
2279         * gnulib/import/m4/extensions.m4: Update.
2280         * gnulib/import/m4/extern-inline.m4: Update.
2281         * gnulib/import/m4/fchdir.m4: Update.
2282         * gnulib/import/m4/fcntl-o.m4: Update.
2283         * gnulib/import/m4/fcntl.m4: Update.
2284         * gnulib/import/m4/fcntl_h.m4: Update.
2285         * gnulib/import/m4/fdopendir.m4: Update.
2286         * gnulib/import/m4/filenamecat.m4: Update.
2287         * gnulib/import/m4/flexmember.m4: Update.
2288         * gnulib/import/m4/float_h.m4: Update.
2289         * gnulib/import/m4/fnmatch.m4: Update.
2290         * gnulib/import/m4/fnmatch_h.m4: Update.
2291         * gnulib/import/m4/fpieee.m4: Update.
2292         * gnulib/import/m4/frexp.m4: Update.
2293         * gnulib/import/m4/frexpl.m4: Update.
2294         * gnulib/import/m4/fstat.m4: Update.
2295         * gnulib/import/m4/fstatat.m4: Update.
2296         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2297         * gnulib/import/m4/getcwd-path-max.m4: Update.
2298         * gnulib/import/m4/getcwd.m4: Update.
2299         * gnulib/import/m4/getdtablesize.m4: Update.
2300         * gnulib/import/m4/getlogin.m4: Update.
2301         * gnulib/import/m4/getlogin_r.m4: Update.
2302         * gnulib/import/m4/getpagesize.m4: Update.
2303         * gnulib/import/m4/getprogname.m4: Update.
2304         * gnulib/import/m4/gettimeofday.m4: Update.
2305         * gnulib/import/m4/glibc21.m4: Update.
2306         * gnulib/import/m4/glob.m4: Update.
2307         * gnulib/import/m4/glob_h.m4: Update.
2308         * gnulib/import/m4/gnulib-cache.m4: Update.
2309         * gnulib/import/m4/gnulib-common.m4: Update.
2310         * gnulib/import/m4/gnulib-comp.m4: Update.
2311         * gnulib/import/m4/gnulib-tool.m4: Update.
2312         * gnulib/import/m4/hard-locale.m4: Update.
2313         * gnulib/import/m4/include_next.m4: Update.
2314         * gnulib/import/m4/inttypes-pri.m4: Update.
2315         * gnulib/import/m4/inttypes.m4: Update.
2316         * gnulib/import/m4/isnand.m4: Update.
2317         * gnulib/import/m4/isnanl.m4: Update.
2318         * gnulib/import/m4/largefile.m4: Update.
2319         * gnulib/import/m4/limits-h.m4: Update.
2320         * gnulib/import/m4/localcharset.m4: Update.
2321         * gnulib/import/m4/locale-fr.m4: Update.
2322         * gnulib/import/m4/locale-ja.m4: Update.
2323         * gnulib/import/m4/locale-zh.m4: Update.
2324         * gnulib/import/m4/localtime-buffer.m4: Update.
2325         * gnulib/import/m4/longlong.m4: Update.
2326         * gnulib/import/m4/lstat.m4: Update.
2327         * gnulib/import/m4/malloc.m4: Update.
2328         * gnulib/import/m4/malloca.m4: Update.
2329         * gnulib/import/m4/math_h.m4: Update.
2330         * gnulib/import/m4/mbrtowc.m4: Update.
2331         * gnulib/import/m4/mbsinit.m4: Update.
2332         * gnulib/import/m4/mbsrtowcs.m4: Update.
2333         * gnulib/import/m4/mbstate_t.m4: Update.
2334         * gnulib/import/m4/memchr.m4: Update.
2335         * gnulib/import/m4/memmem.m4: Update.
2336         * gnulib/import/m4/mempcpy.m4: Update.
2337         * gnulib/import/m4/memrchr.m4: Update.
2338         * gnulib/import/m4/mkdir.m4: Update.
2339         * gnulib/import/m4/mkstemp.m4: Update.
2340         * gnulib/import/m4/mmap-anon.m4: Update.
2341         * gnulib/import/m4/mode_t.m4: Update.
2342         * gnulib/import/m4/msvc-inval.m4: Update.
2343         * gnulib/import/m4/msvc-nothrow.m4: Update.
2344         * gnulib/import/m4/multiarch.m4: Update.
2345         * gnulib/import/m4/nocrash.m4: Update.
2346         * gnulib/import/m4/off_t.m4: Update.
2347         * gnulib/import/m4/onceonly.m4: Update.
2348         * gnulib/import/m4/open-cloexec.m4: Update.
2349         * gnulib/import/m4/open.m4: Update.
2350         * gnulib/import/m4/openat.m4: Update.
2351         * gnulib/import/m4/opendir.m4: Update.
2352         * gnulib/import/m4/pathmax.m4: Update.
2353         * gnulib/import/m4/rawmemchr.m4: Update.
2354         * gnulib/import/m4/readdir.m4: Update.
2355         * gnulib/import/m4/readlink.m4: Update.
2356         * gnulib/import/m4/realloc.m4: Update.
2357         * gnulib/import/m4/rename.m4: Update.
2358         * gnulib/import/m4/rewinddir.m4: Update.
2359         * gnulib/import/m4/rmdir.m4: Update.
2360         * gnulib/import/m4/save-cwd.m4: Update.
2361         * gnulib/import/m4/secure_getenv.m4: Update.
2362         * gnulib/import/m4/setenv.m4: Update.
2363         * gnulib/import/m4/signal_h.m4: Update.
2364         * gnulib/import/m4/ssize_t.m4: Update.
2365         * gnulib/import/m4/stat-time.m4: Update.
2366         * gnulib/import/m4/stat.m4: Update.
2367         * gnulib/import/m4/std-gnu11.m4: Update.
2368         * gnulib/import/m4/stdbool.m4: Update.
2369         * gnulib/import/m4/stddef_h.m4: Update.
2370         * gnulib/import/m4/stdint.m4: Update.
2371         * gnulib/import/m4/stdio_h.m4: Update.
2372         * gnulib/import/m4/stdlib_h.m4: Update.
2373         * gnulib/import/m4/strchrnul.m4: Update.
2374         * gnulib/import/m4/strdup.m4: Update.
2375         * gnulib/import/m4/strerror.m4: Update.
2376         * gnulib/import/m4/string_h.m4: Update.
2377         * gnulib/import/m4/strstr.m4: Update.
2378         * gnulib/import/m4/strtok_r.m4: Update.
2379         * gnulib/import/m4/sys_socket_h.m4: Update.
2380         * gnulib/import/m4/sys_stat_h.m4: Update.
2381         * gnulib/import/m4/sys_time_h.m4: Update.
2382         * gnulib/import/m4/sys_types_h.m4: Update.
2383         * gnulib/import/m4/tempname.m4: Update.
2384         * gnulib/import/m4/time_h.m4: Update.
2385         * gnulib/import/m4/unistd-safer.m4: Update.
2386         * gnulib/import/m4/unistd_h.m4: Update.
2387         * gnulib/import/m4/warn-on-use.m4: Update.
2388         * gnulib/import/m4/wchar_h.m4: Update.
2389         * gnulib/import/m4/wchar_t.m4: Update.
2390         * gnulib/import/m4/wctype_h.m4: Update.
2391         * gnulib/import/m4/wint_t.m4: Update.
2392         * gnulib/import/malloc.c: Update.
2393         * gnulib/import/malloc/scratch_buffer.h: Update.
2394         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2395         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2396         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2397         * gnulib/import/malloca.c: Update.
2398         * gnulib/import/malloca.h: Update.
2399         * gnulib/import/malloca.valgrind: Update.
2400         * gnulib/import/math.in.h: Update.
2401         * gnulib/import/mbrtowc.c: Update.
2402         * gnulib/import/mbsinit.c: Update.
2403         * gnulib/import/mbsrtowcs-impl.h: Update.
2404         * gnulib/import/mbsrtowcs-state.c: Update.
2405         * gnulib/import/mbsrtowcs.c: Update.
2406         * gnulib/import/memchr.c: Update.
2407         * gnulib/import/memmem.c: Update.
2408         * gnulib/import/mempcpy.c: Update.
2409         * gnulib/import/memrchr.c: Update.
2410         * gnulib/import/mkdir.c: Update.
2411         * gnulib/import/mkstemp.c: Update.
2412         * gnulib/import/msvc-inval.c: Update.
2413         * gnulib/import/msvc-inval.h: Update.
2414         * gnulib/import/msvc-nothrow.c: Update.
2415         * gnulib/import/msvc-nothrow.h: Update.
2416         * gnulib/import/open.c: Update.
2417         * gnulib/import/openat-die.c: Update.
2418         * gnulib/import/openat-priv.h: Update.
2419         * gnulib/import/openat-proc.c: Update.
2420         * gnulib/import/openat.c: Update.
2421         * gnulib/import/openat.h: Update.
2422         * gnulib/import/opendir.c: Update.
2423         * gnulib/import/pathmax.h: Update.
2424         * gnulib/import/pipe-safer.c: Update.
2425         * gnulib/import/rawmemchr.c: Update.
2426         * gnulib/import/readdir.c: Update.
2427         * gnulib/import/readlink.c: Update.
2428         * gnulib/import/realloc.c: Update.
2429         * gnulib/import/ref-add.sin: Update.
2430         * gnulib/import/ref-del.sin: Update.
2431         * gnulib/import/rename.c: Update.
2432         * gnulib/import/rewinddir.c: Update.
2433         * gnulib/import/rmdir.c: Update.
2434         * gnulib/import/same-inode.h: Update.
2435         * gnulib/import/save-cwd.c: Update.
2436         * gnulib/import/save-cwd.h: Update.
2437         * gnulib/import/scratch_buffer.h: Update.
2438         * gnulib/import/secure_getenv.c: Update.
2439         * gnulib/import/setenv.c: Update.
2440         * gnulib/import/signal.in.h: Update.
2441         * gnulib/import/stat-time.c: Update.
2442         * gnulib/import/stat-time.h: Update.
2443         * gnulib/import/stat-w32.c: Update.
2444         * gnulib/import/stat-w32.h: Update.
2445         * gnulib/import/stat.c: Update.
2446         * gnulib/import/stdbool.in.h: Update.
2447         * gnulib/import/stddef.in.h: Update.
2448         * gnulib/import/stdint.in.h: Update.
2449         * gnulib/import/stdio.in.h: Update.
2450         * gnulib/import/stdlib.in.h: Update.
2451         * gnulib/import/str-two-way.h: Update.
2452         * gnulib/import/strchrnul.c: Update.
2453         * gnulib/import/strdup.c: Update.
2454         * gnulib/import/streq.h: Update.
2455         * gnulib/import/strerror-override.c: Update.
2456         * gnulib/import/strerror-override.h: Update.
2457         * gnulib/import/strerror.c: Update.
2458         * gnulib/import/string.in.h: Update.
2459         * gnulib/import/stripslash.c: Update.
2460         * gnulib/import/strnlen1.c: Update.
2461         * gnulib/import/strnlen1.h: Update.
2462         * gnulib/import/strstr.c: Update.
2463         * gnulib/import/strtok_r.c: Update.
2464         * gnulib/import/sys_stat.in.h: Update.
2465         * gnulib/import/sys_time.in.h: Update.
2466         * gnulib/import/sys_types.in.h: Update.
2467         * gnulib/import/tempname.c: Update.
2468         * gnulib/import/tempname.h: Update.
2469         * gnulib/import/time.in.h: Update.
2470         * gnulib/import/unistd--.h: Update.
2471         * gnulib/import/unistd-safer.h: Update.
2472         * gnulib/import/unistd.in.h: Update.
2473         * gnulib/import/unsetenv.c: Update.
2474         * gnulib/import/verify.h: Update.
2475         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2476         * gnulib/import/wchar.in.h: Update.
2477         * gnulib/import/wctype.in.h: Update.
2478         * gnulib/import/xalloc-oversized.h: Update.
2479         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2480         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2481
2482 2018-08-16  Gary Benson <gbenson@redhat.com>
2483
2484         PR gdb/13000:
2485         * gdb/main.c (captured_main_1): Exit with nonzero status
2486         in batch mode if the last command to be executed failed.
2487         * NEWS: Mention the above.
2488
2489 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
2490
2491         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
2492         end of warning message.
2493
2494 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2495
2496         PR gdb/22943:
2497         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
2498         (aarch64_extract_return_value): Use
2499         aapcs_is_vfp_call_or_return_candidate.
2500         (aarch64_return_in_memory): Likewise.
2501         (aarch64_store_return_value): Likewise.
2502
2503 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2504
2505         * aarch64-tdep.c
2506         (aapcs_is_vfp_call_or_return_candidate): Make static
2507         (pass_in_v_or_stack): Remove function.
2508         (pass_in_v_vfp_candidate): New function.
2509         (aarch64_push_dummy_call): Check for float register candidates.
2510
2511 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2512
2513         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
2514         (aapcs_is_vfp_call_or_return_candidate_1): New function.
2515         (aapcs_is_vfp_call_or_return_candidate): Likewise.
2516
2517 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
2518
2519         PR build/23399
2520         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
2521         (struct ipa_sym_addresses): Rename to...
2522         (struct ipa_sym_addresses_common): ... this.
2523         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
2524
2525 2018-08-28  Tom Tromey  <tom@tromey.com>
2526
2527         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2528         (token_fifo): Now a std::vector.
2529         (yylex, c_parse): Update.
2530         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2531         (token_fifo): Now a std::vector.
2532         (yylex, d_parse): Update.
2533         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2534         (token_fifo): Now a std::vector.
2535         (yylex, go_parse): Update.
2536
2537 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
2538
2539         * parser-defs.h (struct type_stack) <elements>: Change type to
2540         std::vector<union type_stack_elt>.
2541         <depth, size>: Remove.
2542         * parse.c (parse_exp_in_context_1): Adjust.
2543         (type_stack_reserve): Remove.
2544         (check_type_stack_depth): Remove.
2545         (insert_into_type_stack): Adjust to std::vector.
2546         (insert_type): Likewise.
2547         (push_type): Likewise.
2548         (push_type_int): Likewise.
2549         (insert_type_address_space): Likewise.
2550         (pop_type): Likewise.
2551         (pop_type_int): Likewise.
2552         (pop_typelist): Likewise.
2553         (pop_type_stack): Likewise.
2554         (append_type_stack): Likewise.
2555         (push_type_stack): Likewise.
2556         (get_type_stack): Likewise.
2557         (type_stack_cleanup): Likewise.
2558         (push_typelist): Likewise.
2559         (follow_types): Likewise.
2560         (_initialize_parse): Likewise.
2561
2562 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2563
2564         * NEWS: Mention csky target.
2565
2566 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
2567             Hafiz Abid Qadeer  <abidh@codesourcery.com>
2568             Don Breazeal  <donb@codesourcery.com>
2569
2570         * csky-linux-tdep.c: New file.
2571         * csky-tdep.c: Likewise.
2572         * csky-tdep.h: Likewise.
2573         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
2574         csky-tdep.o.
2575         (HFILES_NO_SRCDIR): Add csky-tdep.h.
2576         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
2577         * configure.tgt: Add csky support.
2578
2579 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
2580
2581         * python/py-framefilter.c (py_print_frame): Print frame architecture
2582         when printing on an MI output.
2583
2584 2018-08-27  Tom Tromey  <tom@tromey.com>
2585
2586         PR build/23087:
2587         * configure: Rebuild.
2588         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
2589
2590 2018-08-27  Tom Tromey  <tom@tromey.com>
2591
2592         * aarch64-linux-tdep.c
2593         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
2594         casts to int.
2595
2596 2018-08-27  Tom Tromey  <tom@tromey.com>
2597
2598         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
2599         unsigned.
2600         (ppc64_standard_linkage1, ppc64_standard_linkage2)
2601         (ppc64_standard_linkage3, ppc64_standard_linkage4)
2602         (ppc64_standard_linkage5, ppc64_standard_linkage6)
2603         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
2604         unsigned.
2605
2606 2018-08-27  Tom Tromey  <tom@tromey.com>
2607
2608         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
2609         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
2610
2611 2018-08-27  Tom Tromey  <tom@tromey.com>
2612
2613         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
2614         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
2615         ULONGEST_MAX.
2616         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
2617         ULONGEST_MAX.
2618         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
2619         ULONGEST_MAX.
2620         * sparc-linux-tdep.c (sparc32_linux_sigframe)
2621         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
2622         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
2623         ULONGEST_MAX.
2624         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
2625         (ppc64_linux_sigaction_tramp_frame)
2626         (ppc32_linux_sighandler_tramp_frame)
2627         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2628         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
2629         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
2630         * mn10300-linux-tdep.c (am33_linux_sigframe)
2631         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
2632         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
2633         * mips-linux-tdep.c (mips_linux_o32_sigframe)
2634         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
2635         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
2636         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
2637         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
2638         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
2639         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
2640         * microblaze-linux-tdep.c
2641         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2642         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
2643         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
2644         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
2645         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
2646         * common/common-types.h (ULONGEST_MAX): New define.
2647         (CORE_ADDR_MAX): Fix formatting.
2648         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
2649         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
2650         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
2651         (arm_linux_rt_sigreturn_tramp_frame)
2652         (arm_eabi_linux_sigreturn_tramp_frame)
2653         (arm_eabi_linux_rt_sigreturn_tramp_frame)
2654         (thumb2_eabi_linux_sigreturn_tramp_frame)
2655         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
2656         (arm_linux_restart_syscall_tramp_frame)
2657         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
2658         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
2659         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
2660         ULONGEST_MAX.
2661         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
2662
2663 2018-08-27  Tom Tromey  <tom@tromey.com>
2664
2665         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
2666         CORE_ADDR_MAX.
2667         * mips-tdep.c (mips_deal_with_atomic_sequence)
2668         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
2669         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
2670         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
2671         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
2672         CORE_ADDR_MAX.
2673         * aarch64-tdep.c (aarch64_software_single_step): Use
2674         CORE_ADDR_MAX.
2675
2676 2018-08-27  Tom Tromey  <tom@tromey.com>
2677
2678         * linespec.c (complete_linespec_component): Add cast to "char".
2679         * completer.c (completion_tracker::build_completion_result): Add
2680         cast to "char".
2681
2682 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2683
2684         * solist.h (struct solist, struct target_so_ops): Fix
2685         indentation.
2686
2687 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2688
2689         * ada-tasks.c (ada_task_info_s): Remove typedef.
2690         (DEF_VEC_O(ada_task_info_s)): Remove.
2691         (struct ada_tasks_inferior_data): Initialize fields.
2692         <task_list>: Make an std::vector.
2693         (get_ada_tasks_inferior_data): Allocate with new.
2694         (ada_get_task_number): Adjust.
2695         (get_task_number_from_id): Likewise.
2696         (valid_task_id): Likewise.
2697         (ada_get_task_info_from_ptid): Likewise.
2698         (iterate_over_live_ada_tasks): Likewise.
2699         (add_ada_task): Likewise.
2700         (read_known_tasks): Likewise.
2701         (ada_build_task_list): Likewise.
2702         (print_ada_task_info): Likewise.
2703         (info_task): Likewise.
2704         (task_command_1): Likewise.
2705
2706 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2707
2708         * ada-lang.c (add_angle_brackets): Return std::string.
2709
2710 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
2711
2712         * python/py-threadevent.c (py_get_event_thread): Initialize
2713         pythread.
2714
2715 2018-08-24  Pedro Alves  <palves@redhat.com>
2716
2717         * python/py-bpevent.c (create_breakpoint_event_object): Use
2718         copy-initialization.
2719         * python/py-continueevent.c (emit_continue_event): Use
2720         copy-initialization.
2721         * python/py-exitedevent.c (create_exited_event_object): Return a
2722         gdbpy_ref<>.
2723         (emit_exited_event): Use copy-initialization.
2724         * python/py-inferior.c (python_new_inferior)
2725         (python_inferior_deleted, add_thread_object): Use
2726         copy-initialization.
2727         * python/py-infevents.c (create_inferior_call_event_object)
2728         (create_register_changed_event_object)
2729         (create_memory_changed_event_object): Return a gdbpy_ref<>.
2730         (emit_inferior_call_event, emit_memory_changed_event)
2731         (emit_register_changed_event): Use copy-initialization.
2732         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2733         Return a gdbpy_ref<>.
2734         (emit_new_objfile_event): Use copy-initialization.
2735         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
2736         (emit_clear_objfiles_event): Use copy-initialization.
2737         * python/py-signalevent.c (create_signal_event_object): Use
2738         copy-initialization.
2739         * python/py-threadevent.c (create_thread_event_object): Use
2740         copy-initialization.
2741
2742 2018-08-24  Pedro Alves  <palves@redhat.com>
2743             Simon Marchi  <simon.marchi@ericsson.com>
2744
2745         PR gdb/23379
2746         * python/py-continueevent.c: Include "gdbthread.h".
2747         (create_continue_event_object): Add intro comment.  Add 'ptid'
2748         parameter.  Use it to find thread to pass to
2749         create_thread_event_object.
2750         (emit_continue_event): Pass PTID down to
2751         create_continue_event_object.
2752         * python/py-event.h (py_get_event_thread): Declare.
2753         (create_thread_event_object): Remove default from 'thread'
2754         parameter.
2755         * python/py-stopevent.c (create_stop_event_object): Use
2756         py_get_event_thread.
2757         * python/py-threadevent.c (get_event_thread): Rename to ...
2758         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
2759         and use it to find the thread.
2760         (create_thread_event_object): Assert that THREAD isn't null.
2761         Don't find the event thread here.
2762
2763 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
2764
2765         * block.h (blockrange, blockranges): New struct declarations.
2766         (struct block): Add new field named `ranges'.
2767         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
2768         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
2769         macros for accessing ranges in struct block.
2770         (make_blockranges): New declaration.
2771         block.c (make_blockranges): New function.
2772         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
2773         for block.
2774         * symtab.h (find_pc_partial_function): Add new parameter `block'.
2775         * blockframe.c (cache_pc_function_block): New static global.
2776         (clear_pc_function_cache): Clear cache_pc_function_block.
2777         (find_pc_partial_function): Move comment to symtab.h.  Add
2778         support for non-contiguous blocks.
2779         * cli/cli-cmds.c (block.h): Include.
2780         (print_disassembly): Handle printing of non-contiguous blocks.
2781         (disassemble_current_function): Likewise.
2782         (disassemble_command): Likewise.
2783
2784         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
2785         BLOCK_START.
2786         * blockframe.c (get_pc_function_start): Likewise.
2787         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
2788         (gcc_symbol_address): Likewise.
2789         * compile/compile-object-run.c (compile_object_run): Likewise.
2790         * compile/compile.c (get_expr_block_and_pc): Likewise.
2791         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
2792         (func_addr_to_tail_call_list): Likewise.
2793         * findvar.c (default_read_var_value): Likewise.
2794         * inline-frame.c (inline_frame_this_id): Likewise.
2795         (skip-inline_frames): Likewise.
2796         * infcmd.c (until_next_command): Likewise.
2797         * linespec.c (convert_linespec_to_sals): Likewise.
2798         * parse.c (parse_exp_in_context_1): Likewise.
2799         * printcmd.c (build_address_symbolic): likewise.
2800         (info_address_command): Likewise.
2801         symtab.c (find_function_start_sal): Likewise.
2802         (skip_prologue_sal): Likewise.
2803         (find_function_alias_target): Likewise.
2804         (find_gnu_ifunc): Likewise.
2805         * stack.c (find_frame_funname): Likewise.
2806         * symtab.c (fixup_symbol_section): Likewise.
2807         (find_function_start_sal): Likewise.
2808         (skip_prologue_sal): Likewsie.
2809         (find_function_alias_target): Likewise.
2810         (find_gnu_ifunc): Likewise.
2811         * tracepoint.c (info_scope_command): Likewise.
2812         * value.c (value_fn_field): Likewise.
2813
2814         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
2815         in place of find_pc_partial_function.
2816         * blockframe.c (find_function_entry_range_from_pc): New function.
2817         * symtab.h (find_function_entry_range_from_pc): Declare and document.
2818         * objfiles.c (objfile_relocate1): Relocate start and end addresses
2819         for each range in a block.
2820
2821
2822 2018-08-23  Xavier Roirand  <roirand@adacore.com>
2823
2824         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
2825         incrementation.
2826
2827 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2828
2829         * solib-svr4.c (read_program_headers_from_bfd): Return
2830         gdb::optional<gdb::byte_vector>.
2831         (svr4_exec_displacement): Adjust.
2832
2833 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2834
2835         * solib-svr4.c (read_program_header): Return
2836         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
2837         (find_program_interpreter): Return
2838         gdb::optional<gdb::byte_vector>.
2839         (scan_dyntag_auxv): Adjust.
2840         (enable_break): Adjust.
2841         (svr4_exec_displacement): Adjust.
2842
2843 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2844
2845         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
2846         * inf-child.c (inf_child_target::terminal_save_inferior): New.
2847
2848 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2849
2850         * guile/scm-string.c (gdbscm_scm_from_printf): Use
2851         string_vprintf.
2852         * guile/scm-utils.c (gdbscm_printf): Likewise.
2853         * serial.c (serial_printf): Likewise.
2854         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
2855
2856 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
2857
2858         * stack.c (print_frame): Print frame architecture when printing on
2859         an MI output.
2860         * NEWS: Mention new "arch" attribute in frame output.
2861
2862 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
2863
2864         * arch/aarch64.h (aarch64_regnum): Update comment.
2865
2866 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
2867
2868         * NEWS: Add SVE to 8.2 section.
2869
2870 2018-08-21  Pedro Alves  <palves@redhat.com>
2871
2872         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
2873         out from gdbscm_parse_function_args.
2874         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
2875         gdbscm_parse_function_args_1.
2876
2877 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
2878
2879         PR gdb/17816
2880         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
2881         operator.
2882
2883 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
2884
2885         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
2886
2887 2018-08-19  Michael Spang  <spang@google.com>
2888
2889         PR gdb/11786
2890         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
2891         for PT_TLS segments.
2892
2893 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
2894
2895         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
2896         dwarf_variable_value.
2897         * dwarf2-frame.c (class dwarf_expr_executor):
2898         Add override for dwarf_variable_value.
2899         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
2900         (class symbol_needs_eval_context): Likewise.
2901         (indirect_synthetic_pointer): Add forward declaration.
2902         (sect_variable_value): New function.
2903         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
2904         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
2905         for DW_OP_GNU_variable_value.
2906
2907 2018-08-16  Tom Tromey  <tom@tromey.com>
2908
2909         * top.c (read_command_file): Update.
2910         (command_line_input): Remove "repeat" argument.
2911         * ada-lang.c (get_selections): Update.
2912         * linespec.c (decode_line_2): Update.
2913         * defs.h (command_line_input): Remove argument.
2914         * cli/cli-script.c (read_next_line): Update.
2915         * python/py-gdb-readline.c: Update.
2916
2917 2018-08-17  Tom Tromey  <tom@tromey.com>
2918
2919         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
2920         command_line_input.
2921
2922 2018-08-15  Tom Tromey  <tom@tromey.com>
2923
2924         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
2925
2926 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
2927
2928         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
2929         If used, use find_pc_partial_function to find address range
2930         to disassemble.
2931         * mi/mi-main.c (mi_cmd_list_features): Report
2932         "data-disassemble-a-option" feature.
2933         * NEWS: Mention new -data-disassemble option -a.
2934
2935 2018-08-13  Tom Tromey  <tom@tromey.com>
2936
2937         * common/common-defs.h (_FORTIFY_SOURCE): Define.
2938
2939 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2940
2941         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
2942         (aarch64_linux_collect_sve_regset): Likewise.
2943         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
2944         * regcache.h (regcache_map_entry_size): New function.
2945
2946 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2947
2948         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
2949         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
2950         (SVE_HEADER_VL_LENGTH): Likewise.
2951         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
2952         (SVE_HEADER_FLAGS_LENGTH): Likewise.
2953         (SVE_HEADER_RESERVED_LENGTH): Likewise.
2954         (SVE_HEADER_SIZE_OFFSET): Likewise.
2955         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
2956         (SVE_HEADER_VL_OFFSET): Likewise.
2957         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
2958         (SVE_HEADER_FLAGS_OFFSET): Likewise.
2959         (SVE_HEADER_RESERVED_OFFSET): Likewise.
2960         (SVE_HEADER_SIZE): Likewise.
2961         (aarch64_linux_core_read_vq): Add function.
2962         (aarch64_linux_core_read_description): Check for SVE section.
2963
2964 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2965
2966         * aarch64-fbsd-tdep.c
2967         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
2968         collect_size.
2969         * aarch64-linux-tdep.c
2970         (aarch64_linux_iterate_over_regset_sections): Likewise.
2971         * alpha-linux-tdep.c
2972         (alpha_linux_iterate_over_regset_sections):
2973         * alpha-nbsd-tdep.c
2974         (alphanbsd_iterate_over_regset_sections): Likewise.
2975         * amd64-fbsd-tdep.c
2976         (amd64fbsd_iterate_over_regset_sections): Likewise.
2977         * amd64-linux-tdep.c
2978         (amd64_linux_iterate_over_regset_sections): Likewise.
2979         * arm-bsd-tdep.c
2980         (armbsd_iterate_over_regset_sections): Likewise.
2981         * arm-fbsd-tdep.c
2982         (arm_fbsd_iterate_over_regset_sections): Likewise.
2983         * arm-linux-tdep.c
2984         (arm_linux_iterate_over_regset_sections): Likewise.
2985         * corelow.c (get_core_registers_cb): Likewise.
2986         (core_target::fetch_registers): Likewise.
2987         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
2988         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
2989         * gdbarch.h (void): Regenerate.
2990         * gdbarch.sh: Add supply_size and collect_size.
2991         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
2992         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
2993         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
2994         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
2995         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
2996         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
2997         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
2998         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
2999         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3000         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3001         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3002         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3003         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3004         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3005         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3006         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3007         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3008         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3009         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3010         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3011         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3012         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3013         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3014         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3015         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3016         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3017         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3018         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3019         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3020         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3021
3022 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3023
3024         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3025         with string_printf.
3026
3027 2018-08-10  Keith Seitz  <keiths@redhat.com>
3028
3029         * compile/compile-c-support.c (add_code_header, add_code_footer):
3030         Move into policy class.
3031         (c_push_user_expression, pop_user_expression_nop)
3032         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3033         (compile_program): New host class.
3034         (c_compile_program): New typedef.
3035         (c_compute_porgram): Use c_compile_program.
3036
3037 2018-08-10  Keith Seitz  <keiths@redhat.com>
3038
3039         * compile/compile-internal.h (compile_instance::~compile_instance):
3040         Remove calls to htab_delete.
3041         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3042         * compile.c (compile_instance::compile_instance): Initialize
3043         htab unique pointers.
3044         (compile_instance::get_cached_type, compile_instance::insert_type)
3045         (compile_instance::error_symbol_once): Update for unique_ptr.
3046
3047 2018-08-10  Keith Seitz  <keiths@redhat.com>
3048
3049         * compile/compile-c-symbols.c (struct symbol_error)
3050         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3051         (compile_instance::insert_symbol_error)
3052         (compile_instance::error_symbol_once): Move to ...
3053         * compile/compile.c: ... here.
3054
3055 2018-08-10  Keith Seitz  <keiths@redhat.com>
3056
3057         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3058         instead of `new_compile_instance'.
3059         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3060         Update description.
3061         If the symbol error map is not initialized, create it.
3062         (generate_c_for_for_one_symbol): Do not check/initialize
3063         the symbol error map.
3064         * compile/compile-c-types.c (compile_c_instance): Make a class.
3065         Update all callers.
3066         (compile_instance::compile_instance): Initialize the type cache.
3067         (get_cached_type): New function.
3068         (insert_type): Update description.
3069         (compile_c_instance::m_default_cflags): Define.
3070         (convert_type): Update description.  Use get_cached_type.
3071         (delete_instance): Moved to destructor.
3072         (new_compile_instance): Moved to constructor.
3073         * compile/compile-c.h (compile_c_instance): Make class inheriting
3074         from compile_instance.
3075         <base>: Remove field.
3076         <type_map, symbol_err_map>: Move to base class.
3077         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3078         * compile/compile-internal.h (compile_instance): Make class.
3079         <type_map_t, symbol_err_map_t>: Define.
3080         <fe>: Rename to `m_gcc_fe'.
3081         <scope, block, gcc_target_options>: Add `m_' prefix.
3082         <m_type_map, m_symbol_err_map>: New fields, moved from
3083         compile_c_instance.
3084         <destroy>: Remove.
3085         (convert_type, new_compile_instance): Remove.
3086         * compile/compile.c (cleanup_compile_instance): Remove.
3087         (compile_to_object): Use unique_ptr to eliminate cleanups.
3088         (compile_instance::set_print_callback, compile_instance::version)
3089         (compile_instance::set_verbose)
3090         (compile_instance::set_driver_filename)
3091         (compile_instance::set_triplet_regexp)
3092         (compile_instance::set_arguments)
3093         (compile_instance::set_source_file)
3094         (compile_instance::compile): Define.
3095
3096 2018-08-10  Keith Seitz  <keiths@redhat.com>
3097
3098         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3099         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3100         gcc-c-fe.def to define C plugin.
3101         (delete_instance): Delete `c_plugin'.
3102         (new_compile_instance): Initialize `c_plugin'.
3103         * compile/compile-c.h: Include gcc_c_plugin.h.
3104         (struct compile_c_instance) <c_plugin>: New member.
3105         * gcc-c-plugin.h: New file.
3106         Update all callers with API change.
3107
3108 2018-08-10  Keith Seitz  <keiths@redhat.com>
3109
3110         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3111         (HFILES_NO_SRCDIR): ... to here.
3112         Add compile-internal.h and compile-c.h.
3113         * compile/compile-c-support.c: Include compile-c.h.
3114         * compile/compile-c-symbols.c: Include compile-c.h.
3115         (generate_c_for_variable_locations): Update comment.
3116         * compile/compile-c-types.c: Include compile-c.h.
3117         * compile/compile-c.h: New file -- moved C language declarations
3118         from other files here.
3119         * compile/compile-internal.h: Do not include hashtab.h or
3120         common/enum-flags.h.
3121         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3122         (gcc_convert_symbol, gcc_symbol_address)
3123         (generate_c_for_variable_locations, c_get_mode_for_size)
3124         (c_get_range_decl_name): Definitions moved to compile-c.h.
3125         * compile/compile-loc2c.c: Include compile-c.h.
3126
3127 2018-08-10  Keith Seitz  <keiths@redhat.com>
3128
3129         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3130         (c_symbol_substitution_name): ... this.
3131         Update all callers.
3132
3133 2018-08-10  Keith Seitz  <keiths@redhat.com>
3134
3135         * compile/compile-c-support.c (c_compute_program): Use
3136         unique_xmalloc_ptr to eliminate cleanup.
3137         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3138         Return a unique_xmalloc_ptr and eliminate cleanup.
3139         * compile/compile-internal.h (generate_c_for_variable_locations):
3140         Return unique_xmalloc_ptr and update description.
3141
3142 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3143
3144         * corelow.c (core_target::get_core_register_section): Rename
3145         min_size to section_min_size.
3146
3147 2018-08-09  Jim Wilson  <jimw@sifive.com>
3148
3149         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3150         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3151         * NEWS: Mention new GNU/Linux RISC-V target.
3152         * configure.host: Add riscv*-*-linux*.
3153         * configure.nat: Add riscv*.
3154         * configure.tgt: Add riscv*-*-linux*.
3155         * riscv-linux-nat.c: New file.
3156         * riscv-linux-tdep.c: New file.
3157
3158 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3159
3160         * infrun.c (resume): Make static, add forward declaration.
3161         (proceed): Update header comment.
3162         * infrun.h (resume): Delete declaration.
3163
3164 2018-08-09  Tom Tromey  <tom@tromey.com>
3165
3166         * riscv-tdep.h: Minor formatting fixes.
3167
3168 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3169
3170         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3171         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3172         (test_mkdir_recursive): Likewise.
3173         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3174
3175 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3176
3177         * valarith.c (value_subscripted_rvalue): If an array is not in
3178         memory, and we don't know the upper bound, then we can't know that
3179         the requested element exists or not.
3180
3181 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3182
3183         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3184         (target_options_to_string): Add comment.
3185
3186 2018-08-08  Tom Tromey  <tom@tromey.com>
3187
3188         * unittests/scoped_mmap-selftests.c: Check result of "write".
3189
3190 2018-08-08  Jim Wilson  <jimw@sifive.com>
3191
3192         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3193         (decode_register_index_short): New.
3194         (decode_j_type_insn, decode_cj_type_insn): New.
3195         (decode_b_type_insn, decode_cb_type_insn): New.
3196         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3197         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3198         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3199         is_c_sw_insn instead of is_sw_insn.
3200         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3201         (riscv_software_single_step): New.
3202         * riscv-tdep.h (riscv_software_single_step): Declare.
3203
3204         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3205         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3206
3207 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3208
3209         PR gdb/18050:
3210         * target.c (dispose_inferior): Don't dispose of inferiors that are
3211         already killed.
3212
3213 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3214
3215         * remote.c (remote_target::download_tracepoint): Change char* to
3216         const char*.
3217
3218 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3219
3220         * target.h (target_options_to_string): Return an std::string.
3221         * target.c (str_comma_list_concat_elem): Return void, use
3222         std::string.
3223         (do_option): Likewise.
3224         (target_options_to_string): Return an std::string.
3225         * linux-nat.c (linux_nat_target::wait): Adjust.
3226         * target-debug.h (target_debug_print_options): Adjust.
3227
3228 2018-08-07  Tom Tromey  <tom@tromey.com>
3229
3230         * Makefile.in (CPPFLAGS): New variable.
3231         (INTERNAL_CPPFLAGS): Use it.
3232
3233 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3234
3235         * NEWS: Mention the index cache.
3236
3237 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3238
3239         * common/pathstuff.h (get_standard_cache_dir): New.
3240         * common/pathstuff.c (get_standard_cache_dir): New.
3241         * build-id.h (build_id_to_string): New.
3242         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
3243         DEBUG_STR_SUFFIX): Move to here.
3244         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
3245         DEBUG_STR_SUFFIX): Move from there.
3246         (write_psymtabs_to_index): Make non-static, add basename
3247         parameter.  Write to temporary files, rename when done.
3248         (save_gdb_index_command): Adjust call to
3249         write_psymtabs_to_index.
3250         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
3251         field.
3252         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
3253         (get_gdb_index_contents_from_cache): New.
3254         (get_gdb_index_contents_from_cache_dwz): New.
3255         (dwarf2_initialize_objfile): Read index from cache.
3256         (dwarf2_build_psymtabs): Save to index.
3257         * dwarf-index-cache.h: New file.
3258         * dwarf-index-cache.c: New file.
3259         * dwarf-index-write.h: New file.
3260
3261 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3262
3263         * gnulib/aclocal.m4: Re-generate.
3264         * gnulib/config.in: Re-generate.
3265         * gnulib/configure: Re-generate.
3266         * gnulib/import/Makefile.am: Re-generate.
3267         * gnulib/import/Makefile.in: Re-generate.
3268         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3269         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3270         * gnulib/import/m4/mkdir.m4: New file.
3271         * gnulib/import/mkdir.c: New file.
3272         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
3273         module.
3274
3275 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3276
3277         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
3278         * common/scoped_mmap.c: New file.
3279         * common/scoped_mmap.h (destroy): New method.
3280         (~scoped_mmap, reset): Use destroy.
3281         (scoped_mmap): New move constructor.
3282         (mmap_file): New declaration.
3283         * unittests/scoped_mmap-selftests.c (test_normal,
3284         test_invalid_filename, run_tests): New functions.
3285         (_initialize_scoped_mmap_selftests): Register selftest.
3286
3287 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3288
3289         * dwarf2read.c (read_gdb_index_from_section): Rename to...
3290         (read_gdb_index_from_buffer): ... this.  Remove section
3291         parameter, add buffer parameter.
3292         (get_gdb_index_contents_ftype,
3293         get_gdb_index_contents_dwz_ftype): New typedefs.
3294         (dwarf2_read_gdb_index): Add callback parameters to get the
3295         index contents.
3296         (get_gdb_index_contents_from_section): New.
3297         (dwarf2_initialize_objfile): Update call to
3298         dwarf2_read_gdb_index.
3299
3300 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3301
3302         * common/filestuff.h (gdb_fopen_cloexec): New overload.
3303         (gdb_open_cloexec): Likewise.
3304         * nat/linux-osdata.c (command_from_pid): Use string_printf.
3305         (commandline_from_pid): Likewise.
3306         (linux_xfer_osdata_threads): Likewise.
3307         (linux_xfer_osdata_fds): Likewise.
3308         * ada-lang.c (is_package_name): Likewise.
3309         * auxv.c (procfs_xfer_auxv): Likewise.
3310         * breakpoint.c (print_one_breakpoint_location): Use
3311         uiout::field_fmt.
3312         (print_one_catch_solib): Use string_printf.
3313         * coff-pe-read.c (add_pe_exported_sym): Likewise.
3314         (add_pe_forwarded_sym): Likewise.
3315         * dwarf2read.c (create_type_unit_group): Likewise.
3316         (build_error_marker_type): Likewise.
3317         * infcall.c (get_function_name): Likewise.
3318         * valprint.c (print_converted_chars_to_obstack): Likewise.
3319         * xtensa-tdep.c (xtensa_register_type): Likewise.
3320
3321 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
3322
3323         * remote.c (remote_target::download_tracepoint): Fix format
3324         string errors.
3325
3326 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3327
3328         * tracefile.c: Include common/byte-vector.h.
3329         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
3330         with trace_regblock_size if needed.  Update uses of buf.
3331
3332 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3333
3334         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
3335         std::vector<unsigned char>.
3336         * tracepoint.c (collection_list::collection_list): Remove
3337         m_regs_mask initializer from initializer list.  Resize
3338         m_regs_mask using the largest remote register number.
3339         (collection_list::add_remote_register): Remove size check on
3340         m_regs_mask.  Use at to access element.
3341         (collection_list::stringify): Change type of temp_buf to
3342         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
3343         stringify the register mask.  Use pack_hex_byte for the register
3344         mask.
3345
3346 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3347
3348         * tracepoint.h (class collection_list) <add_register>: Remove.
3349         <add_remote_register, add_ax_registers, add_local_register>:
3350         Declare.
3351         <add_memrange>: Add scope parameter.
3352         * tracepoint.c (encode_actions_1): Likewise.
3353         (collection_list::add_register): Rename to ...
3354         (collection_list::add_remote_register): ... this.  Update
3355         comment.
3356         (collection_list::add_ax_registers, add_local_register): New
3357         methods.
3358         (collection_list::add_memrange): Add scope parameter.  Call
3359         add_local_register instead of add_register.
3360         (finalize_tracepoint_aexpr): New function.
3361         (collection_list::collect_symbol): Update calls to add_memrange.
3362         Call add_local_register instead of add_register.  Call
3363         add_ax_registers.  Call finalize_tracepoint_aexpr.
3364         (encode_actions_1): Get remote regnos for $reg action.  Call
3365         add_remote_register, add_ax_registers, and add_local_register.
3366         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
3367         (validate_actionline): Call finalize_tracepoint_aexpr.
3368
3369 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3370
3371         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
3372         Replace array buf with gdb::char_vector buf, of size
3373         get_remote_packet_size ().  Replace references to buf and
3374         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
3375         and xsnprintf with snprintf.  Raise errors if the buffer is too
3376         small.
3377
3378 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3379
3380         * remote.c (remote_target::download_tracepoint): Fix the has_more
3381         predicate in the QTDP action list iteration.
3382
3383 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3384
3385         * remote.c (remote_target::download_tracepoint): Fix indentation
3386         in for block.
3387
3388 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3389
3390         * proc-api.c (_initialize_proc_api): Remove c, unused.
3391         * procfs.c (procfs_init_inferior): Remove signals, unused.
3392         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
3393         unused.
3394
3395 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
3396             Andrew Burgess  <andrew.burgess@embecosm.com>
3397
3398         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
3399         'W_STOPCODE (0)' as this could be ambiguous.
3400
3401 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
3402
3403         * ser-tcp.c (net_open): Fix thinko when deciding whether to
3404         disable TCP's Nagle algorithm (use "ai_protocol" instead of
3405         "ai_socktype").
3406
3407 2018-08-02  Tom Tromey  <tom@tromey.com>
3408
3409         PR symtab/16842.
3410         * dwarf2read.c (read_func_scope): Set symtab on template parameter
3411         symbols.
3412         (process_structure_scope): Likewise.
3413
3414 2018-08-02  Xavier Roirand  <roirand@adacore.com>
3415
3416         PR gdb/22629:
3417         * darwin-nat.c (darwin_kill_inferior): Fix handling of
3418         kill inferior.
3419
3420 2018-08-02  Tom Tromey  <tom@tromey.com>
3421
3422         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
3423         (darwin_suspend_inferior, darwin_resume_inferior)
3424         (darwin_decode_notify_message, darwin_resume_inferior_threads)
3425         (darwin_check_new_threads): Check result of get_darwin_inferior.
3426
3427 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
3428
3429         GDB 8.1.1 released.
3430
3431 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
3432
3433         * varobj.c (varobj_get_path_expr_parent): Report an error if
3434         parent is a dynamic varobj.
3435
3436 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3437
3438         * gnulib/aclocal.m4: Re-generate.
3439         * gnulib/config.in: Re-generate.
3440         * gnulib/configure: Re-generate.
3441         * gnulib/import/Makefile.in: Re-generate.
3442         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3443         * gnulib/import/m4/onceonly.m4: Re-generate.
3444
3445 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3446
3447         * target-descriptions.c (struct xml_test_tdesc): New.
3448         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
3449         (record_xml_tdesc): Update.
3450         (maintenance_check_xml_descriptions): Update.
3451         * target-descriptions.h (record_xml_tdesc): Update comment.
3452
3453 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3454
3455         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
3456         checking array bounds are defined.
3457
3458 2018-07-30  Tom Tromey  <tom@tromey.com>
3459
3460         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
3461         irreflexivity violation.
3462
3463 2018-07-30  Tom Tromey  <tom@tromey.com>
3464
3465         * cli/cli-decode.c (lookup_cmd): Remove lint code.
3466         * value.c (unpack_long): Remove lint code.
3467         * valops.c (value_ind): Remove lint code.
3468         * valarith.c (value_x_binop, value_x_unop, value_equal)
3469         (value_pos): Remove lint code.
3470
3471 2018-07-28  Tom de Vries  <tdevries@suse.de>
3472
3473         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
3474         with undefined upper bound as <optimized out>.
3475
3476 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
3477
3478         * gcore.in: Rename variable "name" to "prefix".  Expand
3479         "usage" text.
3480
3481 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
3482
3483         * windows-nat.c (windows_nat_target::create_inferior): Update to
3484         call close() in global namespace.
3485
3486 2018-07-26  Tom Tromey  <tom@tromey.com>
3487
3488         * dwarf-index-write.c (add_address_entry): Don't add objfile
3489         offsets.
3490         * dbxread.c (find_stab_function): Rename from
3491         find_stab_function_addr.  Return a bound_minimal_symbol.
3492         (read_dbx_symtab): Use raw_text_low, raw_text_high.
3493         Don't add objfile offsets.
3494         (end_psymtab): Use raw_text_low, raw_text_high,
3495         MSYMBOL_VALUE_RAW_ADDRESS.
3496         (read_ofile_symtab): Update.
3497         (process_one_symbol): Update.
3498         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
3499         offsets.
3500         (dw2_relocate): Remove.
3501         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
3502         searching addrmap.
3503         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
3504         Update.
3505         (process_psymtab_comp_unit_reader, add_partial_symbol)
3506         (add_partial_subprogram, dwarf2_ranges_read): Update.
3507         (load_partial_dies): Update.
3508         (add_address_entry): Don't add objfile offsets.
3509         (dwarf2_build_include_psymtabs): Update.
3510         (create_addrmap_from_aranges): Don't add objfile offsets.
3511         (dw2_find_pc_sect_compunit_symtab): Update.
3512         * mdebugread.c (parse_symbol): Don't add objfile offsets.
3513         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
3514         Update.
3515         (parse_partial_symbols): Don't add objfile offsets.  Use
3516         raw_text_low, raw_text_high.  Update.
3517         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
3518         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
3519         or call 'relocate' quick function.  Clear psymbol_map.
3520         * psympriv.h (struct partial_symbol) <address>: Add section
3521         offset.
3522         <set_unrelocated_address>: Rename from set_address.
3523         <raw_text_low, raw_text_high>: New methods.
3524         <text_low, text_high>: Add objfile parameter.
3525         (add_psymbol_to_bcache): Add 'section' parameter.  Call
3526         set_unrelocated_address.
3527         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3528         (find_pc_psymbol): Update.
3529         (fixup_psymbol_section, relocate_psymtabs): Remove.
3530         (dump_psymtab, psym_functions): Update.
3531         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
3532         parameter.
3533         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
3534         (start_psymtab_common): Update.
3535         * symfile-debug.c (debug_qf_relocate): Remove.
3536         (debug_sym_quick_functions): Update.
3537         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
3538         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
3539         Update.
3540
3541 2018-07-26  Tom Tromey  <tromey@redhat.com>
3542
3543         * dbxread.c (end_psymtab): Use text_high_valid and
3544         text_low_valid.
3545         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
3546         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
3547         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3548         Update comment.
3549         <text_low_valid, text_high_valid>: New fields.
3550         <set_text_low, set_text_high>: Update.
3551         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
3552
3553 2018-07-26  Tom Tromey  <tom@tromey.com>
3554
3555         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
3556         Update.
3557         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
3558         textlow and texthigh fields.
3559         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
3560         Update.
3561         * mdebugread.c (parse_lines, parse_partial_symbols)
3562         (psymtab_to_symtab_1): Update.
3563         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3564         Rename fields.  Update comment.  Now private.
3565         <text_low, text_high, set_text_low, set_text_high>: New methods.
3566         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3567         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
3568         (start_psymtab_common, maintenance_info_psymtabs)
3569         (maintenance_check_psymtabs): Update.
3570         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
3571         texthigh fields.
3572         (scan_xcoff_symtab): Update.
3573
3574 2018-07-26  Tom Tromey  <tromey@redhat.com>
3575
3576         * psympriv.h (struct partial_symbol) <unrelocated_address,
3577         address, set_address>: New methods.
3578         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
3579         (fixup_psymbol_section, relocate_psymtabs): Update.
3580         (print_partial_symbols): Add 'objfile' parameter.  Update.
3581         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
3582         Update.
3583
3584 2018-07-26  Tom Tromey  <tom@tromey.com>
3585
3586         * dwarf-index-write.c (write_psymbols, debug_names::insert)
3587         (debug_names::write_psymbols): Update.
3588         * psympriv.h (struct partial_symbol): Derive from
3589         general_symbol_info.
3590         <obj_section>: New method.
3591         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
3592         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3593         (find_pc_sect_psymbol, fixup_psymbol_section)
3594         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
3595         (print_partial_symbols, recursively_search_psymtabs)
3596         (compare_psymbols, psymbol_hash, psymbol_compare)
3597         (add_psymbol_to_bcache, maintenance_check_psymtabs)
3598         (psymbol_name_matches, psym_fill_psymbol_map): Update.
3599
3600 2018-07-26  Tom Tromey  <tromey@redhat.com>
3601
3602         * dbxread.c (end_psymtab): Remove dead code.
3603
3604 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
3605
3606         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
3607         DWARF unwinders are disabled.
3608         * dwarf2-frame.c: Add dwarf2read.h include.
3609         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
3610         disabled.
3611         (dwarf2_frame_unwinders_enabled_p): Define.
3612         (show_dwarf_unwinders_enabled_p): New function.
3613         (_initialize_dwarf2_frame): Register switch to control DWARF
3614         unwinder use.
3615         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
3616         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
3617         (show_dwarf_cmdlist): Remove static keyword.
3618         * dwarf2read.h (set_dwarf_cmdlist): Declare.
3619         (show_dwarf_cmdlist): Declare.
3620         * NEWS: Document new feature.
3621
3622 2018-07-26  Tom de Vries  <tdevries@suse.de>
3623
3624         PR breakpoints/23366
3625         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
3626
3627 2018-07-26  Tom de Vries  <tdevries@suse.de>
3628
3629         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
3630         DW_AT_count can't be translated to a dynamic prop.
3631
3632 2018-07-25  Tom de Vries  <tdevries@suse.de>
3633
3634         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
3635         try/catch.
3636
3637 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
3638
3639         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
3640
3641 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
3642
3643         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
3644
3645 2018-07-24  Keith Seitz  <keiths@redhat.comt
3646
3647         PR symtab/23010
3648         * dwarf2read.c (dw2_add_symbol_to_list): New function.
3649         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
3650         instead of add_symbol_to_list.
3651         (read_file_scope): Call prepare_one_comp_unit before reading
3652         any other DIEs.
3653
3654 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
3655
3656         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
3657
3658 2018-07-24  Tom Tromey  <tom@tromey.com>
3659
3660         * utils.c (malloc, realloc, free): Don't declare.
3661         * configure, config.in: Rebuild.
3662         * configure.ac: Don't check for declarations of free, malloc, or
3663         realloc.
3664
3665 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3666
3667         * aarch64-linux-nat.c
3668         (aarch64_linux_nat_target::stopped_data_address): Remove unused
3669         variable.
3670         * arm-linux-nat.c (fetch_regs): Likewise.
3671         (store_regs): Likewise.
3672         (fetch_vfp_regs): Likewise.
3673         (store_vfp_regs): Likewise.
3674         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
3675         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
3676         (arm_linux_nat_target::insert_watchpoint): Likewise.
3677         (arm_linux_nat_target::remove_watchpoint): Likewise.
3678         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
3679         Likewise.
3680         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
3681         Likewise.
3682         * ppc-linux-nat.c (fetch_register): Likewise.
3683         (fetch_all_gp_regs): Likewise.
3684         (fetch_ppc_registers): Likewise.
3685         (store_all_gp_regs): Likewise.
3686         (store_ppc_registers): Likewise.
3687         (hwdebug_insert_point): Likewise.
3688         (can_use_watchpoint_cond_accel): Likewise.
3689         * remote-sim.c (gdb_os_write_stdout): Likewise.
3690
3691 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3692             Tom Tromey  <tom@tromey.com>
3693
3694         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
3695         test for it.
3696         * configure: Rebuild.
3697
3698 2018-07-22  Tom Tromey  <tom@tromey.com>
3699
3700         * regformats/regdat.sh: Define xmltarget_${name} inside
3701         #ifndef IN_PROCESS_AGENT.
3702
3703 2018-07-22  Tom Tromey  <tom@tromey.com>
3704
3705         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
3706
3707 2018-07-22  Tom Tromey  <tom@tromey.com>
3708
3709         * symfile.c (reread_symbols): Notify iter, not objfile.
3710
3711 2018-07-22  Tom Tromey  <tom@tromey.com>
3712
3713         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
3714         Use arch_ops.
3715         (ravenscar_thread_target::prepare_to_store): Likewise.
3716
3717 2018-07-22  Tom Tromey  <tom@tromey.com>
3718
3719         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
3720         unused variable.  Call value_fetch_lazy when needed.
3721         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
3722         Remove unused variable.  Call value_fetch_lazy when needed.
3723
3724 2018-07-22  Tom Tromey  <tom@tromey.com>
3725
3726         * m32c-tdep.c (mark_dma): Return void.
3727         (make_regs): Remove unused declarations.
3728
3729 2018-07-22  Tom Tromey  <tom@tromey.com>
3730
3731         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
3732         cmdscm_get_valid_command_smob_arg_unsafe for effect.
3733         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
3734         bkscm_get_valid_block_smob_arg_unsafe for effect.
3735
3736 2018-07-22  Tom Tromey  <tom@tromey.com>
3737
3738         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
3739         value_type.
3740
3741 2018-07-22  Tom Tromey  <tom@tromey.com>
3742
3743         * windows-nat.c (saved_context): Conditionally define.
3744         * remote.c (remote_target::remote_btrace_maybe_reopen):
3745         Conditionally declare "warned".
3746         * inflow.c (sigquit_ours): Conditionally define.
3747         (new_tty): Move "tty" declaration inside #if.
3748         * guile/guile.c (guile_datadir): Conditionally define.
3749         * charset.c (set_be_le_names): Move some declarations inside #if.
3750         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
3751         #if.
3752         (parse_xml_btrace_conf): Likewise.
3753
3754 2018-07-22  Tom Tromey  <tom@tromey.com>
3755
3756         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
3757
3758 2018-07-22  Tom Tromey  <tom@tromey.com>
3759
3760         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
3761         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
3762         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
3763         * buildsym-legacy.c (get_macro_table): Remove unused variable.
3764         * stack.c (frame_apply_level_command): Remove unused variable.
3765         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
3766         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
3767         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
3768         unused variable.
3769         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
3770         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
3771         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
3772         variable.
3773         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
3774         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
3775         variable.
3776         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
3777         Remove unused variable.
3778         * cli/cli-script.c (recurse_read_control_structure): Remove unused
3779         variable.
3780         * common/tdesc.c (print_xml_feature::visit): Remove unused
3781         variable.
3782         * compile/compile-object-load.c (store_regs): Remove unused
3783         variables.
3784         * complaints.c (clear_complaints): Remove unused variable.
3785         * corelow.c (core_target_open): Remove unused variable.
3786         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
3787         variable.
3788         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
3789         variable.
3790         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
3791         variable.
3792         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
3793         variable.
3794         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
3795         variable.
3796         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
3797         variable.
3798         * ia64-tdep.c (examine_prologue): Remove unused variable.
3799         * infcall.c (run_inferior_call): Remove unused variable.
3800         * inferior.c (exit_inferior): Remove unused variable.
3801         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
3802         * linespec.c (decode_line_2): Remove unused variable.
3803         * linux-nat.c (super_close): Remove.
3804         * linux-tdep.c (linux_info_proc): Remove unused variable.
3805         * mi/mi-main.c (mi_execute_command): Remove unused variable.
3806         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
3807         Remove unused variable.
3808         * parse.c (find_minsym_type_and_address): Remove unused variable.
3809         * printcmd.c (info_symbol_command, printf_floating): Remove unused
3810         variable.
3811         * python/py-breakpoint.c (bppy_set_commands): Remove unused
3812         variable.
3813         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
3814         variables.
3815         * record-btrace.c (record_btrace_target::store_registers): Remove
3816         unused variable.
3817         (cmd_show_record_btrace_cpu): Remove unused variable.
3818         * riscv-tdep.c (riscv_register_reggroup_p)
3819         (riscv_push_dummy_call, riscv_return_value): Remove unused
3820         variable.
3821         * rust-exp.y (literal): Remove unused variable.
3822         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
3823         unused variable.
3824         <STRUCTOP_ANONYMOUS>: Likewise.
3825         * s390-linux-tdep.c (s390_linux_init_abi_31)
3826         (s390_linux_init_abi_64): Remove unused variable.
3827         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
3828         (file_select_thread, net_windows_open, _initialize_ser_windows):
3829         Remove unused variables.
3830         * symtab.c (find_pc_sect_line): Remove unused variable.
3831         * target-memory.c (compute_garbled_blocks): Remove unused
3832         variable.
3833         (target_write_memory_blocks): Remove unused variable.
3834         * target.c (target_stack::unpush): Remove unused variables.
3835         * tracepoint.c (start_tracing, all_tracepoint_actions)
3836         (merge_uploaded_trace_state_variables)
3837         (print_one_static_tracepoint_marker): Remove unused variable.
3838         * unittests/basic_string_view/element_access/char/1.cc (test01):
3839         Remove unused variable.
3840         * windows-nat.c (windows_continue, windows_add_all_dlls)
3841         (do_initial_windows_stuff, windows_nat_target::create_inferior):
3842         Remove unused variables.
3843
3844 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
3845
3846         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
3847         attr_profile in HAVE_ELF.
3848         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
3849         HAVE_ELF.
3850
3851 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
3852
3853         * frame.c (frame_register_unwind): Change parameter name.
3854         (frame_unwind_register): Likewise.
3855         (frame_unwind_register_value): Likewise.
3856         (frame_unwind_register_signed): Likewise.
3857         (frame_unwind_register_unsigned): Likewise.
3858         * frame.h (frame_register_unwind): Likewise.
3859         (frame_unwind_register): Likewise.
3860         (frame_unwind_register_value): Likewise.
3861         (frame_unwind_register_signed): Likewise.
3862         (frame_unwind_register_unsigned): Likewise.
3863         (frame_unwind_arch): Likewise.
3864
3865 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
3866
3867         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
3868         ISA maintenance.
3869
3870 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
3871
3872         * mips-linux-nat.c (mips_linux_nat_target::read_description):
3873         Call `get_ptrace_pid' rather than extracting the ptrace PID by
3874         hand.
3875
3876 2018-07-20  Keith Seitz  <keiths@redhat.com>
3877
3878         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
3879         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
3880         m_compunit_symtab, m_language>: Add "m_" prefix.
3881         Update all uses.
3882         * buildsym.c: Update all uses.
3883
3884 2018-07-20  Tom Tromey  <tom@tromey.com>
3885
3886         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
3887         * buildsym.h (record_line_ftype): Remove typedef.
3888
3889 2018-07-20  Tom Tromey  <tom@tromey.com>
3890
3891         * buildsym-legacy.h (augment_type_symtab): Don't declare.
3892         (end_expandable_symtab): Likewise.
3893         (end_symtab_get_static_block): Likewise.
3894         (end_symtab_from_static_block): Likewise.
3895         * buildsym-legacy.c (augment_type_symtab): Remove.
3896         (end_expandable_symtab): Remove.
3897         (end_symtab_get_static_block): Remove.
3898         (end_symtab_from_static_block): Remove.
3899
3900 2018-07-20  Tom Tromey  <tom@tromey.com>
3901
3902         * dwarf2read.c: Include buildsym.h.
3903         (struct dwarf2_cu) <builder>: New method.
3904         (fixup_go_packaging): Update.
3905         (process_full_comp_unit, process_full_type_unit): Update.  Don't
3906         use scoped_free_pendings.
3907         (using_directives): Add "cu" parameter, remove "language".
3908         (read_import_statement, setup_type_unit_groups, )
3909         (read_func_scope, read_lexical_block_scope)
3910         (dwarf2_record_block_ranges, read_namespace): Update.
3911         (lnp_state_machine::lnp_state_machine): Add cu parameter.
3912         (lnp_state_machine::handle_end_sequence): Update.
3913         (class lnp_state_machine) <m_cu>: New member.
3914         <m_record_line_callback>: Remove.
3915         <m_currently_recording_lines>: New member.
3916         (lnp_state_machine::handle_set_file): Update.
3917         (noop_record_line): Remove.
3918         (dwarf_record_line_p): Add cu parameter.
3919         (dwarf_record_line_1, dwarf_finish_line): Likewise.
3920         (lnp_state_machine::record_line)
3921         (lnp_state_machine::lnp_state_machine)
3922         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
3923         (dwarf_decode_lines): Update.
3924         (dwarf2_start_subfile): Add cu parameter.
3925         (dwarf2_start_symtab, new_symbol): Update.
3926         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
3927         Remove dwarf2_per_objfile parameter.
3928         (dwarf_decode_macros): Update.
3929
3930 2018-07-20  Tom Tromey  <tom@tromey.com>
3931
3932         * stabsread.c (define_symbol): Update.
3933         * buildsym-legacy.h (get_buildsym_compunit): Declare.
3934         * dwarf2read.c (new_symbol): Update.
3935         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
3936         * cp-namespace.c: Include buildsym.h.
3937         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
3938         * buildsym-legacy.c (get_buildsym_compunit): New function.
3939
3940 2018-07-20  Tom Tromey  <tom@tromey.com>
3941
3942         * xcoffread.c: Include buildsym-legacy.h.
3943         * windows-nat.c: Include buildsym-legacy.h.
3944         * stabsread.c: Include buildsym-legacy.h.
3945         * mdebugread.c: Include buildsym-legacy.h.
3946         * buildsym-legacy.h: New file.
3947         * buildsym-legacy.c: New file, from buildsym.c.
3948         * go32-nat.c: Include buildsym-legacy.h.
3949         * dwarf2read.c: Include buildsym-legacy.h.
3950         * dbxread.c: Include buildsym-legacy.h.
3951         * cp-namespace.c: Include buildsym-legacy.h.
3952         * coffread.c: Include buildsym-legacy.h.
3953         * buildsym.h: Move some contents to buildsym-legacy.h.
3954         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
3955         buildsym-legacy.c.
3956         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
3957
3958 2018-07-20  Tom Tromey  <tom@tromey.com>
3959
3960         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
3961         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
3962         (buildsym_compunit::buildsym_compunit)
3963         (buildsym_compunit::~buildsym_compunit)
3964         (buildsym_compunit::get_macro_table): Define.
3965
3966 2018-07-20  Tom Tromey  <tom@tromey.com>
3967
3968         * buildsym.c (reset_symtab_globals): Remove.
3969         (buildsym_compunit::end_symtab_from_static_block): Update.
3970         (buildsym_compunit::augment_type_symtab): Update.
3971         (end_symtab_from_static_block): Call free_buildsym_compunit.
3972         (augment_type_symtab, end_symtab, end_expandable_symtab):
3973         Likewise.
3974
3975 2018-07-20  Tom Tromey  <tom@tromey.com>
3976
3977         * arch-utils.c: Do not include buildsym.h.
3978         * mipsread.c: Do not include buildsym.h.
3979         * machoread.c: Do not include buildsym.h.
3980         * elfread.c: Do not include buildsym.h.
3981
3982 2018-07-20  Tom Tromey  <tom@tromey.com>
3983
3984         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
3985         initialization.
3986         (buildsym_compunit): Add new constructor.
3987         (struct buildsym_compunit) <get_last_source_file, finish_block,
3988         record_block_range, start_subfile, patch_subfile_names,
3989         push_subfile, pop_subfile, record_line, get_compunit_symtab,
3990         set_last_source_start_addr, get_last_source_start_addr,
3991         get_local_using_directives, set_local_using_directives,
3992         get_global_using_directives, outermost_context_p,
3993         get_current_context_stack, get_context_stack_depth,
3994         get_current_subfile, get_local_symbols, get_file_symbols,
3995         get_global_symbols, record_debugformat, record_producer,
3996         push_context, pop_context, end_symtab_get_static_block,
3997         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
3998         New public methods.
3999         <record_pending_block, finish_block_internal, make_blockvector,
4000         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4001         private methods.
4002         Update all users.
4003
4004 2018-05-22  Tom Tromey  <tom@tromey.com>
4005
4006         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4007         parameter.
4008         (finish_block_internal): Update.
4009
4010 2018-07-20  Tom Tromey  <tom@tromey.com>
4011
4012         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4013         parameter.
4014         (finish_block_internal): Update.
4015
4016 2018-07-20  Tom Tromey  <tom@tromey.com>
4017
4018         * buildsym.h (EXTERN): Don't define or undef.
4019         * buildsym.c (EXTERN): Don't define.
4020
4021 2018-07-20  Tom Tromey  <tom@tromey.com>
4022
4023         * buildsym.c: Remove TODO comment.
4024
4025 2018-07-20  Tom Tromey  <tom@tromey.com>
4026
4027         * coffread.c (coff_symtab_read): Update.
4028         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4029         (xcoff_new_init): Update.
4030         * mipsread.c (mipscoff_new_init): Update.
4031         * mdebugread.c (mdebug_build_psymtabs): Update.
4032         * elfread.c (elf_new_init): Update.
4033         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4034         Update.
4035         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4036         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4037         (stabsect_build_psymtabs): Update.
4038         * buildsym.h (buildsym_init): Don't declare.
4039         * buildsym.c: Update comment.
4040         (prepare_for_building): Remove.
4041         (start_symtab, restart_symtab): Update.
4042         (reset_symtab_globals): Update comment.
4043         (buildsym_init): Remove.
4044
4045 2018-07-20  Tom Tromey  <tom@tromey.com>
4046
4047         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4048         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4049         (read_enum_type, common_block_start, common_block_end)
4050         (cleanup_undefined_types_1, finish_global_stabs): Update.
4051         * mdebugread.c (psymtab_to_symtab_1): Update.
4052         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4053         (read_lexical_block_scope, new_symbol): Update.
4054         * dbxread.c (process_one_symbol): Update.
4055         * coffread.c (coff_symtab_read, process_coff_symbol)
4056         (coff_read_enum_type): Update.
4057         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4058         declare.
4059         (get_local_symbols, get_file_symbols, get_global_symbols): New
4060         functions.
4061         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4062         m_global_symbols.
4063         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4064         (~scoped_free_pendings): Update.
4065         (finish_block, prepare_for_building, reset_symtab_globals)
4066         (end_symtab_get_static_block, end_symtab_with_blockvector)
4067         (augment_type_symtab, push_context): Update.
4068         (get_local_symbols, get_file_symbols, get_global_symbols): New
4069         functions.
4070         (buildsym_init): Update.
4071
4072 2018-07-20  Tom Tromey  <tom@tromey.com>
4073
4074         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4075         (process_full_type_unit): Likewise.
4076         (dwarf2_start_symtab): Set list_in_scope.
4077
4078 2018-07-20  Tom Tromey  <tom@tromey.com>
4079
4080         * dwarf2read.c (process_psymtab_comp_unit_reader)
4081         (build_type_psymtabs_reader): Do not set list_in_scope.
4082
4083 2018-07-20  Tom Tromey  <tom@tromey.com>
4084
4085         * buildsym.c (free_pendings): Remove.
4086         (add_symbol_to_list, scoped_free_pendings)
4087         (finish_block_internal, buildsym_init): Update.
4088
4089 2018-07-20  Tom Tromey  <tom@tromey.com>
4090
4091         * xcoffread.c (read_xcoff_symtab): Update.
4092         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4093         Update.
4094         * dbxread.c (process_one_symbol): Update.
4095         * coffread.c (coff_symtab_read): Update.
4096         * buildsym.h (finish_block): Update.
4097         * buildsym.c (finish_block): Remove "listhead" argument.
4098         (end_symtab_get_static_block): Update.
4099
4100 2018-07-20  Tom Tromey  <tom@tromey.com>
4101
4102         * buildsym.h (class scoped_free_pendings): Remove constructor.
4103         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4104         method.
4105         <m_pending_block_obstack, m_pending_blocks>: New members.
4106         (pending_block_obstack, pending_blocks): Remove.
4107         (scoped_free_pendings::scoped_free_pendings): Default.
4108         (~scoped_free_pendings): Update.
4109         (free_pending_blocks): Remove.
4110         (finish_block_internal, record_pending_block, make_blockvector)
4111         (end_symtab_get_static_block, augment_type_symtab, push_context)
4112         (buildsym_init): Update.
4113
4114 2018-07-20  Tom Tromey  <tom@tromey.com>
4115
4116         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4117         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4118         members.
4119         (pending_addrmap, pending_addrmap_obstack)
4120         (pending_addrmap_interesting): Remove.
4121         (scoped_free_pendings, record_block_range, make_blockvector)
4122         (prepare_for_building, reset_symtab_globals, buildsym_init):
4123         Update.
4124
4125 2018-07-20  Tom Tromey  <tom@tromey.com>
4126
4127         * xcoffread.c (process_linenos): Update.
4128         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4129         * mdebugread.c (psymtab_to_symtab_1): Update.
4130         * dwarf2read.c (setup_type_unit_groups)
4131         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4132         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4133         * dbxread.c (process_one_symbol): Update.
4134         * coffread.c (coff_symtab_read, enter_linenos)
4135         (process_coff_symbol): Update.
4136         * buildsym.h (current_subfile): Don't declare.
4137         (get_current_subfile): Declare.
4138         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4139         member.
4140         (start_subfile, free_buildsym_compunit, push_subfile)
4141         (prepare_for_building, start_symtab): Update.
4142         (get_current_subfile): New function.
4143
4144 2018-07-20  Tom Tromey  <tom@tromey.com>
4145
4146         * coffread.c (coff_symtab_read): Update.
4147         * xcoffread.c (read_xcoff_symtab): Update.
4148         * dwarf2read.c (new_symbol): Update.
4149         (read_func_scope, read_lexical_block_scope): Update.
4150         * dbxread.c (process_one_symbol): Update.
4151         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4152         (outermost_context_p): Remove macro.
4153         (outermost_context_p, get_current_context_stack)
4154         (get_context_stack_depth): Declare.
4155         (pop_context): Return struct context_stack.
4156         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4157         member.
4158         (context_stack_size): Remove.
4159         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4160         (prepare_for_building, end_symtab_get_static_block)
4161         (augment_type_symtab, push_context): Update.
4162         (pop_context): Return struct context_stack.
4163         (outermost_context_p, get_current_context_stack)
4164         (get_context_stack_depth): New functions.
4165         (buildsym_init): Update.
4166
4167 2018-07-20  Tom Tromey  <tom@tromey.com>
4168
4169         * rust-exp.y: Now a pure parser.  Update all rules.
4170         (%union): Move earlier.
4171         (current_parser, work_obstack): Remove globals.
4172         (rust_parser, ~rust_parser): Update.
4173         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4174         lex_character, lex_number, lex_string, lex_identifier,
4175         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4176         convert_name, convert_params_to_expression,
4177         convert_ast_to_expression, ast_basic_type, ast_operation,
4178         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4179         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4180         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4181         ast_array_type, ast_slice_type, ast_reference_type,
4182         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4183         (rust_parse): Update.
4184         (rustyyerror, rustyylex): Add parser parameter.
4185         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4186         (rust_lex_stringish_test, rust_lex_test_sequence)
4187         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4188         (rust_lex_test_push_back, rust_lex_tests): Update.
4189
4190 2018-07-19  Pedro Alves  <palves@redhat.com>
4191
4192         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4193         gdb::unique_xmalloc_ptr.
4194         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4195         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4196         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4197         copy-initialization.
4198         * guile/scm-pretty-print.c (ppscm_print_children): Use
4199         gdb::unique_xmalloc_ptr instead of cleanups.
4200         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4201         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4202         gdb::unique_xmalloc_ptr.
4203         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4204         Adjust to use gdb::unique_xmalloc_ptr.
4205         * guile/scm-utils.c (extract_arg): Adjust.
4206         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4207         gdb::unique_xmalloc_ptr instead of a cleanup.
4208
4209 2018-07-19  Tom Tromey  <tom@tromey.com>
4210
4211         * utils.c (do_value_free_to_mark)
4212         (make_cleanup_value_free_to_mark): Remove.
4213         * utils.h (make_cleanup_value_free_to_mark): Remove.
4214
4215 2018-07-19  Pedro Alves  <palves@redhat.com>
4216
4217         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4218         forwarding reference.
4219
4220 2018-07-18  Pedro Alves  <palves@redhat.com>
4221
4222         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4223         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4224         cleanup.
4225
4226 2018-07-18  Pedro Alves  <palves@redhat.com>
4227
4228         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4229         exceptions.
4230         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4231         (gdbscm_wrap): New.
4232         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4233         directly instead of a cleanup.
4234         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4235         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
4236         (vlscm_binop_gdbthrow): New, factored out from ...
4237         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
4238         (vlscm_rich_compare): Use gdbscm_wrap.
4239         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
4240         instead of a cleanup.
4241         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
4242         cleanup.
4243         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4244         Use xfree directly instead of a cleanup.
4245         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
4246         Adjust to use gdbscm_wrap and scoped_value_mark.
4247         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
4248         (gdbscm_value_address, gdbscm_value_dereference)
4249         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
4250         scoped_value_mark.
4251         (gdbscm_value_dynamic_type): Use scoped_value_mark.
4252         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
4253         scoped_value_mark.
4254         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
4255         gdbscm_wrap and scoped_value_mark.
4256         (gdbscm_value_to_string): Use xfree directly instead of a
4257         cleanup.  Move 'buffer' unique_ptr to TRY scope.
4258         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
4259         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
4260         scoped_value_mark.
4261         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
4262         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
4263         scoped_value_mark.
4264         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
4265         gdbscm_wrap.
4266
4267 2018-07-18  Tom de Vries  <tdevries@suse.de>
4268
4269         * findvar.c (default_read_var_value): Also resolve dynamic type for
4270         LOC_OPTIMIZED_OUT vars.
4271
4272 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
4273
4274         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
4275         decoding.
4276
4277 2018-07-17  Tom Tromey  <tom@tromey.com>
4278
4279         * guile/scm-param.c (pascm_set_func, pascm_show_func)
4280         (compute_enum_list, pascm_set_param_value_x)
4281         (gdbscm_parameter_value): Update.
4282         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
4283         (gdbscm_scm_to_host_string): Update.
4284         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
4285         Update.
4286         * guile/scm-cmd.c (cmdscm_add_completion): Update.
4287         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
4288         * guile/scm-string.c (gdbscm_scm_to_string): Return
4289         unique_xmalloc_ptr.
4290         (gdbscm_scm_to_host_string): Likewise.
4291
4292 2018-07-17  Tom Tromey  <tom@tromey.com>
4293
4294         * guile/guile.c (gdbscm_eval_from_control_command): Update.
4295         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
4296         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
4297         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
4298         unique_xmalloc_ptr.
4299
4300 2018-07-17  Tom Tromey  <tom@tromey.com>
4301
4302         * guile/scm-param.c (pascm_signal_setshow_error): Update.
4303         * guile/guile-internal.h (gdbscm_exception_message_to_string):
4304         Update.
4305         * guile/scm-cmd.c (cmdscm_function): Update.
4306         * guile/scm-pretty-print.c
4307         (ppscm_print_exception_unless_memory_error): Update.
4308         * guile/scm-exception.c (gdbscm_exception_message_to_string):
4309         Return unique_xmalloc_ptr.
4310
4311 2018-07-17  Tom Tromey  <tom@tromey.com>
4312
4313         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
4314         Use string_printf.
4315
4316 2018-07-17  Jim Wilson  <jimw@sifive.com>
4317
4318         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
4319         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
4320         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
4321         unecessary braces after EF_RISCV_RVC test.  Delete call to
4322         set_gdbarch_decr_pc_after_break.
4323
4324         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
4325         RISCV_LAST_FP_REGNUM + 1.
4326         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
4327
4328 2018-07-17  Tom Tromey  <tom@tromey.com>
4329
4330         * configure.ac: Remove --disable-gdbcli.
4331         * configure: Rebuild.
4332         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
4333         (SUBDIR_CLI_CFLAGS): Remove.
4334         (SFILES): Use SUBDIR_CLI_SRCS.
4335         (COMMON_OBS): Use SUBDIR_CLI_OBS.
4336
4337 2018-07-17  Tom Tromey  <tom@tromey.com>
4338
4339         PR gdb/18624:
4340         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
4341
4342 2018-07-16  Jim Wilson  <jimw@sifive.com>
4343
4344         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
4345
4346 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4347
4348         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
4349         variable.
4350         (libunwind_frame_sniffer): Likewise.
4351         (libunwind_frame_prev_register): Likewise.
4352         (libunwind_sigtramp_frame_sniffer): Likewise.
4353         * ia64-tdep.c (ia64_access_reg): Likewise.
4354         (ia64_access_rse_reg): Likewise.
4355         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
4356         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
4357
4358 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4359
4360         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
4361
4362 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4363
4364         * remote-sim.c (gdbsim_target::close,
4365         gdbsim_target::mourn_inferior): Remove unused variables.
4366
4367 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
4368
4369         * ia64-tdep.c (ktab_buf): New global.
4370         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
4371         (get_kernel_table): Adjust.
4372
4373 2018-07-16  Tom Tromey  <tom@tromey.com>
4374
4375         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
4376         * dwarf2read.c (using_directives, new_symbol): Use
4377         outermost_context_p.
4378         * dbxread.c (process_one_symbol): Use outermost_context_p.
4379         * coffread.c (coff_symtab_read): Use outermost_context_p.
4380
4381 2018-07-16  Tom Tromey  <tom@tromey.com>
4382
4383         * dwarf2read.c (using_directives, read_func_scope)
4384         (read_lexical_block_scope): Update.
4385         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
4386         * buildsym.h (local_using_directives, global_using_directives):
4387         Don't declare.
4388         (get_local_using_directives, set_local_using_directives)
4389         (get_global_using_directives): Declare.
4390         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
4391         m_global_using_directives>: New members.
4392         (finish_block_internal, prepare_for_building)
4393         (reset_symtab_globals, end_symtab_get_static_block)
4394         (push_context): Update.
4395         (get_local_using_directives, set_local_using_directives)
4396         (get_global_using_directives): New functions.
4397         (buildsym_init): Update.
4398
4399 2018-07-16  Tom Tromey  <tom@tromey.com>
4400
4401         * xcoffread.c (xcoff_initial_scan): Don't call
4402         free_pending_blocks.
4403         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
4404         * buildsym.h (class scoped_free_pendings): Add constructor.
4405         (free_pending_blocks): Don't declare.
4406         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
4407         (free_pending_blocks): Now static.
4408
4409 2018-07-16  Tom Tromey  <tom@tromey.com>
4410
4411         * buildsym.h (push_subfile, pop_subfile): Update declarations.
4412         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
4413         member.
4414         (struct subfile_stack): Remove.
4415         (subfile_stack): Remove.
4416         (push_subfile, pop_subfile, buildsym_init): Update.
4417
4418 2018-07-16  Tom Tromey  <tom@tromey.com>
4419
4420         * buildsym.c (push_subfile): Use gdb_assert.
4421         (pop_subfile): Use gdb_assert.
4422
4423 2018-07-16  Tom Tromey  <tom@tromey.com>
4424
4425         * buildsym.h (merge_symbol_lists): Remove.
4426         * buildsym.c (merge_symbol_lists): Remove.
4427
4428 2018-07-16  Tom Tromey  <tom@tromey.com>
4429
4430         * stabsread.c (scan_file_globals): Update comment.
4431         * stabsread.h (scan_file_globals): Move from buildsym.h.
4432         * buildsym.h (scan_file_globals): Move to stabsread.h.
4433
4434 2018-07-16  Tom Tromey  <tom@tromey.com>
4435
4436         * xcoffread.c (xcoff_new_init): Update.
4437         * mipsread.c (mipscoff_new_init): Update.
4438         * mdebugread.c (mdebug_build_psymtabs): Update.
4439         * elfread.c (elf_new_init): Update.
4440         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
4441         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
4442         * buildsym.h (buildsym_new_init): Don't declare.
4443         * buildsym.c (buildsym_new_init): Remove.
4444
4445 2018-07-16  Tom Tromey  <tom@tromey.com>
4446
4447         * stabsread.h (within_function): Move from buildsym.h.
4448         * stabsread.c (start_stabs): Clear within_function.
4449         * coffread.c (coff_start_symtab): Clear within_function.
4450         * buildsym.h (within_function): Move to stabsread.h.
4451         * buildsym.c (prepare_for_building): Update.
4452
4453 2018-07-16  Tom Tromey  <tom@tromey.com>
4454
4455         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
4456         * dwarf2read.c (dwarf2_start_symtab): Don't set
4457         processing_gcc_compilation.
4458         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
4459
4460 2018-07-16  Tom Tromey  <tom@tromey.com>
4461
4462         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
4463         (next_symbol_text_func): Move from buildsym.h.
4464         * stabsread.c (hashname): Move from buildsym.c.
4465         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
4466         (next_symbol_text_func, hashname): Move to stabsread.h.
4467         * buildsym.c: Don't include bcache.h
4468         (hashname): Move to stasbread.c.
4469
4470 2018-07-16  Tom Tromey  <tom@tromey.com>
4471
4472         * buildsym.h (context_stack_size): Don't declare.
4473         * buildsym.c (context_stack_size): New global.
4474
4475 2018-07-16  Tom Tromey  <tom@tromey.com>
4476
4477         * dbxread.c (processing_acc_compilation): New global.
4478         * buildsym.h (processing_acc_compilation): Don't declare.
4479
4480 2018-07-16  Tom Tromey  <tom@tromey.com>
4481
4482         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
4483         * dbxread.c (read_ofile_symtab): Update.
4484         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
4485         * buildsym.h (last_source_start_addr): Remove.
4486         (set_last_source_start_addr, get_last_source_start_addr):
4487         Declare.
4488         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
4489         parameter.
4490         (struct buildsym_compunit) <m_last_source_start_addr>: New
4491         member.
4492         (prepare_for_building): Remove start_addr parameter.
4493         (start_symtab, restart_symtab, end_symtab_get_static_block)
4494         (end_symtab_with_blockvector): Update.
4495         (set_last_source_start_addr, get_last_source_start_addr): New
4496         functions.
4497
4498 2018-07-16  Tom Tromey  <tom@tromey.com>
4499
4500         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
4501         member.
4502         (have_line_numbers): Remove.
4503         (record_line, prepare_for_building, end_symtab_get_static_block)
4504         (augment_type_symtab): Update.
4505
4506 2018-07-16  Tom Tromey  <tom@tromey.com>
4507
4508         * buildsym.c (~buildsym_compunit): Free the macro table.
4509         (struct buildsym_compunit) <get_macro_table, release_macros>: New
4510         methods.
4511         <m_pending_macros>: New member.
4512         (pending_macros): Remove.
4513         (~scoped_free_pendings, get_macro_table, prepare_for_building)
4514         (reset_symtab_globals, end_symtab_get_static_block)
4515         (end_symtab_with_blockvector, augment_type_symtab)
4516         (buildsym_init): Update.
4517
4518 2018-07-16  Tom Tromey  <tom@tromey.com>
4519
4520         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
4521         parameter.
4522         (buildsym_compunit::set_last_source_file): New method.
4523         <m_last_source_file>: New member.
4524         (prepare_for_building): Remove "name" parameter.
4525         (start_symtab, restart_symtab, reset_symtab_globals): Update.
4526         (last_source_file): Remove.
4527         (set_last_source_file, get_last_source_file): Update.
4528
4529 2018-07-16  Tom Tromey  <tom@tromey.com>
4530
4531         * buildsym.c (prepare_for_building): Add assert.
4532
4533 2018-07-16  Tom Tromey  <tom@tromey.com>
4534
4535         * buildsym.c (~buildsym_compunit): Update.
4536         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
4537         (start_subfile, patch_subfile_names)
4538         (end_symtab_with_blockvector): Update.
4539
4540 2018-07-16  Tom Tromey  <tom@tromey.com>
4541
4542         * buildsym.c (struct buildsym_compunit): Add constructor,
4543         destructor, initializers.
4544         (start_buildsym_compunit): Remove.
4545         (free_buildsym_compunit): Use "delete".
4546         (start_symtab, restart_symtab): Use "new".
4547
4548 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
4549
4550         * symfile.c (set_objfile_default_section_offset): Remove struct
4551         keyword.
4552
4553 2018-07-14  Stafford Horne  <shorne@gmail.com>
4554
4555         * (Responsible Maintainers): Add myself as or1k maintainer.
4556
4557 2018-07-13  Tom Tromey  <tom@tromey.com>
4558
4559         * symfile.c (set_objfile_default_section_offset): Use extra braces
4560         around initializer.
4561
4562 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
4563
4564         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
4565         non-branching basr.
4566
4567 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4568
4569         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4570         unittests/cli-utils-selftests.c
4571         * unittests/cli-utils-selftests.c: New file.
4572
4573 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4574
4575         * NEWS: Mention new commands. Mention change to 'thread apply'.
4576
4577 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4578
4579         * thread.c (thr_try_catch_cmd): New function.
4580         (thread_apply_all_command): Handle qcs flags.
4581         (thread_apply_command): Handle qcs flags.
4582         (taas_command): New function.
4583         (tfaas_command): New function.
4584         (_initialize_thread): Update to setup the new commands 'taas
4585         and 'tfaas'. Change doc string for 'thread apply'.
4586
4587 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4588
4589         * stack.c: (trailing_outermost_frame): New function, mostly
4590         extracted from backtrace_command_1.
4591         (leading_innermost_frame): New function.
4592         (backtrace_command_1): Update to call trailing_outermost_frame.
4593         (frame_apply_command_count): New function.
4594         (frame_apply_level_command): New function.
4595         (frame_apply_all_command): New function.
4596         (frame_apply_command): New function.
4597         (faas_command): New function.
4598         (frame_cmd_list): New variable.
4599         (_initialize_stack): Update to setup the new commands 'frame apply'
4600         and 'faas'.
4601
4602 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4603
4604         * cli-utils.c (number_or_range_parser::get_number): Only handle
4605         numbers or convenience var as numbers.
4606         (parse_flags): New function.
4607         (parse_flags_qcs): New function.
4608         (number_or_range_parser::finished): Ensure parsing end is detected
4609         before end of string.
4610         * cli-utils.h (parse_flags): New function.
4611         (parse_flags_qcs): New function.
4612         (number_or_range_parser): Remove m_finished bool.
4613         (number_or_range_parser::skip_range): Set m_in_range to false.
4614
4615 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
4616
4617         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
4618         on Windows.
4619
4620 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4621             Jan Kratochvil  <jan.kratochvil@redhat.com>
4622             Paul Fertser  <fercerpav@gmail.com>
4623             Tsutomu Seki  <sekiriki@gmail.com>
4624             Pedro Alves  <palves@redhat.com>
4625
4626         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4627         'unittests/parse-connection-spec-selftests.c'.
4628         (COMMON_SFILES): Add 'common/netstuff.c'.
4629         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
4630         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
4631         * common/netstuff.c: New file.
4632         * common/netstuff.h: New file.
4633         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
4634         (wait_for_connect): Update comment.  New parameter
4635         'gdb::optional<int> sock' instead of 'struct serial *scb'.
4636         Use 'sock' directly instead of 'scb->fd'.
4637         (try_connect): New function, with code from 'net_open'.
4638         (net_open): Rewrite main loop to deal with multiple
4639         sockets/addresses.  Handle IPv6-style hostnames; implement
4640         support for IPv6 connections.
4641         * unittests/parse-connection-spec-selftests.c: New file.
4642
4643 2018-07-11  Pedro Alves  <palves@redhat.com>
4644
4645         PR gdb/23377
4646         * remote.c (remote_target::remote_detach_pid): Call
4647         set_current_process.
4648
4649 2018-07-11  Pedro Alves  <palves@redhat.com>
4650
4651         * h8300-tdep.c (h8300_gdbarch_init): Remove
4652         set_gdbarch_ecoff_reg_to_regnum calls.
4653
4654 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4655
4656         PR c++/23373
4657         * c-typeprint.c (c_type_print_base_struct_union): Don't print
4658         offsets/sizes for static members of a class/struct.
4659
4660 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
4661
4662         * target-descriptions.c (tdesc_register_bitsize): Rename.
4663         * target-descriptions.h (tdesc_register_bitsize): Likewise.
4664         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
4665         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
4666
4667 2018-07-10  Tom Tromey  <tom@tromey.com>
4668
4669         * breakpoint.c (moribund_locations): Now static and a
4670         std::vector.
4671         (breakpoint_init_inferior, moribund_breakpoint_here_p)
4672         (build_bpstat_chain, update_global_location_list)
4673         (breakpoint_retire_moribund): Update.
4674         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
4675         VEC.
4676
4677 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4678
4679         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
4680         (riscv_register_reggroup_p): Use new function, remove unneeded
4681         parenthesis.
4682         (riscv_push_dummy_call): Extend assert to compare against xlen or
4683         flen based on register type.
4684
4685 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4686
4687         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
4688
4689 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4690
4691         * remote.c (show_hardware_watchpoint_limit): New function.
4692         (show_hardware_watchpoint_length_limit): New function.
4693         (show_hardware_breakpoint_limit): New function.
4694         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
4695         where appropriate, update help text.
4696
4697 2018-07-09  Tom Tromey  <tom@tromey.com>
4698
4699         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
4700         (CLIBS): Don't mention NAT_CLIBS.
4701
4702 2018-07-09  Tom Tromey  <tom@tromey.com>
4703
4704         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
4705         (LIBGDB_OBS, clean mostlyclean): Update.
4706         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
4707
4708 2018-07-09  Tom Tromey  <tom@tromey.com>
4709
4710         * Makefile.in (%.c: %.y): Use ECHO_YACC.
4711         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
4712         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
4713
4714 2018-07-09  Tom Tromey  <tom@tromey.com>
4715
4716         * Makefile.in (ALLDEPFILES): Remove exec.c.
4717         (COMMON_OBS): Remove exec.o.
4718         (COMMON_SFILES): Add exec.c.
4719
4720 2018-07-09  Tom Tromey  <tom@tromey.com>
4721
4722         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
4723
4724 2018-07-09  Tom Tromey  <tom@tromey.com>
4725
4726         * Makefile.in (clean mostlyclean): Remove stamp-version.
4727         (version.c): Depend on stamp-version.
4728         (stamp-version): New rule, from version.c rule.
4729
4730 2018-07-09  Tom Tromey  <tom@tromey.com>
4731
4732         * Makefile.in (init.c): Depend on stamp-init.
4733         (stamp-init): New rule, from init.c rule.
4734         (clean mostlyclean): Remove stamp-init.
4735
4736 2018-07-09  Tom Tromey  <tom@tromey.com>
4737
4738         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
4739         SUBDIR_GCC_COMPILE_SRCS.
4740
4741 2018-07-09  Tom Tromey  <tom@tromey.com>
4742
4743         * Makefile.in (init.c): Remove some unused sed rules.
4744
4745 2018-07-09  Tom Tromey  <tom@tromey.com>
4746
4747         * Makefile.in (TSOBS): Remove.
4748         (INIT_FILES): Update.
4749         (LIBGDB_OBS): Update.
4750         (COMMON_SFILES): Add inflow.c.
4751         (SFILES): Remove inflow.c.
4752
4753 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
4754
4755         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
4756
4757 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
4758
4759         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
4760         get_saveloc_name, is_signal_frame_name, step_name,
4761         init_remote_name, create_addr_space_name,
4762         destroy_addr_space_name, search_unwind_table_name,
4763         find_dyn_list_name): Constify.
4764
4765 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
4766
4767         * darwin-nat.c (darwin_pthread_kill): New function.
4768         (darwin_resume_thread): Use darwin_pthread_kill.
4769
4770 2018-07-05  Tom de Vries  <tdevries@suse.de>
4771
4772         * macroexp.c (macro_buffer) <operator=>: New member function.
4773
4774 2018-07-04  Tom Tromey  <tom@tromey.com>
4775
4776         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
4777
4778 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
4779
4780         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
4781         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
4782         * maint.c: Likewise.
4783         * top.c: Likewise.
4784
4785 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
4786
4787         * NEWS: Create a new section for the next release branch.
4788         Rename the section of the current branch, now that it has
4789         been cut.
4790
4791 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
4792
4793         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
4794         * version.in: Bump version to 8.2.50.DATE-git.
4795
4796 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
4797             Pedro Alves  <palves@redhat.com>
4798
4799         * linux-nat.c (linux_init_ptrace): Rename to ...
4800         (linux_init_ptrace_procfs): ... this.  Call
4801         linux_proc_init_warnings.
4802         (linux_nat_target::post_attach)
4803         (linux_nat_target::post_startup_inferior): Adjust.
4804         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
4805         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
4806
4807 2018-07-04  Tom de Vries  <tdevries@suse.de>
4808
4809         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
4810         check ...
4811         (read_comp_unit_head): ... here.
4812
4813 2018-07-03  Tom Tromey  <tom@tromey.com>
4814
4815         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
4816         (stop_tracing, tstatus_command)
4817         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
4818         (print_one_static_tracepoint_marker): Update.
4819         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
4820         std::vector.
4821         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
4822         VEC.
4823         (all_tracepoints, static_tracepoints_here): Return std::vector.
4824
4825 2018-07-03  Tom Tromey  <tom@tromey.com>
4826
4827         * common/ptid.c (ptid_equal): Remove.
4828         * common/ptid.h (ptid_equal): Don't declare.
4829         * ada-tasks.c: Update.
4830         * breakpoint.c: Update.
4831         * common/agent.c: Update.
4832         * corelow.c: Update.
4833         * darwin-nat-info.c: Update.
4834         * darwin-nat.c: Update.
4835         * dcache.c: Update.
4836         * dtrace-probe.c: Update.
4837         * dummy-frame.c: Update.
4838         * fbsd-nat.c: Update.
4839         * frame.c: Update.
4840         * gdbthread.h: Update.
4841         * gnu-nat.c: Update.
4842         * go32-nat.c: Update.
4843         * inf-loop.c: Update.
4844         * inf-ptrace.c: Update.
4845         * infcall.c: Update.
4846         * infcmd.c: Update.
4847         * inflow.c: Update.
4848         * infrun.c: Update.
4849         * linux-fork.c: Update.
4850         * linux-nat.c: Update.
4851         * linux-thread-db.c: Update.
4852         * mi/mi-cmd-var.c: Update.
4853         * mi/mi-interp.c: Update.
4854         * mi/mi-main.c: Update.
4855         * nto-procfs.c: Update.
4856         * ppc-linux-tdep.c: Update.
4857         * procfs.c: Update.
4858         * python/py-inferior.c: Update.
4859         * python/py-record-btrace.c: Update.
4860         * python/py-record.c: Update.
4861         * ravenscar-thread.c: Update.
4862         * regcache.c: Update.
4863         * remote-sim.c: Update.
4864         * remote.c: Update.
4865         * sol-thread.c: Update.
4866         * solib.c: Update.
4867         * target.c: Update.
4868         * tui/tui-stack.c: Update.
4869         * varobj.c: Update.
4870         * windows-nat.c: Update.
4871         * windows-tdep.c: Update.
4872
4873 2018-07-03  Tom Tromey  <tom@tromey.com>
4874
4875         * common/ptid.c (ptid_match): Remove.
4876         * common/ptid.h (ptid_match): Don't declare.
4877         * fbsd-nat.c: Update.
4878         * infcmd.c: Update.
4879         * infrun.c: Update.
4880         * linux-nat.c: Update.
4881         * record-btrace.c: Update.
4882         * regcache.c: Update.
4883         * remote.c: Update.
4884
4885 2018-07-03  Tom Tromey  <tom@tromey.com>
4886
4887         * common/ptid.c (ptid_tid_p): Remove.
4888         * common/ptid.h (ptid_tid_p): Don't declare.
4889         * sol-thread.c: Update.
4890
4891 2018-07-03  Tom Tromey  <tom@tromey.com>
4892
4893         * common/ptid.c (ptid_lwp_p): Remove.
4894         * common/ptid.h (ptid_lwp_p): Don't declare.
4895         * fbsd-nat.c: Update.
4896         * linux-nat.c: Update.
4897         * nat/linux-procfs.c: Update.
4898         * nat/x86-linux-dregs.c: Update.
4899         * sol-thread.c: Update.
4900
4901 2018-07-03  Tom Tromey  <tom@tromey.com>
4902
4903         * common/ptid.c (ptid_is_pid): Remove.
4904         * common/ptid.h (ptid_is_pid): Don't declare.
4905         * infrun.c: Update.
4906         * linux-nat.c: Update.
4907         * mi/mi-interp.c: Update.
4908         * remote.c: Update.
4909         * thread.c: Update.
4910
4911 2018-07-03  Tom Tromey  <tom@tromey.com>
4912
4913         * common/ptid.c (ptid_get_tid): Remove.
4914         * common/ptid.h (ptid_get_tid): Don't declare.
4915         * ada-tasks.c: Update.
4916         * aix-thread.c: Update.
4917         * bsd-uthread.c: Update.
4918         * darwin-nat.c: Update.
4919         * fbsd-nat.c: Update.
4920         * i386-darwin-nat.c: Update.
4921         * infrun.c: Update.
4922         * linux-tdep.c: Update.
4923         * nto-procfs.c: Update.
4924         * ppc-ravenscar-thread.c: Update.
4925         * python/py-infthread.c: Update.
4926         * ravenscar-thread.c: Update.
4927         * sol-thread.c: Update.
4928         * sparc-ravenscar-thread.c: Update.
4929         * windows-nat.c: Update.
4930
4931 2018-07-03  Tom Tromey  <tom@tromey.com>
4932
4933         * common/ptid.c (ptid_get_lwp): Remove.
4934         * common/ptid.h (ptid_get_lwp): Don't declare.
4935         * aarch64-linux-nat.c: Update.
4936         * ada-tasks.c: Update.
4937         * aix-thread.c: Update.
4938         * amd64-linux-nat.c: Update.
4939         * arm-linux-nat.c: Update.
4940         * corelow.c: Update.
4941         * fbsd-nat.c: Update.
4942         * fbsd-tdep.c: Update.
4943         * gnu-nat.c: Update.
4944         * i386-cygwin-tdep.c: Update.
4945         * i386-gnu-nat.c: Update.
4946         * i386-linux-nat.c: Update.
4947         * ia64-linux-nat.c: Update.
4948         * inf-ptrace.c: Update.
4949         * infrun.c: Update.
4950         * linux-fork.c: Update.
4951         * linux-nat.c: Update.
4952         * linux-tdep.c: Update.
4953         * linux-thread-db.c: Update.
4954         * mips-linux-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         * obsd-nat.c: Update.
4962         * ppc-fbsd-nat.c: Update.
4963         * ppc-linux-nat.c: Update.
4964         * procfs.c: Update.
4965         * python/py-infthread.c: Update.
4966         * ravenscar-thread.c: Update.
4967         * remote.c: Update.
4968         * s390-linux-nat.c: Update.
4969         * sol-thread.c: Update.
4970         * sol2-tdep.c: Update.
4971         * spu-linux-nat.c: Update.
4972         * x86-linux-nat.c: Update.
4973         * xtensa-linux-nat.c: Update.
4974
4975 2018-07-03  Tom Tromey  <tom@tromey.com>
4976
4977         * common/ptid.c (ptid_get_pid): Remove.
4978         * common/ptid.h (ptid_get_pid): Don't declare.
4979         * aarch64-linux-nat.c: Update.
4980         * ada-lang.c: Update.
4981         * aix-thread.c: Update.
4982         * alpha-bsd-nat.c: Update.
4983         * amd64-fbsd-nat.c: Update.
4984         * amd64-linux-nat.c: Update.
4985         * arm-linux-nat.c: Update.
4986         * arm-nbsd-nat.c: Update.
4987         * auxv.c: Update.
4988         * break-catch-syscall.c: Update.
4989         * breakpoint.c: Update.
4990         * bsd-uthread.c: Update.
4991         * corelow.c: Update.
4992         * ctf.c: Update.
4993         * darwin-nat.c: Update.
4994         * fbsd-nat.c: Update.
4995         * fbsd-tdep.c: Update.
4996         * gcore.c: Update.
4997         * gnu-nat.c: Update.
4998         * hppa-nbsd-nat.c: Update.
4999         * hppa-obsd-nat.c: Update.
5000         * i386-fbsd-nat.c: Update.
5001         * ia64-linux-nat.c: Update.
5002         * inf-ptrace.c: Update.
5003         * infcmd.c: Update.
5004         * inferior.c: Update.
5005         * inferior.h: Update.
5006         * inflow.c: Update.
5007         * infrun.c: Update.
5008         * linux-fork.c: Update.
5009         * linux-nat.c: Update.
5010         * linux-tdep.c: Update.
5011         * linux-thread-db.c: Update.
5012         * m68k-bsd-nat.c: Update.
5013         * mi/mi-interp.c: Update.
5014         * mi/mi-main.c: Update.
5015         * mips-linux-nat.c: Update.
5016         * mips-nbsd-nat.c: Update.
5017         * mips64-obsd-nat.c: Update.
5018         * nat/aarch64-linux-hw-point.c: Update.
5019         * nat/aarch64-linux.c: Update.
5020         * nat/linux-btrace.c: Update.
5021         * nat/linux-osdata.c: Update.
5022         * nat/linux-procfs.c: Update.
5023         * nat/x86-linux-dregs.c: Update.
5024         * nto-procfs.c: Update.
5025         * obsd-nat.c: Update.
5026         * ppc-linux-nat.c: Update.
5027         * ppc-nbsd-nat.c: Update.
5028         * ppc-obsd-nat.c: Update.
5029         * proc-service.c: Update.
5030         * procfs.c: Update.
5031         * python/py-inferior.c: Update.
5032         * python/py-infthread.c: Update.
5033         * ravenscar-thread.c: Update.
5034         * record.c: Update.
5035         * remote-sim.c: Update.
5036         * remote.c: Update.
5037         * rs6000-nat.c: Update.
5038         * s390-linux-nat.c: Update.
5039         * sh-nbsd-nat.c: Update.
5040         * sol-thread.c: Update.
5041         * sparc-nat.c: Update.
5042         * sparc64-tdep.c: Update.
5043         * spu-linux-nat.c: Update.
5044         * spu-tdep.c: Update.
5045         * target-debug.h: Update.
5046         * target.c: Update.
5047         * thread.c: Update.
5048         * tid-parse.c: Update.
5049         * tracefile-tfile.c: Update.
5050         * vax-bsd-nat.c: Update.
5051         * windows-nat.c: Update.
5052         * x86-linux-nat.c: Update.
5053         * x86-nat.c: Update.
5054
5055 2018-07-03  Tom Tromey  <tom@tromey.com>
5056
5057         * common/ptid.c (pid_to_ptid): Remove.
5058         * common/ptid.h (pid_to_ptid): Don't declare.
5059         * aix-thread.c: Update.
5060         * arm-linux-nat.c: Update.
5061         * common/ptid.c: Update.
5062         * common/ptid.h: Update.
5063         * corelow.c: Update.
5064         * ctf.c: Update.
5065         * darwin-nat.c: Update.
5066         * fbsd-nat.c: Update.
5067         * fork-child.c: Update.
5068         * gnu-nat.c: Update.
5069         * go32-nat.c: Update.
5070         * inf-ptrace.c: Update.
5071         * infcmd.c: Update.
5072         * inferior.c: Update.
5073         * infrun.c: Update.
5074         * linux-fork.c: Update.
5075         * linux-nat.c: Update.
5076         * nat/aarch64-linux-hw-point.c: Update.
5077         * nat/fork-inferior.c: Update.
5078         * nat/x86-linux-dregs.c: Update.
5079         * nto-procfs.c: Update.
5080         * obsd-nat.c: Update.
5081         * procfs.c: Update.
5082         * progspace.c: Update.
5083         * remote.c: Update.
5084         * rs6000-nat.c: Update.
5085         * s390-linux-nat.c: Update.
5086         * sol-thread.c: Update.
5087         * spu-linux-nat.c: Update.
5088         * target.c: Update.
5089         * top.c: Update.
5090         * tracefile-tfile.c: Update.
5091         * windows-nat.c: Update.
5092
5093 2018-07-03  Tom Tromey  <tom@tromey.com>
5094
5095         * common/ptid.h (ptid_build): Don't declare.
5096         * common/ptid.c (ptid_build): Remove.
5097         * aix-thread.c: Update.
5098         * bsd-kvm.c: Update.
5099         * bsd-uthread.c: Update.
5100         * common/agent.c: Update.
5101         * common/ptid.c: Update.
5102         * common/ptid.h: Update.
5103         * corelow.c: Update.
5104         * darwin-nat.c: Update.
5105         * fbsd-nat.c: Update.
5106         * gnu-nat.c: Update.
5107         * linux-fork.c: Update.
5108         * linux-nat.c: Update.
5109         * linux-thread-db.c: Update.
5110         * nat/linux-osdata.c: Update.
5111         * nat/linux-procfs.c: Update.
5112         * nto-procfs.c: Update.
5113         * obsd-nat.c: Update.
5114         * proc-service.c: Update.
5115         * procfs.c: Update.
5116         * ravenscar-thread.c: Update.
5117         * remote-sim.c: Update.
5118         * remote.c: Update.
5119         * sol-thread.c: Update.
5120         * target.c: Update.
5121         * windows-nat.c: Update.
5122
5123 2018-07-03  Tom Tromey  <tom@tromey.com>
5124
5125         * infrun.c (follow_exec): Use exit_inferior_silent.
5126         * inferior.c (exit_inferior_num_silent): Remove.
5127         * inferior.h (exit_inferior_num_silent): Don't declare.
5128
5129 2018-07-03  Tom Tromey  <tom@tromey.com>
5130
5131         PR cli/23340:
5132         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5133         inferior_ptid on error.
5134
5135 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5136             Simon Marchi  <simon.marchi@polymtl.ca>
5137
5138         PR tdep/8282
5139         * disasm.h (gdb_disassembler): Add
5140         `m_disassembler_options_holder'. member
5141         * disasm.c (get_all_disassembler_options): New function.
5142         (gdb_disassembler::gdb_disassembler): Use it.
5143         (gdb_buffered_insn_length_init_dis): Likewise.
5144         (gdb_buffered_insn_length): Adjust accordingly.
5145         (set_disassembler_options): Handle options with arguments.
5146         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5147         line if showing options with descriptions.
5148         (disassembler_options_completer): Adapt to using the
5149         `disasm_options_and_args_t' structure.
5150         * mips-tdep.c (mips_disassembler_options): New variable.
5151         (mips_disassembler_options_o32): Likewise.
5152         (mips_disassembler_options_n32): Likewise.
5153         (mips_disassembler_options_n64): Likewise.
5154         (gdb_print_insn_mips): Don't set `disassembler_options'.
5155         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5156         functions.
5157         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5158         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5159         `gdbarch_disassembler_options_implicit' and
5160         `gdbarch_valid_disassembler_options'.
5161         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5162         `disasm_options_and_args_t' structure.
5163         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5164         method.
5165         (valid_disassembler_options): Switch from `disasm_options_t' to
5166         the `disasm_options_and_args_t' structure.
5167         * NEWS: Document `set disassembler-options' support for the MIPS
5168         target.
5169         * gdbarch.h: Regenerate.
5170         * gdbarch.c: Regenerate.
5171
5172 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5173
5174         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5175
5176 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5177
5178         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5179         parameter in call to amd64_target_description.
5180         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5181         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5182         (amd64fbsd_init_abi): Likewise.
5183         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5184         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5185         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5186         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5187
5188 2018-06-29  Pedro Alves  <palves@redhat.com>
5189
5190         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5191         "segments" parameter.
5192         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5193         (_initialize_amd64_tdep): Update call to
5194         amd64_create_target_description.
5195         (amd64_target_description): Add "segments" parameter.  Adjust
5196         the implementation to use it.
5197         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5198         call to amd64_create_target_description.
5199         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5200         * gdb/arch/amd64.h (amd64_create_target_description): Add
5201         "segments" register.
5202         * gdb/arch/amd64.c (amd64_create_target_description): Add
5203         "segments" parameter.  Call create_feature_i386_64bit_segments
5204         only if SEGMENTS is true.
5205         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5206         call to amd64_create_target_description.
5207
5208 2018-06-29  Pedro Alves  <palves@redhat.com>
5209
5210         * thread.c (thread_target_id_str): New, factored out from ...
5211         (print_thread_info_1): ... here.  Use it to compute the max
5212         "Target Id" column width.
5213
5214 2018-06-29  Pedro Alves  <palves@redhat.com>
5215
5216         * remote.c (remote_target::extra_thread_info): Delete
5217         'display_buf' and 'n' locals.  from the cache, regardless of
5218         packet mechanims is in use.  Use cache for qThreadExtra and qP
5219         methods too.
5220
5221 2018-06-29  Pedro Alves  <palves@redhat.com>
5222
5223         * blockframe.c (find_pc_sect_containing_function): New function.
5224         * breakpoint.c (print_breakpoint_location): Don't call
5225         find_pc_sect_function.
5226         * linespec.c (create_sals_line_offset): Record the location's
5227         symbol in the sal.
5228         * linespec.c (convert_address_location_to_sals): Fill in sal's
5229         symbol with find_pc_sect_containing_function.
5230         * symtab.c (find_function_start_sal): Rename to ...
5231         (find_function_start_sal_1): ... this.
5232         (find_function_start_sal): Reimplement as wrapper around
5233         find_function_start_sal_1, and use
5234         find_pc_sect_containing_function to fill in the sal's symbol.
5235         (find_function_start_sal(symbol*, bool)): Adjust.
5236         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
5237         comments.
5238         (find_pc_sect_containing_function): Declare.
5239
5240 2018-06-29  Pedro Alves  <palves@redhat.com>
5241
5242         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
5243         true if the the location has no symbol.
5244
5245 2018-06-28  Tom Tromey  <tom@tromey.com>
5246
5247         * NEWS: Mention --enable-codesign.
5248         * silent-rules.mk (ECHO_SIGN): New variable.
5249         * configure.ac: Add --enable-codesign.
5250         * configure: Rebuild.
5251         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
5252         (gdb$(EXEEXT)): Optionally invoke codesign.
5253
5254 2018-06-28  Pedro Alves  <palves@redhat.com>
5255
5256         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
5257         comments.
5258         (switch_to_thread_no_regs): Adjust comment.
5259         * infcmd.c (stop_pc): Delete.
5260         (post_create_inferior, info_program_command): Replace references
5261         to stop_pc with references to thread_info->suspend.stop_pc.
5262         * inferior.h (stop_pc): Delete declaration.
5263         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
5264         (handle_inferior_event_1, handle_signal_stop)
5265         (process_event_stop_test, keep_going_stepped_thread)
5266         (handle_step_into_function, handle_step_into_function_backward)
5267         (print_stop_location): Replace references to stop_pc with
5268         references to thread_info->suspend.stop_pc.
5269         (struct infcall_suspend_state) <stop_pc>: Delete field.
5270         (save_infcall_suspend_state, restore_infcall_suspend_state):
5271         Remove references to inf_stat->stop_pc.
5272         * linux-fork.c (fork_load_infrun_state): Likewise.
5273         * record-btrace.c (record_btrace_set_replay): Likewise.
5274         * record-full.c (record_full_goto_entry): Likewise.
5275         * remote.c (print_one_stopped_thread): Likewise.
5276         * target.c (target_resume): Extend comment.
5277         * thread.c (set_executing_thread): New.
5278         (set_executing): Use it.
5279         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
5280         Remove references to stop_pc.
5281
5282 2018-06-28  Pedro Alves  <palves@redhat.com>
5283
5284         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
5285         Moving fetching stop_pc until after ecs->event_thread is refreshed.
5286
5287 2018-06-28  Tom Tromey  <tom@tromey.com>
5288
5289         * coffread.c (coff_symfile_finish): Update.
5290         * xcoffread.c (xcoff_symfile_finish): Update.
5291         * elfread.c (elf_symfile_finish): Update.
5292         * symfile.h (dwarf2_free_objfile): Don't declare.
5293         * dwarf2read.c (_initialize_dwarf2_read): Use
5294         register_objfile_data_with_cleanup.
5295         (dwarf2_free_objfile): Now static.  Change signature.
5296
5297 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5298
5299         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
5300         option "-o" to add-symbol-file-load to add an offset to each
5301         section's load address.
5302         * symfile.c (set_objfile_default_section_offset): New function.
5303
5304 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5305
5306         * symfile.c (add_symbol_file_command): Make sure that sections
5307         with the same name are sorted in the same order.
5308
5309 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5310
5311         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
5312         require the second argument.  If omitted, load sections at the
5313         addresses specified in the file.
5314
5315 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5316
5317         * symfile.c (symbol_file_command, symbol_file_add_main_1)
5318         (_initialize_symfile): Add option "-o" to symbol-file to add an
5319         offset to each section of the symbol file.
5320
5321 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5322
5323         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
5324
5325 2018-06-27  Tom Tromey  <tom@tromey.com>
5326
5327         * stack.c (_initialize_stack): Update "func" help text.
5328
5329 2018-06-27  Tom Tromey  <tom@tromey.com>
5330
5331         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
5332         std::vector.
5333         (unwind_infopy_str, pyuw_create_unwind_info)
5334         (unwind_infopy_add_saved_register, pyuw_sniffer)
5335         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
5336         Update.
5337         (struct saved_reg): Add constructor.
5338         <value>: Now a gdbpy_ref<>.
5339
5340 2018-06-27  Tom Tromey  <tom@tromey.com>
5341
5342         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
5343
5344 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5345
5346         * gdb-gdb.py.in: Format using autopep8.
5347
5348 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5349
5350         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
5351         (type_lookup_function): Recognize CORE_ADDR values.
5352
5353 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5354
5355         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
5356         print tag_name.
5357
5358 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5359
5360         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
5361         <__lt__>: Add.
5362
5363 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5364
5365         * gdb-gdb.py: Move to...
5366         * gdb-gdb.py.in: ... here.
5367         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
5368         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
5369         dependencies.
5370         (distclean): Remove gdb-gdb.py when cleaning.
5371         (gdb-gdb.py, gdb-gdb.gdb): New rules.
5372         * configure: Re-generate.
5373
5374 2018-06-27  Pedro Alves  <palves@redhat.com>
5375
5376         * proc-service.c (get_ps_regcache): New.
5377         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
5378         (ps_lsetfpregs): Use it.
5379
5380 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
5381
5382         PR gdb/21695
5383         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
5384         (dwarf_decode_lines_1): Adjust.
5385
5386 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5387
5388         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
5389         override.
5390         <info_proc>: Likewise.
5391
5392 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
5393
5394         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
5395         to windows_fetch_one_register, and only handle the case of
5396         fetching one register.  Move the code that reloads the context
5397         and iterates over all registers if R is negative to...
5398         (windows_nat_target::fetch_registers): ... here.
5399         (do_windows_store_inferior_registers): Rename to
5400         windows_store_one_register, and only handle the case of storing
5401         one register.  Move the code that handles the case where r is
5402         negative to...
5403         (windows_nat_target::store_registers) ... here.
5404
5405 2018-06-26  Tom Tromey  <tom@tromey.com>
5406
5407         PR rust/22574:
5408         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
5409         * rust-lang.c (rust_print_struct_def): Add podata parameter.
5410         Update.
5411         (rust_internal_print_type): Add podata parameter.
5412         (rust_print_type): Update.
5413
5414 2018-06-26  Tom Tromey  <tom@tromey.com>
5415
5416         * typeprint.h (struct print_offset_data) <update, finish,
5417         maybe_print_hole>: New methods.
5418         <indentation>: New constant.
5419         * typeprint.c (print_offset_data::indentation): Define.
5420         (print_offset_data::maybe_print_hole, print_offset_data::update)
5421         (print_offset_data::finish): Move from c-typeprint.c and rename.
5422         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
5423         (print_spaces_filtered_with_print_options): Update.
5424         (c_print_type_union_field_offset, maybe_print_hole)
5425         (c_print_type_struct_field_offset): Move to typeprint.c and
5426         rename.
5427         (c_type_print_base_struct_union): Update.
5428
5429 2018-06-25  Pedro Alves  <palves@redhat.com>
5430
5431         * gdbthread.h (thread_info_ref, delete_thread)
5432         (delete_thread_silent, first_thread_of_inferior)
5433         (any_thread_of_inferior, switch_to_thread)
5434         (enable_thread_stack_temporaries)
5435         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5436         (get_last_thread_stack_temporary)
5437         (value_in_thread_stack_temporaries, can_access_registers_thread):
5438         Spell out "struct thread_info" instead of just "thread_info".
5439         * inferior.h (notice_new_inferior): Likewise.
5440
5441 2018-06-25  Pedro Alves  <palves@redhat.com>
5442
5443         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5444         pass thread_info pointer to delete_thread.
5445         (windows_nat_target::detach): Pass inferior pointer to
5446         detach_inferior.
5447         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
5448         delete_thread.
5449         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
5450         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
5451         and pass a thread_info pointer to delete_thread.
5452         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
5453         pass thread_info pointer to delete_thread.
5454         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
5455         delete_thread_silent call.
5456         * procfs.c (procfs_target::detach): Pass inferior pointer to
5457         detach_inferior.
5458         (procfs_target::wait): Pass thread_info pointer to delete_thread.
5459         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
5460         delete_thread_silent call.
5461         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5462         pass thread_info pointer to delete_thread.
5463         (windows_nat_target::detach): Pass inferior pointer to
5464         delete_inferior.
5465
5466 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5467
5468         * regcache.c (readable_regcache::read_part): Fix asserts.
5469         (reg_buffer::raw_collect_part): New function.
5470         (regcache::write_part): Fix asserts.
5471         (reg_buffer::raw_supply_part): New function.
5472         (regcache::transfer_regset_register): New helper function.
5473         (regcache::transfer_regset): Call new functions.
5474         (regcache_supply_regset): Use gdb_byte*.
5475         (regcache::supply_regset): Likewise.
5476         (regcache_collect_regset): Likewise.
5477         (regcache::collect_regset): Likewise.
5478         * regcache.h (reg_buffer::raw_collect_part): New declaration.
5479         (reg_buffer::raw_supply_part): Likewise.
5480         (regcache::transfer_regset_register): Likewise.
5481         (regcache::transfer_regset): Use gdb_byte*.
5482
5483 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5484
5485         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
5486
5487 2018-06-21  Pedro Alves  <palves@redhat.com>
5488
5489         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
5490         instead of a ptid_t.  All callers adjusted.
5491         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
5492         adjusted.
5493         (print_ada_task_info, display_current_task_id, task_command_1):
5494         Adjust.
5495         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
5496         inferior_thread.
5497         (breakpoint_kind): Adjust.
5498         (remove_breakpoints_pid): Rename to ...
5499         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
5500         pointer.  All callers adjusted.
5501         (bpstat_clear_actions): Use inferior_thread.
5502         (get_bpstat_thread): New.
5503         (bpstat_do_actions): Use it.
5504         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
5505         to take a thread_info pointer.  All callers adjusted.
5506         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
5507         (breakpoint_re_set_thread): Use inferior_thread.
5508         * breakpoint.h (struct inferior): Forward declare.
5509         (bpstat_stop_status): Update.
5510         (remove_breakpoints_pid): Delete.
5511         (remove_breakpoints_inf): New.
5512         * bsd-uthread.c (bsd_uthread_target::wait)
5513         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
5514         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
5515         (maint_btrace_packet_history_cmd)
5516         (maint_btrace_clear_packet_history_cmd): Adjust.
5517         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
5518         inferior_thread.
5519         * cli/cli-interp.c: Include "inferior.h".
5520         * common/refcounted-object.h (struct
5521         refcounted_object_ref_policy): New.
5522         * compile/compile-object-load.c: Include gdbthread.h.
5523         (store_regs): Use inferior_thread.
5524         * corelow.c (core_target::close): Use current_inferior.
5525         (core_target_open): Adjust to use first_thread_of_inferior and use
5526         the current inferior.
5527         * ctf.c (ctf_target::close): Adjust to use current_inferior.
5528         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
5529         <thread>: ... this new field.  All references adjusted.
5530         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
5531         Take a thread_info pointer instead of a ptid_t.
5532         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
5533         (dummy_frame_discard, register_dummy_frame_dtor): Take a
5534         thread_info pointer instead of a ptid_t.
5535         * elfread.c: Include "inferior.h".
5536         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
5537         Use inferior_thread.
5538         * eval.c (evaluate_subexp): Likewise.
5539         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
5540         inferior_thread.
5541         * gdb_proc_service.h (struct thread_info): Forward declare.
5542         (struct ps_prochandle) <ptid>: Delete, replaced by ...
5543         <thread>: ... this new field.  All references adjusted.
5544         * gdbarch.h, gdbarch.c: Regenerate.
5545         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
5546         'thread' parameter.  All implementations and callers adjusted.
5547         * gdbthread.h (thread_info) <set_running>: New method.
5548         (delete_thread, delete_thread_silent): Take a thread_info pointer
5549         instead of a ptid.
5550         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
5551         (first_thread_of_process): Delete, replaced by ...
5552         (first_thread_of_inferior): ... this new function.  All callers
5553         adjusted.
5554         (any_live_thread_of_process): Delete, replaced by ...
5555         (any_live_thread_of_inferior): ... this new function.  All callers
5556         adjusted.
5557         (switch_to_thread, switch_to_no_thread): Declare.
5558         (is_executing): Delete.
5559         (enable_thread_stack_temporaries): Update comment.
5560         <enable_thread_stack_temporaries>: Take a thread_info pointer
5561         instead of a ptid_t.  Incref the thread.
5562         <~enable_thread_stack_temporaries>: Decref the thread.
5563         <m_ptid>: Delete
5564         <m_thr>: New.
5565         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5566         (get_last_thread_stack_temporary)
5567         (value_in_thread_stack_temporaries, can_access_registers_thread):
5568         Take a thread_info pointer instead of a ptid_t.  All callers
5569         adjusted.
5570         * infcall.c (get_call_return_value): Use inferior_thread.
5571         (run_inferior_call): Work with thread pointers instead of ptid_t.
5572         (call_function_by_hand_dummy): Work with thread pointers instead
5573         of ptid_t.  Use thread_info_ref.
5574         * infcmd.c (proceed_thread_callback): Access thread's state
5575         directly.
5576         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
5577         access thread's state directly.
5578         (continue_command): Use inferior_thread.
5579         (info_program_command): Use find_thread_ptid and access thread
5580         state directly.
5581         (proceed_after_attach_callback): Use thread state directly.
5582         (notice_new_inferior): Take a thread_info pointer instead of a
5583         ptid_t.  All callers adjusted.
5584         (exit_inferior): Take an inferior pointer instead of a pid.  All
5585         callers adjusted.
5586         (exit_inferior_silent): New.
5587         (detach_inferior): Delete.
5588         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
5589         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
5590         (detach_inferior_command, kill_inferior_command): Use
5591         find_inferior_id instead of valid_gdb_inferior_id and
5592         gdb_inferior_id_to_pid.
5593         (inferior_command): Use inferior and thread pointers.
5594         * inferior.h (struct thread_info): Forward declare.
5595         (notice_new_inferior): Take a thread_info pointer instead of a
5596         ptid_t.  All callers adjusted.
5597         (detach_inferior): Delete declaration.
5598         (exit_inferior, exit_inferior_silent): Take an inferior pointer
5599         instead of a pid.  All callers adjusted.
5600         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
5601         (valid_gdb_inferior_id): Delete.
5602         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
5603         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
5604         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
5605         ...
5606         <inf>: ... this new field.
5607         <step_ptid>: Delete, replaced by ...
5608         <step_thread>: ... this new field.
5609         (get_displaced_stepping_state): Take an inferior pointer instead
5610         of a pid.  All callers adjusted.
5611         (displaced_step_in_progress_any_inferior): Adjust.
5612         (displaced_step_in_progress_thread): Take a thread pointer instead
5613         of a ptid_t.  All callers adjusted.
5614         (displaced_step_in_progress, add_displaced_stepping_state): Take
5615         an inferior pointer instead of a pid.  All callers adjusted.
5616         (get_displaced_step_closure_by_addr): Adjust.
5617         (remove_displaced_stepping_state): Take an inferior pointer
5618         instead of a pid.  All callers adjusted.
5619         (displaced_step_prepare_throw, displaced_step_prepare)
5620         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
5621         All callers adjusted.
5622         (start_step_over): Adjust.
5623         (infrun_thread_ptid_changed): Remove bit updating ptids in the
5624         displaced step queue.
5625         (do_target_resume): Adjust.
5626         (fetch_inferior_event): Use inferior_thread.
5627         (context_switch, get_inferior_stop_soon): Take an
5628         execution_control_state pointer instead of a ptid_t.  All callers
5629         adjusted.
5630         (switch_to_thread_cleanup): Delete.
5631         (stop_all_threads): Use scoped_restore_current_thread.
5632         * inline-frame.c: Include "gdbthread.h".
5633         (inline_state) <inline_state>: Take a thread pointer instead of a
5634         ptid_t.  All callers adjusted.
5635         <ptid>: Delete, replaced by ...
5636         <thread>: ... this new field.
5637         (find_inline_frame_state): Take a thread pointer instead of a
5638         ptid_t.  All callers adjusted.
5639         (skip_inline_frames, step_into_inline_frame)
5640         (inline_skipped_frames, inline_skipped_symbol): Take a thread
5641         pointer instead of a ptid_t.  All callers adjusted.
5642         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
5643         (inline_skipped_frames, inline_skipped_symbol): Likewise.
5644         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
5645         pointers directly.
5646         * linux-nat.c (get_detach_signal): Likewise.
5647         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
5648         (thread_db_notice_clone): Adjust.
5649         (thread_db_find_new_threads_silently)
5650         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
5651         a thread pointer instead of a ptid_t.  All callers adjusted.
5652         * mi/mi-cmd-var.c: Include "inferior.h".
5653         (mi_cmd_var_update_iter): Update to use thread pointers.
5654         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
5655         inferior directly.
5656         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
5657         out to ...
5658         (mi_output_running): ... this new function.
5659         (mi_on_resume_1): Adjust to use it.
5660         (mi_user_selected_context_changed): Adjust to use inferior_thread.
5661         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
5662         directly.
5663         (interrupt_thread_callback): : Adjust to use thread and inferior
5664         pointers.
5665         * proc-service.c: Include "gdbthread.h".
5666         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
5667         * progspace-and-thread.c: Include "inferior.h".
5668         * progspace.c: Include "inferior.h".
5669         * python/py-exitedevent.c (create_exited_event_object): Adjust to
5670         hold a reference to an inferior_object.
5671         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
5672         inferior_thread.
5673         * python/py-inferior.c (struct inferior_object): Give the type a
5674         tag name instead of a typedef.
5675         (python_on_normal_stop): No need to check if the current thread is
5676         listed.
5677         (inferior_to_inferior_object): Change return type to
5678         inferior_object.  All callers adjusted.
5679         (find_thread_object): Delete, bits factored out to ...
5680         (thread_to_thread_object): ... this new function.
5681         * python/py-infthread.c (create_thread_object): Use
5682         inferior_to_inferior_object.
5683         (thpy_is_stopped): Use thread pointer directly.
5684         (gdbpy_selected_thread): Use inferior_thread.
5685         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
5686         field, replaced with ...
5687         <thread>: ... this new field.  All users adjusted.
5688         (btpy_insn_or_gap_new): Drop const.
5689         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
5690         callers adjusted.
5691         * python/py-record.c: Include "gdbthread.h".
5692         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5693         a ptid_t.  All callers adjusted.
5694         (gdbpy_current_recording): Use inferior_thread.
5695         * python/py-record.h (recpy_record_object) <ptid>: Delete
5696         field, replaced with ...
5697         <thread>: ... this new field.  All users adjusted.
5698         (recpy_element_object) <ptid>: Delete
5699         field, replaced with ...
5700         <thread>: ... this new field.  All users adjusted.
5701         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5702         a ptid_t.  All callers adjusted.
5703         * python/py-threadevent.c: Include "gdbthread.h".
5704         (get_event_thread): Use thread_to_thread_object.
5705         * python/python-internal.h (struct inferior_object): Forward
5706         declare.
5707         (find_thread_object, find_inferior_object): Delete declarations.
5708         (thread_to_thread_object, inferior_to_inferior_object): New
5709         declarations.
5710         * record-btrace.c: Include "inferior.h".
5711         (require_btrace_thread): Use inferior_thread.
5712         (record_btrace_frame_sniffer)
5713         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
5714         (get_thread_current_frame): Use scoped_restore_current_thread and
5715         switch_to_thread.
5716         (get_thread_current_frame): Use thread pointer directly.
5717         (record_btrace_replay_at_breakpoint): Use thread's inferior
5718         pointer directly.
5719         * record-full.c: Include "inferior.h".
5720         * regcache.c: Include "gdbthread.h".
5721         (get_thread_arch_regcache): Use the inferior's address space
5722         directly.
5723         (get_thread_regcache, registers_changed_thread): New.
5724         * regcache.h (get_thread_regcache(thread_info *thread)): New
5725         overload.
5726         (registers_changed_thread): New.
5727         (remote_target) <remote_detach_1>: Swap order of parameters.
5728         (remote_add_thread): <remote_add_thread>: Return the new thread.
5729         (get_remote_thread_info(ptid_t)): New overload.
5730         (remote_target::remote_notice_new_inferior): Use thread pointers
5731         directly.
5732         (remote_target::process_initial_stop_replies): Use
5733         thread_info::set_running.
5734         (remote_target::remote_detach_1, remote_target::detach)
5735         (extended_remote_target::detach): Adjust.
5736         * stack.c (frame_show_address): Use inferior_thread.
5737         * target-debug.h (target_debug_print_thread_info_pp): New.
5738         * target-delegates.c: Regenerate.
5739         * target.c (default_thread_address_space): Delete.
5740         (memory_xfer_partial_1): Use current_inferior.
5741         (target_detach): Use current_inferior.
5742         (target_thread_address_space): Delete.
5743         (generic_mourn_inferior): Use current_inferior.
5744         * target.h (struct target_ops) <thread_address_space>: Delete.
5745         (target_thread_address_space): Delete.
5746         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
5747         pointers directly.
5748         (delete_thread_1, delete_thread, delete_thread_silent): Take a
5749         thread pointer instead of a ptid_t.  Adjust all callers.
5750         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
5751         (first_thread_of_process): Delete, replaced by ...
5752         (first_thread_of_inferior): ... this new function.  All callers
5753         adjusted.
5754         (any_thread_of_process): Rename to ...
5755         (any_thread_of_inferior): ... this, and take an inferior pointer.
5756         (any_live_thread_of_process): Rename to ...
5757         (any_live_thread_of_inferior): ... this, and take an inferior
5758         pointer.
5759         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5760         (value_in_thread_stack_temporaries)
5761         (get_last_thread_stack_temporary): Take a thread pointer instead
5762         of a ptid_t.  Adjust all callers.
5763         (thread_info::set_running): New.
5764         (validate_registers_access): Use inferior_thread.
5765         (can_access_registers_ptid): Rename to ...
5766         (can_access_registers_thread): ... this, and take a thread
5767         pointer.
5768         (print_thread_info_1): Adjust to compare thread pointers instead
5769         of ptids.
5770         (switch_to_no_thread, switch_to_thread): Make extern.
5771         (scoped_restore_current_thread::~scoped_restore_current_thread):
5772         Use m_thread pointer directly.
5773         (scoped_restore_current_thread::scoped_restore_current_thread):
5774         Use inferior_thread.
5775         (thread_command): Use thread pointer directly.
5776         (thread_num_make_value_helper): Use inferior_thread.
5777         * top.c (execute_command): Use inferior_thread.
5778         * tui/tui-interp.c: Include "inferior.h".
5779         * varobj.c (varobj_create): Use inferior_thread.
5780         (value_of_root_1): Use find_thread_global_id instead of
5781         global_thread_id_to_ptid.
5782
5783 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
5784
5785         * regcache.c (readable_regcache::read_part): Avoid memcpy when
5786         possible.
5787         (regcache::write_part): Likewise.
5788         (readable_regcache::cooked_read_part): Update comment.
5789         (readable_regcache::cooked_write_part): Likewise.
5790         * regcache.h: (readable_regcache::read_part): Likewise.
5791         (regcache::write_part): Likewise.
5792
5793 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
5794             Dirk Schubert  <dirk.schubert@arm.com>
5795
5796         * aarch64-linux-nat.c (post_attach): New.
5797         (aarch64_linux_nat_target::post_attach): Override post_attach to
5798         record the number of hardware debug registers.
5799
5800 2018-06-20  Tom Tromey  <tom@tromey.com>
5801
5802         * python/py-param.c (add_setshow_generic): Make parameters const.
5803         (parmpy_init): Update.
5804
5805 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
5806
5807         * regcache.h (regcache_cooked_read_ftype): Rename to...
5808         (register_read_ftype): ...this, change type to function_view.
5809         (class reg_buffer) <save>: Remove src parameter.
5810         (readonly_detached_regcache) <readonly_detached_regcache>: Make
5811         parameter non-const in first overload.  Remove src parameter in
5812         second overload.
5813         * regcache.c (do_cooked_read): Remove.
5814         (readonly_detached_regcache::readonly_detached_regcache): Make
5815         parameter non-const, adjust call to other constructor.
5816         (reg_buffer::save): Remove src parameter.
5817         * frame.c (do_frame_register_read): Remove.
5818         (frame_save_as_regcache): Use lambda function.
5819         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
5820         parameter to ppu2spu_data *.
5821         (ppu2spu_sniffer): Use lambda function.
5822
5823 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
5824
5825         * record-full.c (record_full_target::insert_breakpoint): Remove
5826         "struct" keyword, add const.
5827
5828 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
5829
5830         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
5831         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
5832         * configure.ac: Remove AC_PREREQ, add missing quoting.
5833         * gnulib/configure.ac: Modernize usage of
5834         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
5835         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
5836         (AUTOMAKE_VERSION): Bump to 1.15.1.
5837         * configure: Re-generate.
5838         * config.in: Re-generate.
5839         * aclocal.m4: Re-generate.
5840         * gnulib/aclocal.m4: Re-generate.
5841         * gnulib/config.in: Re-generate.
5842         * gnulib/configure: Re-generate.
5843         * gnulib/import/Makefile.in: Re-generate.
5844
5845 2018-06-19  Pedro Alves  <palves@redhat.com>
5846
5847         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
5848         (lookup_minimal_symbol_by_pc_section): ... here with
5849         gdb_assert_not_reached added.
5850
5851 2018-06-19  Pedro Alves  <palves@redhat.com>
5852
5853         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
5854         parameter with a block parameter.  Compare location's block symbol
5855         with the frame's block instead of addresses.
5856         (skip_inline_frames): Pass the current block instead of the
5857         frame's address.  Break out as soon as we determine the frame
5858         should not be skipped.
5859
5860 2018-06-18  Tom Tromey  <tom@tromey.com>
5861
5862         * solib-aix.c (solib_aix_get_section_offsets): Return
5863         unique_xmalloc_ptr.
5864         (solib_aix_solib_create_inferior_hook): Update.
5865
5866 2018-06-18  Tom Tromey  <tom@tromey.com>
5867
5868         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
5869
5870 2018-06-18  Tom Tromey  <tom@tromey.com>
5871
5872         * solib-frv.c (frv_relocate_main_executable): Use
5873         unique_xmalloc_ptr.
5874         * solib-dsbt.c (dsbt_relocate_main_executable): Use
5875         unique_xmalloc_ptr.
5876
5877 2018-06-18  Tom Tromey  <tom@tromey.com>
5878
5879         * objfiles.h (inhibit_section_map_updates): Update.
5880         (resume_section_map_updates, resume_section_map_updates_cleanup):
5881         Remove.
5882         * solib-svr4.c (svr4_handle_solib_event): Update.
5883         * objfiles.c (inhibit_section_map_updates): Return
5884         scoped_restore_tmpl<int>.
5885         (resume_section_map_updates, resume_section_map_updates_cleanup):
5886         Remove.
5887
5888 2018-06-18  Tom Tromey  <tom@tromey.com>
5889
5890         * valprint.h (read_string): Update.
5891         * valprint.c (read_string): Change type of "buffer".
5892         (val_print_string): Update.
5893         * python/py-value.c (valpy_string): Update.
5894         * language.h (struct language_defn) <la_get_string>: Change
5895         type of "buffer".
5896         (default_get_string, c_get_string): Update.
5897         * language.c (default_get_string): Change type of "buffer".
5898         * guile/scm-value.c (gdbscm_value_to_string): Update.
5899         * c-lang.c (c_get_string): Change type of "buffer".
5900
5901 2018-06-18  Tom Tromey  <tom@tromey.com>
5902
5903         * ser-mingw.c (struct pipe_state_destroyer): New.
5904         (pipe_state_up): New typedef.
5905         (cleanup_pipe_state): Remove.
5906         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
5907
5908 2018-06-18  Tom Tromey  <tom@tromey.com>
5909
5910         * rust-lang.h (rust_yyerror): Don't declare.
5911         * rust-lang.c (rust_language_defn): Update.
5912         * rust-exp.y (yyerror): Now static.
5913         * parse.c (parse_exp_in_context_1): Update.
5914         * p-lang.h (p_yyerror): Don't declare.
5915         * p-lang.c (p_language_defn): Update.
5916         * p-exp.y (yyerror): Now static.
5917         * opencl-lang.c (opencl_language_defn): Update.
5918         * objc-lang.c (objc_language_defn): Update.
5919         * m2-lang.h (m2_yyerror): Don't declare.
5920         * m2-lang.c (m2_language_defn): Update.
5921         * m2-exp.y (yyerror): Now static.
5922         * language.h (struct language_defn) <la_error>: Remove.
5923         * language.c (unk_lang_error): Remove.
5924         (unknown_language_defn, auto_language_defn): Remove.
5925         * go-lang.h (go_yyerror): Don't declare.
5926         * go-lang.c (go_language_defn): Update.
5927         * go-exp.y (yyerror): Now static.
5928         * f-lang.h (f_yyerror): Don't declare.
5929         * f-lang.c (f_language_defn): Update.
5930         * f-exp.y (yyerror): Now static.
5931         * d-lang.h (d_yyerror): Don't declare.
5932         * d-lang.c (d_language_defn): Update.
5933         * d-exp.y (yyerror): Now static.
5934         * c-lang.h (c_yyerror): Don't declare.
5935         * c-lang.c (c_language_defn, cplus_language_defn)
5936         (asm_language_defn, minimal_language_defn): Update.
5937         * c-exp.y (yyerror): Now static.
5938         * ada-lang.h (ada_yyerror): Don't declare.
5939         * ada-lang.c (ada_language_defn): Update.
5940         * ada-exp.y (yyerror): Now static.
5941
5942 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
5943
5944         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
5945         (store_sveregs_to_thread): Likewise.
5946         (aarch64_linux_fetch_inferior_registers): Check for SVE.
5947         (aarch64_linux_store_inferior_registers): Likewise.
5948         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
5949         function.
5950         (aarch64_sve_regs_copy_to_regcache): Likewise.
5951         (aarch64_sve_regs_copy_from_regcache): Likewise.
5952         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
5953         declaration.
5954         (aarch64_sve_regs_copy_to_regcache): Likewise.
5955         (aarch64_sve_regs_copy_from_regcache): Likewise.
5956         (sve_context): Structure from Linux headers.
5957         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
5958         (SVE_SIG_ZREG_SIZE): Likewise.
5959         (SVE_SIG_PREG_SIZE): Likewise.
5960         (SVE_SIG_FFR_SIZE): Likewise.
5961         (SVE_SIG_REGS_OFFSET): Likewise.
5962         (SVE_SIG_ZREGS_OFFSET): Likewise.
5963         (SVE_SIG_ZREG_OFFSET): Likewise.
5964         (SVE_SIG_ZREGS_SIZE): Likewise.
5965         (SVE_SIG_PREGS_OFFSET): Likewise.
5966         (SVE_SIG_PREG_OFFSET): Likewise.
5967         (SVE_SIG_PREGS_SIZE): Likewise.
5968         (SVE_SIG_FFR_OFFSET): Likewise.
5969         (SVE_SIG_REGS_SIZE): Likewise.
5970         (SVE_SIG_CONTEXT_SIZE): Likewise.
5971         (SVE_PT_REGS_MASK): Likewise.
5972         (SVE_PT_REGS_FPSIMD): Likewise.
5973         (SVE_PT_REGS_SVE): Likewise.
5974         (SVE_PT_VL_INHERIT): Likewise.
5975         (SVE_PT_VL_ONEXEC): Likewise.
5976         (SVE_PT_REGS_OFFSET): Likewise.
5977         (SVE_PT_FPSIMD_OFFSET): Likewise.
5978         (SVE_PT_FPSIMD_SIZE): Likewise.
5979         (SVE_PT_SVE_ZREG_SIZE): Likewise.
5980         (SVE_PT_SVE_PREG_SIZE): Likewise.
5981         (SVE_PT_SVE_FFR_SIZE): Likewise.
5982         (SVE_PT_SVE_FPSR_SIZE): Likewise.
5983         (SVE_PT_SVE_FPCR_SIZE): Likewise.
5984         (__SVE_SIG_TO_PT): Likewise.
5985         (SVE_PT_SVE_OFFSET): Likewise.
5986         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
5987         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
5988         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
5989         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
5990         (SVE_PT_SVE_PREG_OFFSET): Likewise.
5991         (SVE_PT_SVE_PREGS_SIZE): Likewise.
5992         (SVE_PT_SVE_FFR_OFFSET): Likewise.
5993         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
5994         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
5995         (SVE_PT_SVE_SIZE): Likewise.
5996         (SVE_PT_SIZE): Likewise.
5997         (HAS_SVE_STATE): New define.
5998
5999 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6000
6001         * nat/aarch64-sve-linux-sigcontext.h: New file.
6002         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6003         new files.
6004         (SVE_VQ_MIN): Likewise.
6005         (SVE_VQ_MAX): Likewise.
6006         (SVE_VL_MIN): Likewise.
6007         (SVE_VL_MAX): Likewise.
6008         (SVE_NUM_ZREGS): Likewise.
6009         (SVE_NUM_PREGS): Likewise.
6010         (sve_vl_valid): Likewise.
6011         (struct user_sve_header): Likewise.
6012
6013 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6014             Richard Bunt <Richard.Bunt@arm.com>
6015
6016         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6017         was requested by GDB.
6018
6019 2018-06-15  Tom de Vries  <tdevries@suse.de>
6020
6021         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6022
6023 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6024
6025         * gnulib/update-gnulib.sh: Print expected versions of
6026         autoconf/aclocal.
6027
6028 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6029
6030         * arch-utils.c (default_type_align): Use type_length_units.
6031         * gdbtypes.c (type_align): Use type_length_units.
6032
6033 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6034
6035         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6036         of 'define' command.
6037
6038 2018-06-14  Tom de Vries  <tdevries@suse.de>
6039
6040         PR cli/22573
6041         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6042         get_no_prettyformat_print_options.
6043
6044 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6045
6046         * sparc-nat.h: Include target.h.
6047         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6048         <fetch_registers>: Remove this argument in function call.
6049         <store_registers>: Remove this argument in function call, remove
6050         extra semicolon.
6051         <low_forget_process>: Call sparc64_forget_process instead of
6052         sparc_forget_process.
6053
6054 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6055
6056         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6057         (procfs_target::make_corefile_notes): Adjust to new
6058         target_read_alloc return type.
6059
6060 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6061             Stephen Roberts  <stephen.roberts@arm.com>
6062
6063         PR gdb/22882
6064         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6065         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6066         Move should_notify_stop local into more inner scope.
6067
6068 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6069             Stephen Roberts  <stephen.roberts@arm.com>
6070
6071         PR gdb/22882
6072         * infrun.c (resume_1): Add call to mark_async_event_handler.
6073
6074 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6075
6076         * infrun.c (do_target_wait): Change old version of $pc printed.
6077
6078 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6079
6080         * dwarf2read.c (read_index_from_section): Rename to...
6081         (read_gdb_index_from_section): ... this, update all callers.
6082         (dwarf2_read_index): Rename to...
6083         (dwarf2_read_gdb_index): ... this, update all callers.
6084
6085 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6086
6087         * gdb/hppa-linux-nat.c
6088         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6089         hppa_linux_nat_target::fetch_registers.
6090
6091 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6092
6093         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6094         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6095         (AARCH64_DWARF_SVE_FFR): Likewise.
6096         (AARCH64_DWARF_SVE_P0): Likewise.
6097         (AARCH64_DWARF_SVE_Z0): Likewise.
6098
6099 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6100
6101         * common/common-regcache.h (raw_compare): New function.
6102         * regcache.c (regcache::raw_compare): Likewise.
6103         * regcache.h (regcache::raw_compare): New declaration.
6104
6105 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6106
6107         * common/common-regcache.h (reg_buffer_common): New structure.
6108         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6109         (reg_buffer::raw_supply): Likewise.
6110         (reg_buffer::raw_supply_integer): Likewise.
6111         (reg_buffer::raw_supply_zeroed): Likewise.
6112         (reg_buffer::raw_collect): Likewise.
6113         (reg_buffer::raw_collect_integer): Likewise.
6114         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6115         (reg_buffer::raw_supply): Likewise.
6116         (reg_buffer::raw_supply_integer): Likewise.
6117         (reg_buffer::raw_supply_zeroed): Likewise.
6118         (reg_buffer::raw_collect): Likewise.
6119         (reg_buffer::raw_collect_integer): Likewise.
6120
6121 2018-06-10  Tom Tromey  <tom@tromey.com>
6122
6123         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6124         (class remote_state) <stop_reply_queue>: Now std::vector.
6125         (remote_state::~remote_state)
6126         (remote_target::stop_reply_queue_length): Update.
6127         (struct queue_iter_param, remove_child_of_pending_fork)
6128         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6129         (check_pending_event_prevents_wildcard_vcont_callback)
6130         (remove_stop_reply_for_inferior)
6131         (remove_stop_reply_of_remote_state)
6132         (remote_notif_remove_once_on_match)
6133         (stop_reply_match_ptid_and_ws)
6134         (remote_kill_child_of_pending_fork): Remove.
6135         (remote_target::remove_new_fork_children)
6136         (remote_target::check_pending_events_prevent_wildcard_vcont)
6137         (remote_target::discard_pending_stop_replies)
6138         (remote_target::discard_pending_stop_replies_in_queue)
6139         (remote_target::remote_notif_remove_queued_reply)
6140         (remote_target::queued_stop_reply)
6141         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6142         (remote_target::wait, remote_target::kill_new_fork_children)
6143         (remote_target::async): Update.
6144
6145 2018-06-10  Tom Tromey  <tom@tromey.com>
6146
6147         * record-full.c (record_full_arch_list_cleanups): Remove.
6148         (record_full_message): Use try/catch.
6149         (record_full_wait_cleanups): Remove.
6150         (record_full_wait_1): Use try/catch.
6151         (record_full_restore): Likewise.
6152
6153 2018-06-10  Tom Tromey  <tom@tromey.com>
6154
6155         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6156         declare VEC.  Add constructor.
6157         <in_target_beneath>: Now bool.
6158         (record_full_breakpoints): Now a std::vector, static.
6159         (record_full_sync_record_breakpoints)
6160         (record_full_init_record_breakpoints)
6161         (record_full_target::insert_breakpoint)
6162         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6163
6164 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6165
6166         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6167         * serial.c (serial_interface_lookup): Remove struct keyword.
6168
6169 2018-06-10  Tom Tromey  <tom@tromey.com>
6170
6171         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6172         method.
6173         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6174         a method.
6175         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6176         method.
6177         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6178         "beneath" as a method.
6179         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6180         Use "beneath" as a method.
6181
6182 2018-06-10  Tom Tromey  <tom@tromey.com>
6183
6184         * tracefile.c (struct trace_file_writer_deleter): New.
6185         <operator()>: Rename from trace_file_writer_xfree.
6186         (trace_file_writer_up): New typedef.
6187         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6188
6189 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6190
6191         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6192         <m_registers, m_register_status>: Change type to
6193         std::unique_ptr.
6194         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6195         XCNEWVEC.
6196
6197 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6198
6199         * common/common-regcache.h (enum register_status): Add
6200         underlying type "signed char".
6201         * regcache.h (reg_buffer) <m_register_status>: Change type to
6202         register_status *.
6203         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6204         register_status instead of signed char.
6205         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6206         (reg_buffer::get_register_status): Remove cast.
6207         (readable_regcache::raw_read): Remove cast.
6208         (readable_regcache::cooked_read): Remove cast.
6209
6210 2018-06-09  Tom Tromey  <tom@tromey.com>
6211
6212         * source.c (reverse_search_command, forward_search_command): Use
6213         scoped_fd.
6214
6215 2018-06-09  Tom Tromey  <tom@tromey.com>
6216
6217         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6218         (serial_ops_list): Now static, std::vector.
6219         (serial_interface_lookup, serial_add_interface): Update.
6220
6221 2018-06-09  Tom Tromey  <tom@tromey.com>
6222
6223         * dwarf2read.c (process_cu_includes): Update.
6224         (process_full_comp_unit): Update.
6225         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6226         std::vector.
6227
6228 2018-06-08  Paul Koning  <paul_koning@dell.com>
6229
6230         PR gdb/23252
6231
6232         * python/python.c (do_start_initialization):
6233         Avoid call to internal Python API.
6234         (init__gdb_module): New function.
6235
6236 2018-06-08  Gary Benson <gbenson@redhat.com>
6237
6238         * linux-thread-db.c (valprint.h): New include.
6239         (struct check_thread_db_info): New structure.
6240         (check_thread_db_on_load, tdb_testinfo): New static globals.
6241         (check_thread_db, check_thread_db_callback): New functions.
6242         (try_thread_db_load_1): Run integrity checks if requested.
6243         (maintenance_check_libthread_db): New function.
6244         (_initialize_thread_db): Register "maint check libthread-db"
6245         and "maint set/show check-libthread-db".
6246         * NEWS: Mention the above new commands.
6247
6248 2018-06-08  Tom Tromey  <tom@tromey.com>
6249
6250         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
6251         now a method.
6252
6253 2018-06-08  Tom Tromey  <tom@tromey.com>
6254
6255         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
6256
6257 2018-06-08  Tom Tromey  <tom@tromey.com>
6258
6259         * common/btrace-common.h (struct btrace_data): Add constructor,
6260         destructor, move assignment operator.
6261         <empty, clear, fini>: New methods.
6262         <format>: Initialize.
6263         (btrace_data_init, btrace_data_fini, btrace_data_clear)
6264         (btrace_data_empty): Don't declare.
6265         * common/btrace-common.c (btrace_data_init): Remove.
6266         (btrace_data::fini): Rename from btrace_data_fini.
6267         (btrace_data::empty): Rename from btrace_data_empty.
6268         (btrace_data::clear): Rename from btrace_data_clear.  Return
6269         bool.
6270         * btrace.h (make_cleanup_btrace_data): Don't declare.
6271         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
6272         (parse_xml_btrace): Update.
6273         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
6274         (maint_btrace_clear_packet_history_cmd): Update.
6275
6276 2018-06-07  Pedro Alves  <palves@redhat.com>
6277
6278         * target.h (target_ops) <beneath>: Now a method.  All references
6279         updated.
6280         (class target_stack): New.
6281         * target.c (g_target_stack): New.
6282         (g_current_top_target): Delete.
6283         (current_top_target): Get the top target out of g_target_stack.
6284         (target_stack::push, target_stack::unpush): New.
6285         (push_target, unpush_target): Reimplement.
6286         (target_is_pushed): Reimplement in terms of g_target_stack.
6287         (target_ops::beneath, target_stack::find_beneath): New.
6288
6289 2018-06-07  Pedro Alves  <palves@redhat.com>
6290
6291         * target.h (find_target_beneath): Delete declaration.
6292         * target.c (find_target_beneath): Delete definition.
6293         * aix-thread.c: All callers of find_target_beneath adjusted to
6294         call target_ops::beneath instead.
6295         * bsd-uthread.c: Likewise.
6296         * linux-thread-db.c: Likewise.
6297         * ravenscar-thread.c: Likewise.
6298         * sol-thread.c: Likewise.
6299         * spu-multiarch.c: Likewise.
6300
6301 2018-06-07  Pedro Alves  <palves@redhat.com>
6302
6303         * target.h (target_ops) <beneath>: Now a method.  All references
6304         updated.
6305         (target_ops) <m_beneath>: New.
6306         * target.c (target_ops::beneath): New.
6307         * corelow.c: Adjust all references to target_ops::beneath.
6308         * linux-thread-db.c: Likewise.
6309         * make-target-delegates: Likewise.
6310         * record-btrace.c: Likewise.
6311         * record-full.c: Likewise.
6312         * remote.c: Likewise.
6313         * target.c: Likewise.
6314         * target-delegates.c: Regenerate.
6315
6316 2018-06-07  Pedro Alves  <palves@redhat.com>
6317
6318         * target.h (target_stack): Delete.
6319         (current_top_target): Declare function.
6320         * target.c (target_stack): Delete.
6321         (g_current_top_target): New.
6322         (current_top_target): New function.
6323         * auxv.c: Use current_top_target instead of target_stack
6324         throughout.
6325         * avr-tdep.c: Likewise.
6326         * breakpoint.c: Likewise.
6327         * corefile.c: Likewise.
6328         * elfread.c: Likewise.
6329         * eval.c: Likewise.
6330         * exceptions.c: Likewise.
6331         * frame.c: Likewise.
6332         * gdbarch-selftests.c: Likewise.
6333         * gnu-v3-abi.c: Likewise.
6334         * ia64-tdep.c: Likewise.
6335         * ia64-vms-tdep.c: Likewise.
6336         * infcall.c: Likewise.
6337         * infcmd.c: Likewise.
6338         * infrun.c: Likewise.
6339         * linespec.c: Likewise.
6340         * linux-tdep.c: Likewise.
6341         * minsyms.c: Likewise.
6342         * ppc-linux-nat.c: Likewise.
6343         * ppc-linux-tdep.c: Likewise.
6344         * procfs.c: Likewise.
6345         * regcache.c: Likewise.
6346         * remote.c: Likewise.
6347         * rs6000-tdep.c: Likewise.
6348         * s390-linux-nat.c: Likewise.
6349         * s390-tdep.c: Likewise.
6350         * solib-aix.c: Likewise.
6351         * solib-darwin.c: Likewise.
6352         * solib-dsbt.c: Likewise.
6353         * solib-spu.c: Likewise.
6354         * solib-svr4.c: Likewise.
6355         * solib-target.c: Likewise.
6356         * sparc-tdep.c: Likewise.
6357         * sparc64-tdep.c: Likewise.
6358         * spu-tdep.c: Likewise.
6359         * symfile.c: Likewise.
6360         * symtab.c: Likewise.
6361         * target-descriptions.c: Likewise.
6362         * target-memory.c: Likewise.
6363         * target.c: Likewise.
6364         * target.h: Likewise.
6365         * tracefile-tfile.c: Likewise.
6366         * tracepoint.c: Likewise.
6367         * valops.c: Likewise.
6368         * valprint.c: Likewise.
6369         * value.c: Likewise.
6370         * windows-tdep.c: Likewise.
6371         * mi/mi-main.c: Likewise.
6372
6373 2018-06-07  Tom Tromey  <tom@tromey.com>
6374
6375         * valprint.h (build_address_symbolic): Declare.
6376         * printcmd.c (print_address_symbolic): Update.
6377         (build_address_symbolic): Change "name" and "filename" to
6378         std::string.
6379         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
6380         Update.
6381         * defs.h (build_address_symbolic): Remove declaration.
6382
6383 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
6384
6385         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
6386         (aarch64_vnv_type): Add function.
6387         (aarch64_pseudo_register_name): Add V regs for SVE.
6388         (aarch64_pseudo_register_type): Likewise.
6389         (aarch64_pseudo_register_reggroup_p): Likewise.
6390         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
6391         (aarch64_pseudo_read_value): Add V regs for SVE.
6392         (aarch64_pseudo_write_2): Use V0 offset for SVE
6393         (aarch64_pseudo_write): Add V regs for SVE.
6394         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
6395
6396 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
6397
6398         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
6399         (sve_vl_from_vq): Likewise.
6400
6401 2018-06-05  Tom Tromey  <tom@tromey.com>
6402
6403         * cli/cli-cmds.c (show_version): Update.
6404         * top.c (print_gdb_version): Add "interactive" parameter.
6405         Update.
6406         * main.c (captured_main_1): Update.
6407         * top.h (print_gdb_version): Add "interactive" parameter and a
6408         comment.
6409
6410 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
6411
6412         * common/enum-flags.h: Add trailing semicolon to example in
6413         comment.
6414
6415 2018-06-05  Tom Tromey  <tom@tromey.com>
6416
6417         PR cli/12326:
6418         * NEWS: Add entry about pager.
6419         * utils.c (pagination_disabled_for_command): New global.
6420         (prompt_for_continue): Allow "c" response to prompt.
6421         (reinitialize_more_filter): Clear
6422         pagination_disabled_for_command.
6423         (fputs_maybe_filtered): Check pagination_disabled_for_command.
6424
6425 2018-06-04  Tom Tromey  <tom@tromey.com>
6426
6427         * ada-lang.h (ada_lookup_symbol_list): Update.
6428         * ada-lang.c (resolve_subexp): Update.
6429         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
6430         parameter.
6431         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
6432         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
6433         results parameter to std::vector.
6434         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
6435         Update.
6436         * ada-exp.y (block_lookup): Update.
6437         (select_possible_type_sym): Change type of syms.  Remove nsyms
6438         parameter.
6439         (write_var_or_type, write_name_assoc): Update.
6440
6441 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
6442
6443         * windows-nat.c (windows_nat_target::xfer_partial): Return
6444         TARGET_XFER_E_IO if we need to delegate to the target beneath
6445         but BENEATH is NULL.
6446
6447 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
6448
6449         * Makefile.in (config.status): Add configure.nat as a
6450         dependency.
6451
6452 2018-06-04  Tom Tromey  <tom@tromey.com>
6453
6454         * cp-name-parser.y (cpname_state): Add method declarations.
6455         (HANDLE_QUAL): Update.
6456         (cpname_state::d_grab, cpname_state::fill_comp)
6457         (cpname_state::make_operator, cpname_state::make_dtor)
6458         (cpname_state::make_builtin_type, cpname_state::make_name)
6459         (cpname_state::d_qualify, cpname_state::d_int_type)
6460         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
6461         (%union): Move earlier.
6462
6463 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6464
6465         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
6466
6467 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6468
6469         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
6470         (aarch64_pseudo_write_1): Likewise.
6471         (aarch64_pseudo_read_value): Use helper.
6472         (aarch64_pseudo_write): Likewise.
6473
6474 2018-06-04  Pedro Alves  <palves@redhat.com>
6475
6476         * darwin-nat.c (darwin_ops): Delete.
6477         (darwin_attach_pid): Use get_native_target.
6478
6479 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6480
6481         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
6482         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
6483
6484 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6485
6486         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
6487         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
6488         (aarch64_gdbarch_init): Check for SVE.
6489         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
6490
6491 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6492
6493         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
6494         * aarch64-tdep.h (aarch64_read_description): Likewise.
6495         * arch/aarch64.c (aarch64_create_target_description): Likewise.
6496         * arch/aarch64.h (aarch64_create_target_description): Likewise.
6497         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
6498         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
6499         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
6500
6501 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
6502
6503         * value.c (value_fetch_lazy_bitfield): New.
6504         (value_fetch_lazy_memory): New.
6505         (value_fetch_lazy_register): New.
6506         (value_fetch_lazy): Factor out to smaller functions.
6507
6508 2018-06-01  Tom Tromey  <tom@tromey.com>
6509
6510         * cp-name-parser.y (backslashable, represented): Now const.
6511
6512 2018-06-01  Tom Tromey  <tom@tromey.com>
6513
6514         * cp-name-parser.y: Include parser-defs.h.
6515         (parser_fprintf): Remove declaration.
6516
6517 2018-06-01  Tom Tromey  <tom@tromey.com>
6518
6519         * cp-name-parser.y: Use %pure-parser, %lex-param, and
6520         %parse-param.
6521         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
6522         (global_result): Remove globals.
6523         (struct cpname_state): New.
6524         (yyparse): Don't declare.
6525         (yylex, yyerror): Move declarations after %union.
6526         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
6527         (make_name): Add state parameter.
6528         Update all callers.
6529         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
6530         parameter.
6531         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
6532         Update.
6533         (yylex): Add lvalp, state parameters.
6534         (yyerror): Add state parameter.
6535         (cp_demangled_name_to_comp): Update.
6536
6537 2018-06-01  Tom Tromey  <tom@tromey.com>
6538
6539         * cp-name-parser.y (parser_fprintf): Declare.
6540         (GDB_YY_REMAP_PREFIX): Define.
6541         Include yy-remap.h.  Don't redefine yy* identifiers.
6542
6543 2018-06-01  Tom Tromey  <tom@tromey.com>
6544
6545         * python/py-type.c (typy_legacy_template_argument): Update.
6546         * cp-support.h (cp_demangled_name_to_comp): Update.
6547         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
6548         parameter to be a "std::string *".
6549         (main): Update.
6550
6551 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
6552
6553         * ada-lex.l: Include "diagnostics.h" instead of
6554         "common/diagnostics.h".
6555         * unittests/environ-selftests.c: Likewise.
6556         * common/diagnostics.h: Moved to ../include.
6557
6558 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
6559
6560         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
6561         to language_mode_manual while calling breakpoint_re_set_one.
6562
6563 2018-06-01  Tom Tromey  <tom@tromey.com>
6564
6565         * valops.c (value_cast_structs, destructor_name_p): Update.
6566         * symtab.c (gdb_mangle_name): Update.
6567         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
6568         Update.
6569         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
6570         (pascal_object_print_value_fields, pascal_object_print_value):
6571         Update.
6572         * p-typeprint.c (pascal_type_print_derivation_info): Update.
6573         * linespec.c (find_methods): Update.
6574         * gdbtypes.h (type_name_no_tag): Remove.
6575         (type_name_or_error): Rename from type_name_no_tag_or_error.
6576         * gdbtypes.c (type_name_no_tag): Remove.
6577         (type_name_or_error): Rename from type_name_no_tag_or_error.
6578         (lookup_struct_elt_type, check_typedef): Update.
6579         * expprint.c (print_subexp_standard): Update.
6580         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
6581         * d-namespace.c (d_lookup_nested_symbol): Update.
6582         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
6583         (cp_print_class_member): Update.
6584         * cp-namespace.c (cp_lookup_nested_symbol): Update.
6585         * completer.c (add_struct_fields): Update.
6586         * c-typeprint.c (cp_type_print_derivation_info)
6587         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
6588         Update.
6589         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
6590         (ada_prefer_type, ada_is_exception_sym): Update.
6591
6592 2018-06-01  Tom Tromey  <tom@tromey.com>
6593
6594         * valops.c (enum_constant_from_type, value_namespace_elt)
6595         (value_maybe_namespace_elt): Update.
6596         * valarith.c (find_size_for_pointer_math): Update.
6597         * target-descriptions.c (make_gdb_type): Update.
6598         * symmisc.c (print_symbol): Update.
6599         * stabsread.c (define_symbol, read_type)
6600         (complain_about_struct_wipeout, add_undefined_type)
6601         (cleanup_undefined_types_1): Update.
6602         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
6603         (rust_range_type_p, val_print_struct, rust_print_struct_def)
6604         (rust_internal_print_type, rust_composite_type)
6605         (rust_evaluate_funcall, rust_evaluate_subexp)
6606         (rust_inclusive_range_type_p): Update.
6607         * python/py-type.c (typy_get_tag): Update.
6608         * p-typeprint.c (pascal_type_print_base): Update.
6609         * mdebugread.c (parse_symbol, parse_type): Update.
6610         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
6611         Update.
6612         * guile/scm-type.c (gdbscm_type_tag): Update.
6613         * go-lang.c (sixg_string_p): Update.
6614         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
6615         Update.
6616         * gdbtypes.h (struct main_type) <tag_name>: Remove.
6617         (TYPE_TAG_NAME): Remove.
6618         * gdbtypes.c (type_name_no_tag): Simplify.
6619         (check_typedef, check_types_equal, recursive_dump_type)
6620         (copy_type_recursive, arch_composite_type): Update.
6621         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
6622         in summary mode when needed.
6623         * eval.c (evaluate_funcall): Update.
6624         * dwarf2read.c (fixup_go_packaging, read_structure_type)
6625         (process_structure_scope, read_enumeration_type)
6626         (read_namespace_type, read_module_type, determine_prefix): Update.
6627         * cp-support.c (inspect_type): Update.
6628         * coffread.c (process_coff_symbol, decode_base_type): Update.
6629         * c-varobj.c (c_is_path_expr_parent): Update.
6630         * c-typeprint.c (c_type_print_base_struct_union): Update.
6631         (c_type_print_base_1): Update.  Print struct/class/union/enum in
6632         summary when using C language.
6633         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
6634         (gen_maybe_namespace_elt): Update.
6635         * ada-lang.c (ada_type_name): Simplify.
6636         (empty_record, ada_template_to_fixed_record_type_1)
6637         (template_to_static_fixed_type)
6638         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
6639
6640 2018-06-01  Tom Tromey  <tom@tromey.com>
6641
6642         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
6643         c_print_type.
6644         * c-typeprint.c (c_print_type_1): Add "language" parameter.
6645         (c_print_type): Update.
6646         (c_print_type): New overload.
6647         (c_type_print_varspec_prefix, c_type_print_args)
6648         (c_type_print_varspec_suffix, c_print_type_no_offsets)
6649         (c_type_print_base_struct_union, c_type_print_base_1)
6650         (cp_type_print_method_args): Add "language" parameter.
6651         (c_type_print_base): Update.
6652         * c-lang.h (c_print_type): Add new overload.
6653
6654 2018-06-01  Tom Tromey  <tom@tromey.com>
6655
6656         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
6657         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
6658
6659 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
6660
6661         * aarch64-tdep.c (aarch64_sve_register_names): New const
6662         var.
6663         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
6664         (AARCH64_SVE_Z_REGS_NUM): New define.
6665         (AARCH64_SVE_P_REGS_NUM): Likewise.
6666         (AARCH64_SVE_NUM_REGS): Likewise.
6667
6668 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
6669
6670         * nat/linux-ptrace.h [__alpha__]
6671         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
6672         definitions.
6673
6674 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
6675
6676         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
6677         the endianness selected.
6678         * NEWS: Document `set endian auto' mode operation update.
6679
6680 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6681
6682         * Makefile.in: Add new header.
6683         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
6684         (sve_vl_from_vg): Likewise.
6685         (sve_vq_from_vl): Likewise.
6686         (sve_vl_from_vq): Likewise.
6687         (sve_vq_from_vg): Likewise.
6688         (sve_vg_from_vq): Likewise.
6689         * configure.nat: Add new c file.
6690         * nat/aarch64-sve-linux-ptrace.c: New file.
6691         * nat/aarch64-sve-linux-ptrace.h: New file.
6692
6693 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6694
6695         * aarch64-linux-nat.c (aarch64_linux_read_description):
6696         Add parmeter zero.
6697         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
6698         Likewise.
6699         * aarch64-tdep.c (tdesc_aarch64_list): Add.
6700         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
6701         (aarch64_gdbarch_init): Add parmeter zero.
6702         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
6703         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
6704         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
6705         parmeter.
6706         * doc/gdb.texinfo: Describe SVE feature
6707         * features/aarch64-sve.c: New file.
6708
6709 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
6710
6711         PR gdb/23210
6712         * gdbarch.sh (significant_addr_bit): Default to zero when
6713         not set by target architecture.
6714         * gdbarch.c: Re-generated.
6715         * utils.c (address_significant): Update.
6716
6717 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
6718
6719         * stack.c (func_command): Remove trailing newline in call to error.
6720
6721 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6722
6723         * regcache.h (regcache_raw_collect): Remove, update callers to
6724         use regcache::raw_collect.
6725         * regcache.c (regcache_raw_collect): Remove.
6726
6727 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6728
6729         * regcache.h (regcache_raw_supply): Remove, update callers to
6730         use detached_regcache::raw_supply.
6731         * regcache.c (regcache_raw_supply): Remove.
6732
6733 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6734
6735         * regcache.h (regcache_cooked_write_part): Remove, update
6736         callers to use regcache::cooked_write_part.
6737         * regcache.c (regcache_cooked_write_part): Remove.
6738
6739 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6740
6741         * regcache.h (regcache_cooked_read_part): Remove, update callers
6742         to use readable_regcache::cooked_read_part.
6743         * regcache.c (regcache_cooked_read_part): Remove.
6744
6745 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6746
6747         * regcache.h (regcache_cooked_read_value): Remove, update
6748         callers to use readable_regcache::cooked_read_value.
6749         * regcache.c (regcache_cooked_read_value): Remove.
6750
6751 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6752
6753         * regcache.h (regcache_cooked_write): Remove, update callers to
6754         use regcache::cooked_write.
6755         * regcache.c (regcache_cooked_write): Remove.
6756
6757 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6758
6759         * regcache.h (regcache_invalidate): Remove, update callers to
6760         use detached_regcache::invalidate instead.
6761         * regcache.c (regcache_invalidate): Remove.
6762
6763 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6764
6765         * regcache.h (regcache_raw_write_part): Remove, update callers
6766         to use regcache::raw_write_part instead.
6767         * regcache.c (regcache_raw_write_part): Remove.
6768
6769 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6770
6771         * regcache.h (regcache_raw_read_part): Remove, update callers to
6772         use readable_regcache::raw_read_part instead.
6773         * regcache.c (regcache_raw_read_part): Remove.
6774
6775 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6776
6777         * regcache.h (regcache_cooked_read): Remove, update callers to
6778         use readable_regcache::cooked_read instead.
6779         * regcache.c (regcache_cooked_read): Remove.
6780
6781 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6782
6783         * regcache.h (regcache_raw_write): Remove, update callers to use
6784         regcache::raw_write instead.
6785         * regcache.c (regcache_raw_write): Remove.
6786
6787 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6788
6789         * regcache.h (regcache_raw_read): Remove, update callers to use
6790         readable_regcache::raw_read instead.
6791         * regcache.c (regcache_raw_read): Remove.
6792
6793 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6794
6795         * regcache.h (regcache_raw_update): Remove, update callers to
6796         use readable_regcache::raw_update instead.
6797         * regcache.c (regcache_raw_update): Remove.
6798
6799 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6800
6801         * regcache.h (regcache_register_status): Remove, update callers
6802         to use reg_buffer::get_register_status directly instead.
6803         * regcache.c (regcache_register_status): Remove.
6804
6805 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6806
6807         * regcache.h (regcache_get_ptid): Remove, update all callers to
6808         call regcache::ptid instead.
6809         * regcache.c (regcache_get_ptid): Remove.
6810
6811 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6812
6813         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
6814
6815 2018-05-30  Pedro Alves  <palves@redhat.com>
6816
6817         * common/common-exceptions.h (exception_rethrow): Use
6818         ATTRIBUTE_NORETURN.
6819
6820 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
6821
6822         * breakpoint.c (print_solib_event, check_status_catch_solib):
6823         Remove struct keyword in range-based for loops.
6824         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
6825         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
6826         Likewise.
6827         * linespec.c (find_superclass_methods, search_minsyms_for_name):
6828         Likewise.
6829         * symfile.c (addr_info_make_relative): Likewise.
6830         * thread.c (value_in_thread_stack_temporaries): Likewise.
6831
6832 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
6833
6834         PR gdb/16841
6835         * valops.c (value_struct_elt_for_reference): Call check_typedef on
6836         aggregate type to get its real type before accessing it.
6837
6838 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
6839
6840         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
6841         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
6842         * coff-pe-read.c (add_pe_forwarded_sym): Replace
6843         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
6844         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
6845         * jit.c (jit_breakpoint_re_set_internal): Likewise.
6846         * printcmd.c (info_address_command): Likewise.
6847
6848 2018-05-29  Tom Tromey  <tom@tromey.com>
6849
6850         * windows-nat.c (handle_exception): Update fall-through comment.
6851
6852 2018-05-29  Tom Tromey  <tom@tromey.com>
6853
6854         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
6855         (struct program_space) <added_solibs>: Now a std::vector.
6856         * breakpoint.c (print_solib_event): Update.
6857         (check_status_catch_solib): Update.
6858         * progspace.c (clear_program_space_solib_cache): Update.
6859         * solib.c (update_solib_list): Update.
6860
6861 2018-05-29  Tom Tromey  <tom@tromey.com>
6862
6863         * python/py-type.c (typy_richcompare): Update.
6864         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
6865         * gdbtypes.h (types_deeply_equal): Return bool.
6866         (types_equal): Likewise.
6867         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
6868         declare VEC.
6869         (check_types_equal): Change worklist to std::vector.  Return
6870         bool.
6871         (struct type_equality_entry): Add constructor.
6872         (compare_maybe_null_strings): Return bool.
6873         (check_types_worklist): Return bool.  Change worklist to
6874         std::vector.
6875         (types_deeply_equal): Use std::vector.
6876         (types_equal): Return bool.
6877         (compare_maybe_null_strings): Simplify.
6878
6879 2018-05-29  Tom Tromey  <tom@tromey.com>
6880
6881         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
6882
6883 2018-05-29  Tom Tromey  <tom@tromey.com>
6884
6885         * objc-lang.h: Don't include cp-support.h.
6886         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
6887         declare VEC.
6888
6889 2018-05-27  Tom Tromey  <tom@tromey.com>
6890
6891         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
6892
6893 2018-05-25  Tom Tromey  <tom@tromey.com>
6894
6895         * value.c (value::location): Initialize.
6896
6897 2018-05-25  Tom Tromey  <tom@tromey.com>
6898
6899         * dbxread.c (init_bincl_list): Remove.
6900         (bincl_list): Now a std::vector.
6901         (bincls_allocated, next_bincl): Remove.
6902         (free_bincl_list, do_free_bincl_list_cleanup)
6903         (make_cleanup_free_bincl_list): Remove.
6904         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
6905         unique_xmalloc_ptr.
6906         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
6907         (struct header_file_location): Add constructor.
6908         (add_bincl_to_list): Remove.
6909
6910 2018-05-25  Tom Tromey  <tom@tromey.com>
6911
6912         * tui/tui.c (tui_enable): Update.
6913         * mi/mi-interp.c (mi_interp::init): Update.
6914         * interps.h (class interp) <name>: New method.
6915         <m_name>: Rename from name.
6916         (~scoped_restore_interp): Update.
6917         * interps.c (interp::interp): Update.
6918         (interp_add, interp_set, interp_lookup_existing)
6919         (current_interp_named_p): Update.
6920
6921 2018-05-25  Tom Tromey  <tom@tromey.com>
6922
6923         * interps.c (interp_name): Remove.
6924         * mi/mi-interp.c (mi_interp::init): Update.
6925         * interps.h (interp_name): Remove.
6926         (~scoped_restore_interp): Update.
6927         * tui/tui.c (tui_enable): Update.
6928
6929 2018-05-25  Tom Tromey  <tom@tromey.com>
6930
6931         * utils.c (fputs_maybe_filtered): Update.
6932         * linespec.c (decode_line_full): Update.
6933         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
6934         (mi_print_breakpoint_for_event, mi_solib_loaded)
6935         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
6936         (mi_user_selected_context_changed): Update.
6937         * mi/mi-main.c (mi_execute_command): Update.
6938         * cli/cli-script.c (execute_control_command): Update.
6939         * python/python.c (execute_gdb_command): Update.
6940         * solib.c (info_sharedlibrary_command): Update.
6941         * interps.c (interp_ui_out): Remove.
6942         * interps.h (interp_ui_out): Remove.
6943
6944 2018-05-25  Tom Tromey  <tom@tromey.com>
6945
6946         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
6947         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
6948         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
6949
6950 2018-05-25  Tom Tromey  <tom@tromey.com>
6951
6952         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
6953         * interps.c (interp_exec): Use scoped_restore.
6954
6955 2018-05-25  Tom Tromey  <tom@tromey.com>
6956
6957         * remote.c (remote_target::remote_file_get): Use
6958         gdb::byte_vector.
6959         (remote_target::remote_file_put): Likewise.
6960
6961 2018-05-25  Tom Tromey  <tom@tromey.com>
6962
6963         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
6964         a std::string.
6965         (get_pe_section_index, add_pe_exported_sym): Update.
6966         (read_pe_exported_syms): Use gdb::def_vector.
6967
6968 2018-05-25  Tom Tromey  <tom@tromey.com>
6969
6970         * frame.c (remove_prev_frame): Remove.
6971         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
6972
6973 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
6974
6975         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
6976         Remove prototypes.
6977         * mips-linux-nat.c (supply_fpregset): Always call
6978         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
6979         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
6980         `mips_fill_fpregset'.
6981         * mips-linux-tdep.c (mips_supply_fpregset)
6982         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
6983         (mips_fill_fpregset_wrapper): Remove functions.
6984         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
6985         (mips_linux_fpregset): Remove variable.
6986         (mips_linux_iterate_over_regset_sections): Use
6987         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
6988         (mips_linux_o32_sigframe_init): Remove comment.
6989
6990 2018-05-25  Pedro Alves  <palves@redhat.com>
6991
6992         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
6993         (struct readahead_cache, struct packet_reg, struct
6994         remote_arch_state, class remote_state): Move higher up in the
6995         file.
6996         (remote_target::m_remote_state): Now an object instead of a pointer.
6997         (remote_target::get_remote_state): Adjust.
6998
6999 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7000
7001         * stack.c (select_and_print_frame): Delete.
7002         (struct function_bounds): Move struct within function.
7003         (func_command): Most content moved into new function
7004         find_frame_for_function, use new function, print result, add
7005         function comment.
7006         (find_frame_for_function): New function, now returns a result.
7007
7008 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7009
7010         * stack.c (iterate_over_block_arg_vars): Fix comment.
7011         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7012
7013 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7014
7015         PR gdb/23203
7016         * frame.c
7017         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7018         Define.
7019         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7020         Define.
7021         * frame.h (class scoped_restore_selected_frame): New class.
7022         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7023         of any exception, use scoped_restore_selected_frame to restore the
7024         frame instead.
7025
7026 2018-05-24  Pedro Alves  <palves@redhat.com>
7027
7028         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7029         override.
7030
7031 2018-05-23  Tom Tromey  <tom@tromey.com>
7032
7033         * complaints.c (struct complaints): Remove.
7034         (symfile_complaint_book): Remove.
7035         (series): New global.
7036         (complaint_internal): Update.
7037         (clear_complaints): Update.
7038
7039 2018-05-23  Tom Tromey  <tom@tromey.com>
7040
7041         * complaints.c (counters): New global.
7042         (struct complain): Remove.
7043         (struct complaints) <root>: Remove.
7044         (complaint_sentinel): Remove.
7045         (symfile_complaint_book): Update.
7046         (find_complaint) Remove.
7047         (complaint_internal, clear_complaints): Update.
7048
7049 2018-05-23  Tom Tromey  <tom@tromey.com>
7050
7051         * complaints.c (struct complain) <file, line>: Remove.
7052         (find_complaint): Remove file, line parameters.
7053         (complaint_internal): Update.
7054
7055 2018-05-23  Tom Tromey  <tom@tromey.com>
7056
7057         * complaints.c (vcomplaint): Remove.
7058         (complaint_internal) Merge in contents of vcomplaint.
7059
7060 2018-05-23  Tom Tromey  <tom@tromey.com>
7061
7062         * complaints.c (struct complaints) <explanation>: Remove.
7063         (symfile_explanations): Remove.
7064         (symfile_complaint_book): Update.
7065         (vcomplaint): Update.
7066         (struct explanation): Remove.
7067
7068 2018-05-23  Tom Tromey  <tom@tromey.com>
7069
7070         * complaints.c (symfile_complaints): Remove.
7071         (complaint_internal): Remove "complaints" parameter.
7072         (clear_complaints, vcomplaint): Remove "c" parameter.
7073         (get_complaints): Remove.
7074         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7075         (dwarf2_debug_line_missing_file_complaint)
7076         (dwarf2_debug_line_missing_end_sequence_complaint)
7077         (dwarf2_complex_location_expr_complaint)
7078         (dwarf2_const_value_length_mismatch_complaint)
7079         (dwarf2_section_buffer_overflow_complaint)
7080         (dwarf2_macro_malformed_definition_complaint)
7081         (dwarf2_invalid_attrib_class_complaint)
7082         (create_addrmap_from_index, dw2_symtab_iter_next)
7083         (dw2_expand_marked_cus)
7084         (dw2_debug_names_iterator::find_vec_in_debug_names)
7085         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7086         (create_debug_type_hash_table, init_cutu_and_read_dies)
7087         (partial_die_parent_scope, add_partial_enumeration)
7088         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7089         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7090         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7091         (create_cus_hash_table, create_dwp_hash_table)
7092         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7093         (dwarf2_rnglists_process, dwarf2_ranges_process)
7094         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7095         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7096         (handle_struct_member_die, process_structure_scope)
7097         (read_array_type, read_common_block, read_module_type)
7098         (read_tag_pointer_type, read_typedef, read_base_type)
7099         (read_subrange_type, load_partial_dies, partial_die_info::read)
7100         (partial_die_info::read, partial_die_info::read)
7101         (partial_die_info::read, read_checked_initial_length_and_offset)
7102         (dwarf2_string_attr, read_formatted_entries)
7103         (dwarf_decode_line_header)
7104         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7105         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7106         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7107         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7108         (get_signatured_type, get_DW_AT_signature_type)
7109         (decode_locdesc, file_file_name, consume_improper_spaces)
7110         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7111         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7112         (dwarf2_symbol_mark_computed, set_die_type)
7113         (read_attribute_value): Update.
7114         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7115         Update.
7116         * dbxread.c (unknown_symtype_complaint)
7117         (lbrac_mismatch_complaint, repeated_header_complaint)
7118         (set_namestring, function_outside_compilation_unit_complaint)
7119         (read_dbx_symtab, process_one_symbol): Update.
7120         * gdbtypes.c (stub_noname_complaint): Update.
7121         * windows-nat.c (handle_unload_dll): Update.
7122         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7123         (decode_base_type): Update.
7124         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7125         (eb_complaint, record_include_begin, record_include_end)
7126         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7127         (process_xcoff_symbol, read_symbol)
7128         (function_outside_compilation_unit_complaint)
7129         (scan_xcoff_symtab): Update.
7130         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7131         * buildsym.c (finish_block_internal, make_blockvector)
7132         (end_symtab_get_static_block, augment_type_symtab): Update.
7133         * dtrace-probe.c (dtrace_process_dof)
7134         (dtrace_static_probe_ops::get_probes): Update.
7135         * complaints.h (struct complaint): Don't declare.
7136         (symfile_complaints): Remove.
7137         (complaint_internal): Remove "complaints" parameter.
7138         (complaint): Likewise.
7139         (clear_complaints): Likewise.
7140         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7141         (reread_symbols): Update.
7142         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7143         (dwarf2_frame_cache, decode_frame_entry): Update.
7144         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7145         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7146         (info_selectors_command): Update.
7147         * macrotab.c (macro_include, check_for_redefinition)
7148         (macro_undef): Update.
7149         * objfiles.c (filter_overlapping_sections): Update.
7150         * stabsread.c (invalid_cpp_abbrev_complaint)
7151         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7152         (define_symbol, error_type, read_type, rs6000_builtin_type)
7153         (stabs_method_name_from_physname, read_member_functions)
7154         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7155         (attach_fields_to_type, complain_about_struct_wipeout)
7156         (read_range_type, read_args, common_block_start)
7157         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7158         Update.
7159         * mdebugread.c (index_complaint, unknown_ext_complaint)
7160         (basic_type_complaint, bad_tag_guess_complaint)
7161         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7162         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7163         (parse_procedure, parse_lines)
7164         (function_outside_compilation_unit_complaint)
7165         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7166         (bad_tag_guess_complaint, reg_value_complaint): Update.
7167         * cp-support.c (demangled_name_complaint): Update.
7168         * macroscope.c (sal_macro_scope): Update.
7169         * dwarf-index-write.c (class debug_names): Update.
7170
7171 2018-05-23  Tom Tromey  <tom@tromey.com>
7172
7173         * complaints.c (clear_complaints): Remove "noisy" parameter.
7174         * complaints.h (clear_complaints): Update.
7175         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7176         (reread_symbols): Update.
7177
7178 2018-05-23  Tom Tromey  <tom@tromey.com>
7179
7180         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7181         SUBSEQUENT_MESSAGE.
7182         (vcomplaint, clear_complaints): Update.
7183         (symfile_explanations): Remove some messages.
7184
7185 2018-05-23  Tom Tromey  <tom@tromey.com>
7186
7187         * complaints.c (internal_complaint): Remove.
7188         * complaints.h (internal_complaint): Remove.
7189
7190 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7191
7192         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7193
7194 2018-05-22  Pedro Alves  <palves@redhat.com>
7195
7196         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7197         (remote_fileio_badfd, remote_fileio_return_errno)
7198         (remote_fileio_return_success, remote_fileio_func_open)
7199         (remote_fileio_func_open, remote_fileio_func_close)
7200         (remote_fileio_func_read, remote_fileio_func_write)
7201         (remote_fileio_func_lseek, remote_fileio_func_rename)
7202         (remote_fileio_func_unlink, remote_fileio_func_stat)
7203         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7204         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7205         remote_target parameter.
7206         (remote_fio_func_map) <func>: Add remote_target parameter.
7207         (do_remote_fileio_request, remote_fileio_request):
7208         * remote-fileio.h (remote_fileio_request):
7209         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7210         remote_target parameter.
7211         (remote_notif_process, handle_notification): Adjust to pass down
7212         the remote.
7213         (remote_notif_state_allocate): Add remote_target parameter.  Save
7214         it.
7215         * remote-notif.h (struct remote_target): Forward declare.
7216         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7217         remote_target parameter.
7218         (struct remote_notif_state) <remote>: New field.
7219         (remote_notif_ack, remote_notif_parse): Add remote_target
7220         parameter.
7221         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7222         remote_target parameter.
7223         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7224         (threads_listing_context, rmt_thread_action, protocol_feature)
7225         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7226         (packet_result, struct threads_listing_context, remote_state):
7227         Move definitions and declarations higher up.
7228         (remote_target) <~remote_target>: Declare.
7229         (remote_download_command_source, remote_file_put, remote_file_get)
7230         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7231         (remote_hostio_pread_vFile, remote_hostio_send_command)
7232         (remote_hostio_set_filesystem, remote_hostio_open)
7233         (remote_hostio_close, remote_hostio_unlink, remote_state)
7234         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7235         (get_memory_write_packet_size, get_memory_read_packet_size)
7236         (append_pending_thread_resumptions, remote_detach_1)
7237         (append_resumption, remote_resume_with_vcont)
7238         (add_current_inferior_and_thread, wait_ns, wait_as)
7239         (process_stop_reply, remote_notice_new_inferior)
7240         (process_initial_stop_replies, remote_add_thread)
7241         (btrace_sync_conf, remote_btrace_maybe_reopen)
7242         (remove_new_fork_children, kill_new_fork_children)
7243         (discard_pending_stop_replies, stop_reply_queue_length)
7244         (check_pending_events_prevent_wildcard_vcont)
7245         (discard_pending_stop_replies_in_queue, stop_reply)
7246         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
7247         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
7248         (remote_interrupt_as, remote_interrupt_ns)
7249         (remote_get_noisy_reply, remote_query_attached)
7250         (remote_add_inferior, remote_current_thread, get_current_thread)
7251         (set_thread, set_general_thread, set_continue_thread)
7252         (set_general_process, write_ptid)
7253         (remote_unpack_thread_info_response, remote_get_threadinfo)
7254         (parse_threadlist_response, remote_get_threadlist)
7255         (remote_threadlist_iterator, remote_get_threads_with_ql)
7256         (remote_get_threads_with_qxfer)
7257         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
7258         (get_offsets, remote_check_symbols, remote_supported_packet)
7259         (remote_query_supported, remote_packet_size)
7260         (remote_serial_quit_handler, remote_detach_pid)
7261         (remote_vcont_probe, remote_resume_with_hc)
7262         (send_interrupt_sequence, interrupt_query)
7263         (remote_notif_get_pending_events, fetch_register_using_p)
7264         (send_g_packet, process_g_packet, fetch_registers_using_g)
7265         (store_register_using_P, store_registers_using_G)
7266         (set_remote_traceframe, check_binary_download)
7267         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
7268         (remote_xfer_live_readonly_partial, remote_read_bytes)
7269         (remote_send_printf, remote_flash_write, readchar)
7270         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
7271         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
7272         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
7273         (extended_remote_disable_randomization, extended_remote_run)
7274         (send_environment_packet, extended_remote_environment_support)
7275         (extended_remote_set_inferior_cwd, remote_write_qxfer)
7276         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
7277         (packet_command): Now methods of ...
7278         (remote_target): ... this class.
7279         (m_remote_state) <remote_target>: New field.
7280         (struct remote_state) <stop_reply_queue,
7281         remote_async_inferior_event_token, wait_forever_enabled_p>: New
7282         fields.
7283         (remote_state::remote_state): Allocate stop_reply_queue.
7284         (remote_state): Delete global.
7285         (get_remote_state_raw): Delete.
7286         (remote_target::get_remote_state): Allocate m_remote_state on
7287         demand.
7288         (get_current_remote_target): New.
7289         (remote_ops, extended_remote_ops): Delete.
7290         (wait_forever_enabled_p, remote_async_inferior_event_token):
7291         Delete, moved to struct remote_state.
7292         (remote_target::close): Delete self.  Destruction bits split to
7293         ...
7294         (remote_target::~remote_target): ... this.
7295         (show_memory_packet_size): Adjust to use
7296         get_current_remote_target.
7297         (struct protocol_feature) <func>: Add remote_target parameter.
7298         All callers adjusted.
7299         (curr_quit_handler_target): New.
7300         (remote_serial_quit_handler): Reimplement.
7301         (remote_target::open_1): Adjust to use get_current_remote_target.
7302         Heap-allocate remote_target/extended_remote_target instances.
7303         (vcont_builder::vcont_builder): Add remote_target parameter, and
7304         save it in m_remote.  All callers adjusted.
7305         (vcont_builder::m_remote): New field.
7306         (vcont_builder::restart, vcont_builder::flush)
7307         (vcont_builder::push_action): Use it.
7308         (remote_target::commit_resume): Use it.
7309         (struct queue_iter_param) <remote>: New field.
7310         (remote_target::remove_new_fork_children): Fill in 'remote' field.
7311         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
7312         (check_pending_event_prevents_wildcard_vcont_callback)
7313         (remote_target::check_pending_events_prevent_wildcard_vcont)
7314         (remote_target::discard_pending_stop_replies)
7315         (remote_target::discard_pending_stop_replies_in_queue)
7316         (remote_target::remote_notif_remove_queued_reply): Fill in
7317         'remote' field.
7318         (remote_notif_get_pending_events): New.
7319         (remote_target::readchar, remote_target::remote_serial_write):
7320         Save/restore curr_quit_handler_target.
7321         (putpkt): New.
7322         (kill_new_fork_children): Fill in 'remote' field.
7323         (packet_command): Use get_current_remote_target, defer to
7324         remote_target method of same name.
7325         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
7326         parameter, and save it in m_remote.  All callers adjusted.
7327         (scoped_remote_fd::release): Use m_remote.
7328         (scoped_remote_fd::m_remote): New field.
7329         (remote_file_put, remote_file_get, remote_file_delete): Use
7330         get_current_remote_target, defer to remote_target method of same
7331         name.
7332         (remote_btrace_reset): Add remote_state paremeter.  Update all
7333         callers.
7334         (remote_async_inferior_event_handler). Pass down 'data'.
7335         (remote_new_objfile): Use get_current_remote_target.
7336         (remote_target::vcont_r_supported): New.
7337         (set_range_stepping): Use get_current_remote_target and
7338         remote_target::vcont_r_supported.
7339         (_initialize_remote): Don't allocate 'remote_state' and
7340         'stop_reply_queue' globals.
7341         * remote.h (struct remote_target): Forward declare.
7342         (getpkt, putpkt, remote_notif_get_pending_events): Add
7343         'remote_target' parameter.
7344
7345 2018-05-22  Pedro Alves  <palves@redhat.com>
7346
7347         * remote.c (vcont_builder): Now a class.  Make all data members
7348         private.
7349         (vcont_builder) <vcont_builder, restart, flush, push_action>:
7350         Declare methods.
7351         (vcont_builder_restart): Rename to ...
7352         (vcont_builder::restart): ... this.
7353         (vcont_builder_flush): Rename to ...
7354         (vcont_builder::flush): ... this.
7355         (vcont_builder_push_action): Rename to ...
7356         (vcont_builder::push_action): ... this.
7357         (remote_target::commit_resume): Adjust.
7358
7359 2018-05-22  Pedro Alves  <palves@redhat.com>
7360
7361         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
7362         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
7363         (get_fixed_memory_packet_size): New.
7364         (get_memory_packet_size): Use it.
7365         (set_memory_packet_size): Don't override the config size with
7366         DEFAULT_MAX_MEMORY_PACKET_SIZE.
7367         (show_memory_packet_size): Use get_fixed_memory_packet_size.
7368         Don't refer to get_memory_packet_size if not connected to a remote
7369         target.  Show "(default)" if configured size is 0.
7370
7371 2018-05-22  Pedro Alves  <palves@redhat.com>
7372
7373         * remote.c (remote_target::mourn_inferior): Move
7374         discard_pending_stop_replies call here from ...
7375         (_initialize_remote): ... here.
7376
7377 2018-05-22  Pedro Alves  <palves@redhat.com>
7378
7379         * remote.c (compare_section_command): Remove set_general_process
7380         call.
7381
7382 2018-05-22  Pedro Alves  <palves@redhat.com>
7383
7384         * remote.c (struct packet_reg, struct remote_arch_state):
7385         Move higher up in the file.
7386         (remote_state) <m_arch_states>: Store remote_arch_state values
7387         instead of remote_arch_state pointers.
7388         (remote_state::get_remote_arch_state): Adjust.
7389
7390 2018-05-22  Pedro Alves  <palves@redhat.com>
7391
7392         * remote.c: Include <unordered_map>.
7393         (remote_state): Now a class.
7394         (remote_state) <get_remote_arch_state>: Declare method.
7395         <get_remote_arch_state>: New field.
7396         (remote_arch_state) <remote_arch_state>: Declare ctor.
7397         <regs>: Now a unique_ptr.
7398         (remote_gdbarch_data_handle): Delete.
7399         (get_remote_arch_state): Delete.
7400         (remote_state::get_remote_arch_state): New.
7401         (get_remote_state): Adjust to call remote_state's
7402         get_remote_arch_state method.
7403         (init_remote_state): Delete, bits factored out to ...
7404         (remote_arch_state::remote_arch_state): ... this new method.
7405         (get_remote_packet_size, get_memory_packet_size)
7406         (process_g_packet, remote_target::fetch_registers)
7407         (remote_target::prepare_to_store, store_registers_using_G)
7408         (remote_target::store_registers, remote_target::get_trace_status):
7409         Adjust to call remote_state's method.
7410         (_initialize_remote): Remove reference to
7411         remote_gdbarch_data_handle.
7412
7413 2018-05-22  Pedro Alves  <palves@redhat.com>
7414
7415         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
7416         pread>: New method declarations.
7417         (remote_target::open_1): Adjust.
7418         (readahead_cache_invalidate): Rename to ...
7419         (readahead_cache::invalidate): ... this, and adjust to be a class
7420         method.
7421         (readahead_cache_invalidate_fd): Rename to ...
7422         (readahead_cache::invalidate_fd): ... this, and adjust to be a
7423         class method.
7424         (remote_hostio_pwrite): Adjust.
7425         (remote_hostio_pread_from_cache): Rename to ...
7426         (readahead_cache::pread): ... this, and adjust to be a class
7427         method.
7428         (remote_hostio_close): Adjust.
7429
7430 2018-05-22  Pedro Alves  <palves@redhat.com>
7431
7432         * remote.c (remote_hostio_close_cleanup): Delete.
7433         (class scoped_remote_fd): New.
7434         (remote_file_put, remote_file_get): Use it.
7435
7436 2018-05-22  Pedro Alves  <palves@redhat.com>
7437
7438         (struct vCont_action_support): Use bool and initialize all fields.
7439         (struct readahead_cache): Initialize all fields.
7440         (remote_state): Use bool and initialize all fields.
7441         (remote_state::remote_state, remote_state::~remote_state): New.
7442         (new_remote_state): Delete.
7443         (_initialize_remote): Use new to allocate remote_state.
7444
7445 2018-05-22  Pedro Alves  <palves@redhat.com>
7446             張俊芝  <zjz@zjz.name>
7447
7448         PR gdb/22973
7449         * c-exp.y: Include "c-support.h".
7450         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
7451         of tolower.  Use c_ident_is_alpha to scan names.
7452         * c-lang.c: Include "c-support.h".
7453         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
7454         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
7455         * c-support.h: New file, with bits factored out from ...
7456         * cp-name-parser.y: ... this file.
7457         Include "c-support.h".
7458         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
7459         c-support.h and renamed.
7460         (symbol_end, yylex): Adjust.
7461
7462 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7463
7464         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
7465         parameter type to CORE_ADDR.
7466         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
7467         parameter type in declaration to CORE_ADDR.
7468         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
7469         target_auxv_search to get AT_HWCAP and use the result to get the
7470         target description.
7471         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
7472         to CORE_ADDR. Remove the cast of the return value to unsigned
7473         long. Fix error predicate of target_auxv_search.
7474         (ppc_linux_nat_target::read_description): Change the type of the
7475         hwcap variable to CORE_ADDR.
7476
7477 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7478
7479         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
7480         if the size of fpscr is larger than 32 bits.
7481
7482 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7483
7484         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
7485         (ppc32_linux_vsxregmap): New global.
7486         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
7487         regcache_supply_regset, and regcache_collect_regset.
7488         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
7489         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
7490         (fetch_vsx_register, store_vsx_register): Remove.
7491         (fetch_vsx_registers): Add regno parameter. Get regset using
7492         ppc_linux_vsxregset. Use regset to supply registers.
7493         (store_vsx_registers): Add regno parameter. Get regset using
7494         ppc_linux_vsxregset. Use regset to collect registers.
7495         (fetch_register): Call fetch_vsx_registers instead of
7496         fetch_vsx_register.
7497         (store_register): Call store_vsx_registers instead of
7498         store_vsx_register.
7499         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
7500         new regno parameter.
7501         (store_ppc_registers): Call store_vsx_registers with -1 for the
7502         new regno parameter.
7503         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
7504         (ppc_collect_vsxregset): Remove.
7505
7506 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7507
7508         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
7509         offset fields.
7510         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
7511         for vector register offset fields.
7512         (ppc64_fbsd_reg_offsets): Likewise.
7513         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7514         to vector register offset fields.
7515         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7516         to vector register offset fields.
7517         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
7518         vector register offset fields.
7519         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
7520         initializers for vector register offset fields.
7521         (rs6000_aix64_reg_offsets): Likewise.
7522         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
7523         (ppc_supply_vrregset): Remove.
7524         (ppc_collect_vrregset): Remove.
7525         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
7526         (ppc_linux_vrregset) : New function.
7527         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
7528         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
7529         (ppc32_linux_vrregset): Remove.
7530         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
7531         and use result instead of ppc32_linux_vrregset.
7532         (ppc32_linux_reg_offsets): Remove initializers for vector register
7533         offset fields.
7534         (ppc64_linux_reg_offsets): Likewise.
7535         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
7536         * ppc-linux-nat.c: Include regset.h.
7537         (gdb_vrregset_t): Adjust comment to account for little-endian
7538         mode.
7539         (supply_vrregset, fill_vrregset): Remove.
7540         (fetch_altivec_register, store_altivec_register): Remove.
7541         (fetch_altivec_registers): Add regno parameter. Get regset using
7542         ppc_linux_vrregset. Use regset to supply registers.
7543         (store_altivec_registers): Add regno parameter. Get regset using
7544         ppc_linux_vrregset. Use regset to collect registers.
7545         (fetch_register): Call fetch_altivec_registers instead of
7546         fetch_altivec_register.
7547         (store_register): Call store_altivec_registers instead of
7548         store_altivec_register.
7549         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
7550         the new regno parameter.
7551         (store_ppc_registers): Call store_altivec_registers with -1 for
7552         the new regno parameter.
7553
7554 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7555
7556         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
7557         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
7558         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
7559         (gdb_vrregset_t): Change array type size to
7560         PPC_LINUX_SIZEOF_VRREGSET.
7561         (gdb_vsxregset_t): Change array type size to
7562         PPC_LINUX_SIZEOF_VSXREGSET.
7563         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
7564         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
7565         PPC_LINUX_SIZEOF_VSXREGSET.
7566
7567 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7568
7569         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
7570         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
7571         nat/ppc-linux.c.
7572         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
7573         ppc_linux_target_wordsize with tid.
7574         (ppc_linux_nat_target::read_description): Call ppc_linux_target
7575         wordsize with tid.
7576         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
7577         (ppc64_64bit_inferior_p): Add static and inline specifiers.
7578         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
7579         tid parameter. Remove static specifier.
7580         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
7581         (ppc_linux_target_wordsize): New declaration.
7582
7583 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7584
7585         * arch/ppc-linux-common.c: New file.
7586         * arch/ppc-linux-common.h: New file.
7587         * arch/ppc-linux-tdesc.h: New file.
7588         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
7589         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
7590         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
7591         arch/ppc-linux-tdesc.h.
7592         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
7593         arch/ppc-linux-tdesc.h.
7594         (ppc_linux_nat_target::read_description): Remove target
7595         description matching code. Fill a ppc_linux_features struct and
7596         call ppc_linux_match_description with it. Move comment about ISA
7597         2.05 to ppc-linux-common.c.
7598         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
7599         arch/ppc-linux-tdesc.h.
7600         (ppc_linux_core_read_description): Remove target description
7601         matching code. Fill a ppc_linux_features struct and call
7602         ppc_linux_match_description with it.
7603         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
7604         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
7605         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
7606         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
7607         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
7608         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
7609         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
7610         (tdesc_powerpc_e500l): Remove.
7611
7612 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
7613
7614         * ada-lang.c (catch_assert_command): Pass empty string instead
7615         of NULL for excep_string argument.
7616
7617 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7618
7619         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
7620         the width of the requested register exceeds the width of the
7621         `ptrace' data type.
7622
7623 2018-05-21  Tom Tromey  <tom@tromey.com>
7624
7625         * printcmd.c (output_command): Remove.
7626         (output_command_const): Rename to output_command.
7627         * valprint.h (output_command): Rename from output_command_const.
7628         * tracepoint.c (trace_dump_actions): Call output_command.
7629
7630 2018-05-21  Tom Tromey  <tom@tromey.com>
7631
7632         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
7633         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
7634         * ada-lang.h (create_ada_exception_catchpoint): Update.
7635         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
7636         std::string.
7637         (create_excep_cond_exprs, ~ada_catchpoint)
7638         (should_stop_exception, print_one_exception)
7639         (print_mention_exception, print_recreate_exception): Update.
7640         (ada_get_next_arg): Remove.
7641         (catch_ada_exception_command_split): Use std::string.  Change type
7642         of "excep_string", "cond_string".
7643         (catch_ada_exception_command): Update.
7644         (create_ada_exception_catchpoint): Change type of excep_string.
7645         (ada_exception_sal): Remove excep_string parameter.
7646         (~ada_catchpoint): Remove.
7647
7648 2018-05-21  Tom Tromey  <tom@tromey.com>
7649
7650         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
7651         cleanup.
7652
7653 2018-05-21  Tom Tromey  <tom@tromey.com>
7654
7655         * ada-lang.c (ada_exception_message_1, ada_exception_message):
7656         Return unique_xmalloc_ptr.
7657         (print_it_exception): Update.
7658
7659 2018-05-21  Tom Tromey  <tom@tromey.com>
7660
7661         * tracepoint.c (trace_dump_actions): Use std::string.
7662
7663 2018-05-21  Tom Tromey  <tom@tromey.com>
7664
7665         * symfile.c (reread_symbols): Use std::string for original_name.
7666
7667 2018-05-21  Tom Tromey  <tom@tromey.com>
7668
7669         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
7670         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
7671         constructor.
7672
7673 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
7674
7675         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
7676         instance to...
7677         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
7678         * objfiles.c (get_objfile_bfd_data): Allocate
7679         objfile_per_bfd_storage with obstack_new when allocating on
7680         obstack.
7681
7682 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7683
7684         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
7685         OBSTACK_ZALLOC.
7686         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
7687         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
7688         * mdebugread.c (mdebug_build_psymtabs): Likewise.
7689         (add_pending): Likewise.
7690         (parse_symbol): Likewise.
7691         (parse_partial_symbols): Likewise.
7692         (psymtab_to_symtab_1): Likewise.
7693         (new_psymtab): Likewise.
7694         (elfmdebug_build_psymtabs): Likewise.
7695         * minsyms.c (terminate_minimal_symbol_table): Likewise.
7696         * objfiles.c (get_objfile_bfd_data): Likewise.
7697         (objfile_register_static_link): Likewise.
7698         * psymtab.c (allocate_psymtab): Likewise.
7699         * stabsread.c (read_member_functions): Likewise.
7700         * xcoffread.c (xcoff_end_psymtab): Likewise.
7701
7702 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7703
7704         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
7705         compiler supports std::is_trivially_constructible.
7706         * common/poison.h: Include obstack.h.
7707         (IsMallocable): Define to is_trivially_constructible if the
7708         compiler supports it, define to true_type otherwise.
7709         (xobnew): New.
7710         (XOBNEW): Redefine.
7711         (xobnewvec): New.
7712         (XOBNEWVEC): Redefine.
7713         * gdb_obstack.h (obstack_zalloc): New.
7714         (OBSTACK_ZALLOC): Redefine.
7715         (obstack_calloc): New.
7716         (OBSTACK_CALLOC): Redefine.
7717         (obstack_new): New.
7718         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
7719         (gdbarch_obstack): New declaration in gdbarch.h, definition in
7720         gdbarch.c.
7721         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
7722         obstack_calloc/obstack_zalloc.
7723         (gdbarch_obstack_zalloc): Remove.
7724         * target-descriptions.c (tdesc_data_init): Use obstack_new.
7725
7726 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7727
7728         * stack.c (backtrace_command_1): Remove useless variable int i.
7729
7730 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7731
7732         * stack.c (print_frame_info): Fix comment.
7733
7734 2018-05-18  Tom Tromey  <tom@tromey.com>
7735
7736         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
7737         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
7738         (~dwarf2_per_objfile): Update
7739         (dwarf2_get_dwz_file): Use new.
7740         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
7741         unique_ptr.
7742
7743 2018-05-18  Tom Tromey  <tom@tromey.com>
7744
7745         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
7746         unique_ptr.
7747         * dwarf2read.c (struct dwp_file): Add constructor and
7748         initializers.
7749         (open_and_init_dwp_file): Return a unique_ptr.
7750         (dwarf2_per_objfile, create_dwp_hash_table)
7751         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
7752         (lookup_dwo_unit_in_dwp): Update.
7753         (open_and_init_dwp_file, get_dwp_file): Update.
7754
7755 2018-05-18  Tom Tromey  <tom@tromey.com>
7756
7757         * dwarf2read.c (dwarf2_per_objfile): Update.
7758         (struct mapped_index): Add initializers.
7759         (dwarf2_read_index): Use new.
7760         (dw2_symtab_iter_init): Update.
7761         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
7762         unique_ptr.
7763
7764 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
7765
7766         * dwarf2read.c (mapped_index) <total_size>: Remove.
7767
7768 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
7769
7770         * unittests/format_pieces-selftests.c (test_format_specifier):
7771         Add ARI comments.
7772
7773 2018-05-18  Tom Tromey  <tom@tromey.com>
7774
7775         * c-typeprint.c (maybe_print_hole): New function.
7776         (c_print_type_struct_field_offset): Update.
7777         (c_type_print_base_struct_union): Call maybe_print_hole.
7778
7779 2018-05-17  Keith Seitz  <keiths@redhat.com>
7780
7781         * breakpoint.c (build_bpstat_chain): New function, moved from
7782         bpstat_stop_status.
7783         (bpstat_stop_status): Add optional parameter, `stop_chain'.
7784         If no stop chain is passed, call build_bpstat_chain to build it.
7785         * breakpoint.h (build_bpstat_chain): Declare.
7786         (bpstat_stop_status): Move documentation here from breakpoint.c.
7787         * infrun.c (handle_signal_stop): Before eliding inlined frames,
7788         build the stop chain and pass it to skip_inline_frames.
7789         Pass this stop chain to bpstat_stop_status.
7790         * inline-frame.c: Include breakpoint.h.
7791         (stopped_by_user_bp_inline_frame): New function.
7792         (skip_inline_frames): Add parameter `stop_chain'.
7793         Move documention to inline-frame.h.
7794         If non-NULL, use stopped_by_user_bp_inline_frame to determine
7795         whether the frame should be elided.
7796         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
7797         Add moved documentation and update for new parameter.
7798
7799 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
7800
7801         PR cli/14975
7802         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
7803         unittests/format_pieces-selftests.c.
7804         * common/format.h (format_piece) <operator==>: New.
7805         (format_pieces) <operator[]>: Remove.
7806         * common/format.c (format_pieces::format_pieces): Handle \e.
7807         * unittests/format_pieces-selftests.c: New.
7808
7809 2018-05-17  Tom Tromey  <tom@tromey.com>
7810
7811         PR symtab/23010:
7812         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
7813         (dw2_instantiate_symtab): Add skip_partial parameter.
7814         (dw2_find_last_source_symtab, dw2_map_expand_apply)
7815         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
7816         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
7817         (dw2_expand_symtabs_matching_one)
7818         (dw2_find_pc_sect_compunit_symtab)
7819         (dw2_debug_names_lookup_symbol)
7820         (dw2_debug_names_expand_symtabs_for_function): Update.
7821         (init_cutu_and_read_dies): Add skip_partial parameter.
7822         (process_psymtab_comp_unit, build_type_psymtabs_1)
7823         (process_skeletonless_type_unit, load_partial_comp_unit)
7824         (psymtab_to_symtab_1): Update.
7825         (load_full_comp_unit): Add skip_partial parameter.
7826         (process_imported_unit_die, dwarf2_read_addr_index)
7827         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
7828         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
7829         (read_signatured_type): Update.
7830
7831 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
7832
7833         * value.c (release_value): Remove unused variable.
7834         (record_latest_value): Likewise.
7835         (access_value_history): Likewise.
7836         (preserve_values): Likewise.
7837
7838 2018-05-17  Tom Tromey  <tom@tromey.com>
7839
7840         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
7841         Initialize.
7842
7843 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
7844
7845         PR gdb/22286
7846         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
7847         Also handle registers whose width is not a multiple of
7848         PTRACE_TYPE_RET.
7849         (linux_nat_trad_target::store_register): Likewise.
7850
7851 2018-05-16  Tom Tromey  <tom@tromey.com>
7852
7853         * gdbcore.h (core_bfd): Redefine.
7854         * corelow.c (core_target::close): Update.
7855         (core_target_open): Update.
7856         * progspace.h (struct program_space) <cbfd>: Now a
7857         gdb_bfd_ref_ptr.
7858
7859 2018-05-16  Tom Tromey  <tom@tromey.com>
7860
7861         PR cli/19551:
7862         * symfile-add-flags.h (enum symfile_add_flags)
7863         <SYMFILE_NOT_FILENAME>: New constant.
7864         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
7865         objfile name from BFD.
7866         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
7867         * minidebug.c (find_separate_debug_file_in_section): Put
7868         ".gnu_debugdata" into BFD's file name.
7869
7870 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
7871
7872         * regcache.c (regcache_read_ftype, regcache_write_ftype):
7873         Remove.
7874
7875 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
7876
7877         PR binutils/21446
7878         * aarch64-tdep.c (aarch64_analyze_prologue,
7879         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
7880         Indicate not interested in errors.
7881
7882 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
7883
7884         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
7885         Supply the MIPS_ZERO_REGNUM register.
7886
7887 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
7888
7889         * mips-tdep.c (mask_address_var): Make variable static.
7890
7891 2018-05-14  Tom Tromey  <tom@tromey.com>
7892
7893         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
7894
7895 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
7896
7897         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
7898         FXSAVE_ADDR for the mxcsr register.
7899
7900 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
7901
7902         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
7903
7904 2018-05-11  Pedro Alves  <palves@redhat.com>
7905
7906         * corelow.c (core_target) <core_target>: No longer inline.
7907         Initialize m_core_gdbarch, m_core_vec and build the section table
7908         here.
7909         <~core_target>: New.
7910         <core_gdbarch, get_core_register_section>: New methods.
7911         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
7912         factored out from ...
7913         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
7914         (core_ops): Delete.
7915         (sniff_core_bfd): Add gdbarch parameter.
7916         (core_close): Delete, merged into ...
7917         (core_target::close): ... here.  Delete self.
7918         (core_close_cleanup): Delete.
7919         (core_target_open): Allocate a core_target on the heap.  Use a
7920         unique_ptr instead of a cleanup.  Bits moved into the core_target
7921         ctor.  Adjust to use core_target methods instead of globals.
7922         (get_core_register_section): Rename to ...
7923         (core_target::get_core_register_section): ... this and adjust.
7924         (struct get_core_registers_cb_data): New.
7925         (get_core_registers_cb): Use it.  Use bool.
7926         (core_target::fetch_registers, core_target::files_info)
7927         (core_target::xfer_partial, core_target::read_description)
7928         (core_target::pid_to, core_target::thread_name): Adjust to
7929         reference class fields instead of globals.
7930         * target.h (struct target_ops_deleter, target_ops_up): New.
7931
7932 2018-05-11  Pedro Alves  <palves@redhat.com>
7933
7934         * corefile.c (core_file_command): Move to corelow.c.
7935         * corelow.c (the_core_target): Delete.
7936         (core_file_command): Moved from corefile.c.  Check exec_bfd
7937         instead of the_core_target.  Use target_detach instead of calling
7938         into the_core_target directly.
7939         (maybe_say_no_core_file_now): New.
7940         (core_target::detach): Use it.
7941         (_initialize_corelow): Remove references to the_core_target.
7942         * gdbcore.h (the_core_target): Delete.
7943
7944 2018-05-11  Tom Tromey  <tromey@redhat.com>
7945             Pedro Alves  <palves@redhat.com>
7946
7947         * corefile.c (core_bfd): Remove.
7948         * gdbcore.h (core_bfd): Now a macro.
7949         * progspace.h (struct program_space) <cbfd>: New field.
7950
7951 2018-05-11  Tom Tromey  <tom@tromey.com>
7952
7953         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
7954         gdb::def_vector.
7955
7956 2018-05-10  Tom Tromey  <tom@tromey.com>
7957
7958         * configure: Rebuild.
7959         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
7960
7961 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
7962
7963         PR server/23158:
7964         * regformats/regdat.sh: Adjust script, following the addition
7965         of the new expedite_regs parameter to init_target_desc.
7966
7967 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
7968     
7969         PR gdb/23127
7970         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
7971         set_gdbarch_significant_addr_bit.
7972         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
7973         set_gdbarch_significant_addr_bit.
7974         * utils.c (address_significant): Update to sign extend addr.
7975
7976 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
7977
7978         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
7979         (xtensa_linux_init_abi): Limit tdep->num_regs by
7980         tdep->num_nopriv_regs.
7981         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
7982         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
7983         not initialized.
7984
7985 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
7986
7987         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
7988
7989 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
7990
7991         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
7992         (I387_MXCSR_INIT_VAL): New constant.
7993         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
7994         buffer if it was supplied by the inferior.
7995         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
7996         (i387_xsave_get_clear_bv): New function.
7997         (i387_supply_xsave): Only read x87 control registers from the
7998         xsave buffer if the feature is enabled, and the state will have
7999         been written, otherwise, provide a suitable default.
8000         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8001         including x87 control registers.  Update control registers if they
8002         have changed from the default value, and mark features as enabled
8003         as required.
8004         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8005
8006 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8007
8008         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8009
8010 2018-05-07  Tom Tromey  <tom@tromey.com>
8011
8012         * configure: Rebuild.
8013         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8014
8015 2018-05-07  Tom Tromey  <tom@tromey.com>
8016
8017         PR tdep/20362:
8018         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8019         bit.  Use correct value for VDIV.
8020
8021 2018-05-04  Tom Tromey  <tom@tromey.com>
8022
8023         * configure: Rebuild.
8024         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8025
8026 2018-05-04  Tom Tromey  <tom@tromey.com>
8027
8028         * linux-record.c (record_linux_system_call) <case
8029         RECORD_SYS_RECVFROM>: Add "break".
8030
8031 2018-05-04  Tom Tromey  <tom@tromey.com>
8032
8033         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8034         Add missing "break".
8035         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8036         Add missing "break".
8037
8038 2018-05-04  Tom Tromey  <tom@tromey.com>
8039
8040         * rs6000-tdep.c (ppc_process_record_op4)
8041         (ppc_process_record_op63): Add fall-through comment.
8042
8043 2018-05-04  Tom Tromey  <tom@tromey.com>
8044
8045         * i386-tdep.c (i386_process_record): Add fall-through comment.
8046
8047 2018-05-04  Tom Tromey  <tom@tromey.com>
8048
8049         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8050         comment.
8051
8052 2018-05-04  Tom Tromey  <tom@tromey.com>
8053
8054         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8055         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8056         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8057         comment.
8058         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8059         comment.
8060         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8061         comment.
8062
8063 2018-05-04  Tom Tromey  <tom@tromey.com>
8064
8065         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8066
8067 2018-05-04  Tom Tromey  <tom@tromey.com>
8068
8069         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8070         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8071         * symfile.c (section_is_mapped): Fix fall-through comment.
8072         * stabsread.c (define_symbol, read_member_functions): Fix
8073         fall-through comment.
8074         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8075         comment.
8076         * remote.c (remote_wait_as): Fix fall-through comment.
8077         * p-exp.y (yylex): Fix fall-through comment.
8078         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8079         comment.
8080         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8081         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8082         * jv-exp.y (yylex): Fix fall-through comment.
8083         * go-exp.y (lex_one_token): Fix fall-through comment.
8084         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8085         fall-through comment.
8086         * f-exp.y (yylex): Fix fall-through comment.
8087         * dwarf2read.c (process_die): Fix fall-through comments.
8088         * dbxread.c (process_one_symbol): Fix fall-through comment.
8089         * d-exp.y (lex_one_token): Fix fall-through comment.
8090         * cp-name-parser.y (yylex): Fix fall-through comment.
8091         * coffread.c (coff_symtab_read): Fix fall-through comment.
8092         * c-exp.y (lex_one_token): Fix fall-through comment.
8093         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8094         comment.
8095         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8096         comment.
8097
8098 2018-05-04  Tom Tromey  <tom@tromey.com>
8099
8100         PR python/22730:
8101         * NEWS: Mention gdb.execute change.
8102         * gdbcmd.h (execute_control_command): Don't declare.
8103         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8104         execute_control_commands, execute_control_commands_to_string.
8105         * cli/cli-script.h (execute_control_commands)
8106         (execute_control_commands_to_string): Declare.
8107         (execute_control_command): Add from_tty parameter.
8108         * cli/cli-script.c (execute_control_commands)
8109         (execute_control_commands_to_string): New functions.
8110         (execute_user_command): Use execute_control_commands.
8111         (execute_control_command_1): Add "from_tty" parameter.  Update.
8112         (execute_control_command): Likewise.
8113
8114 2018-05-04  Tom Tromey  <tom@tromey.com>
8115
8116         PR python/22731:
8117         * NEWS: Mention that breakpoint commands are writable.
8118         * python/py-breakpoint.c (bppy_set_commands): New function.
8119         (breakpoint_object_getset) <"commands">: Use it.
8120
8121 2018-05-04  Tom Tromey  <tom@tromey.com>
8122
8123         * tracepoint.c (actions_command): Update.
8124         * mi/mi-cmd-break.c (mi_command_line_array)
8125         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8126         (mi_read_next_line): Remove.
8127         (mi_cmd_break_commands): Update.
8128         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8129         function_view.
8130         * cli/cli-script.c (get_command_line): Update.
8131         (process_next_line): Use function_view.  Constify.
8132         (recurse_read_control_structure, read_command_lines)
8133         (read_command_lines_1): Change argument types to function_view.
8134         (do_define_command, document_command): Update.
8135         * breakpoint.h (check_tracepoint_command): Don't declare.
8136         * breakpoint.c (check_tracepoint_command): Remove.
8137         (commands_command_1, create_tracepoint_from_upload): Update.
8138
8139 2018-05-04  Tom Tromey  <tom@tromey.com>
8140
8141         PR gdb/11750:
8142         * cli/cli-script.h (enum command_control_type) <define_control>:
8143         New constant.
8144         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8145         (build_command_line, execute_control_command_1)
8146         (process_next_line): Likewise.
8147         (do_define_command): New function, extracted from define_command.
8148         (define_command): Use it.
8149
8150 2018-05-04  Tom Tromey  <tom@tromey.com>
8151
8152         * tracepoint.c (actions_command): Update.
8153         * cli/cli-script.h (read_command_lines): Update.
8154         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8155         (MAX_TMPBUF): Remove define.
8156         (define_command): Use string_printf.
8157         (document_command): Likewise.
8158         * breakpoint.c (commands_command_1): Update.
8159
8160 2018-05-04  Tom Tromey  <tom@tromey.com>
8161
8162         * top.c (execute_command): Update.
8163         * cli/cli-script.h (print_command_lines): Now varargs.
8164         * cli/cli-script.c (print_command_lines): Now varargs.
8165         (execute_control_command_1) <case while_control, case if_control>:
8166         Update.
8167
8168 2018-05-04  Tom Tromey  <tom@tromey.com>
8169
8170         * tracepoint.c (all_tracepoint_actions): Rename from
8171         all_tracepoint_actions_and_cleanup.  Change return type.
8172         (actions_command, encode_actions_1, encode_actions)
8173         (trace_dump_actions, tdump_command): Update.
8174         * remote.c (remote_download_command_source): Update.
8175         * python/python.c (gdbpy_eval_from_control_command)
8176         (python_command, python_interactive_command): Update.
8177         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8178         * guile/guile.c (guile_command)
8179         (gdbscm_eval_from_control_command, guile_command): Update.
8180         * compile/compile.c (compile_code_command)
8181         (compile_print_command, compile_to_object): Update.
8182         * cli/cli-script.h (struct command_lines_deleter): New.
8183         (counted_command_line): New typedef.
8184         (struct command_line): Add constructor, destructor.
8185         <body_list>: Remove.
8186         <body_list_0, body_list_1>: New members.
8187         (command_line_up): Remove typedef.
8188         (read_command_lines, read_command_lines_1, get_command_line):
8189         Update.
8190         (copy_command_lines): Don't declare.
8191         * cli/cli-script.c (build_command_line): Use "new".
8192         (get_command_line): Return counted_command_line.
8193         (print_command_lines, execute_user_command)
8194         (execute_control_command_1, while_command, if_command): Update.
8195         (realloc_body_list): Remove.
8196         (process_next_line, recurse_read_control_structure): Update.
8197         (read_command_lines, read_command_lines_1): Return counted_command_line.
8198         (free_command_lines): Use "delete".
8199         (copy_command_lines): Remove.
8200         (define_command, document_command, show_user_1): Update.
8201         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8202         a counted_command_line.
8203         * breakpoint.h (counted_command_line): Remove typedef.
8204         (breakpoint_set_commands): Update.
8205         * breakpoint.c (check_no_tracepoint_commands)
8206         (validate_commands_for_breakpoint): Update.
8207         (breakpoint_set_commands): Change commands to be a
8208         counted_command_line.
8209         (commands_command_1, update_dprintf_command_list)
8210         (create_tracepoint_from_upload): Update.
8211
8212 2018-05-04  Tom Tromey  <tom@tromey.com>
8213
8214         * cli/cli-decode.h (cmd_list_element): New constructor.
8215         (~cmd_list_element): New destructor.
8216         (struct cmd_list_element): Add initializers.
8217         * cli/cli-decode.c (do_add_cmd): Use "new".
8218         (delete_cmd): Use "delete".
8219
8220 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8221             Pedro Alves <palves@redhat.com>
8222
8223         PR breakpoints/19806 and support for PR external/20207.
8224         * NEWS: Mention Aarch64 watchpoint improvements.
8225         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8226         watchpoints and PR external/20207 watchpoints.
8227         * nat/aarch64-linux-hw-point.c
8228         (kernel_supports_any_contiguous_range): New.
8229         (aarch64_watchpoint_offset): New.
8230         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8231         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8232         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8233         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8234         next_addr_orig_p.  Support PR external/20207 watchpoints.
8235         (aarch64_downgrade_regs): New.
8236         (aarch64_dr_state_insert_one_point): New parameters offset and
8237         addr_orig.
8238         (aarch64_dr_state_remove_one_point): Likewise.
8239         (aarch64_handle_breakpoint): Update caller.
8240         (aarch64_handle_aligned_watchpoint): Likewise.
8241         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
8242         aligned_offset.
8243         (aarch64_linux_set_debug_regs): Remove const from state.  Call
8244         aarch64_downgrade_regs.
8245         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
8246         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
8247         (DR_CONTROL_MASK): ... this.
8248         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
8249         (unsigned int aarch64_watchpoint_offset): New prototype.
8250         (aarch64_linux_set_debug_regs): Remove const from state.
8251         * utils.c (align_up, align_down): Move to ...
8252         * common/common-utils.c (align_up, align_down): ... here.
8253         * utils.h (align_up, align_down): Move to ...
8254         * common/common-utils.h (align_up, align_down): ... here.
8255
8256 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
8257
8258         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
8259         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
8260         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
8261         Re-implement to match the ABI as summarized in GCC's
8262         gcc/config/sparc/sparc.c.  All callers updated.
8263         (sparc32_store_arguments): Remove assertion.
8264
8265 2018-05-04  Tom Tromey  <tom@tromey.com>
8266
8267         * printcmd.c: Don't include tui.h.
8268         (decode_format): Use skip_spaces.
8269
8270 2018-05-04  Tom Tromey  <tom@tromey.com>
8271
8272         PR gdb/22619:
8273         * printcmd.c (last_count): New global.
8274         (x_command): Use saved count when repeating.
8275
8276 2018-05-04  Tom Tromey  <tom@tromey.com>
8277
8278         * nto-procfs.c (do_closedir_cleanup): Remove.
8279         (procfs_pidlist): Use gdb_dir_up.
8280         * procfs.c (do_closedir_cleanup): Remove.
8281         (proc_update_threads): Use gdb_dir_up.
8282         * common/filestuff.h (struct gdb_dir_deleter): New.
8283         (gdb_dir_up): New typedef.
8284
8285 2018-05-04  Tom Tromey  <tom@tromey.com>
8286
8287         * ada-lang.c (print_mention_exception): Use std::string.
8288
8289 2018-05-04  Tom Tromey  <tom@tromey.com>
8290
8291         * ada-lang.c (create_excep_cond_exprs): Update.
8292         (ada_exception_catchpoint_cond_string): Use std::string.
8293
8294 2018-05-04  Tom Tromey  <tom@tromey.com>
8295
8296         * ada-lang.c (xget_renaming_scope): Return std::string.
8297         (old_renaming_is_invisible): Update.
8298
8299 2018-05-04  Tom Tromey  <tom@tromey.com>
8300
8301         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
8302         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
8303
8304 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
8305
8306         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
8307
8308 2018-05-04  Tom Tromey  <tom@tromey.com>
8309
8310         * remote.c (remote_query_supported_append): Change type.
8311         (remote_check_symbols): Update.
8312
8313 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
8314
8315         PR gdb/11420
8316         * configure.ac: Prepend libpython.
8317         * python/python-config.py: Likewise.
8318         * configure: Regenerate.
8319
8320 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
8321
8322         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
8323
8324 2018-05-03  Pedro Alves  <palves@redhat.com>
8325
8326         * s390-linux-nat.c
8327         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
8328         override.  Write 'true' instead of '1'.
8329         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
8330         declaration.
8331
8332 2018-05-02  Pedro Alves  <palves@redhat.com>
8333
8334         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
8335         add_inf_child_target.
8336         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
8337         add_inf_child_target.
8338         * aix-thread.c (aix_thread_target_info): New.
8339         (aix_thread_target) <shortname, longname, doc>: Delete.
8340         <info>: New.
8341         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
8342         add_inf_child_target.
8343         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
8344         add_inf_child_target.
8345         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
8346         add_inf_child_target.
8347         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
8348         add_inf_child_target.
8349         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
8350         add_inf_child_target.
8351         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
8352         add_inf_child_target.
8353         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
8354         add_inf_child_target.
8355         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
8356         add_inf_child_target.
8357         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
8358         add_inf_child_target.
8359         * bfd-target.c (target_bfd_target_info): New.
8360         (target_bfd) <shortname, longname, doc>: Delete.
8361         <info>: New.
8362         * bsd-kvm.c (bsd_kvm_target_info): New.
8363         (bsd_kvm_target) <shortname, longname, doc>: Delete.
8364         <info>: New.
8365         (bsd_kvm_target::open): Rename to ...
8366         (bsd_kvm_target_open): ... this.  Adjust.
8367         * bsd-uthread.c (bsd_uthread_target_info): New.
8368         (bsd_uthread_target) <shortname, longname, doc>: Delete.
8369         <info>: New.
8370         * corefile.c (core_file_command): Adjust.
8371         * corelow.c (core_target_info): New.
8372         (core_target) <shortname, longname, doc>: Delete.
8373         <info>: New.
8374         (core_target::open): Rename to ...
8375         (core_target_open): ... this.  Adjust.
8376         * ctf.c (ctf_target_info): New.
8377         (ctf_target) <shortname, longname, doc>: Delete.
8378         <info>: New.
8379         (ctf_target::open): Rename to ...
8380         (ctf_target_open): ... this.
8381         (_initialize_ctf): Adjust.
8382         * exec.c (exec_target_info): New.
8383         (exec_target) <shortname, longname, doc>: Delete.
8384         <info>: New.
8385         (exec_target::open): Rename to ...
8386         (exec_target_open): ... this.
8387         * gdbcore.h (core_target_open): Declare.
8388         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
8389         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
8390         add_inf_child_target.
8391         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
8392         add_inf_child_target.
8393         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
8394         add_inf_child_target.
8395         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
8396         add_inf_child_target.
8397         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
8398         add_inf_child_target.
8399         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
8400         add_inf_child_target.
8401         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
8402         add_inf_child_target.
8403         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
8404         add_inf_child_target.
8405         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
8406         add_inf_child_target.
8407         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
8408         add_inf_child_target.
8409         * inf-child.c (inf_child_target_info): New.
8410         (inf_child_target::info): New.
8411         (inf_child_open_target): Remove 'target' parameter.  Use
8412         get_native_target instead.
8413         (inf_child_target::open): Delete.
8414         (add_inf_child_target): New.
8415         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
8416         Delete.
8417         <info>: New.
8418         (add_inf_child_target): Declare.
8419         (inf_child_open_target): Declare.
8420         * linux-thread-db.c (thread_db_target_info): New.
8421         (thread_db_target) <shortname, longname, doc>: Delete.
8422         <info>: New.
8423         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
8424         add_inf_child_target.
8425         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
8426         add_inf_child_target.
8427         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
8428         add_inf_child_target.
8429         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
8430         add_inf_child_target.
8431         * make-target-delegates (print_class): Adjust.
8432         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
8433         add_inf_child_target.
8434         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
8435         add_inf_child_target.
8436         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
8437         add_inf_child_target.
8438         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
8439         add_inf_child_target.
8440         * nto-procfs.c (nto_native_target_info): New.
8441         (nto_procfs_target_native) <shortname, longname, doc>:
8442         Delete.
8443         <info>: New.
8444         (nto_procfs_target_info): New.
8445         (nto_procfs_target_procfs) <shortname, longname, doc>:
8446         Delete.
8447         <info>: New.
8448         (init_procfs_targets): Adjust.
8449         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
8450         add_inf_child_target.
8451         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
8452         add_inf_child_target.
8453         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
8454         add_inf_child_target.
8455         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
8456         add_inf_child_target.
8457         * ravenscar-thread.c (ravenscar_target_info): New.
8458         (ravenscar_thread_target) <shortname, longname, doc>:
8459         Delete.
8460         <info>: New.
8461         * record-btrace.c (record_btrace_target_info):
8462         (record_btrace_target) <shortname, longname, doc>: Delete.
8463         <info>: New.
8464         (record_btrace_target::open): Rename to ...
8465         (record_btrace_target_open): ... this.  Adjust.
8466         * record-full.c (record_longname, record_doc): New.
8467         (record_full_base_target) <shortname, longname, doc>: Delete.
8468         <info>: New.
8469         (record_full_target_info): New.
8470         (record_full_target): <shortname>: Delete.
8471         <info>: New.
8472         (record_full_core_open_1, record_full_open_1): Update comments.
8473         (record_full_base_target::open): Rename to ...
8474         (record_full_open): ... this.
8475         (cmd_record_full_restore): Update.
8476         (_initialize_record_full): Update.
8477         * remote-sim.c (remote_sim_target_info): New.
8478         (gdbsim_target) <shortname, longname, doc>: Delete.
8479         <info>: New.
8480         (gdbsim_target::open): Rename to ...
8481         (gdbsim_target_open): ... this.
8482         (_initialize_remote_sim): Adjust.
8483         * remote.c (remote_doc): New.
8484         (remote_target_info): New.
8485         (remote_target) <shortname, longname, doc>: Delete.
8486         <info>: New.
8487         (extended_remote_target_info): New.
8488         (extended_remote_target) <shortname, longname, doc>: Delete.
8489         <info>: New.
8490         (remote_target::open_1): Make static.  Adjust.
8491         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
8492         * s390-linux-nat.c (_initialize_s390_nat): Use
8493         add_inf_child_target.
8494         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
8495         add_inf_child_target.
8496         * sol-thread.c (thread_db_target_info): New.
8497         (sol_thread_target) <shortname, longname, doc>: Delete.
8498         <info>: New.
8499         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
8500         add_inf_child_target.
8501         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
8502         add_inf_child_target.
8503         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
8504         add_inf_child_target.
8505         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
8506         add_inf_child_target.
8507         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
8508         add_inf_child_target.
8509         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
8510         add_inf_child_target.
8511         * spu-linux-nat.c (_initialize_spu_nat): Use
8512         add_inf_child_target.
8513         * spu-multiarch.c (spu_multiarch_target_info): New.
8514         (spu_multiarch_target) <shortname, longname, doc>: Delete.
8515         <info>: New.
8516         * target-delegates.c: Regenerate.
8517         * target.c: Include <unordered_map>.
8518         (target_ops_p): Delete.
8519         (DEF_VEC_P(target_ops_p)): Delete.
8520         (target_factories): New.
8521         (test_target_info): New.
8522         (test_target_ops::info): New.
8523         (open_target): Adjust to use target_factories.
8524         (add_target_with_completer): Rename to ...
8525         (add_target): ... this.  Change prototype.  Register target_info
8526         and open callback in target_factories.  Register target_info in
8527         command context instead of target_ops.
8528         (add_target): Delete old implementation.
8529         (add_deprecated_target_alias): Change prototype.  Adjust.
8530         (the_native_target): New.
8531         (set_native_target, get_native_target): New.
8532         (find_default_run_target): Use the_native_target.
8533         (find_attach_target, find_run_target): Simplify.
8534         (target_ops::open): Delete.
8535         (dummy_target_info): New.
8536         (dummy_target::shortname, dummy_target::longname)
8537         (dummy_target::doc): Delete.
8538         (dummy_target::info): New.
8539         (debug_target::shortname, debug_target::longname)
8540         (debug_target::doc): Delete.
8541         (debug_target::info): New.
8542         * target.h (struct target_info): New.
8543         (target_ops::~target_ops): Add comment.
8544         (target_ops::info): New.
8545         (target_ops::shortname, target_ops::longname, target_ops::doc): No
8546         longer virtual.  Implement in terms of target_info.
8547         (set_native_target, get_native_target): Declare.
8548         (target_open_ftype): New.
8549         (add_target, add_target_with_completer)
8550         (add_deprecated_target_alias): Change prototype.
8551         (test_target) <shortname, longname, doc>: Delete.
8552         <info>: New.
8553         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
8554         add_inf_child_target.
8555         * tracefile-tfile.c (tfile_target_info): New.
8556         (tfile_target) <shortname, longname, doc>: Delete.
8557         <info>: New.
8558         (tfile_target::open): Rename to ...
8559         (tfile_target_open): ... this.
8560         (_initialize_tracefile_tfile): Adjust.
8561         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
8562         add_inf_child_target.
8563         * windows-nat.c (_initialize_windows_nat): Use
8564         add_inf_child_target.
8565         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
8566         add_inf_child_target.
8567
8568 2018-05-02  Pedro Alves  <palves@redhat.com>
8569
8570         * linux-nat.h (linux_nat_target) <low_new_thread,
8571         low_delete_thread, low_new_fork, low_forget_process,
8572         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
8573         New virtual methods.
8574         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8575         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
8576         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
8577         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8578         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
8579         Delete.
8580         * linux-fork.c (delete_fork): Adjust to call low method.
8581         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
8582         (linux_nat_new_fork, linux_nat_forget_process_hook)
8583         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
8584         (linux_nat_status_is_event):
8585         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
8586         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
8587         to call low method.
8588         (sigtrap_is_event): Rename to ...
8589         (linux_nat_target::low_status_is_event): ... this.
8590         (linux_nat_set_status_is_event): Delete.
8591         (save_stop_reason, linux_nat_wait_1)
8592         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
8593         low methods.
8594         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8595         (linux_nat_set_new_fork, linux_nat_set_forget_process)
8596         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8597         (linux_nat_set_prepare_to_resume): Delete.
8598         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
8599         low virtual methods.
8600         * amd64-linux-nat.c: Likewise.
8601         * arm-linux-nat.c: Likewise.
8602         * i386-linux-nat.c: Likewise.
8603         * ia64-linux-nat.c: Likewise.
8604         * mips-linux-nat.c: Likewise.
8605         * ppc-linux-nat.c: Likewise.
8606         * s390-linux-nat.c: Likewise.
8607         * sparc64-linux-nat.c: Likewise.
8608         * x86-linux-nat.c: Likewise.
8609         * x86-linux-nat.h: Include "nat/x86-linux.h".
8610         (x86_linux_nat_target) <low_new_fork, low_forget_process,
8611         low_prepare_to_resume, low_new_thread, low_delete_thread>:
8612         Override methods.
8613
8614 2018-05-02  Pedro Alves  <palves@redhat.com>
8615
8616         * target.h (target_ops)
8617         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
8618         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
8619         stopped_by_watchpoint, have_continuable_watchpoint,
8620         stopped_data_address, watchpoint_addr_within_range,
8621         can_accel_watchpoint_condition, can_run, thread_alive,
8622         has_all_memory, has_memory, has_stack, has_registers,
8623         has_execution, can_async_p, is_async_p, supports_non_stop,
8624         always_non_stop_p, can_execute_reverse, supports_multi_process,
8625         supports_enable_disable_tracepoint,
8626         supports_disable_randomization, supports_string_tracing,
8627         supports_evaluation_of_breakpoint_conditions,
8628         can_run_breakpoint_commands, filesystem_is_local,
8629         can_download_tracepoint, get_trace_state_variable_value,
8630         set_trace_notes, get_tib_address, use_agent, can_use_agent,
8631         record_is_replaying, record_will_replay,
8632         augmented_libraries_svr4_read>: Adjust to return bool.
8633         * aarch64-linux-nat.c: All implementations adjusted.
8634         * aix-thread.c: All implementations adjusted.
8635         * arm-linux-nat.c: All implementations adjusted.
8636         * breakpoint.c: All implementations adjusted.
8637         * bsd-kvm.c: All implementations adjusted.
8638         * bsd-uthread.c: All implementations adjusted.
8639         * corelow.c: All implementations adjusted.
8640         * ctf.c: All implementations adjusted.
8641         * darwin-nat.c: All implementations adjusted.
8642         * darwin-nat.h: All implementations adjusted.
8643         * exec.c: All implementations adjusted.
8644         * fbsd-nat.c: All implementations adjusted.
8645         * fbsd-nat.h: All implementations adjusted.
8646         * gnu-nat.c: All implementations adjusted.
8647         * gnu-nat.h: All implementations adjusted.
8648         * go32-nat.c: All implementations adjusted.
8649         * ia64-linux-nat.c: All implementations adjusted.
8650         * inf-child.c: All implementations adjusted.
8651         * inf-child.h: All implementations adjusted.
8652         * inf-ptrace.c: All implementations adjusted.
8653         * inf-ptrace.h: All implementations adjusted.
8654         * linux-nat.c: All implementations adjusted.
8655         * linux-nat.h: All implementations adjusted.
8656         * mips-linux-nat.c: All implementations adjusted.
8657         * nto-procfs.c: All implementations adjusted.
8658         * ppc-linux-nat.c: All implementations adjusted.
8659         * procfs.c: All implementations adjusted.
8660         * ravenscar-thread.c: All implementations adjusted.
8661         * record-btrace.c: All implementations adjusted.
8662         * record-full.c: All implementations adjusted.
8663         * remote-sim.c: All implementations adjusted.
8664         * remote.c: All implementations adjusted.
8665         * s390-linux-nat.c: All implementations adjusted.
8666         * sol-thread.c: All implementations adjusted.
8667         * spu-multiarch.c: All implementations adjusted.
8668         * target-delegates.c: All implementations adjusted.
8669         * target.c: All implementations adjusted.
8670         * target.h: All implementations adjusted.
8671         * tracefile-tfile.c: All implementations adjusted.
8672         * tracefile.c: All implementations adjusted.
8673         * tracefile.h: All implementations adjusted.
8674         * windows-nat.c: All implementations adjusted.
8675         * x86-linux-nat.h: All implementations adjusted.
8676         * x86-nat.h: All implementations adjusted.
8677
8678 2018-05-02  Pedro Alves  <palves@redhat.com>
8679
8680         * make-target-delegates (scan_target_h): Don't trim lines here.
8681         Replace sequences of tabs and/or whitespace with a single
8682         whitespace.
8683         (top level, parsing methods): Trim each line before processing it
8684         here.
8685
8686 2018-05-02  Pedro Alves  <palves@redhat.com>
8687             John Baldwin  <jhb@freebsd.org>
8688
8689         * target.h (enum strata) <debug_stratum>: New.
8690         (struct target_ops) <all delegation methods>: Replace by C++
8691         virtual methods, and drop "to_" prefix.  All references updated
8692         throughout.
8693         <to_shortname, to_longname, to_doc, to_data,
8694         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
8695         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
8696         virtual methods.  All references updated throughout.
8697         <can_attach, supports_terminal_ours, can_create_inferior,
8698         get_thread_control_capabilities, attach_no_wait>: New
8699         virtual methods.
8700         <insert_breakpoint, remove_breakpoint>: Now
8701         TARGET_DEFAULT_NORETURN methods.
8702         <info_proc>: Now returns bool.
8703         <to_magic>: Delete.
8704         (OPS_MAGIC): Delete.
8705         (current_target): Delete.  All references replaced by references
8706         to ...
8707         (target_stack): ... this.  New.
8708         (target_shortname, target_longname): Adjust.
8709         (target_can_run): Now a function declaration.
8710         (default_child_has_all_memory, default_child_has_memory)
8711         (default_child_has_stack, default_child_has_registers)
8712         (default_child_has_execution): Remove target_ops parameter.
8713         (complete_target_initialization): Delete.
8714         (memory_breakpoint_target): New template class.
8715         (test_target_ops): Refactor as a C++ class with virtual methods.
8716         * make-target-delegates (NAME_PART): Tighten.
8717         (POINTER_PART, CP_SYMBOL): New.
8718         (SIMPLE_RETURN_PART): Reimplement.
8719         (VEC_RETURN_PART): Expect less.
8720         (RETURN_PART, VIRTUAL_PART): New.
8721         (METHOD): Adjust to C++ virtual methods.
8722         (scan_target_h): Remove reference to C99.
8723         (dname): Output "target_ops::" prefix.
8724         (write_function_header): Adjust to output a C++ class method.
8725         (write_declaration): New.
8726         (write_delegator): Adjust to output a C++ class method.
8727         (tdname): Output "dummy_target::" prefix.
8728         (write_tdefault, write_debugmethod): Adjust to output a C++ class
8729         method.
8730         (tdefault_names, debug_names): Delete.
8731         (return_types, tdefaults, styles, argtypes_array): New.
8732         (top level): All methods are delegators.
8733         (print_class): New.
8734         (top level): Print dummy_target and debug_target classes.
8735         * target-delegates.c: Regenerate.
8736         * target-debug.h (target_debug_print_enum_info_proc_what)
8737         (target_debug_print_thread_control_capabilities)
8738         (target_debug_print_thread_info_p): New.
8739         * target.c (dummy_target): Delete.
8740         (the_dummy_target, the_debug_target): New.
8741         (target_stack): Now extern.
8742         (set_targetdebug): Push/unpush debug target.
8743         (default_child_has_all_memory, default_child_has_memory)
8744         (default_child_has_stack, default_child_has_registers)
8745         (default_child_has_execution): Remove target_ops parameter.
8746         (complete_target_initialization): Delete.
8747         (add_target_with_completer): No longer call
8748         complete_target_initialization.
8749         (target_supports_terminal_ours): Use regular delegation.
8750         (update_current_target): Delete.
8751         (push_target): No longer check magic number.  Don't call
8752         update_current_target.
8753         (unpush_target): Don't call update_current_target.
8754         (target_is_pushed): No longer check magic number.
8755         (target_require_runnable): Skip for all stratums over
8756         process_stratum.
8757         (target_ops::info_proc): New.
8758         (target_info_proc): Use find_target_at and
8759         find_default_run_target.
8760         (target_supports_disable_randomization): Use regular delegation.
8761         (target_get_osdata): Use find_target_at.
8762         (target_ops::open, target_ops::close, target_ops::can_attach)
8763         (target_ops::attach, target_ops::can_create_inferior)
8764         (target_ops::create_inferior, target_ops::can_run)
8765         (target_can_run): New.
8766         (default_fileio_target): Use regular delegation.
8767         (target_ops::fileio_open, target_ops::fileio_pwrite)
8768         (target_ops::fileio_pread, target_ops::fileio_fstat)
8769         (target_ops::fileio_close, target_ops::fileio_unlink)
8770         (target_ops::fileio_readlink): New.
8771         (target_fileio_open_1, target_fileio_unlink)
8772         (target_fileio_readlink): Always call the target method.  Handle
8773         FILEIO_ENOSYS.
8774         (return_zero, return_zero_has_execution): Delete.
8775         (init_dummy_target): Delete.
8776         (dummy_target::dummy_target, dummy_target::shortname)
8777         (dummy_target::longname, dummy_target::doc)
8778         (debug_target::debug_target, debug_target::shortname)
8779         (debug_target::longname, debug_target::doc): New.
8780         (target_supports_delete_record): Use regular delegation.
8781         (setup_target_debug): Delete.
8782         (maintenance_print_target_stack): Skip debug_stratum.
8783         (initialize_targets): Instantiate the_dummy_target and
8784         the_debug_target.
8785         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
8786         use target_stack.
8787         (target_auxv_search, fprint_target_auxv): Adjust.
8788         (info_auxv_command): Adjust to use target_stack.
8789         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
8790         * exceptions.c (print_flush): Handle a NULL target_stack.
8791         * regcache.c (target_ops_no_register): Refactor as class with
8792         virtual methods.
8793
8794         * exec.c (exec_target): New class.
8795         (exec_ops): Now an exec_target.
8796         (exec_open, exec_close_1, exec_get_section_table)
8797         (exec_xfer_partial, exec_files_info, exec_has_memory)
8798         (exec_make_note_section): Refactor as exec_target methods.
8799         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
8800         Delete.
8801         (exec_target::find_memory_regions): New.
8802         (_initialize_exec): Don't call init_exec_ops.
8803         * gdbcore.h (exec_file_clear): Delete.
8804
8805         * corefile.c (core_target): Delete.
8806         (core_file_command): Adjust.
8807         * corelow.c (core_target): New class.
8808         (the_core_target): New.
8809         (core_close): Remove target_ops parameter.
8810         (core_close_cleanup): Adjust.
8811         (core_target::close): New.
8812         (core_open, core_detach, get_core_registers, core_files_info)
8813         (core_xfer_partial, core_thread_alive, core_read_description)
8814         (core_pid_to_str, core_thread_name, core_has_memory)
8815         (core_has_stack, core_has_registers, core_info_proc): Rework as
8816         core_target methods.
8817         (ignore, core_remove_breakpoint, init_core_ops): Delete.
8818         (_initialize_corelow): Initialize the_core_target.
8819         * gdbcore.h (core_target): Delete.
8820         (the_core_target): New.
8821
8822         * ctf.c: (ctf_target): New class.
8823         (ctf_ops): Now a ctf_target.
8824         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
8825         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
8826         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
8827         methods.
8828         (init_ctf_ops): Delete.
8829         (_initialize_ctf): Don't call it.
8830         * tracefile-tfile.c (tfile_target): New class.
8831         (tfile_ops): Now a tfile_target.
8832         (tfile_open, tfile_close, tfile_files_info)
8833         (tfile_get_tracepoint_status, tfile_trace_find)
8834         (tfile_fetch_registers, tfile_xfer_partial)
8835         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
8836         Refactor as tfile_target methods.
8837         (tfile_xfer_partial_features): Remove target_ops parameter.
8838         (init_tfile_ops): Delete.
8839         (_initialize_tracefile_tfile): Don't call it.
8840         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
8841         (tracefile_has_stack, tracefile_has_registers)
8842         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
8843         tracefile_target methods.
8844         (init_tracefile_ops): Delete.
8845         (tracefile_target::tracefile_target): New.
8846         * tracefile.h: Include "target.h".
8847         (tracefile_target): New class.
8848         (init_tracefile_ops): Delete.
8849
8850         * spu-multiarch.c (spu_multiarch_target): New class.
8851         (spu_ops): Now a spu_multiarch_target.
8852         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
8853         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
8854         (spu_search_memory, spu_mourn_inferior): Refactor as
8855         spu_multiarch_target methods.
8856         (init_spu_ops): Delete.
8857         (_initialize_spu_multiarch): Remove references to init_spu_ops,
8858         complete_target_initialization.
8859
8860         * ravenscar-thread.c (ravenscar_thread_target): New class.
8861         (ravenscar_ops): Now a ravenscar_thread_target.
8862         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
8863         (ravenscar_thread_alive, ravenscar_pid_to_str)
8864         (ravenscar_fetch_registers, ravenscar_store_registers)
8865         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
8866         (ravenscar_stopped_by_hw_breakpoint)
8867         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
8868         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
8869         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
8870         methods.
8871         (init_ravenscar_thread_ops): Delete.
8872         (_initialize_ravenscar): Remove references to
8873         init_ravenscar_thread_ops and complete_target_initialization.
8874
8875         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
8876         (bsd_uthread_target): New class.
8877         (bsd_uthread_ops): Now a bsd_uthread_target.
8878         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
8879         (bsd_uthread_close, bsd_uthread_mourn_inferior)
8880         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
8881         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
8882         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
8883         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
8884         (bsd_uthread_target): Delete function.
8885         (_initialize_bsd_uthread): Remove reference to
8886         complete_target_initialization.
8887
8888         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
8889         (target_bfd): ... this new class.
8890         (target_bfd_xfer_partial, target_bfd_get_section_table)
8891         (target_bfd_close): Refactor as target_bfd methods.
8892         (target_bfd::~target_bfd): New.
8893         (target_bfd_reopen): Adjust.
8894         (target_bfd::close): New.
8895
8896         * record-btrace.c (record_btrace_target): New class.
8897         (record_btrace_ops): Now a record_btrace_target.
8898         (record_btrace_open, record_btrace_stop_recording)
8899         (record_btrace_disconnect, record_btrace_close)
8900         (record_btrace_async, record_btrace_info)
8901         (record_btrace_insn_history, record_btrace_insn_history_range)
8902         (record_btrace_insn_history_from, record_btrace_call_history)
8903         (record_btrace_call_history_range)
8904         (record_btrace_call_history_from, record_btrace_record_method)
8905         (record_btrace_is_replaying, record_btrace_will_replay)
8906         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
8907         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
8908         (record_btrace_store_registers, record_btrace_prepare_to_store)
8909         (record_btrace_to_get_unwinder)
8910         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
8911         (record_btrace_commit_resume, record_btrace_wait)
8912         (record_btrace_stop, record_btrace_can_execute_reverse)
8913         (record_btrace_stopped_by_sw_breakpoint)
8914         (record_btrace_supports_stopped_by_sw_breakpoint)
8915         (record_btrace_stopped_by_hw_breakpoint)
8916         (record_btrace_supports_stopped_by_hw_breakpoint)
8917         (record_btrace_update_thread_list, record_btrace_thread_alive)
8918         (record_btrace_goto_begin, record_btrace_goto_end)
8919         (record_btrace_goto, record_btrace_stop_replaying_all)
8920         (record_btrace_execution_direction)
8921         (record_btrace_prepare_to_generate_core)
8922         (record_btrace_done_generating_core): Refactor as
8923         record_btrace_target methods.
8924         (init_record_btrace_ops): Delete.
8925         (_initialize_record_btrace): Remove reference to
8926         init_record_btrace_ops.
8927         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
8928         the execution_direction global.
8929         (record_full_base_target, record_full_target)
8930         (record_full_core_target): New classes.
8931         (record_full_ops): Now a record_full_target.
8932         (record_full_core_ops): Now a record_full_core_target.
8933         (record_full_target::detach, record_full_target::disconnect)
8934         (record_full_core_target::disconnect)
8935         (record_full_target::mourn_inferior, record_full_target::kill):
8936         New.
8937         (record_full_open, record_full_close, record_full_async): Refactor
8938         as methods of the record_full_base_target class.
8939         (record_full_resume, record_full_commit_resume): Refactor
8940         as methods of the record_full_target class.
8941         (record_full_wait, record_full_stopped_by_watchpoint)
8942         (record_full_stopped_data_address)
8943         (record_full_stopped_by_sw_breakpoint)
8944         (record_full_supports_stopped_by_sw_breakpoint)
8945         (record_full_stopped_by_hw_breakpoint)
8946         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
8947         methods of the record_full_base_target class.
8948         (record_full_store_registers, record_full_xfer_partial)
8949         (record_full_insert_breakpoint, record_full_remove_breakpoint):
8950         Refactor as methods of the record_full_target class.
8951         (record_full_can_execute_reverse, record_full_get_bookmark)
8952         (record_full_goto_bookmark, record_full_execution_direction)
8953         (record_full_record_method, record_full_info, record_full_delete)
8954         (record_full_is_replaying, record_full_will_replay)
8955         (record_full_goto_begin, record_full_goto_end, record_full_goto)
8956         (record_full_stop_replaying): Refactor as methods of the
8957         record_full_base_target class.
8958         (record_full_core_resume, record_full_core_kill)
8959         (record_full_core_fetch_registers)
8960         (record_full_core_prepare_to_store)
8961         (record_full_core_store_registers, record_full_core_xfer_partial)
8962         (record_full_core_insert_breakpoint)
8963         (record_full_core_remove_breakpoint)
8964         (record_full_core_has_execution): Refactor
8965         as methods of the record_full_core_target class.
8966         (record_full_base_target::supports_delete_record): New.
8967         (init_record_full_ops): Delete.
8968         (init_record_full_core_ops): Delete.
8969         (record_full_save): Refactor as method of the
8970         record_full_base_target class.
8971         (_initialize_record_full): Remove references to
8972         init_record_full_ops and init_record_full_core_ops.
8973
8974         * remote.c (remote_target, extended_remote_target): New classes.
8975         (remote_ops): Now a remote_target.
8976         (extended_remote_ops): Now an extended_remote_target.
8977         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
8978         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
8979         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
8980         (remote_pass_signals, remote_set_syscall_catchpoint)
8981         (remote_program_signals, )
8982         (remote_thread_always_alive): Remove target_ops parameter.
8983         (remote_thread_alive, remote_thread_name)
8984         (remote_update_thread_list, remote_threads_extra_info)
8985         (remote_static_tracepoint_marker_at)
8986         (remote_static_tracepoint_markers_by_strid)
8987         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
8988         (remote_open): Refactor as methods of remote_target.
8989         (extended_remote_open, extended_remote_detach)
8990         (extended_remote_attach, extended_remote_post_attach):
8991         (extended_remote_supports_disable_randomization)
8992         (extended_remote_create_inferior): : Refactor as method of
8993         extended_remote_target.
8994         (remote_set_permissions, remote_open_1, remote_detach)
8995         (remote_follow_fork, remote_follow_exec, remote_disconnect)
8996         (remote_resume, remote_commit_resume, remote_stop)
8997         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
8998         (remote_terminal_ours, remote_wait, remote_fetch_registers)
8999         (remote_prepare_to_store, remote_store_registers)
9000         (remote_flash_erase, remote_flash_done, remote_files_info)
9001         (remote_kill, remote_mourn, remote_insert_breakpoint)
9002         (remote_remove_breakpoint, remote_insert_watchpoint)
9003         (remote_watchpoint_addr_within_range)
9004         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9005         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9006         (remote_supports_stopped_by_sw_breakpoint)
9007         (remote_stopped_by_hw_breakpoint)
9008         (remote_supports_stopped_by_hw_breakpoint)
9009         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9010         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9011         (remote_verify_memory): Refactor as methods of remote_target.
9012         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9013         parameter.
9014         (remote_xfer_partial, remote_get_memory_xfer_limit)
9015         (remote_search_memory, remote_rcmd, remote_memory_map)
9016         (remote_pid_to_str, remote_get_thread_local_address)
9017         (remote_get_tib_address, remote_read_description): Refactor as
9018         methods of remote_target.
9019         (remote_target::fileio_open, remote_target::fileio_pwrite)
9020         (remote_target::fileio_pread, remote_target::fileio_close): New.
9021         (remote_hostio_readlink, remote_hostio_fstat)
9022         (remote_filesystem_is_local, remote_can_execute_reverse)
9023         (remote_supports_non_stop, remote_supports_disable_randomization)
9024         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9025         (remote_supports_enable_disable_tracepoint)
9026         (remote_supports_string_tracing)
9027         (remote_can_run_breakpoint_commands, remote_trace_init)
9028         (remote_download_tracepoint, remote_can_download_tracepoint)
9029         (remote_download_trace_state_variable, remote_enable_tracepoint)
9030         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9031         (remote_trace_start, remote_get_trace_status)
9032         (remote_get_tracepoint_status, remote_trace_stop)
9033         (remote_trace_find, remote_get_trace_state_variable_value)
9034         (remote_save_trace_data, remote_get_raw_trace_data)
9035         (remote_set_disconnected_tracing, remote_core_of_thread)
9036         (remote_set_circular_trace_buffer, remote_traceframe_info)
9037         (remote_get_min_fast_tracepoint_insn_len)
9038         (remote_set_trace_buffer_size, remote_set_trace_notes)
9039         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9040         (remote_disable_btrace, remote_teardown_btrace)
9041         (remote_read_btrace, remote_btrace_conf)
9042         (remote_augmented_libraries_svr4_read, remote_load)
9043         (remote_pid_to_exec_file, remote_can_do_single_step)
9044         (remote_execution_direction, remote_thread_handle_to_thread_info):
9045         Refactor as methods of remote_target.
9046         (init_remote_ops, init_extended_remote_ops): Delete.
9047         (remote_can_async_p, remote_is_async_p, remote_async)
9048         (remote_thread_events, remote_upload_tracepoints)
9049         (remote_upload_trace_state_variables): Refactor as methods of
9050         remote_target.
9051         (_initialize_remote): Remove references to init_remote_ops and
9052         init_extended_remote_ops.
9053
9054         * remote-sim.c (gdbsim_target): New class.
9055         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9056         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9057         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9058         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9059         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9060         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9061         Refactor as methods of gdbsim_target.
9062         (gdbsim_ops): Now a gdbsim_target.
9063         (init_gdbsim_ops): Delete.
9064         (gdbsim_cntrl_c): Adjust.
9065         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9066
9067         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9068         (the_amd64_linux_nat_target): New.
9069         (amd64_linux_fetch_inferior_registers)
9070         (amd64_linux_store_inferior_registers): Refactor as methods of
9071         amd64_linux_nat_target.
9072         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9073         * i386-linux-nat.c: Don't include "linux-nat.h".
9074         (i386_linux_nat_target): New class.
9075         (the_i386_linux_nat_target): New.
9076         (i386_linux_fetch_inferior_registers)
9077         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9078         as methods of i386_linux_nat_target.
9079         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9080         * inf-child.c (inf_child_ops): Delete.
9081         (inf_child_fetch_inferior_registers)
9082         (inf_child_store_inferior_registers): Delete.
9083         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9084         methods of inf_child_target.
9085         (inf_child_target::supports_terminal_ours)
9086         (inf_child_target::terminal_init)
9087         (inf_child_target::terminal_inferior)
9088         (inf_child_target::terminal_ours_for_output)
9089         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9090         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9091         New.
9092         (inf_child_open, inf_child_disconnect, inf_child_close)
9093         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9094         (inf_child_post_startup_inferior, inf_child_can_run)
9095         (inf_child_pid_to_exec_file): Refactor as methods of
9096         inf_child_target.
9097         (inf_child_follow_fork): Delete.
9098         (inf_child_target::can_create_inferior)
9099         (inf_child_target::can_attach): New.
9100         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9101         (inf_child_target::has_stack, inf_child_target::has_registers)
9102         (inf_child_target::has_execution): New.
9103         (inf_child_fileio_open, inf_child_fileio_pwrite)
9104         (inf_child_fileio_pread, inf_child_fileio_fstat)
9105         (inf_child_fileio_close, inf_child_fileio_unlink)
9106         (inf_child_fileio_readlink, inf_child_use_agent)
9107         (inf_child_can_use_agent): Refactor as methods of
9108         inf_child_target.
9109         (return_zero, inf_child_target): Delete.
9110         (inf_child_target::inf_child_target): New.
9111         * inf-child.h: Include "target.h".
9112         (inf_child_target): Delete function prototype.
9113         (inf_child_target): New class.
9114         (inf_child_open_target, inf_child_mourn_inferior)
9115         (inf_child_maybe_unpush_target): Delete.
9116         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9117         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9118         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9119         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9120         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9121         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9122         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9123         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9124         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9125         methods of inf_ptrace_target.
9126         (inf_ptrace_target): Delete function.
9127         * inf-ptrace.h: Include "inf-child.h".
9128         (inf_ptrace_target): Delete function declaration.
9129         (inf_ptrace_target): New class.
9130         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9131         * linux-nat.c (linux_target): New.
9132         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9133         (linux_nat_target::~linux_nat_target): New.
9134         (linux_child_post_attach, linux_child_post_startup_inferior)
9135         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9136         (linux_child_remove_fork_catchpoint)
9137         (linux_child_insert_vfork_catchpoint)
9138         (linux_child_remove_vfork_catchpoint)
9139         (linux_child_insert_exec_catchpoint)
9140         (linux_child_remove_exec_catchpoint)
9141         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9142         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9143         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9144         (linux_nat_stopped_data_address)
9145         (linux_nat_stopped_by_sw_breakpoint)
9146         (linux_nat_supports_stopped_by_sw_breakpoint)
9147         (linux_nat_stopped_by_hw_breakpoint)
9148         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9149         (linux_nat_kill, linux_nat_mourn_inferior)
9150         (linux_nat_xfer_partial, linux_nat_thread_alive)
9151         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9152         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9153         (linux_child_static_tracepoint_markers_by_strid)
9154         (linux_nat_is_async_p, linux_nat_can_async_p)
9155         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9156         (linux_nat_supports_multi_process)
9157         (linux_nat_supports_disable_randomization, linux_nat_async)
9158         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9159         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9160         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9161         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9162         methods of linux_nat_target.
9163         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9164         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9165         parameter.
9166         (check_stopped_by_watchpoint): Adjust.
9167         (linux_xfer_partial): Delete.
9168         (linux_target_install_ops, linux_target, linux_nat_add_target):
9169         Delete.
9170         (linux_nat_target::linux_nat_target): New.
9171         * linux-nat.h: Include "inf-ptrace.h".
9172         (linux_nat_target): New.
9173         (linux_target, linux_target_install_ops, linux_nat_add_target):
9174         Delete function declarations.
9175         (linux_target): Declare global.
9176         * linux-thread-db.c (thread_db_target): New.
9177         (thread_db_target::thread_db_target): New.
9178         (thread_db_ops): Delete.
9179         (the_thread_db_target): New.
9180         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9181         (thread_db_update_thread_list, thread_db_pid_to_str)
9182         (thread_db_extra_thread_info)
9183         (thread_db_thread_handle_to_thread_info)
9184         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9185         (thread_db_resume): Refactor as methods of thread_db_target.
9186         (init_thread_db_ops): Delete.
9187         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9188         * x86-linux-nat.c: Don't include "linux-nat.h".
9189         (super_post_startup_inferior): Delete.
9190         (x86_linux_nat_target::~x86_linux_nat_target): New.
9191         (x86_linux_child_post_startup_inferior)
9192         (x86_linux_read_description, x86_linux_enable_btrace)
9193         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9194         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9195         methods of x86_linux_nat_target.
9196         (x86_linux_create_target): Delete.  Bits folded ...
9197         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9198         pointer.
9199         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9200         (x86_linux_nat_target): New class.
9201         (x86_linux_create_target): Delete.
9202         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9203         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9204         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9205         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9206         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9207         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9208         make extern.
9209         (x86_use_watchpoints): Delete.
9210         * x86-nat.h: Include "breakpoint.h" and "target.h".
9211         (x86_use_watchpoints): Delete.
9212         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9213         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9214         (x86_insert_watchpoint, x86_remove_watchpoint)
9215         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9216         (x86_stopped_by_hw_breakpoint): New declarations.
9217         (x86_nat_target): New template class.
9218
9219         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9220         (the_ppc_linux_nat_target): New.
9221         (ppc_linux_fetch_inferior_registers)
9222         (ppc_linux_can_use_hw_breakpoint)
9223         (ppc_linux_region_ok_for_hw_watchpoint)
9224         (ppc_linux_ranged_break_num_registers)
9225         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9226         (ppc_linux_insert_mask_watchpoint)
9227         (ppc_linux_remove_mask_watchpoint)
9228         (ppc_linux_can_accel_watchpoint_condition)
9229         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9230         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9231         (ppc_linux_watchpoint_addr_within_range)
9232         (ppc_linux_masked_watch_num_registers)
9233         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9234         (ppc_linux_read_description): Refactor as methods of
9235         ppc_linux_nat_target.
9236         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
9237
9238         * procfs.c (procfs_xfer_partial): Delete forward declaration.
9239         (procfs_target): New class.
9240         (the_procfs_target): New.
9241         (procfs_target): Delete function.
9242         (procfs_auxv_parse, procfs_attach, procfs_detach)
9243         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
9244         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
9245         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
9246         (procfs_create_inferior, procfs_update_thread_list)
9247         (procfs_thread_alive, procfs_pid_to_str)
9248         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
9249         (procfs_stopped_data_address, procfs_insert_watchpoint)
9250         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
9251         (proc_find_memory_regions, procfs_info_proc)
9252         (procfs_make_note_section): Refactor as methods of procfs_target.
9253         (_initialize_procfs): Adjust.
9254         * sol-thread.c (sol_thread_target): New class.
9255         (sol_thread_ops): Now a sol_thread_target.
9256         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
9257         (sol_thread_fetch_registers, sol_thread_store_registers)
9258         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
9259         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
9260         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
9261         (init_sol_thread_ops): Delete.
9262         (_initialize_sol_thread): Adjust.  Remove references to
9263         init_sol_thread_ops and complete_target_initialization.
9264
9265         * windows-nat.c (windows_nat_target): New class.
9266         (windows_fetch_inferior_registers)
9267         (windows_store_inferior_registers, windows_resume, windows_wait)
9268         (windows_attach, windows_detach, windows_pid_to_exec_file)
9269         (windows_files_info, windows_create_inferior)
9270         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
9271         (windows_close, windows_pid_to_str, windows_xfer_partial)
9272         (windows_get_tib_address, windows_get_ada_task_ptid)
9273         (windows_thread_name, windows_thread_alive): Refactor as
9274         windows_nat_target methods.
9275         (do_initial_windows_stuff): Adjust.
9276         (windows_target): Delete function.
9277         (_initialize_windows_nat): Adjust.
9278
9279         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
9280         (darwin_mourn_inferior, darwin_kill_inferior)
9281         (darwin_create_inferior, darwin_attach, darwin_detach)
9282         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
9283         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
9284         (darwin_supports_multi_process): Refactor as darwin_nat_target
9285         methods.
9286         (darwin_resume_to, darwin_files_info): Delete.
9287         (_initialize_darwin_inferior): Rename to ...
9288         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
9289         * darwin-nat.h: Include "inf-child.h".
9290         (darwin_nat_target): New class.
9291         (darwin_complete_target): Delete.
9292         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
9293         (darwin_target): New.
9294         (i386_darwin_fetch_inferior_registers)
9295         (i386_darwin_store_inferior_registers): Refactor as methods of
9296         darwin_nat_target.
9297         (darwin_complete_target): Delete, with ...
9298         (_initialize_i386_darwin_nat): ... bits factored out here.
9299
9300         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
9301         (the_alpha_linux_nat_target): New.
9302         (alpha_linux_register_u_offset): Refactor as
9303         alpha_linux_nat_target method.
9304         (_initialize_alpha_linux_nat): Adjust.
9305         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
9306         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9307         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
9308         methods of linux_nat_trad_target.
9309         (linux_trad_target): Delete.
9310         * linux-nat-trad.h (linux_trad_target): Delete function.
9311         (linux_nat_trad_target): New class.
9312         * mips-linux-nat.c (mips_linux_nat_target): New class.
9313         (super_fetch_registers, super_store_registers, super_close):
9314         Delete.
9315         (the_mips_linux_nat_target): New.
9316         (mips64_linux_regsets_fetch_registers)
9317         (mips64_linux_regsets_store_registers)
9318         (mips64_linux_fetch_registers, mips64_linux_store_registers)
9319         (mips_linux_register_u_offset, mips_linux_read_description)
9320         (mips_linux_can_use_hw_breakpoint)
9321         (mips_linux_stopped_by_watchpoint)
9322         (mips_linux_stopped_data_address)
9323         (mips_linux_region_ok_for_hw_watchpoint)
9324         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
9325         (mips_linux_close): Refactor as methods of mips_linux_nat.
9326         (_initialize_mips_linux_nat): Adjust to C++ification.
9327
9328         * aix-thread.c (aix_thread_target): New class.
9329         (aix_thread_ops): Now an aix_thread_target.
9330         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
9331         (aix_thread_fetch_registers, aix_thread_store_registers)
9332         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
9333         (aix_thread_thread_alive, aix_thread_pid_to_str)
9334         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
9335         Refactor as methods of aix_thread_target.
9336         (init_aix_thread_ops): Delete.
9337         (_initialize_aix_thread): Remove references to init_aix_thread_ops
9338         and complete_target_initialization.
9339         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
9340         (rs6000_nat_target): New class.
9341         (the_rs6000_nat_target): New.
9342         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
9343         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
9344         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
9345         (super_create_inferior): Delete.
9346         (_initialize_rs6000_nat): Adjust to C++ification.
9347
9348         * arm-linux-nat.c (arm_linux_nat_target): New class.
9349         (the_arm_linux_nat_target): New.
9350         (arm_linux_fetch_inferior_registers)
9351         (arm_linux_store_inferior_registers, arm_linux_read_description)
9352         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
9353         (arm_linux_remove_hw_breakpoint)
9354         (arm_linux_region_ok_for_hw_watchpoint)
9355         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
9356         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
9357         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
9358         arm_linux_nat_target.
9359         (_initialize_arm_linux_nat): Adjust to C++ification.
9360
9361         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
9362         (the_aarch64_linux_nat_target): New.
9363         (aarch64_linux_fetch_inferior_registers)
9364         (aarch64_linux_store_inferior_registers)
9365         (aarch64_linux_child_post_startup_inferior)
9366         (aarch64_linux_read_description)
9367         (aarch64_linux_can_use_hw_breakpoint)
9368         (aarch64_linux_insert_hw_breakpoint)
9369         (aarch64_linux_remove_hw_breakpoint)
9370         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
9371         (aarch64_linux_region_ok_for_hw_watchpoint)
9372         (aarch64_linux_stopped_data_address)
9373         (aarch64_linux_stopped_by_watchpoint)
9374         (aarch64_linux_watchpoint_addr_within_range)
9375         (aarch64_linux_can_do_single_step): Refactor as methods of
9376         aarch64_linux_nat_target.
9377         (super_post_startup_inferior): Delete.
9378         (_initialize_aarch64_linux_nat): Adjust to C++ification.
9379
9380         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
9381         (the_hppa_linux_nat_target): New.
9382         (hppa_linux_fetch_inferior_registers)
9383         (hppa_linux_store_inferior_registers): Refactor as methods of
9384         hppa_linux_nat_target.
9385         (_initialize_hppa_linux_nat): Adjust to C++ification.
9386
9387         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
9388         (the_ia64_linux_nat_target): New.
9389         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
9390         (ia64_linux_stopped_data_address)
9391         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
9392         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
9393         ia64_linux_nat_target methods.
9394         (super_xfer_partial): Delete.
9395         (_initialize_ia64_linux_nat): Adjust to C++ification.
9396
9397         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
9398         (the_m32r_linux_nat_target): New.
9399         (m32r_linux_fetch_inferior_registers)
9400         (m32r_linux_store_inferior_registers): Refactor as
9401         m32r_linux_nat_target methods.
9402         (_initialize_m32r_linux_nat): Adjust to C++ification.
9403
9404         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
9405         (the_m68k_linux_nat_target): New.
9406         (m68k_linux_fetch_inferior_registers)
9407         (m68k_linux_store_inferior_registers): Refactor as
9408         m68k_linux_nat_target methods.
9409         (_initialize_m68k_linux_nat): Adjust to C++ification.
9410
9411         * s390-linux-nat.c (s390_linux_nat_target): New class.
9412         (the_s390_linux_nat_target): New.
9413         (s390_linux_fetch_inferior_registers)
9414         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
9415         (s390_insert_watchpoint, s390_remove_watchpoint)
9416         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
9417         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
9418         (s390_auxv_parse, s390_read_description): Refactor as methods of
9419         s390_linux_nat_target.
9420         (_initialize_s390_nat): Adjust to C++ification.
9421
9422         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
9423         (the_sparc_linux_nat_target): New.
9424         (_initialize_sparc_linux_nat): Adjust to C++ification.
9425         * sparc-nat.c (sparc_fetch_inferior_registers)
9426         (sparc_store_inferior_registers): Remove target_ops parameter.
9427         * sparc-nat.h (sparc_fetch_inferior_registers)
9428         (sparc_store_inferior_registers): Remove target_ops parameter.
9429         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
9430         (the_sparc64_linux_nat_target): New.
9431         (_initialize_sparc64_linux_nat): Adjust to C++ification.
9432
9433         * spu-linux-nat.c (spu_linux_nat_target): New class.
9434         (the_spu_linux_nat_target): New.
9435         (spu_child_post_startup_inferior, spu_child_post_attach)
9436         (spu_child_wait, spu_fetch_inferior_registers)
9437         (spu_store_inferior_registers, spu_xfer_partial)
9438         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
9439         methods.
9440         (_initialize_spu_nat): Adjust to C++ification.
9441
9442         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
9443         (the_tilegx_linux_nat_target): New.
9444         (fetch_inferior_registers, store_inferior_registers):
9445         Refactor as methods.
9446         (_initialize_tile_linux_nat): Adjust to C++ification.
9447
9448         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
9449         (the_xtensa_linux_nat_target): New.
9450         (xtensa_linux_fetch_inferior_registers)
9451         (xtensa_linux_store_inferior_registers): Refactor as
9452         xtensa_linux_nat_target methods.
9453         (_initialize_xtensa_linux_nat): Adjust to C++ification.
9454
9455         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
9456         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
9457         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
9458         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
9459         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
9460         (fbsd_stopped_by_sw_breakpoint)
9461         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
9462         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
9463         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
9464         (fbsd_post_startup_inferior, fbsd_post_attach)
9465         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
9466         (fbsd_set_syscall_catchpoint)
9467         (super_xfer_partial, super_resume, super_wait)
9468         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
9469         (fbsd_handle_debug_trap): Remove target_ops parameter.
9470         (fbsd_nat_add_target): Delete.
9471         * fbsd-nat.h: Include "inf-ptrace.h".
9472         (fbsd_nat_add_target): Delete.
9473         (USE_SIGTRAP_SIGINFO): Define.
9474         (fbsd_nat_target): New class.
9475
9476         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
9477         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
9478         (amd64bsd_target): Delete.
9479         * amd64-bsd-nat.h: New file.
9480         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
9481         "x86-bsd-nat.h".
9482         (amd64_fbsd_nat_target): New class.
9483         (the_amd64_fbsd_nat_target): New.
9484         (amd64fbsd_read_description): Refactor as method of
9485         amd64_fbsd_nat_target.
9486         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9487         (_initialize_amd64fbsd_nat): Adjust to C++ification.
9488         * amd64-nat.h (amd64bsd_target): Delete function declaration.
9489         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
9490         (i386bsd_store_inferior_registers): Remove target_ops parameter.
9491         (i386bsd_target): Delete.
9492         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
9493         (i386bsd_fetch_inferior_registers)
9494         (i386bsd_store_inferior_registers): Declare.
9495         (i386_bsd_nat_target): New class.
9496         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
9497         (the_i386_fbsd_nat_target): New.
9498         (i386fbsd_resume, i386fbsd_read_description): Refactor as
9499         i386_fbsd_nat_target methods.
9500         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9501         (_initialize_i386fbsd_nat): Adjust to C++ification.
9502         * x86-bsd-nat.c (super_mourn_inferior): Delete.
9503         (x86bsd_mourn_inferior, x86bsd_target): Delete.
9504         (_initialize_x86_bsd_nat): Adjust to C++ification.
9505         * x86-bsd-nat.h: Include "x86-nat.h".
9506         (x86bsd_target): Delete declaration.
9507         (x86bsd_nat_target): New class.
9508
9509         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
9510         (the_aarch64_fbsd_nat_target): New.
9511         (aarch64_fbsd_fetch_inferior_registers)
9512         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
9513         aarch64_fbsd_nat_target.
9514         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
9515         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
9516         (the_alpha_bsd_nat_target): New.
9517         (alphabsd_fetch_inferior_registers)
9518         (alphabsd_store_inferior_registers): Refactor as
9519         alpha_bsd_nat_target methods.
9520         (_initialize_alphabsd_nat): Refactor as methods of
9521         alpha_bsd_nat_target.
9522         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
9523         (the_amd64_nbsd_nat_target): New.
9524         (_initialize_amd64nbsd_nat): Adjust to C++ification.
9525         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
9526         (the_amd64_obsd_nat_target): New.
9527         (_initialize_amd64obsd_nat): Adjust to C++ification.
9528         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
9529         (the_arm_fbsd_nat_target): New.
9530         (arm_fbsd_fetch_inferior_registers)
9531         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
9532         (_initialize_arm_fbsd_nat): Refactor as methods of
9533         arm_fbsd_nat_target.
9534         (_initialize_arm_fbsd_nat): Adjust to C++ification.
9535         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
9536         (the_arm_netbsd_nat_target): New.
9537         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
9538         arm_netbsd_nat_target.
9539         (_initialize_arm_netbsd_nat): Adjust to C++ification.
9540         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
9541         (the_hppa_nbsd_nat_target): New.
9542         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
9543         hppa_nbsd_nat_target methods.
9544         (_initialize_hppanbsd_nat): Adjust to C++ification.
9545         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
9546         (the_hppa_obsd_nat_target): New.
9547         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
9548         methods of hppa_obsd_nat_target.
9549         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
9550         add_target.
9551         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
9552         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
9553         add_target.
9554         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
9555         (_initialize_i386obsd_nat): Use add_target.
9556         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
9557         (the_m68k_bsd_nat_target): New.
9558         (m68kbsd_fetch_inferior_registers)
9559         (m68kbsd_store_inferior_registers): Refactor as methods of
9560         m68k_bsd_nat_target.
9561         (_initialize_m68kbsd_nat): Adjust to C++ification.
9562         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
9563         (the_mips_fbsd_nat_target): New.
9564         (mips_fbsd_fetch_inferior_registers)
9565         (mips_fbsd_store_inferior_registers): Refactor as methods of
9566         mips_fbsd_nat_target.
9567         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
9568         add_target.
9569         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
9570         (the_mips_nbsd_nat_target): New.
9571         (mipsnbsd_fetch_inferior_registers)
9572         (mipsnbsd_store_inferior_registers): Refactor as methods of
9573         mips_nbsd_nat_target.
9574         (_initialize_mipsnbsd_nat): Adjust to C++ification.
9575         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
9576         (the_mips64_obsd_nat_target): New.
9577         (mips64obsd_fetch_inferior_registers)
9578         (mips64obsd_store_inferior_registers): Refactor as methods of
9579         mips64_obsd_nat_target.
9580         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
9581         add_target.
9582         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
9583         nbsd_nat_target.
9584         * nbsd-nat.h: Include "inf-ptrace.h".
9585         (nbsd_nat_target): New class.
9586         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
9587         (obsd_wait): Refactor as methods of obsd_nat_target.
9588         (obsd_add_target): Delete.
9589         * obsd-nat.h: Include "inf-ptrace.h".
9590         (obsd_nat_target): New class.
9591         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
9592         (the_ppc_fbsd_nat_target): New.
9593         (ppcfbsd_fetch_inferior_registers)
9594         (ppcfbsd_store_inferior_registers): Refactor as methods of
9595         ppc_fbsd_nat_target.
9596         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
9597         add_target.
9598         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
9599         (the_ppc_nbsd_nat_target): New.
9600         (ppcnbsd_fetch_inferior_registers)
9601         (ppcnbsd_store_inferior_registers): Refactor as methods of
9602         ppc_nbsd_nat_target.
9603         (_initialize_ppcnbsd_nat): Adjust to C++ification.
9604         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
9605         (the_ppc_obsd_nat_target): New.
9606         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
9607         methods of ppc_obsd_nat_target.
9608         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
9609         add_target.
9610         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
9611         (the_sh_nbsd_nat_target): New.
9612         (shnbsd_fetch_inferior_registers)
9613         (shnbsd_store_inferior_registers): Refactor as methods of
9614         sh_nbsd_nat_target.
9615         (_initialize_shnbsd_nat): Adjust to C++ification.
9616         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
9617         (inf_ptrace_xfer_partial): Delete.
9618         (sparc_xfer_partial, sparc_target): Delete.
9619         * sparc-nat.h (sparc_fetch_inferior_registers)
9620         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
9621         (sparc_target): Delete function declaration.
9622         (sparc_target): New template class.
9623         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
9624         (_initialize_sparcnbsd_nat): Adjust to C++ification.
9625         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
9626         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
9627         add_target.
9628         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
9629         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
9630         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
9631         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
9632         add_target.
9633         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
9634         (the_vax_bsd_nat_target): New.
9635         (vaxbsd_fetch_inferior_registers)
9636         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
9637         methods.
9638         (_initialize_vaxbsd_nat): Adjust to C++ification.
9639
9640         * bsd-kvm.c (bsd_kvm_target): New class.
9641         (bsd_kvm_ops): Now a bsd_kvm_target.
9642         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
9643         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
9644         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
9645         bsd_kvm_target.
9646         (bsd_kvm_return_one): Delete.
9647         (bsd_kvm_add_target): Adjust to C++ification.
9648
9649         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
9650         (nto_procfs_target_procfs): New classes.
9651         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
9652         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
9653         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
9654         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
9655         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
9656         (procfs_remove_hw_breakpoint, procfs_resume)
9657         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
9658         (procfs_kill_inferior, procfs_store_registers)
9659         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
9660         as methods of nto_procfs_target.
9661         (nto_procfs_ops): Now an nto_procfs_target_procfs.
9662         (nto_native_ops): Delete.
9663         (procfs_open, procfs_native_open): Delete.
9664         (nto_native_ops): Now an nto_procfs_target_native.
9665         (init_procfs_targets): Adjust to C++ification.
9666         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
9667         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
9668         Refactor as methods of nto_procfs_target.
9669
9670         * go32-nat.c (go32_nat_target): New class.
9671         (the_go32_nat_target): New.
9672         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
9673         (go32_store_registers, go32_xfer_partial, go32_files_info)
9674         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
9675         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
9676         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
9677         (go32_pid_to_str): Refactor as methods of go32_nat_target.
9678         (go32_target): Delete.
9679         (_initialize_go32_nat): Adjust to C++ification.
9680
9681         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
9682         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
9683         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
9684         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
9685         gnu_nat_target.
9686         (gnu_target): Delete.
9687         * gnu-nat.h (gnu_target): Delete.
9688         (gnu_nat_target): New class.
9689         * i386-gnu-nat.c (gnu_base_target): New.
9690         (i386_gnu_nat_target): New class.
9691         (the_i386_gnu_nat_target): New.
9692         (_initialize_i386gnu_nat): Adjust to C++ification.
9693
9694 2018-05-02  Pedro Alves  <palves@redhat.com>
9695
9696         * bfd-target.c (target_bfd_xclose): Rename to ...
9697         (target_bfd_close): ... this.
9698         (target_bfd_reopen): Adjust.
9699         * target.c (target_close): Remove references to to_xclose.
9700         * target.h (target_ops::to_xclose): Delete.
9701         (target_ops::to_close): Update comments.
9702
9703 2018-05-02  Pedro Alves  <palves@redhat.com>
9704
9705         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
9706         "linux-nat.h".
9707         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
9708         * inf-ptrace.c (inf_ptrace_register_u_offset)
9709         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9710         (inf_ptrace_store_register, inf_ptrace_store_registers)
9711         (inf_ptrace_trad_target): Move to ...
9712         * linux-nat-trad.c: ... this new file.
9713         * linux-nat-trad.h: New file.
9714         * linux-nat.c (linux_target_install_ops): Make extern.
9715         (linux_trad_target): Delete.
9716         * linux-nat.h (linux_trad_target): Delete declaration.
9717         (linux_target_install_ops): Declare.
9718         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
9719         "linux-nat.h".
9720
9721 2018-05-02  Pedro Alves  <palves@redhat.com>
9722
9723         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9724         procfs_target/add_target here.
9725         * procfs.c (procfs_target): Make static.
9726         (_initialize_procfs): Call add_target here.
9727         * procfs.h (struct target_ops): Remove forward declaration.
9728         (procfs_target): Remove declaration.
9729         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
9730
9731 2018-05-02  Pedro Alves  <palves@redhat.com>
9732
9733         * procfs.c (procfs_stopped_by_watchpoint)
9734         (procfs_insert_watchpoint, procfs_remove_watchpoint)
9735         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
9736         Forward declare.
9737         (procfs_use_watchpoints): Delete, move contents...
9738         (procfs_target): ... here.
9739         * procfs.h (procfs_use_watchpoints): Delete declaration.
9740         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9741         procfs_use_watchpoints.
9742         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
9743         procfs_use_watchpoints.
9744
9745 2018-05-02  Tom Tromey  <tom@tromey.com>
9746
9747         PR python/20084:
9748         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
9749         and var_zuinteger_unlimited.
9750         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
9751         and PARAM_ZUINTEGER_UNLIMITED.
9752         (set_parameter_value): Handle var_zuinteger and
9753         var_zuinteger_unlimited.
9754         (add_setshow_generic): Likewise.
9755         (parmpy_init): Likewise.
9756
9757 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
9758
9759         PR rust/23124
9760         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
9761         pointer is not null before dereferencing it.
9762
9763 2018-04-30  Tom Tromey  <tom@tromey.com>
9764
9765         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
9766         is_mi_like_p.
9767
9768 2018-04-30  Tom Tromey  <tom@tromey.com>
9769
9770         * breakpoint.c (mention): Remove use of is_mi_like_p.
9771         (print_mention_ranged_breakpoint): Likewise.
9772         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
9773         of is_mi_like_p.
9774
9775 2018-04-30  Tom Tromey  <tom@tromey.com>
9776
9777         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
9778
9779 2018-04-30  Tom Tromey  <tom@tromey.com>
9780
9781         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
9782         (info_spu_event_command): Remove some uses of is_mi_like_p.
9783
9784 2018-04-30  Tom Tromey  <tom@tromey.com>
9785
9786         * python/py-framefilter.c (py_print_single_arg)
9787         (enumerate_locals, py_print_args, py_print_frame): Remove some
9788         uses of is_mi_like_p.
9789
9790 2018-04-30  Tom Tromey  <tom@tromey.com>
9791
9792         * ui-out.c: Update.
9793         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
9794         * ui-out.h (ui_out::is_mi_like_p): Now const.
9795         (ui_out::do_is_mi_like_p): Now const.
9796         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
9797
9798 2018-04-30  Tom Tromey  <tom@tromey.com>
9799
9800         * varobj.c (varobj_set_visualizer): Use new_reference.
9801         * python/python.c (gdbpy_decode_line): Use new_reference.
9802         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
9803         new_reference.
9804
9805 2018-04-30  Tom Tromey  <tom@tromey.com>
9806
9807         * varobj.c (install_new_value): Use new_reference.
9808         * value.h (value_incref): Return void.  Swap intro comment with
9809         value_decref.
9810         * value.c (set_value_parent): Use new_reference.
9811         (value_incref): Return void.  Update intro comment.
9812         (release_value): Use new_reference.
9813         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
9814
9815 2018-04-30  Tom Tromey  <tom@tromey.com>
9816
9817         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
9818         * gdb_bfd.h (new_bfd_ref): Remove.
9819         (gdb_bfd_open): Update comment.
9820         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
9821         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
9822         (gdb_bfd_fdopenr): Use new_reference.
9823         * exec.c (exec_file_attach): Use new_reference.
9824
9825 2018-04-30  Tom Tromey  <tom@tromey.com>
9826
9827         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
9828         method.
9829
9830 2018-04-30  Tom Tromey  <tom@tromey.com>
9831
9832         * jit.c (jit_read_code_entry): Use type_align.
9833         * i386-tdep.c (i386_gdbarch_init): Don't call
9834         set_gdbarch_long_long_align_bit.
9835         * gdbarch.sh: Remove long_long_align_bit.
9836         * gdbarch.c, gdbarch.h: Rebuild.
9837         * arc-tdep.c (arc_type_align): New function.
9838         (arc_gdbarch_init): Use arc_type_align.  Don't call
9839         set_gdbarch_long_long_align_bit.
9840
9841 2018-04-30  Tom Tromey  <tom@tromey.com>
9842
9843         * rust-lang.c (rust_type_alignment): Remove.
9844         (rust_composite_type): Use type_align.
9845
9846 2018-04-30  Tom Tromey  <tom@tromey.com>
9847
9848         * NEWS: Mention Type.align.
9849         * python/py-type.c (typy_get_alignof): New function.
9850         (type_object_getset): Add "alignof".
9851
9852 2018-04-30  Tom Tromey  <tom@tromey.com>
9853
9854         PR exp/17095:
9855         * NEWS: Update.
9856         * std-operator.def (UNOP_ALIGNOF): New operator.
9857         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
9858         New.
9859         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
9860         * c-lang.c (c_op_print_tab): Add alignof.
9861         * c-exp.y (ALIGNOF): New token.
9862         (exp): Add "ALIGNOF" production.
9863         (ident_tokens): Add _Alignof and alignof.
9864
9865 2018-04-30  Tom Tromey  <tom@tromey.com>
9866
9867         * i386-tdep.c (i386_type_align): New function.
9868         (i386_gdbarch_init): Update.
9869         * gdbarch.sh (type_align): New method.
9870         * gdbarch.c, gdbarch.h: Rebuild.
9871         * arch-utils.h (default_type_align): Declare.
9872         * arch-utils.c (default_type_align): New function.
9873         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
9874         (struct type) <align_log2>: New field.
9875         <instance_flags>: Now a bitfield.
9876         (TYPE_RAW_ALIGN): New macro.
9877         (type_align, type_raw_align, set_type_align): Declare.
9878         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
9879         functions.
9880         * dwarf2read.c (quirk_rust_enum): Set type alignment.
9881         (get_alignment, maybe_set_alignment): New functions.
9882         (read_structure_type, read_enumeration_type, read_array_type)
9883         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
9884         (read_subrange_type, read_base_type): Set type alignment.
9885
9886 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
9887
9888         * dwarf2read.c (read_index_from_section): Use bool.
9889
9890 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
9891
9892         PR gdb/22950
9893         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
9894         with #ifdef.
9895
9896 2018-04-29  John Reiser  <jreiser@BitWagon.com>
9897
9898         PR build/22873
9899         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
9900         last step, and do it atomically.
9901
9902 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
9903
9904         * compile/compile-c-types.c (convert_int, convert_float):
9905         Update for C FE v1.
9906
9907 2018-04-27  Tom Tromey  <tom@tromey.com>
9908
9909         PR rust/22545:
9910         * rust-lang.c (rust_inclusive_range_type_p): New function.
9911         (rust_range): Handle inclusive ranges.
9912         (rust_compute_range): Likewise.
9913         * rust-exp.y (struct rust_op) <inclusive>: New field.
9914         (DOTDOTEQ): New constant.
9915         (range_expr): Add "..=" productions.
9916         (operator_tokens): Add "..=" token.
9917         (ast_range): Add "inclusive" parameter.
9918         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
9919         ranges.
9920         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
9921         bounds values.
9922         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
9923         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
9924         Update comments.
9925         * expprint.c (print_subexp_standard): Handle new bounds values.
9926         (dump_subexp_body_standard): Likewise.
9927
9928 2018-04-27  Tom Tromey  <tom@tromey.com>
9929
9930         * configure: Rebuild.
9931         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
9932         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
9933         "OVERRIDE".
9934         (class symbol_needs_eval_context): Likewise.
9935         * dwarf2read.c (mock_mapped_index::symbol_name_count)
9936         (mock_mapped_index::symbol_name_at): Use "override".  Remove
9937         "virtual".
9938         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
9939         "override".
9940         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
9941         * aarch64-tdep.c (instruction_reader::read): Use "override".
9942         (instruction_reader_test::read): Likewise.
9943         * arm-tdep.c (instruction_reader::read): Use "override".
9944         (instruction_reader_thumb::read): Likewise.
9945
9946 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
9947
9948         PR remote/9665
9949         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
9950         instead of remote_send.
9951         (remote_send): Remove.
9952
9953 2018-04-26  Pedro Alves  <palves@redhat.com>
9954
9955         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
9956         find_function_start_sal instead of find_pc_line.
9957
9958 2018-04-26  Pedro Alves  <palves@redhat.com>
9959
9960         * breakpoint.c (set_breakpoint_location_function): Handle
9961         mst_data_gnu_ifunc.
9962         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
9963         * elfread.c (elf_symtab_read): Give data symbols with
9964         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
9965         (elf_rel_plt_read): Update comment.
9966         * linespec.c (convert_linespec_to_sals): Handle
9967         mst_data_gnu_ifunc.
9968         (minsym_found): Handle mst_data_gnu_ifunc.
9969         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
9970         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
9971         * parse.c (find_minsym_type_and_address): Handle
9972         mst_data_gnu_ifunc.
9973         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
9974         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
9975         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
9976         comment.
9977         <mst_data_gnu_ifunc>: New enumerator.
9978
9979 2018-04-26  Pedro Alves  <palves@redhat.com>
9980
9981         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
9982         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
9983         'want_trampoline' parameter by a lookup_msym_prefer parameter.
9984         Handle it.
9985         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
9986         (lookup_minimal_symbol_by_pc): Adjust.
9987         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
9988         (lookup_solib_trampoline_symbol_by_pc): Adjust.
9989         * minsyms.h (lookup_msym_prefer): New enum.
9990         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
9991         parameter by a lookup_msym_prefer parameter.
9992
9993 2018-04-26  Pedro Alves  <palves@redhat.com>
9994
9995         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
9996         ends in "@plt" instead of looking at the symbol's section.
9997
9998 2018-04-26  Pedro Alves  <palves@redhat.com>
9999
10000         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10001         all references.
10002         (find_pc_partial_function_gnu_ifunc): Rename to ...
10003         (find_pc_partial_function): ... this, and remove references to
10004         'is_gnu_ifunc_p'.
10005         (find_pc_partial_function): Delete old implementation.
10006         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10007
10008 2018-04-26  Pedro Alves  <palves@redhat.com>
10009
10010         * linespec.c (struct bound_minimal_symbol_search_key): New.
10011         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10012         skip first line if we found a GNU ifunc minimal symbol by name.
10013         (compare_msymbols): Change parameters to work with a destructured
10014         lhs minsym.
10015         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10016         functions.
10017
10018 2018-04-26  Pedro Alves  <palves@redhat.com>
10019
10020         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10021         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10022         address/name.
10023         (add_location_to_breakpoint): Store the minsym and the objfile in
10024         the breakpoint location.
10025         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10026         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10027         Record the minsym in the sal.
10028         * symtab.h (symtab_and_line) <msymbol>: New field.
10029
10030 2018-04-26  Pedro Alves  <palves@redhat.com>
10031
10032         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10033         unless we actually resolved the ifunc.
10034
10035 2018-04-26  Pedro Alves  <palves@redhat.com>
10036
10037         * c-exp.y (variable production): Prefer ifunc minsyms over
10038         regular function symbols.
10039         * symtab.c (find_gnu_ifunc): New function.
10040         * minsyms.h (lookup_msym_prefer): New enum.
10041         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10042         parameter by a lookup_msym_prefer parameter.
10043         * symtab.h (find_gnu_ifunc): New declaration.
10044
10045 2018-04-26  Pedro Alves  <palves@redhat.com>
10046
10047         * blockframe.c (find_gnu_ifunc_target_type): New function.
10048         (find_function_type): New.
10049         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10050         return a value with a memory address.
10051         (eval_call): For calls to GNU ifunc functions, try to find the
10052         type of the target function from the type that the resolver
10053         returns.
10054         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10055         symbols.
10056         * infcall.c (find_function_return_type): Delete.
10057         (find_function_addr): Add 'function_type' parameter.  For calls to
10058         GNU ifunc functions, try to find the type of the target function
10059         from the type that the resolver returns, and return it via
10060         FUNCTION_TYPE.
10061         (call_function_by_hand_dummy): Adjust to use the function type
10062         returned by find_function_addr.
10063         (find_function_addr): Add 'function_type' parameter and move
10064         description here.
10065         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10066         declarations.
10067
10068 2018-04-26  Pedro Alves  <palves@redhat.com>
10069
10070         * c-exp.y (variable production): Skip finding an alias for ifunc
10071         symbols.
10072
10073 2018-04-26  Pedro Alves  <palves@redhat.com>
10074
10075         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10076
10077 2018-04-25  Pedro Alves  <palves@redhat.com>
10078
10079         * infcmd.c (kill_command): Print the pid as string, not the whole
10080         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10081         message.
10082         * remote.c (remote_detach_1): Print the pid as string, not the
10083         whole thread's ptid.
10084
10085 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10086             Sergio Durigan Junior  <sergiodj@redhat.com>
10087             Pedro Alves  <palves@redhat.com>
10088
10089         * infcmd.c (kill_command): Print message when inferior has
10090         been killed.
10091         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10092         '1'.
10093         (add_inferior): Improve message printed when
10094         'print_inferior_events' is on.
10095         (exit_inferior): Remove message printed when
10096         'print_inferior_events' is on.
10097         (detach_inferior): Improve message printed when
10098         'print_inferior_events' is on.
10099         (initialize_inferiors): Use 'add_inferior_silent' to set
10100         'current_inferior_'.
10101         * inferior.h (print_inferior_events): Declare here as
10102         'extern'.
10103         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10104         '[Detaching...]' messages when 'print_inferior_events' is on.
10105         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10106         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10107         'Detaching after fork from child...', replace it by '... from
10108         parent...'.
10109         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10110         prefix/suffix when printing 'Detaching...' messages.  Print
10111         them when 'print_inferior_events' is on.
10112         * remote.c (remote_detach_1): Print message when detaching
10113         from inferior and '!is_fork_parent'.
10114
10115 2018-04-24  Tom Tromey  <tom@tromey.com>
10116
10117         * cli-out.h: Reindent.
10118
10119 2018-04-24  Tom Tromey  <tom@tromey.com>
10120
10121         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10122         (cli_ui_out::do_field_string): Use fputs_filtered.
10123         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10124
10125 2018-04-23  Tom Tromey  <tom@tromey.com>
10126
10127         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10128         gdb::unique_xmalloc_ptr.
10129
10130 2018-04-23  Tom Tromey  <tom@tromey.com>
10131
10132         * configure: Rebuild.
10133
10134 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10135
10136         PR gdb/23095
10137         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10138         prepare_for_testing.  Set normal_bp to r_debug_state if target
10139         is bsd.
10140
10141 2018-04-21  Pedro Alves  <palves@redhat.com>
10142             Rajendra SY  <rajendra.sy@gmail.com>
10143
10144         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10145         * remote.c (extended_remote_attach): In all-stop mode, mark the
10146         thread as executing.
10147
10148 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10149
10150         * thread.c (thread_apply_all_command): Fix comment.
10151         (thread_command): Fix comment.
10152
10153 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10154
10155         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10156         parameter.
10157         * features/aarch64-core.c (create_feature_aarch64_core):
10158         Regenerate.
10159         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10160         Likewise.
10161         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10162         Likewise.
10163         * features/i386/32bit-avx512.c
10164         (create_feature_i386_32bit_avx512): Likewise.
10165         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10166         Likewise.
10167         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10168         Likewise.
10169         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10170         Likewise.
10171         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10172         Likewise.
10173         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10174         Likewise.
10175         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10176         Likewise.
10177         * features/i386/64bit-avx512.c
10178         (create_feature_i386_64bit_avx512): Likewise.
10179         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10180         Likewise.
10181         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10182         Likewise.
10183         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10184         Likewise.
10185         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10186         Likewise.
10187         * features/i386/64bit-segments.c
10188         (create_feature_i386_64bit_segments): Likewise.
10189         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10190         Likewise.
10191         * features/i386/x32-core.c
10192         (create_feature_i386_x32_core): Likewise.
10193         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10194         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10195         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10196         * target-descriptions.c: In generated code, don't pass xml
10197         filename.
10198
10199 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10200
10201         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10202         (print_xml_feature::visit_post): Likewise.
10203         (print_xml_feature::visit): Likewise.
10204         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10205         (print_xml_feature): Add new class.
10206         * regformats/regdat.sh: Null xmltarget on feature targets.
10207         * target-descriptions.c (struct target_desc): Add xmltarget.
10208         (maintenance_check_tdesc_xml_convert): Add unittest function.
10209         (tdesc_get_features_xml): Add function to get xml.
10210         (maintenance_check_xml_descriptions): Test xml generation.
10211         * xml-tdesc.c (string_read_description_xml): Add function.
10212         * xml-tdesc.h (string_read_description_xml): Add declaration.
10213
10214 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10215
10216         * features/Makefile: Add feature marker to targets with new style
10217         target descriptions.
10218         * regformats/aarch64.dat: Regenerate.
10219         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10220         * regformats/i386/amd64-avx-linux.dat: Likewise.
10221         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10222         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10223         * regformats/i386/amd64-linux.dat: Likewise.
10224         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10225         * regformats/i386/amd64.dat: Likewise.
10226         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10227         * regformats/i386/i386-avx-linux.dat: Likewise.
10228         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10229         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10230         * regformats/i386/i386-linux.dat: Likewise.
10231         * regformats/i386/i386-mmx-linux.dat: Likewise.
10232         * regformats/i386/i386-mpx-linux.dat: Likewise.
10233         * regformats/i386/i386.dat: Likewise.
10234         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10235         * regformats/i386/x32-avx-linux.dat: Likewise.
10236         * regformats/i386/x32-linux.dat: Likewise.
10237         * regformats/tic6x-c62x-linux.dat: Likewise.
10238         * regformats/tic6x-c64x-linux.dat: Likewise.
10239         * regformats/tic6x-c64xp-linux.dat: Likewise.
10240         * regformats/regdat.sh: Parse feature marker.
10241
10242 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10243
10244         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
10245         (tdesc_osabi_name): Likewise.
10246         * target-descriptions.c (tdesc_architecture_name): Add new
10247         function.
10248         (tdesc_osabi_name): Likewise.
10249
10250 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10251
10252         * common/tdesc.c (tdesc_predefined_type): Move to here.
10253         (tdesc_named_type): Likewise.
10254         (tdesc_create_vector): Likewise.
10255         (tdesc_create_struct): Likewise.
10256         (tdesc_set_struct_size): Likewise.
10257         (tdesc_create_union): Likewise.
10258         (tdesc_create_flags): Likewise.
10259         (tdesc_create_enum): Likewise.
10260         (tdesc_add_field): Likewise.
10261         (tdesc_add_typed_bitfield): Likewise.
10262         (tdesc_add_bitfield): Likewise.
10263         (tdesc_add_flag): Likewise.
10264         (tdesc_add_enum_value): Likewise.
10265         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
10266         (struct tdesc_type_vector): Likewise.
10267         (struct tdesc_type_field): Likewise.
10268         (struct tdesc_type_with_fields): Likewise.
10269         (tdesc_create_enum): Add declaration.
10270         (tdesc_add_typed_bitfield): Likewise.
10271         (tdesc_add_enum_value): Likewise.
10272         * target-descriptions.c (tdesc_type_field): Move from here.
10273         (tdesc_type_builtin): Likewise.
10274         (tdesc_type_vector): Likewise.
10275         (tdesc_type_with_fields): Likewise.
10276         (tdesc_predefined_types): Likewise.
10277         (tdesc_named_type): Likewise.
10278         (tdesc_create_vector): Likewise.
10279         (tdesc_create_struct): Likewise.
10280         (tdesc_set_struct_size): Likewise.
10281         (tdesc_create_union): Likewise.
10282         (tdesc_create_flags): Likewise.
10283         (tdesc_create_enum): Likewise.
10284         (tdesc_add_field): Likewise.
10285         (tdesc_add_typed_bitfield): Likewise.
10286         (tdesc_add_bitfield): Likewise.
10287         (tdesc_add_flag): Likewise.
10288         (tdesc_add_enum_value): Likewise.
10289         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
10290         (tdesc_add_typed_bitfield): Likewise.
10291         (tdesc_add_enum_value): Likewise.
10292
10293 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10294
10295         * common/tdesc.c (tdesc_feature::accept): Move to here.
10296         (tdesc_feature::operator==): Likewise.
10297         (tdesc_create_reg): Likewise.
10298         * common/tdesc.h (tdesc_type_kind): Likewise.
10299         (struct tdesc_type): Likewise.
10300         (struct tdesc_feature): Likewise.
10301         * regformats/regdat.sh: Create a feature.
10302         * target-descriptions.c (tdesc_type_kind): Move from here.
10303         (tdesc_type): Likewise.
10304         (tdesc_type_up): Likewise.
10305         (tdesc_feature): Likewise.
10306         (tdesc_create_reg): Likewise.
10307
10308 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10309
10310         * Makefile.in: Add arch/tdesc.c
10311         * common/tdesc.c: New file.
10312         * common/tdesc.h (tdesc_element_visitor): Move to here.
10313         (tdesc_element): Likewise.
10314         (tdesc_reg): Likewise.
10315         (tdesc_reg_up): Likewise.
10316         * regformats/regdef.h (reg): Add offset to constructors.
10317         * target-descriptions.c (tdesc_element_visitor): Move from here.
10318         (tdesc_element): Likewise.
10319         (tdesc_reg): Likewise.
10320         (tdesc_reg_up): Likewise.
10321
10322 2018-04-17  Tom Tromey  <tom@tromey.com>
10323
10324         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
10325         discriminant field.
10326
10327 2018-04-17  Tom Tromey  <tom@tromey.com>
10328
10329         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
10330
10331 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10332
10333         * symtab.c (print_symbol_info): Skip printing filename and line
10334         number when `last' is NULL.
10335         (symtab_symbol_info): Use empty string instead of NULL for first
10336         invocation of print_symbol_info.
10337         (rbreak_command): Pass NULL to `last' parameter of
10338         print_symbol_info.
10339
10340 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
10341
10342         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
10343         instead of nullptr.
10344
10345 2018-04-16  Pedro Alves  <palves@redhat.com>
10346
10347         * MAINTAINERS (sh): Remove.
10348         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
10349         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
10350         (ALLDEPFILES): Remove sh64-tdep.c.
10351         * NEWS: Mentions that support for SH-5/SH64 is removed.
10352         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
10353         (sh*-*-openbsd*): Ditto.
10354         (sh64-*-elf*): Remove.
10355         (sh*): Remove.
10356         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
10357         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
10358         * sh-tdep.c: No longer include "sh64-tdep.h".
10359         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
10360         * sh64-tdep.c, sh64-tdep.h: Remove files.
10361
10362 2018-04-16  Pedro Alves  <palves@redhat.com>
10363
10364         * MAINTAINERS: Remove m88k.
10365         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
10366         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
10367         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
10368         * NEWS: Mention that support for m88k was removed.
10369         * configure.host (m88*-*-*): Remove support.
10370         * configure.nat (m88k-*-*): Remove support.
10371         * configure.tgt (m88*-*-openbsd*): Remove.
10372         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
10373
10374 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
10375
10376         * configure.tgt (x86_tobjs): New variable.
10377         (amd64_tobjs, i386_tobjs): Use it.
10378
10379 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10380
10381         * symtab.c (print_symbol_info): Precede the symbol definition by
10382         the line number when available.
10383         * NEWS: Advertise this enhancement.
10384
10385 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10386
10387         * NEWS (New options): announce set/show record btrace cpu.
10388         * btrace.c: Include record-btrace.h.
10389         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
10390         the vendor is unknown.
10391         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
10392         Maybe overwrite the btrace configuration's cpu.
10393         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
10394         (btrace_fetch): Add cpu parameter.  Update callers.
10395         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
10396         Maybe overwrite the btrace configuration's cpu.  Skip enabling
10397         errata workarounds if the vendor is unknown.
10398         * python/py-record-btrace.c: Include record-btrace.h.
10399         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
10400         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
10401         * record-btrace.c (record_btrace_cpu_state_kind): New.
10402         (record_btrace_cpu): New.
10403         (set_record_btrace_cpu_cmdlist): New.
10404         (record_btrace_get_cpu): New.
10405         (require_btrace_thread, record_btrace_info)
10406         (record_btrace_resume_thread): Call record_btrace_get_cpu.
10407         (cmd_set_record_btrace_cpu_none): New.
10408         (cmd_set_record_btrace_cpu_auto): New.
10409         (cmd_set_record_btrace_cpu): New.
10410         (cmd_show_record_btrace_cpu): New.
10411         (_initialize_record_btrace): Initialize set/show record btrace cpu
10412         commands.
10413         * record-btrace.h (record_btrace_get_cpu): New.
10414
10415 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10416
10417         * record.c (set_record_command): Fix typo in message.
10418
10419 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10420
10421         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
10422
10423 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10424
10425         * infrun.c (process_event_stop_test): Call
10426         gdbarch_in_indirect_branch_thunk.
10427         * gdbarch.sh (in_indirect_branch_thunk): New.
10428         * gdbarch.c: Regenerated.
10429         * gdbarch.h: Regenerated.
10430         * x86-tdep.h: New.
10431         * x86-tdep.c: New.
10432         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
10433         (HFILES_NO_SRCDIR): Add x86-tdep.h.
10434         (ALLDEPFILES): Add x86-tdep.c.
10435         * arch-utils.h (default_in_indirect_branch_thunk): New.
10436         * arch-utils.c (default_in_indirect_branch_thunk): New.
10437         * i386-tdep: Include x86-tdep.h.
10438         (i386_in_indirect_branch_thunk): New.
10439         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
10440         function.
10441         * amd64-tdep: Include x86-tdep.h.
10442         (amd64_in_indirect_branch_thunk): New.
10443         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
10444
10445 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
10446
10447         PR gdb/23053
10448         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
10449         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
10450         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
10451         regression.
10452
10453 2018-04-12  Tom Tromey  <tom@tromey.com>
10454
10455         * rust-lang.c (rust_print_struct_def): Remove univariant code.
10456         (rust_evaluate_subexp): Likewise.
10457
10458 2018-04-12  Pedro Alves  <palves@redhat.com>
10459
10460         * procfs.c (procfs_detach): Make forward declaration's prototype
10461         match definition's protototype.
10462         (proc_get_LDT_entry): Remove stale do_cleanups call.
10463
10464 2018-04-12  Pedro Alves  <palves@redhat.com>
10465
10466         * target.h (target_ops::to_has_exited): Delete.
10467         (target_has_exited): Delete.
10468         * target-delegates.c: Regenerate.
10469
10470 2018-04-11  Pedro Alves  <palves@redhat.com>
10471
10472         * target.c (fileio_fh_t::t): Add comment.
10473         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10474         (target_fileio_close): Handle a NULL target.
10475         (invalidate_fileio_fh): New.
10476         (target_close): Call it.
10477         * remote.c (remote_hostio_send_command): No longer check whether
10478         remote_desc is open.
10479
10480 2018-04-11  Pedro Alves  <palves@redhat.com>
10481
10482         * target.c (fileio_fh_t): Make it a named struct instead of a
10483         typedef.
10484         (fileio_fh_t::is_closed): New method.
10485         (DEF_VEC_O (fileio_fh_t)): Remove.
10486         (fileio_fhandles): Now a std::vector.
10487         (is_closed_fileio_fh): Delete.
10488         (acquire_fileio_fd): Adjust.  Rename parameters.
10489         (release_fileio_fd): Adjust.
10490         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
10491         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10492         (target_fileio_close): Adjust.
10493
10494 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
10495
10496         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
10497         index.
10498
10499 2018-04-10  Pedro Alves  <palves@redhat.com>
10500
10501         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
10502         (scoped_finish_thread_state): New class.
10503         * infcmd.c (run_command_1): Use it instead of finish_thread_state
10504         cleanup.
10505         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
10506         (fetch_inferior_event, normal_stop): Likewise.
10507         * thread.c (finish_thread_state_cleanup): Delete.
10508
10509 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10510             Pedro Alves  <palves@redhat.com>
10511
10512         * value.c: Include "selftest.h" and "common/array-view.h".
10513         (struct range) <operator ==>: New.
10514         (test_ranges_contain): New.
10515         (check_ranges_vector): New.
10516         (test_insert_into_bit_range_vector): New.
10517         (_initialize_values): Register selftests.
10518         * common/array-view.h (operator==, operator!=): New.
10519
10520 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10521
10522         * common/gdb_vecs.h (unordered_remove): Add overload that takes
10523         an iterator.
10524         * inline-frame.c: Include <algorithm>.
10525         (struct inline_state): Add constructor.
10526         (inline_state_s): Remove.
10527         (DEF_VEC_O(inline_state_s)): Remove.
10528         (inline_states): Change type to std::vector.
10529         (find_inline_frame_state): Adjust to std::vector.
10530         (allocate_inline_frame_state): Remove.
10531         (clear_inline_frame_state): Adjust to std::vector.
10532         (skip_inline_frames): Adjust to std::vector.
10533
10534 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10535
10536         * tracepoint.h (struct trace_state_variable): Add constructor.
10537         <name>: Change type to std::string.
10538         * tracepoint.c (tsv_s): Remove.
10539         (DEF_VEC_O(tsv_s)): Remove.
10540         (tvariables): Change to std::vector.
10541         (create_trace_state_variable): Adjust to std::vector.
10542         (find_trace_state_variable): Likewise.
10543         (find_trace_state_variable_by_number): Likewise.
10544         (delete_trace_state_variable): Likewise.
10545         (trace_variable_command): Adjust to std::string.
10546         (delete_trace_variable_command): Likewise.
10547         (tvariables_info_1): Adjust to std::vector.
10548         (save_trace_state_variables): Likewise.
10549         (start_tracing): Likewise.
10550         (merge_uploaded_trace_state_variables): Adjust to std::vector
10551         and std::string.
10552         * target.h (struct target_ops)
10553         <to_download_trace_state_variable>: Pass reference to
10554         trace_state_variable.
10555         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
10556         * target-delegates.c: Re-generate.
10557         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
10558         (mi_tsv_deleted): Likewise.
10559         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
10560         * remote.c (remote_download_trace_state_variable): Change
10561         pointer to reference and adjust.
10562         * make-target-delegates (parse_argtypes): Handle references.
10563         (write_function_header): Likewise.
10564         (munge_type): Likewise.
10565
10566 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10567
10568         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10569         string_view-selftests.c.
10570         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
10571         testsuite.
10572         * unittests/basic_string_view/cons/char/1.cc: Likewise.
10573         * unittests/basic_string_view/cons/char/2.cc: Likewise.
10574         * unittests/basic_string_view/cons/char/3.cc: Likewise.
10575         * unittests/basic_string_view/element_access/char/1.cc:
10576         Likewise.
10577         * unittests/basic_string_view/element_access/char/empty.cc:
10578         Likewise.
10579         * unittests/basic_string_view/element_access/char/front_back.cc:
10580         Likewise.
10581         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
10582         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
10583         Likewise.
10584         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
10585         Likewise.
10586         * unittests/basic_string_view/modifiers/swap/char/1.cc:
10587         Likewise.
10588         * unittests/basic_string_view/operations/compare/char/1.cc:
10589         Likewise.
10590         * unittests/basic_string_view/operations/compare/char/13650.cc:
10591         Likewise.
10592         * unittests/basic_string_view/operations/copy/char/1.cc:
10593         Likewise.
10594         * unittests/basic_string_view/operations/data/char/1.cc:
10595         Likewise.
10596         * unittests/basic_string_view/operations/find/char/1.cc:
10597         Likewise.
10598         * unittests/basic_string_view/operations/find/char/2.cc:
10599         Likewise.
10600         * unittests/basic_string_view/operations/find/char/3.cc:
10601         Likewise.
10602         * unittests/basic_string_view/operations/find/char/4.cc:
10603         Likewise.
10604         * unittests/basic_string_view/operations/rfind/char/1.cc:
10605         Likewise.
10606         * unittests/basic_string_view/operations/rfind/char/2.cc:
10607         Likewise.
10608         * unittests/basic_string_view/operations/rfind/char/3.cc:
10609         Likewise.
10610         * unittests/basic_string_view/operations/substr/char/1.cc:
10611         Likewise.
10612         * unittests/basic_string_view/operators/char/2.cc: Likewise.
10613         * unittests/string_view-selftests.c: New file.
10614
10615 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10616
10617         * unittests/basic_string_view/capacity/1.cc: New file.
10618         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
10619         * unittests/basic_string_view/cons/char/1.cc: New file.
10620         * unittests/basic_string_view/cons/char/2.cc: New file.
10621         * unittests/basic_string_view/cons/char/3.cc: New file.
10622         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
10623         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
10624         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
10625         * unittests/basic_string_view/element_access/char/1.cc: New file.
10626         * unittests/basic_string_view/element_access/char/2.cc: New file.
10627         * unittests/basic_string_view/element_access/char/empty.cc: New file.
10628         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
10629         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
10630         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
10631         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
10632         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
10633         * unittests/basic_string_view/include.cc: New file.
10634         * unittests/basic_string_view/inserters/char/1.cc: New file.
10635         * unittests/basic_string_view/inserters/char/2.cc: New file.
10636         * unittests/basic_string_view/inserters/char/3.cc: New file.
10637         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
10638         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
10639         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
10640         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
10641         * unittests/basic_string_view/literals/types.cc: New file.
10642         * unittests/basic_string_view/literals/values.cc: New file.
10643         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
10644         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
10645         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
10646         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
10647         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
10648         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
10649         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
10650         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
10651         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
10652         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
10653         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
10654         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
10655         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
10656         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
10657         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
10658         * unittests/basic_string_view/operations/data/char/1.cc: New file.
10659         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
10660         * unittests/basic_string_view/operations/find/char/1.cc: New file.
10661         * unittests/basic_string_view/operations/find/char/2.cc: New file.
10662         * unittests/basic_string_view/operations/find/char/3.cc: New file.
10663         * unittests/basic_string_view/operations/find/char/4.cc: New file.
10664         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
10665         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
10666         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
10667         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
10668         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
10669         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
10670         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
10671         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
10672         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
10673         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
10674         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
10675         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
10676         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
10677         * unittests/basic_string_view/operators/char/2.cc: New file.
10678         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
10679         * unittests/basic_string_view/range_access/char/1.cc: New file.
10680         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
10681         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
10682         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
10683         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
10684         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
10685         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
10686         * unittests/basic_string_view/requirements/typedefs.cc: New file.
10687         * unittests/basic_string_view/typedefs.cc: New file.
10688         * unittests/basic_string_view/types/1.cc: New file.
10689
10690 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10691
10692         * common/gdb_string_view.h: Remove libstdc++ implementation
10693         details, adjust to gdb reality.
10694         * common/gdb_string_view.tcc: Likewise.
10695         * cli/cli-script.c (struct string_view): Remove.
10696         (user_args) <m_args>: Change element type to gdb::string_view.
10697         (user_args::insert_args): Adjust.
10698
10699 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10700
10701         * common/gdb_string_view.h: New file.
10702         * common/gdb_string_view.tcc: New file.
10703
10704 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10705
10706         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
10707         * configure: Re-generate.
10708
10709 2018-04-09  Pedro Alves  <palves@redhat.com>
10710
10711         * gdbarch.sh: Include "observable.h" instead of "observer.h".
10712         (set_target_gdbarch): Call
10713         gdb::observers::architecture_changed.notify instead of
10714         observer_notify_architecture_changed.
10715
10716 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10717
10718         * tracepoint.c (struct current_traceframe_cleanup): Remove.
10719         (do_restore_current_traceframe_cleanup): Remove.
10720         (restore_current_traceframe_cleanup_dtor): Remove.
10721         (make_cleanup_restore_current_traceframe): Remove.
10722         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
10723         New.
10724         * tracepoint.h (struct scoped_restore_current_traceframe): New.
10725         * infrun.c (fetch_inferior_event): Use
10726         scoped_restore_current_traceframe.
10727
10728 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10729
10730         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
10731         Remove.
10732         <n_allocated_type_units>: Remove.
10733         <all_type_units>: Change to std::vector.
10734         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10735         to std::vector change.
10736         (dwarf2_per_objfile::get_cutu): Likewise.
10737         (dwarf2_per_objfile::get_tu): Likewise.
10738         (create_signatured_type_table_from_index): Likewise.
10739         (create_signatured_type_table_from_debug_names): Likewise.
10740         (dw2_symtab_iter_next): Likewise.
10741         (dw2_print_stats): Likewise.
10742         (dw2_expand_all_symtabs): Likewise.
10743         (dw2_expand_marked_cus): Likewise.
10744         (dw2_debug_names_iterator::next): Likewise.
10745         (dwarf2_initialize_objfile): Likewise.
10746         (add_signatured_type_cu_to_table): Likewise.
10747         (create_all_type_units): Likewise.
10748         (add_type_unit): Likewise.
10749         (struct tu_abbrev_offset): Add constructor.
10750         (build_type_psymtabs_1): Adjust to std::vector change.
10751         (print_tu_stats): Likewise.
10752         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10753         (write_debug_names): Likewise.
10754
10755 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10756
10757         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
10758         Make an std::vector.
10759         <n_comp_units>: Remove.
10760         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10761         to std::vector change.
10762         (dwarf2_per_objfile::get_cutu): Likewise.
10763         (dwarf2_per_objfile::get_cu): Likewise.
10764         (create_cus_from_index): Likewise.
10765         (create_addrmap_from_index): Likewise.
10766         (create_addrmap_from_aranges): Likewise.
10767         (dwarf2_read_index): Likewise.
10768         (dw2_find_last_source_symtab): Likewise.
10769         (dw2_map_symtabs_matching_filename): Likewise.
10770         (dw2_symtab_iter_next): Likewise.
10771         (dw2_print_stats): Likewise.
10772         (dw2_expand_all_symtabs): Likewise.
10773         (dw2_expand_symtabs_with_fullname): Likewise.
10774         (dw2_expand_marked_cus): Likewise.
10775         (dw2_map_symbol_filenames): Likewise.
10776         (create_cus_from_debug_names): Likewise.
10777         (dwarf2_read_debug_names): Likewise.
10778         (dw2_debug_names_iterator::next): Likewise.
10779         (dwarf2_initialize_objfile): Likewise.
10780         (set_partial_user): Likewise.
10781         (dwarf2_build_psymtabs_hard): Likewise.
10782         (read_comp_units_from_section): Remove arguments, adjust to
10783         std::vector change.
10784         (create_all_comp_units): Adjust to std::vector and
10785         read_comp_units_from_section changes.
10786         (dwarf2_find_containing_comp_unit): Adjust to std::vector
10787         change.
10788         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10789         (psyms_seen_size): Likewise.
10790         (write_gdbindex): Likewise.
10791         (write_debug_names): Likewise.
10792
10793 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10794
10795         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
10796         with dwarf2_per_objfile.
10797         (create_cus_from_index): Likewise.
10798         (create_signatured_type_table_from_index): Likewise.
10799         (dwarf2_read_index): Likewise.
10800         (dwarf2_initialize_objfile): Likewise.
10801         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
10802         per_cu rather than get_dwarf2_per_objfile.
10803
10804 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10805
10806         * dwarf2read.h (struct signatured_type): Forward declare.
10807         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
10808         New methods.
10809         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
10810         (dw2_get_cutu): ...this.
10811         (dwarf2_per_objfile::get_cu): Rename from...
10812         (dw2_get_cu): ...this.
10813         (dwarf2_per_objfile::get_tu): New.
10814         (create_addrmap_from_index): Adjust.
10815         (create_addrmap_from_aranges): Adjust.
10816         (dw2_find_last_source_symtab): Adjust.
10817         (dw2_map_symtabs_matching_filename): Adjust.
10818         (dw2_symtab_iter_next): Adjust.
10819         (dw2_print_stats): Adjust.
10820         (dw2_expand_all_symtabs): Adjust.
10821         (dw2_expand_symtabs_with_fullname): Adjust.
10822         (dw2_expand_marked_cus): Adjust.
10823         (dw_expand_symtabs_matching_file_matcher): Adjust.
10824         (dw2_map_symbol_filenames): Adjust.
10825         (dw2_debug_names_iterator::next): Adjust.
10826         (dwarf2_initialize_objfile): Adjust.
10827         (set_partial_user): Adjust.
10828         (dwarf2_build_psymtabs_hard): Adjust.
10829
10830 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10831
10832         * dwarf2read.c (create_signatured_type_table_from_debug_names):
10833         Remove unused variables.
10834         (dw2_map_symtabs_matching_filename): Likewise.
10835         (dwarf2_record_block_ranges): Likewise.
10836         (dwarf2_read_addr_index): Likewise.
10837         (follow_die_offset): Likewise.
10838
10839 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10840
10841         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
10842         to symbol_file_add_main.
10843
10844 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10845
10846         PR mi/22299
10847         * mi/mi-console.c (do_fputc_async_safe): New.
10848         (mi_console_file::write_async_safe): New.
10849         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
10850         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
10851         New.
10852         * ui-file.c (ui_file::putstrn): Adjust call to
10853         fputstrn_unfiltered.
10854         * utils.c (printchar): Replace do_fputs and do_fprintf
10855         parameters by do_fputc.
10856         (fputstr_filtered): Adjust call to printchar.
10857         (fputstr_unfiltered): Likewise.
10858         (fputstrn_filtered): Likewise.
10859         (fputstrn_unfiltered): Add do_fputc parameter, pass to
10860         printchar.
10861         * utils.h (do_fputc_ftype): New typedef.
10862         (fputstrn_unfiltered): Add do_fputc parameter.
10863
10864 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10865
10866         * regformats/i386/i386-avx.dat: Remove.
10867
10868 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10869
10870         PR gdb/22979
10871         * amd64-tdep.c (amd64_none_init_abi): New function.
10872         (amd64_x32_none_init_abi): New function.
10873         (_initialize_amd64_tdep): Register handlers for x86-64 and
10874         x64_32 with GDB_OSABI_NONE.
10875         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
10876         GDB_OSABI_NONE osabi.
10877
10878 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10879
10880         PR gdb/22980
10881         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
10882         GDB_OSABI_NONE.
10883         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
10884         * osabi.c (gdb_osabi_names): Add "unknown" entry.
10885
10886 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10887
10888         * common/byte-vector.h (char_vector): New type.
10889         * target.h (target_read_alloc): Return
10890         gdb::optional<byte_vector>.
10891         (target_read_stralloc): Return gdb::optional<char_vector>.
10892         (target_get_osdata): Return gdb::optional<char_vector>.
10893         * target.c (target_read_alloc_1): Templatize.  Replacement
10894         manual memory management with vector.
10895         (target_read_alloc): Change return type, adjust.
10896         (target_read_stralloc): Change return type, adjust.
10897         (target_get_osdata): Change return type, adjust.
10898         * auxv.c (struct auxv_info) <length>: Remove.
10899         <data>: Change type to gdb::optional<byte_vector>.
10900         (auxv_inferior_data_cleanup): Free auxv_info with delete.
10901         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
10902         (target_auxv_search): Adjust.
10903         (fprint_target_auxv): Adjust.
10904         * avr-tdep.c (avr_io_reg_read_command): Adjust.
10905         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
10906         (linux_make_corefile_notes): Adjust.
10907         * osdata.c (get_osdata): Adjust.
10908         * remote.c (remote_get_threads_with_qxfer): Adjust.
10909         (remote_memory_map): Adjust.
10910         (remote_traceframe_info): Adjust.
10911         (btrace_read_config): Adjust.
10912         (remote_read_btrace): Adjust.
10913         (remote_pid_to_exec_file): Adjust.
10914         * solib-aix.c (solib_aix_get_library_list): Adjust.
10915         * solib-dsbt.c (decode_loadmap): Don't free buf.
10916         (dsbt_get_initial_loadmaps): Adjust.
10917         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
10918         * solib-target.c (solib_target_current_sos): Adjust.
10919         * tracepoint.c (sdata_make_value): Adjust.
10920         * xml-support.c (xinclude_start_include): Adjust.
10921         (xml_fetch_content_from_file): Adjust.
10922         * xml-support.h (xml_fetch_another): Change return type.
10923         (xml_fetch_content_from_file): Change return type.
10924         * xml-syscall.c (xml_init_syscalls_info): Adjust.
10925         * xml-tdesc.c (file_read_description_xml): Adjust.
10926         (fetch_available_features_from_target): Change return type.
10927         (target_fetch_description_xml): Adjust.
10928         (target_read_description_xml): Adjust.
10929
10930 2018-04-06  Tom Tromey  <tom@tromey.com>
10931
10932         * value.c (~value): Update.
10933         (struct value) <contents>: Now unique_xmalloc_ptr.
10934         (value_contents_bits_eq, allocate_value_contents)
10935         (value_contents_raw, value_contents_all_raw)
10936         (value_contents_for_printing, value_contents_for_printing_const)
10937         (set_value_enclosing_type): Update.
10938
10939 2018-04-06  Tom Tromey  <tom@tromey.com>
10940
10941         * value.c (range_s): Remove typedef, VEC.
10942         (struct range): Add operator<.
10943         (range_lessthan): Remove.
10944         (ranges_contain): Change type.
10945         (~value): Update.
10946         (struct value) <unavailable, optimized_out>: Now std::vector.
10947         (value_entirely_available)
10948         (value_entirely_covered_by_range_vector)
10949         (value_entirely_unavailable, value_entirely_optimized_out):
10950         Update.
10951         (insert_into_bit_range_vector): Change argument type.
10952         (find_first_range_overlap): Likewise.
10953         (struct ranges_and_idx, value_contents_bits_eq)
10954         (require_not_optimized_out, require_available): Update.
10955         (ranges_copy_adjusted): Change argument types.
10956         (value_optimized_out, value_copy, value_fetch_lazy): Update.
10957
10958 2018-04-06  Tom Tromey  <tom@tromey.com>
10959
10960         * value.c (~value): Update.
10961         (struct value) <parent>: Now a value_ref_ptr.
10962         (value_parent, set_value_parent, value_address, value_copy):
10963         Update.
10964
10965 2018-04-06  Tom Tromey  <tom@tromey.com>
10966
10967         * value.c (struct value): Add constructor, destructor, and member
10968         initializers.
10969         (allocate_value_lazy, value_decref): Update.
10970
10971 2018-04-06  Tom Tromey  <tom@tromey.com>
10972
10973         * value.c (struct value) <released, next>: Remove.
10974         (all_values): Now a std::vector.
10975         (allocate_value_lazy): Update.
10976         (value_next): Remove.
10977         (value_mark, value_free_to_mark, release_value)
10978         (value_release_to_mark): Update.
10979
10980 2018-04-06  Tom Tromey  <tom@tromey.com>
10981
10982         * value.h (fetch_subexp_value, value_release_to_mark): Update.
10983         (free_value_chain): Remove.
10984         * value.c (free_value_chain): Remove.
10985         (value_release_to_mark): Return a std::vector.
10986         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
10987         std::vector.
10988         (check_condition): Update.
10989         * eval.c (fetch_subexp_value): Change "val_chain" to a
10990         std::vector.
10991         * breakpoint.c (update_watchpoint): Update.
10992         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
10993
10994 2018-04-06  Tom Tromey  <tom@tromey.com>
10995
10996         * value.h (free_all_values): Remove.
10997         * value.c (free_all_values): Remove.
10998
10999 2018-04-06  Tom Tromey  <tom@tromey.com>
11000
11001         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11002         (value_history_chain, value_history_count): Remove.
11003         (value_history): New global.
11004         (record_latest_value, access_value_history, show_values)
11005         (preserve_values): Update.
11006
11007 2018-04-06  Tom Tromey  <tom@tromey.com>
11008
11009         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11010         * varobj.c (varobj_set_display_format, varobj_set_value)
11011         (install_default_visualizer, construct_visualizer)
11012         (install_new_value, ~varobj, varobj_get_value_type)
11013         (my_value_of_variable, varobj_editable_p): Update.
11014         * c-varobj.c (c_describe_child, c_value_of_variable)
11015         (cplus_number_of_children, cplus_describe_child): Update.
11016         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11017         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11018         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11019
11020 2018-04-06  Tom Tromey  <tom@tromey.com>
11021
11022         * printcmd.c (last_examine_address): Change type to
11023         value_ref_ptr.
11024         (do_examine, x_command): Update.
11025
11026 2018-04-06  Tom Tromey  <tom@tromey.com>
11027
11028         * value.c (release_value): Update.
11029         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11030         (struct bpstats) <val>: Now a value_ref_ptr.
11031         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11032         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11033         (~watchpoint, print_it_watchpoint, watch_command_1)
11034         (invalidate_bp_value_on_memory_change): Update.
11035
11036 2018-04-06  Tom Tromey  <tom@tromey.com>
11037
11038         * varobj.c (varobj_clear_saved_item)
11039         (update_dynamic_varobj_children, install_new_value, ~varobj):
11040         Update.
11041         * value.h (value_incref): Move declaration earlier.
11042         (value_decref): Rename from value_free.
11043         (struct value_ref_policy): New.
11044         (value_ref_ptr): New typedef.
11045         (struct value_deleter): Remove.
11046         (gdb_value_up): Remove typedef.
11047         (release_value): Change return type.
11048         (release_value_or_incref): Remove.
11049         * value.c (set_value_parent): Update.
11050         (value_incref): Change return type.
11051         (value_decref): Rename from value_free.
11052         (value_free_to_mark, free_all_values, free_value_chain): Update.
11053         (release_value): Return value_ref_ptr.
11054         (release_value_or_incref): Remove.
11055         (record_latest_value, set_internalvar, clear_internalvar):
11056         Update.
11057         * stack.c (info_frame_command): Don't call value_free.
11058         * python/py-value.c (valpy_dealloc, valpy_new)
11059         (value_to_value_object): Update.
11060         * printcmd.c (do_examine): Update.
11061         * opencl-lang.c (lval_func_free_closure): Update.
11062         * mi/mi-main.c (register_changed_p): Don't call value_free.
11063         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11064         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11065         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11066         value_free.
11067         * guile/scm-value.c (vlscm_free_value_smob)
11068         (vlscm_scm_from_value): Update.
11069         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11070         (frame_unwind_register_unsigned, get_frame_register_bytes)
11071         (put_frame_register_bytes): Don't call value_free.
11072         * findvar.c (address_from_register): Don't call value_free.
11073         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11074         * dwarf2loc.c (entry_data_value_free_closure)
11075         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11076         (dwarf2_evaluate_loc_desc_full): Update.
11077         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11078         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11079         (~watchpoint, watch_command_1)
11080         (invalidate_bp_value_on_memory_change): Update.
11081         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11082
11083 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11084
11085         PR gdb/23022
11086         * warning.m4: Add -Wno-error=deprecated-register.
11087         * configure: Re-generate.
11088
11089 2018-04-05  Tom Tromey  <tom@tromey.com>
11090
11091         * linespec.h: Remove include of "vec.h".
11092
11093 2018-04-05  Tom Tromey  <tom@tromey.com>
11094
11095         * linespec.c (typep): Remove typedef.
11096         (find_methods, find_superclass_methods): Take a std::vector.
11097         (find_method): Use std::vector.
11098
11099 2018-04-05  Tom Tromey  <tom@tromey.com>
11100
11101         * utils.c (compare_strings): Remove.
11102         * utils.h (compare_strings): Remove.
11103         * objc-lang.h (find_imps): Update.
11104         * objc-lang.c (find_methods): Take a std::vector.
11105         (uniquify_strings, find_imps): Likewise.
11106         * linespec.c (find_methods): Take a std::vector.
11107         (decode_objc): Use std::vector.
11108         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11109         a std::vector.
11110         (find_method, find_function_symbols): Use std::vector.
11111
11112 2018-04-05  Tom Tromey  <tom@tromey.com>
11113
11114         * completer.c (completion_tracker::completion_tracker): Remove
11115         cast.
11116         (completion_tracker::discard_completions): Likewise.
11117         * breakpoint.c (ambiguous_names_p): Remove cast.
11118         * ada-lang.c (_initialize_ada_language): Remove cast.
11119         * utils.h (streq): Update.
11120         (streq_hash): Add new declaration.
11121         * utils.c (streq): Return bool.
11122         (streq_hash): New function.
11123
11124 2018-04-05  Tom Tromey  <tom@tromey.com>
11125
11126         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11127         Remove a string copy.
11128
11129 2018-04-05  Tom Tromey  <tom@tromey.com>
11130
11131         * linespec.c (filter_results): Use std::vector.
11132         (decode_line_2, decode_line_full): Update.
11133
11134 2018-04-05  Tom Tromey  <tom@tromey.com>
11135
11136         * linespec.c (canonical_to_fullform): Return std::string.
11137         (filter_results): Update.
11138         (struct decode_line_2_item): Add constructor.
11139         <fullform, displayform>: Now std::string.
11140         (decode_line_2_compare_items): Now a std::sort comparator.
11141         (decode_line_2): Update.
11142
11143 2018-04-05  Tom Tromey  <tom@tromey.com>
11144
11145         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11146         (unexpected_linespec_error): Update.
11147         (linespec_parse_basic, parse_linespec): Update.
11148
11149 2018-04-05  Tom Tromey  <tom@tromey.com>
11150
11151         * linespec.c (linespec_parse_basic): Reindent.
11152
11153 2018-04-05  Tom Tromey  <tom@tromey.com>
11154
11155         * minsyms.h (iterate_over_minimal_symbols): Update.
11156         * minsyms.c (iterate_over_minimal_symbols): Take a
11157         gdb::function_view.
11158         * linespec.c (struct collect_minsyms): Remove.
11159         (compare_msyms): Now a std::sort comparator.
11160         (add_minsym): Add parameters.
11161         (search_minsyms_for_name): Update.  Use std::vector.
11162
11163 2018-04-03  Tom Tromey  <tom@tromey.com>
11164
11165         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11166         gdb::byte_vector.
11167
11168 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11169
11170         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11171
11172 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11173
11174         PR gdb/16959
11175         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11176         printing static type.
11177
11178 2018-04-01  Tom Tromey  <tom@tromey.com>
11179
11180         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11181         (rs6000_xfer_shared_libraries): Update.
11182
11183 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11184
11185         * common/gdb_vecs.h (char_ptr): Remove.
11186         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11187
11188 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11189
11190         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11191         with std::vector.
11192         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11193
11194 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11195
11196         * tracepoint.h (struct uploaded_tp): Initialize fields.
11197         <actions, step_actions, cmd_strings>: Change type to
11198         std::vector<char *>.
11199         * tracepoint.c (get_uploaded_tp): Allocate with new.
11200         (free_uploaded_tps): Free with delete.
11201         (parse_tracepoint_definition): Adjust to std::vector change.
11202         * breakpoint.c (read_uploaded_action): Likewise.
11203         (create_tracepoint_from_upload): Likewise.
11204         * ctf.c (ctf_write_uploaded_tp): Likewise.
11205         (SET_ARRAY_FIELD): Likewise.
11206         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11207
11208 2018-03-30  Tom Tromey  <tom@tromey.com>
11209
11210         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11211         std::unique_ptr.
11212         (svr4_keep_data_in_core): Update.
11213         (svr4_read_so_list): Update.
11214
11215 2018-03-30  Tom Tromey  <tom@tromey.com>
11216
11217         * windows-nat.c (handle_output_debug_string, handle_exception):
11218         Update.
11219         * target.h (target_read_string): Update.
11220         * target.c (target_read_string): Change "string" to
11221         unique_xmalloc_ptr.
11222         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11223         Update.
11224         * solib-frv.c (frv_current_sos): Update.
11225         * solib-dsbt.c (dsbt_current_sos): Update.
11226         * solib-darwin.c (darwin_current_sos): Update.
11227         * linux-thread-db.c (inferior_has_bug): Update.
11228         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11229         Update.  Remove alloca.
11230         * ada-lang.c (ada_main_name): Update.
11231
11232 2018-03-30  Tom Tromey  <tom@tromey.com>
11233
11234         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11235         (struct dwo_file_deleter): New.
11236         (dwo_file_up): New typedef.
11237         (open_and_init_dwo_file): Use dwo_file_up.
11238         (free_dwo_file_cleanup): Remove.
11239
11240 2018-03-30  Tom Tromey  <tom@tromey.com>
11241
11242         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
11243         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
11244
11245 2018-03-30  Tom Tromey  <tom@tromey.com>
11246
11247         * dwarf2read.c (class free_cached_comp_units): New class.
11248         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
11249         (free_cached_comp_units): Remove function.
11250
11251 2018-03-30  Tom Tromey  <tom@tromey.com>
11252
11253         * utils.h (make_cleanup_unpush_target): Remove.
11254         * inf-ptrace.c (struct target_unpusher): New.
11255         (target_unpush_up) New typedef.
11256         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
11257         target_unpush_up.
11258         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
11259
11260 2018-03-27  Tom Tromey  <tom@tromey.com>
11261
11262         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
11263
11264 2018-03-27  Pedro Alves  <palves@redhat.com>
11265             Tom Tromey  <tom@tromey.com>
11266
11267         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
11268         destructor.  Now a class.
11269         (gdb_readline_wrapper_cleanup): Remove function.
11270         (gdb_readline_wrapper): Remove cleanups.
11271
11272 2018-03-27  Tom Tromey  <tom@tromey.com>
11273
11274         * typeprint.h (struct type_print_options) <local_typedefs,
11275         global_typedefs>: Remove "struct" keyword.
11276         (class typedef_hash_table): New class.
11277         (recursively_update_typedef_hash, add_template_parameters)
11278         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
11279         (find_typedef_in_hash): Don't declare.
11280         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
11281         (typedef_hash_table::recursively_update): Rename from
11282         recursively_update_typedef_hash.  Now a member.
11283         (typedef_hash_table::add_template_parameters): Rename from
11284         add_template_parameters.  Now a member.
11285         (typedef_hash_table::typedef_hash_table): Now a constructor;
11286         rename from create_typedef_hash.
11287         (typedef_hash_table::~typedef_hash_table): Now a destructor;
11288         rename from free_typedef_hash.
11289         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
11290         (do_free_global_table): Remove.
11291         (typedef_hash_table::typedef_hash_table): New constructor; renamed
11292         from copy_type_recursive.
11293         (create_global_typedef_table): Remove.
11294         (typedef_hash_table::find_global_typedef): Now a member of
11295         typedef_hash_table.
11296         (typedef_hash_table::find_typedef): Rename from
11297         find_typedef_in_hash; now a member.
11298         (whatis_exp): Update.
11299         * extension.h (struct ext_lang_type_printers): Add constructor and
11300         destructor.
11301         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
11302         declare.
11303         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
11304         Now a constructor; rename from start_ext_lang_type_printers.
11305         (ext_lang_type_printers): Now a destructor; rename from
11306         free_ext_lang_type_printers.
11307         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
11308         Update.
11309         (c_type_print_base_struct_union): Update.  Remove cleanups.
11310
11311 2018-03-27  Tom Tromey  <tom@tromey.com>
11312
11313         * dwarf-index-write.c: Include <cmath>.
11314
11315 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11316
11317         * NEWS: Add entry describing new "set|show varsize-limit" command.
11318         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
11319         command.
11320         * printcmd.c (_initialize_printcmd): Add "set var" alias of
11321         "set variable".
11322
11323 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
11324
11325         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
11326         dwarf-index-write.c
11327         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
11328         * dwarf-index-common.c: New file.
11329         * dwarf-index-common.h: New file.
11330         * dwarf-index-write.c: New file.
11331         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
11332         (struct dwarf2_section_info): Move from here.
11333         (dwarf2_section_info_def): Likewise.
11334         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
11335         (offset_type): Likewise.
11336         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
11337         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
11338         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
11339         (byte_swap): Likewise.
11340         (MAYBE_SWAP): Likewise.
11341         (dwarf2_per_cu_ptr): Likewise.
11342         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
11343         (struct tu_stats): Likewise.
11344         (struct dwarf2_per_objfile): Likewise.
11345         (struct dwarf2_per_cu_data): Likewise.
11346         (struct signatured_type): Likewise.
11347         (sig_type_ptr): Likewise.
11348         (DEF_VEC_P (sig_type_ptr)): Likewise.
11349         (INDEX4_SUFFIX): Likewise.
11350         (INDEX5_SUFFIX): Likewise.
11351         (DEBUG_STR_SUFFIX): Likewise.
11352         (dwarf2_read_section): Make non-static.
11353         (mapped_index_string_hash): Move from here.
11354         (dwarf5_djb_hash): Likewise.
11355         (file_write): Likewise.
11356         (class data_buf): Likewise.
11357         (struct symtab_index_entry): Likewise.
11358         (struct mapped_symtab): Likewise.
11359         (find_slot): Likewise.
11360         (hash_expand): Likewise.
11361         (add_index_entry): Likewise.
11362         (uniquify_cu_indices): Likewise.
11363         (class c_str_view): Likewise.
11364         (class c_str_view_hasher): Likewise.
11365         (class vector_hasher): Likewise.
11366         (write_hash_table): Likewise.
11367         (psym_index_map): Likewise.
11368         (struct addrmap_index_data): Likewise.
11369         (add_address_entry): Likewise.
11370         (add_address_entry_worker): Likewise.
11371         (write_address_map): Likewise.
11372         (symbol_kind): Likewise.
11373         (write_psymbols): Likewise.
11374         (struct signatured_type_index_data): Likewise.
11375         (write_one_signatured_type): Likewise.
11376         (recursively_count_psymbols): Likewise.
11377         (recursively_write_psymbols): Likewise.
11378         (class debug_names): Likewise.
11379         (check_dwarf64_offsets): Likewise.
11380         (psyms_seen_size): Likewise.
11381         (write_gdbindex): Likewise.
11382         (write_debug_names): Likewise.
11383         (assert_file_size): Likewise.
11384         (write_psymtabs_to_index): Likewise.
11385         (save_gdb_index_command): Likewise.
11386         (_initialize_dwarf2_read): Don't register the "save gdb-index"
11387         command.
11388         * dwarf2read.h: New file.
11389
11390 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11391
11392         PR gdb/22670
11393         * dwarf2read.c (dwarf2_physname): Do not return the demangled
11394         symbol name if the CU's language stores symbol names in linkage
11395         format.
11396         * language.h (struct language_defn)
11397         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
11398         all instances of this struct.
11399
11400 2018-03-26  Tom Tromey  <tom@tromey.com>
11401
11402         * stack.c (backtrace_command_1): Remove verbose code.
11403
11404 2018-03-26  Tom Tromey  <tom@tromey.com>
11405
11406         * python/py-framefilter.c (py_print_type): Don't catch
11407         exceptions.  Return void.
11408         (py_print_value): Likewise.
11409         (py_print_single_arg): Likewise.
11410         (enumerate_args): Don't catch exceptions.
11411         (py_print_args): Likewise.
11412         (py_print_frame): Likewise.
11413         (gdbpy_apply_frame_filter): Catch exceptions here.
11414
11415 2018-03-26  Tom Tromey  <tom@tromey.com>
11416
11417         * stack.c (_initialize_stack): Remove trailing newlines from help
11418         text.  Add "Usage" line to "backtrace" help.
11419
11420 2018-03-26  Tom Tromey  <tom@tromey.com>
11421
11422         PR python/16486:
11423         * python/py-framefilter.c (py_print_args): Call wrap_hint.
11424
11425 2018-03-26  Tom Tromey  <tom@tromey.com>
11426
11427         * python/py-framefilter.c (py_print_single_arg): Return
11428         EXT_LANG_BT_ERROR from catch.
11429
11430 2018-03-26  Tom Tromey  <tom@tromey.com>
11431
11432         PR backtrace/15584:
11433         * stack.c (backtrace_command_1): Move some code into no-filters
11434         "if".
11435
11436 2018-03-26  Tom Tromey  <tom@tromey.com>
11437
11438         * python/py-framefilter.c (throw_quit_or_print_exception): New
11439         function.
11440         (gdbpy_apply_frame_filter): Use it.
11441
11442 2018-03-26  Tom Tromey  <tom@tromey.com>
11443
11444         PR cli/17716:
11445         * python/py-framefilter.c (py_print_type, py_print_value)
11446         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
11447         RETURN_MASK_ERROR.
11448
11449 2018-03-26  Tom Tromey  <tom@tromey.com>
11450
11451         * python/py-framefilter.c (enumerate_args): Use
11452         gdb::unique_xmalloc_ptr.
11453
11454 2018-03-26  Tom Tromey  <tom@tromey.com>
11455
11456         * python/py-framefilter.c (py_print_frame): Return
11457         EXT_LANG_BT_OK.
11458         (gdbpy_apply_frame_filter): Update comment.
11459         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
11460         Remove.
11461         <EXT_LANG_BT_NO_FILTERS>: Change value.
11462
11463 2018-03-26  Tom Tromey  <tom@tromey.com>
11464
11465         PR backtrace/15582:
11466         * stack.c (backtrace_command): Parse "hide" argument.
11467         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
11468         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
11469         constant.
11470
11471 2018-03-26  Tom Tromey  <tom@tromey.com>
11472
11473         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
11474         add "flags".
11475         (backtrace_command): Remove "fulltrace", add "flags".
11476
11477 2018-03-26  Tom Tromey  <tom@tromey.com>
11478
11479         * stack.c (backtrace_command): Rewrite command line parsing.
11480
11481 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11482
11483         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
11484
11485 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11486
11487         * filename-seen-cache.h: Add include guard.
11488
11489 2018-03-26  Keith Seitz  <keiths@redhat.com>
11490
11491         * symfile.c (place_section): Remove "struct" from section_addr_info
11492         in comment.
11493         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
11494         "struct" keyword from section_addr_info.
11495
11496 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
11497
11498         * regformats/regdef.h (reg): Add constructors.
11499
11500 2018-03-25  Pedro Alves  <palves@redhat.com>
11501
11502         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
11503         if then/else bodies in var_func_name extraction.
11504
11505 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
11506
11507         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
11508         lookup_minimal_symbol() to find symbol entry.
11509         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
11510
11511 2018-03-23  Keith Seitz  <keiths@redhat.com>
11512
11513         PR c++/22968
11514         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
11515         nested type definitions for C++, too.
11516
11517 2018-03-23  Tom Tromey  <tom@tromey.com>
11518
11519         * machoread.c (struct oso_el): Add a constructor.  Don't define as
11520         a typedef.
11521         (macho_register_oso): Remove.
11522         (macho_symtab_read): Take a std::vector.
11523         (oso_el_compare_name): Now a std::sort comparator.
11524         (macho_symfile_read_all_oso): Take a std::vector.
11525         (macho_symfile_read): Use std::vector.  Remove cleanups.
11526
11527 2018-03-22  Tom Tromey  <tom@tromey.com>
11528
11529         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
11530         (record_full_goto_bookmark): Use std::string.
11531
11532 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11533
11534         PR tdep/18295
11535         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
11536         a single mask.
11537
11538 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11539
11540         * rs6000-tdep.c (store_insn_p): New function.
11541         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
11542         and cr_reg to their unshifted values. Use store_insn_p to
11543         match LR saves using either R1 or fdata->alloca_reg. Use
11544         store_insn_p to match CR saves. Set alloca_reg_offset
11545         when alloca_reg and framep are set. Remove lr_reg shift
11546         when assigning to fdata->lr_register.
11547
11548 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11549
11550         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
11551         command line args instead of emitting a warning.
11552
11553 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11554
11555         * tracepoint.h (struct static_tracepoint_marker): Initialize
11556         fields, define default constructor, move constructor and move
11557         assignment, disable the rest.
11558         <str_id, extra>: Make std::string.
11559         (release_static_tracepoint_marker): Remove.
11560         (free_current_marker): Remove.
11561         * tracepoint.c (free_current_marker): Remove.
11562         (parse_static_tracepoint_marker_definition): Adjust to
11563         std::string, use new hex2str overload.
11564         (release_static_tracepoint_marker): Remove.
11565         (print_one_static_tracepoint_marker): Get marker by reference
11566         and adjust to std::string.
11567         (info_static_tracepoint_markers_command): Adjust to std::vector
11568         changes
11569         * target.h (static_tracepoint_marker_p): Remove typedef.
11570         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
11571         (struct target_ops) <to_static_tracepoint_marker_at>: Return
11572         bool.
11573         <to_static_tracepoint_markers_by_strid>: Return std::vector.
11574         * target-debug.h
11575         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
11576         (target_debug_print_std_vector_static_tracepoint_marker): New.
11577         (target_debug_print_struct_static_tracepoint_marker_p): Rename
11578         to...
11579         (target_debug_print_static_tracepoint_marker_p): ... this.
11580         * target-delegates.c: Re-generate.
11581         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
11582         Make std::string.
11583         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
11584         (decode_static_tracepoint_spec): Adjust to std::vector.
11585         (tracepoint_print_one_detail): Adjust to std::string.
11586         (strace_marker_decode_location): Adjust to std::string.
11587         (update_static_tracepoint): Adjust to std::string, remove call
11588         to release_static_tracepoint_marker.
11589         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
11590         Adjust to std::vector.
11591         * remote.c (remote_static_tracepoint_marker_at): Return bool.
11592         (remote_static_tracepoint_markers_by_strid): Adjust to
11593         std::vector.
11594         * common/rsp-low.h (hex2str): New overload with explicit count
11595         of bytes.
11596         * common/rsp-low.c (hex2str): New overload with explicit count
11597         of bytes.
11598         * unittests/rsp-low-selftests.c (test_hex2str): New function.
11599         (_initialize_rsp_low_selftests): Add test_hex2str test.
11600         * unittests/tracepoint-selftests.c
11601         (test_parse_static_tracepoint_marker_definition): Adjust to
11602         std::string.
11603
11604 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11605
11606         * tracepoint.c (parse_static_tracepoint_marker_definition):
11607         Consider case where the definition is followed by more
11608         definitions.
11609         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11610         tracepoint-selftests.c.
11611         * unittests/tracepoint-selftests.c: New.
11612
11613 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11614
11615         * MAINTAINERS (Write After Approval): Add Pedro Franco de
11616         Carvalho.
11617
11618 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11619
11620         * symtab.c (find_pc_sect_line): fixed indentation.
11621
11622 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11623
11624         * symtab.c (find_pc_sect_line): now uses binary search.
11625
11626 2018-03-19  Tom Tromey  <tom@tromey.com>
11627
11628         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
11629         "IDENT" production.
11630
11631 2018-03-19  Pedro Alves  <palves@redhat.com>
11632             Tom Tromey  <tom@tromey.com>
11633
11634         * unittests/observable-selftests.c: New file.
11635         * common/observable.h: New file.
11636         * observable.h: New file.
11637         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
11638         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
11639         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
11640         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
11641         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
11642         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
11643         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
11644         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
11645         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
11646         python/py-breakpoint.c, python/py-finishbreakpoint.c,
11647         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
11648         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
11649         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
11650         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
11651         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
11652         tui/tui-interp.c, valops.c: Update all users.
11653         * tui/tui-hooks.c (tui_bp_created_observer)
11654         (tui_bp_deleted_observer, tui_bp_modified_observer)
11655         (tui_inferior_exit_observer, tui_before_prompt_observer)
11656         (tui_normal_stop_observer, tui_register_changed_observer):
11657         Remove.
11658         (tui_observers_token): New global.
11659         (attach_or_detach, tui_attach_detach_observers): New functions.
11660         (tui_install_hooks, tui_remove_hooks): Use
11661         tui_attach_detach_observers.
11662         * record-btrace.c (record_btrace_thread_observer): Remove.
11663         (record_btrace_thread_observer_token): New global.
11664         * observer.sh: Remove.
11665         * observer.c: Rename to observable.c.
11666         * observable.c (namespace gdb_observers): Define new objects.
11667         (observer_debug): Move into gdb_observers namespace.
11668         (struct observer, struct observer_list, xalloc_observer_list_node)
11669         (xfree_observer_list_node, generic_observer_attach)
11670         (generic_observer_detach, generic_observer_notify): Remove.
11671         (_initialize_observer): Update.
11672         Don't include observer.inc.
11673         * Makefile.in (generated_files): Remove observer.h, observer.inc.
11674         (clean mostlyclean): Likewise.
11675         (observer.h, observer.inc): Remove targets.
11676         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
11677         (COMMON_SFILES): Use observable.c, not observer.c.
11678         * .gitignore: Remove observer.h.
11679
11680 2018-03-18  Tom Tromey  <tom@tromey.com>
11681
11682         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
11683         gdb::def_vector.
11684         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
11685
11686 2018-03-17  Tom Tromey  <tom@tromey.com>
11687
11688         * auto-load.c (auto_load_objfile_script_1): Use std::string.
11689
11690 2018-03-17  Tom Tromey  <tom@tromey.com>
11691
11692         * target.c (class scoped_target_fd): New.
11693         (target_fileio_close_cleanup): Remove.
11694         (target_fileio_read_alloc_1): Use scoped_target_fd.
11695
11696 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
11697
11698         * silent-rules.mk: New.
11699         * Makefile.in: Include silent-rules.mk
11700         (srcdir, VPATH, top_srcdir): Move up.
11701         (COMPILE): Add ECHO_CXX.
11702         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
11703         (init.c): Add ECHO_INIT_C.
11704         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
11705         (version.c): Add ECHO_GEN.
11706         (printcmd.o): Add ECHO_CXX.
11707         (target-float.o): Add ECHO_CXX.
11708         (ada-exp.o): Add ECHO_CXX.
11709         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
11710         (insight$(EXEEXT)): Add ECHO_CXXLD.
11711         * gnulib/configure.ac: Add AM_SILENT_RULES.
11712         * gnulib/aclocal.m4: Re-generate.
11713         * gnulib/configure: Re-generate.
11714         * gnulib/import/Makefile.in: Re-generate.
11715
11716 2018-03-16  Tom Tromey  <tom@tromey.com>
11717
11718         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
11719         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
11720         * utils.c (do_free_section_addr_info)
11721         (make_cleanup_free_section_addr_info): Remove.
11722         * symfile.h (struct other_sections): Add constructor.
11723         (struct section_addr_info): Remove.
11724         (section_addr_info): New typedef.
11725         (struct sym_fns) <sym_offsets>: Change type of parameter.
11726         (build_section_addr_info_from_objfile)
11727         (relative_addr_info_to_section_offsets, addr_info_make_relative)
11728         (default_symfile_offsets, symbol_file_add)
11729         (symbol_file_add_from_bfd)
11730         (build_section_addr_info_from_section_table): Update.
11731         (alloc_section_addr_info, free_section_addr_info): Don't declare.
11732         * symfile.c (alloc_section_addr_info): Remove.
11733         (build_section_addr_info_from_section_table): Change return type.
11734         Update.
11735         (build_section_addr_info_from_bfd)
11736         (build_section_addr_info_from_objfile): Likewise.
11737         (free_section_addr_info): Remove.
11738         (relative_addr_info_to_section_offsets): Change type of "addrs".
11739         (addrs_section_compar): Now a std::sort comparator.
11740         (addrs_section_sort): Change return type.
11741         (addr_info_make_relative): Change type of "addrs".  Update.
11742         (default_symfile_offsets, syms_from_objfile_1)
11743         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
11744         (symbol_file_add_separate): Update.
11745         (symbol_file_add): Change type of "addrs".  Update.
11746         (add_symbol_file_command): Update.  Remove cleanups.
11747         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
11748         cleanups.
11749         * symfile-debug.c (debug_sym_offsets): Change type of "info".
11750         * solib.c (solib_read_symbols): Update.
11751         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
11752         * machoread.c (macho_symfile_offsets): Update.
11753         * jit.c (jit_bfd_try_read_symtab): Update.
11754
11755 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
11756
11757         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11758         unittests/utils-selftests.c.
11759         * unittests/utils-selftests.c: New file.
11760
11761 2018-03-14  Tom Tromey  <tom@tromey.com>
11762
11763         PR cli/14977:
11764         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
11765         for NULL.
11766
11767 2018-03-14  Tom Tromey  <tom@tromey.com>
11768
11769         PR cli/19918:
11770         * printcmd.c (printf_pointer): Allow "-" in format.
11771
11772 2018-03-14  Tom Tromey  <tom@tromey.com>
11773
11774         * printcmd.c (_initialize_printcmd): Add usage to printf.
11775
11776 2018-03-14  Yao Qi  <qiyao@sourceware.org>
11777
11778         * MAINTAINERS: Update my email address.
11779
11780 2018-03-13  Tom Tromey  <tom@tromey.com>
11781
11782         * machoread.c (macho_check_dsym): Change filenamep to a
11783         std::string*.
11784         (macho_symfile_read): Update.
11785         * symfile.c (load_command): Use std::string.
11786
11787 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
11788
11789         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
11790         to error message string.
11791         (riscv_register_name): Use xsnprintf instead of sprintf.
11792         (riscv_insn::fetch_instruction): Use gdb_assert instead of
11793         internal_error.
11794         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
11795         error.
11796         (riscv_push_dummy_call): Likewise.
11797
11798 2018-03-12  Tom Tromey  <tom@tromey.com>
11799
11800         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
11801         Use gdb::byte_vector.
11802         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
11803
11804 2018-03-12  Yao Qi  <yao.qi@linaro.org>
11805
11806         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
11807         parameter type to readable_regcache.
11808         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
11809         the declaration.
11810
11811 2018-03-11  Tom Tromey  <tom@tromey.com>
11812
11813         * dwarf2read.c (struct nextfield): Add initializers.
11814         (struct nextfnfield): Remove.
11815         (struct fnfieldlist): Add initializers.  Remove "length" and
11816         "head", use std::vector.
11817         (struct decl_field_list): Remove.
11818         (struct field_info): Add initializers.
11819         <fields, baseclasses>: Now std::vector.
11820         <nbaseclasses, nfnfields, typedef_field_list_count,
11821         nested_types_list_count>: Remove.
11822         (dwarf2_add_field, dwarf2_add_type_defn)
11823         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
11824         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
11825         (process_structure_scope): Update.
11826
11827 2018-03-11  Tom Tromey  <tom@tromey.com>
11828
11829         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
11830         for use by std::sort.
11831         (build_type_psymtabs_1): Use std::vector.
11832
11833 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
11834
11835         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
11836         and LIBMPFR in the printed configuration.
11837
11838 2018-03-08  Tom Tromey  <tom@tromey.com>
11839
11840         * source.c (get_filename_and_charpos): Use scoped_fd.
11841         * nto-procfs.c (procfs_open_1): Use scoped_fd.
11842         (procfs_pidlist): Likewise.
11843         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
11844         (iterate_over_mappings): Likewise.
11845
11846 2018-03-08  Tom Tromey  <tom@tromey.com>
11847
11848         * infcall.c (struct call_return_meta_info)
11849         <stack_temporaries_enabled>: Remove.
11850         (get_call_return_value, call_function_by_hand_dummy): Update.
11851         * thread.c (disable_thread_stack_temporaries): Remove.
11852         (enable_thread_stack_temporaries): Remove.
11853         (thread_stack_temporaries_enabled_p): Return bool.
11854         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
11855         (get_last_thread_stack_temporary): Update.
11856         * eval.c (evaluate_subexp): Update.
11857         * gdbthread.h (class enable_thread_stack_temporaries): Now a
11858         class, not a function.
11859         (value_ptr, value_vec): Remove typedefs.
11860         (class thread_info) <stack_temporaries_enabled>: Now bool.
11861         <stack_temporaries>: Now a std::vector.
11862         (thread_stack_temporaries_enabled_p)
11863         (value_in_thread_stack_temporaries): Return bool.
11864
11865 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
11866
11867         * remote.c (putpkt_binary): Fix omitted bytes reporting.
11868         (getpkt_or_notif_sane_1): Likewise.
11869
11870 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11871
11872         * build-id.c (build_id_to_debug_bfd): Use std::string.
11873
11874 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11875
11876         * build-id.c (find_separate_debug_file_by_buildid): Return
11877         std::string.
11878         * build-id.h (find_separate_debug_file_by_buildid): Return
11879         std::string.
11880         * coffread.c (coff_symfile_read): Adjust to std::string.
11881         * elfread.c (elf_symfile_read): Adjust to std::string.
11882         * symfile.c (separate_debug_file_exists): Change parameter to
11883         std::string.
11884         (find_separate_debug_file): Return std::string.
11885         (find_separate_debug_file_by_debuglink): Return std::string.
11886         * symfile.h (find_separate_debug_file_by_debuglink): Return
11887         std::string.
11888
11889 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11890
11891         * common/xml-utils.c (xml_escape_text): Move code to...
11892         (xml_escape_text_append): ... this new function.
11893         * common/xml-utils.h (xml_escape_text_append): New declaration.
11894         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
11895         New function.
11896         (_initialize_xml_utils): register test_xml_escape_text_append as
11897         a selftest.
11898
11899 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
11900
11901         * defs.h: Remove MAX_REGISTER_SIZE.
11902         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
11903         asserts.
11904         * python/py-unwind.c (pyuw_sniffer): Likewise.
11905
11906 2018-03-07  Tom Tromey  <tom@tromey.com>
11907
11908         * linux-tdep.c (linux_info_proc): Update.
11909         * target.h (struct target_ops) <to_fileio_readlink>: Return
11910         optional<string>.
11911         (target_fileio_readlink): Return optional<string>.
11912         * remote.c (remote_hostio_readlink): Return optional<string>.
11913         * inf-child.c (inf_child_fileio_readlink): Return
11914         optional<string>.
11915         * target.c (target_fileio_readlink): Return optional<string>.
11916
11917 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
11918
11919         * regcache.c (cooked_read_test): Add riscv to the list of
11920         architectures that have a save_reggroup.
11921
11922 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11923
11924         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
11925         value is not a dynamic class object.
11926
11927 2018-03-06  Tom Tromey  <tom@tromey.com>
11928
11929         * rust-exp.y: Formatting fixes.
11930
11931 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11932
11933         * riscv-tdep.c (riscv_register_name): Remove target description
11934         support.
11935         (riscv_gdbarch_init): Remove target description check.
11936
11937 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11938
11939         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
11940         comment.
11941         * riscv-tdep.h: Likewise.
11942
11943 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11944
11945         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
11946         (riscv_pseudo_register_write): Delete.
11947         (riscv_gdbarch_init): Remove all use of pseudo registers.
11948
11949 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11950
11951         * record-btrace.c (btrace_print_lines): Replace cleanup
11952         parameter with RAII equivalents.
11953         (btrace_insn_history): Replace cleanup with RAII equivalents.
11954         * ui-out.h (make_cleanup_ui_out_list_begin_end,
11955         make_cleanup_ui_out_tuple_begin_end): Remove.
11956         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
11957         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
11958         make_cleanup_ui_out_list_begin_end): Remove.
11959
11960 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11961
11962         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
11963         parameter types to std::vector.  Use bool.
11964         (record_btrace_wait): Replace VEC(tp_t) with
11965         std::vector<thread_info *>.
11966         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
11967
11968 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11969
11970         * record-btrace.c (record_btrace_disable_callback): Remove.
11971         (struct scoped_btrace_disable): New.
11972         (record_btrace_open): Use scoped_btrace_disable.
11973
11974 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11975
11976         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
11977         reading values from registers.
11978
11979 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11980
11981         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
11982         where appropriate.
11983
11984 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11985
11986         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
11987         change parameter type.  Use GDB's print functions, and use
11988         core_addr_to_string where appropriate.
11989         (riscv_push_dummy_call): Use core_addr_to_string where
11990         appropriate, update call to riscv_print_arg_location, and reindent
11991         a few lines.
11992         (riscv_return_value): Update call to riscv_print_arg_location.
11993
11994 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11995             Tim Newsome <tim@sifive.com>
11996             Albert Ou <a0u@eecs.berkeley.edu>
11997             Darius Rad <darius@bluespec.com>
11998
11999         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12000         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12001         (ALLDEPFILES): Add riscv-tdep.c
12002         * configure.tgt: Add riscv support.
12003         * riscv-tdep.c: New file.
12004         * riscv-tdep.h: New file.
12005         * NEWS: Mention new target.
12006         * MAINTAINERS: Add entry for riscv.
12007
12008 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12009
12010         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12011         fields within aggregates.
12012
12013 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12014
12015         * record-btrace.c (btrace_print_lines): Change type of flags to
12016         gdb_disassembly_flags.
12017
12018 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12019
12020         * fbsd-nat.c: Include "inf-ptrace.h".
12021         (USE_SIGTRAP_SIGINFO): Conditionally define.
12022         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12023         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12024         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12025         function.
12026         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12027         Likewise.
12028         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12029         Likewise.
12030         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12031         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12032         "supports_stopped_by_hw_breakpoint" target methods.
12033
12034 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12035
12036         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12037         * fbsd-nat.c (debug_fbsd_nat): New variable.
12038         (show_fbsd_nat_debug): New function.
12039         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12040         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12041
12042 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12043
12044         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12045         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12046         prototype.
12047         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12048         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12049         method.
12050
12051 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12052
12053         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12054         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12055
12056 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12057
12058         * charset.c (struct charset_vector): New.
12059         (charsets): Change type to charset_vector.
12060         (find_charset_names): Adjust.
12061         (add_one): Adjust.
12062         (_initialize_charset): Adjust.
12063
12064 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12065
12066         * progspace.h (struct program_space) <deleted_solibs>: Change
12067         type to std::vector<std::string>.
12068         * progspace.c (clear_program_space_solib_cache): Adjust.
12069         * breakpoint.c (print_solib_event): Adjust.
12070         (check_status_catch_solib): Adjust.
12071         * solib.c (update_solib_list): Adjust.
12072         * ui-out.h (class ui_out) <field_string>: New overload.
12073         * ui-out.c (ui_out::field_string): New overload.
12074
12075 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12076
12077         * progspace.h (struct program_space): Add constructor and
12078         destructor, initialize fields.
12079         (add_program_space): Remove.
12080         * progspace.c (add_program_space): Rename to...
12081         (program_space::program_space): ... this.
12082         (release_program_space): Rename to...
12083         (program_space::~program_space): ... this.
12084         (delete_program_space): Use delete to delete program_space.
12085         (initialize_progspace): Use new to allocate program_space.
12086         * inferior.c (add_inferior_with_spaces): Likewise.
12087         (clone_inferior_command): Likewise.
12088         * infrun.c (follow_fork_inferior): Likewise.
12089         (handle_vfork_child_exec_or_exit): Likewise.
12090
12091 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12092
12093         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12094         (delim_string_to_char_ptr_vec): Return std::vector of
12095         gdb::unique_xmalloc_ptr.
12096         (dirnames_to_char_ptr_vec_append): Take std::vector of
12097         gdb::unique_xmalloc_ptr.
12098         (dirnames_to_char_ptr_vec): Return std::vector of
12099         gdb::unique_xmalloc_ptr.
12100         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12101         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12102         (delim_string_to_char_ptr_vec): Return an std::vector of
12103         gdb::unique_xmalloc_ptr, adjust the code.
12104         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12105         gdb::unique_xmalloc_ptr, adjust the code.
12106         (dirnames_to_char_ptr_vec): Return an std::vector of
12107         gdb::unique_xmalloc_ptr, adjust the code.
12108         * auto-load.c (auto_load_safe_path_vec): Change type to
12109         std::vector of gdb::unique_xmalloc_ptr.
12110         (auto_load_expand_dir_vars): Return an std::vector of
12111         gdb::unique_xmalloc_ptr, adjust the code.
12112         (auto_load_safe_path_vec_update): Adjust.
12113         (filename_is_in_auto_load_safe_path_vec): Adjust.
12114         (auto_load_objfile_script_1): Adjust.
12115         * build-id.c (build_id_to_debug_bfd): Adjust.
12116         * linux-thread-db.c (thread_db_load_search): Adjust.
12117         * source.c (add_path): Adjust.
12118         (openp): Adjust.
12119         * symfile.c (find_separate_debug_file): Adjust.
12120         * utils.c (do_free_char_ptr_vec): Remove.
12121         (make_cleanup_free_char_ptr_vec): Remove.
12122
12123 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12124
12125         PR gdb/22907
12126         * common/pathstuff.c: Conditionally include "<windows.h>".
12127
12128 2018-03-01  Georg Sauthoff  <mail@georg.so>
12129
12130         PR gdb/22888
12131         * gcore.in: Quote variables and switch interpreter to bash.
12132
12133 2018-03-01  Tom Tromey  <tom@tromey.com>
12134
12135         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12136         assertion.  Add assertion for discriminant_index.
12137         (quirk_rust_enum): Use correct base type name in univariant case.
12138
12139 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12140
12141         * record.c (get_call_history_modifiers): Return a
12142         record_print_flags.
12143         (cmd_record_call_history): Adjust.
12144         * record-btrace.c (record_btrace_call_history): Adjust.
12145         (record_btrace_call_history_range): Adjust.
12146         (record_btrace_call_history_from): Adjust.
12147         * target-debug.h (target_debug_print_record_print_flags): New.
12148         * target-delegates.c: Re-generate.
12149         * target.c (target_call_history): Change flags type.
12150         (target_call_history_from): Likewise.
12151         (target_call_history_range): Likewise.
12152         * target.h (struct target_ops) <target_call_history>: Likewise.
12153         (target_call_history_from): Likewise.
12154         (target_call_history_range): Likewise.
12155
12156 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12157             Simon Marchi  <simon.marchi@polymtl.ca>
12158
12159         * common/common-utils.c: Include "sys/stat.h".
12160         (is_regular_file): Move here from "source.c"; change return
12161         type to "bool".
12162         * common/common-utils.h (is_regular_file): New prototype.
12163         * common/pathstuff.c (contains_dir_separator): New function.
12164         * common/pathstuff.h (contains_dir_separator): New prototype.
12165         * source.c: Don't include "sys/stat.h".
12166         (is_regular_file): Move to "common/common-utils.c".
12167
12168 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12169
12170         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12171         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12172         * auto-load.c: Include "common/pathstuff.h".
12173         * common/common-def.h (current_directory): Move here.
12174         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12175         function.
12176         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12177         prototype.
12178         * common/pathstuff.c: New file.
12179         * common/pathstuff.h: New file.
12180         * compile/compile.c: Include "common/pathstuff.h".
12181         * defs.h (current_directory): Move to "common/common-defs.h".
12182         * dwarf2read.c: Include "common/pathstuff.h".
12183         * exec.c: Likewise.
12184         * guile/scm-safe-call.c: Likewise.
12185         * linux-thread-db.c: Likewise.
12186         * main.c: Likewise.
12187         * nto-tdep.c: Likewise.
12188         * objfiles.c: Likewise.
12189         * source.c: Likewise.
12190         * symtab.c: Likewise.
12191         * utils.c: Include "common/pathstuff.h".
12192         (gdb_realpath): Move to "common/pathstuff.c".
12193         (gdb_realpath_keepfile): Likewise.
12194         (gdb_abspath): Likewise.
12195         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12196         (gdb_realpath_keepfile): Likewise.
12197         (gdb_abspath): Likewise.
12198
12199 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12200
12201         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12202         wildcard process pid for super_resume for kernels with a
12203         specific bug.
12204
12205 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12206
12207         * compile/compile.c (get_args): Add additional comments
12208         explaining function.
12209
12210 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12211             Tom Tromey  <tom@tromey.com>
12212
12213         * target.h (memory_write_request_s): Remove typedef.  Don't define
12214         VEC.
12215         (target_write_memory_blocks): Change argument to std::vector.
12216         (struct memory_write_request): Add constructor.
12217         * target-memory.c (compare_block_starting_address): Return bool.
12218         Change argument types.
12219         (claim_memory): Change arguments to use std::vector.
12220         (split_regular_and_flash_blocks, blocks_to_erase)
12221         (compute_garbled_blocks): Likewise.
12222         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12223         (target_write_memory_blocks): Change argument to std::vector.
12224         * symfile.c (struct load_section_data): Add constructor and
12225         destructor.  Use std::vector for "requests".
12226         (struct load_progress_data): Add initializers.
12227         (load_section_callback): Update.  Use "new".
12228         (clear_memory_write_data): Remove.
12229         (generic_load): Update.
12230
12231 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12232
12233         * arch/aarch64.h: Use common/tdesc.h.
12234
12235 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12236
12237         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
12238         architecture with a 64-bit ABI.
12239
12240 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12241
12242         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
12243         ahead of target description loading.
12244
12245 2018-02-26  Tom Tromey  <tom@tromey.com>
12246
12247         * stack.c (backtrace_command_1): Update.
12248         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
12249         of "flags".
12250         * python/py-framefilter.c (py_print_frame)
12251         (gdbpy_apply_frame_filter): Change type of "flags".
12252         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
12253         of "flags".
12254         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
12255         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
12256         * extension.h (enum frame_filter_flag): Rename from
12257         frame_filter_flags.
12258         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
12259         (apply_ext_lang_frame_filter): Change type of "flags".
12260         * extension.c (apply_ext_lang_frame_filter): Change type of
12261         "flags".
12262         * extension-priv.h (struct extension_language_ops)
12263         <apply_frame_filter>: Change type of "flags".
12264
12265 2018-02-26  Tom Tromey  <tom@tromey.com>
12266
12267         PR python/16497:
12268         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
12269         off-by-one in py_end computation.
12270         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
12271         PRINT_MORE_FRAMES.
12272         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
12273         constant.
12274
12275 2018-02-26  Tom Tromey  <tom@tromey.com>
12276
12277         * dwarf2read.c (struct variant_field): New.
12278         (struct nextfield) <variant>: New field.
12279         (dwarf2_add_field): Handle DW_TAG_variant_part.
12280         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
12281         discriminated union.
12282         (read_structure_type): Handle DW_TAG_variant_part.
12283         (handle_struct_member_die): New function, extracted from
12284         process_structure_scope.  Handle DW_TAG_variant.
12285         (process_structure_scope): Handle discriminated unions.  Call
12286         handle_struct_member_die.
12287
12288 2018-02-26  Tom Tromey  <tom@tromey.com>
12289
12290         * rust-lang.h (rust_last_path_segment): Declare.
12291         * rust-lang.c (rust_last_path_segment): Now public.  Change
12292         contract.
12293         (struct disr_info): Remove.
12294         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
12295         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
12296         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
12297         (rust_enum_p, rust_enum_variant): New function.
12298         (rust_underscore_fields): Remove "offset" parameter.
12299         (rust_print_enum): New function.
12300         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
12301         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
12302         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
12303         enums.
12304         (rust_internal_print_type): New function, from rust_print_type.
12305         Remove enum code.
12306         (rust_print_type): Call rust_internal_print_type.
12307         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
12308         Update enum handling.
12309         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
12310         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
12311         (rust_union_quirks): New functions.
12312         (process_full_comp_unit, process_full_type_unit): Call
12313         rust_union_quirks.
12314         (process_structure_scope): Update rust_unions if necessary.
12315
12316 2018-02-26  Tom Tromey  <tom@tromey.com>
12317
12318         * value.h (value_union_variant): Declare.
12319         * valops.c (value_union_variant): New function.
12320         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
12321         (struct discriminant_info): New.
12322         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
12323         enumerator.
12324         (struct main_type) <flag_discriminated_union>: New field.
12325
12326 2018-02-26  Tom Tromey  <tom@tromey.com>
12327
12328         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12329         unittests/unpack-selftests.c.
12330         * unittests/unpack-selftests.c: New file.
12331         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
12332
12333 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12334
12335         * dwarf2read.c (struct partial_die_info) <read>: New method.
12336         (read_partial_die): Remove the declaration.
12337         (load_partial_dies): Update.
12338         (partial_die_info::partial_die_info):
12339         (read_partial_die): Change it to partial_die_info::read.
12340
12341 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12342
12343         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
12344         (fixup_partial_die): Remove declaration.
12345         (scan_partial_symbols): Update.
12346         (partial_die_parent_scope): Likewise.
12347         (partial_die_full_name): Likewise.
12348         (fixup_partial_die): Change it to partial_die_info::fixup.
12349
12350 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12351
12352         * dwarf2read.c (read_partial_die): Update the declaration.
12353         (load_partial_dies): Caller update.
12354         (read_partial_die): Remove one argument abbrev_len.
12355
12356 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12357
12358         * dwarf2read.c (struct partial_die_info): Add ctor, delete
12359         assignment operator.
12360         (load_partial_dies): Use ctor and copy ctor.
12361         (read_partial_die): Update.
12362         (dwarf2_cu::find_partial_die): Use ctor.
12363
12364 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12365
12366         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
12367         (find_partial_die_in_comp_unit): Change it to
12368         dwarf2_cu::find_partial_die.
12369         (find_partial_die): Update.
12370
12371 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12372
12373         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
12374         is NULL.
12375
12376 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12377
12378         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
12379
12380 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
12381
12382         * arch/amd64.h: Use common/tdesc.h.
12383         * arch/i386.c: Likewise.
12384         * arch/i386.h: Likewise.
12385         * arch/tic6x.c: Likewise.
12386         * arch/tdesc.h: Move file from here...
12387         * common/tdesc.h: ...to here.
12388         * features/aarch64-core.c: Regenerate.
12389         * features/aarch64-fpu.c: Regenerate.
12390         * features/i386/32bit-avx.c: Regenerate.
12391         * features/i386/32bit-avx512.c: Regenerate.
12392         * features/i386/32bit-core.c: Regenerate.
12393         * features/i386/32bit-linux.c: Regenerate.
12394         * features/i386/32bit-mpx.c: Regenerate.
12395         * features/i386/32bit-pkeys.c: Regenerate.
12396         * features/i386/32bit-sse.c: Regenerate.
12397         * features/i386/64bit-avx.c: Regenerate.
12398         * features/i386/64bit-avx512.c: Regenerate.
12399         * features/i386/64bit-core.c: Regenerate.
12400         * features/i386/64bit-linux.c: Regenerate.
12401         * features/i386/64bit-mpx.c: Regenerate.
12402         * features/i386/64bit-pkeys.c: Regenerate.
12403         * features/i386/64bit-segments.c: Regenerate.
12404         * features/i386/64bit-sse.c: Regenerate.
12405         * features/i386/x32-core.c: Regenerate.
12406         * features/tic6x-c6xp.c: Regenerate.
12407         * features/tic6x-core.c: Regenerate.
12408         * features/tic6x-gp.c: Regenerate.
12409         * target-descriptions.c: Use common/tdesc.h.
12410         * target-descriptions.h: Likewise.
12411
12412 2018-02-24  Tom Tromey  <tom@tromey.com>
12413
12414         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
12415         (try_thread_db_load_from_dir, thread_db_load_search): Use
12416         std::string.
12417         (info_auto_load_libthread_db_compare): Return bool.  Change
12418         argument types.
12419         (info_auto_load_libthread_db): Use std::vector, std::string.
12420         Remove cleanups.
12421
12422 2018-02-24  Tom Tromey  <tom@tromey.com>
12423
12424         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
12425         std::string.
12426         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
12427         std::string*.
12428         * gdbarch.c: Rebuild.
12429         * gdbarch.h: Rebuild.
12430         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
12431         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
12432         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
12433         std::string*.
12434
12435 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
12436
12437         * gdbtypes.h (sect_offset): Change type to uint64_t.
12438         (sect_offset_str): New function.
12439         * dwarf2read.c (create_addrmap_from_aranges): Use
12440         sect_offset_str.
12441         (error_check_comp_unit_head): Likewise.
12442         (create_debug_type_hash_table): Likewise.
12443         (read_cutu_die_from_dwo): Likewise.
12444         (init_cutu_and_read_dies): Likewise.
12445         (init_cutu_and_read_dies_no_follow): Likewise.
12446         (process_psymtab_comp_unit_reader): Likewise.
12447         (partial_die_parent_scope): Likewise.
12448         (peek_die_abbrev): Likewise.
12449         (process_queue): Likewise.
12450         (dwarf2_physname): Likewise.
12451         (read_namespace_alias): Likewise.
12452         (read_import_statement): Likewise.
12453         (create_dwo_cu_reader): Likewise.
12454         (create_cus_hash_table): Likewise.
12455         (lookup_dwo_cutu): Likewise.
12456         (inherit_abstract_dies): Likewise.
12457         (read_func_scope): Likewise.
12458         (read_call_site_scope): Likewise.
12459         (dwarf2_add_member_fn): Likewise.
12460         (read_common_block): Likewise.
12461         (read_module_type): Likewise.
12462         (read_typedef): Likewise.
12463         (read_subrange_type): Likewise.
12464         (load_partial_dies): Likewise.
12465         (read_partial_die): Likewise.
12466         (find_partial_die): Likewise.
12467         (read_str_index): Likewise.
12468         (dwarf2_string_attr): Likewise.
12469         (build_error_marker_type): Likewise.
12470         (lookup_die_type): Likewise.
12471         (dump_die_shallow): Likewise.
12472         (follow_die_ref): Likewise.
12473         (dwarf2_fetch_die_loc_sect_off): Likewise.
12474         (dwarf2_fetch_constant_bytes): Likewise.
12475         (follow_die_sig): Likewise.
12476         (get_signatured_type): Likewise.
12477         (get_DW_AT_signature_type): Likewise.
12478         (dwarf2_find_containing_comp_unit): Likewise.
12479         (set_die_type): Likewise.
12480
12481 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
12482
12483         * arch/aarch64.c: Include "common-defs.h".
12484         * arch/amd64.c: Likewise.
12485         * arch/i386.c: Likewise.
12486
12487 2018-02-21  Tom Tromey  <tom@tromey.com>
12488
12489         * value.h: (extract_field_op): Update.
12490         * eval.c (extract_field_op): Return a const char *.
12491         * expression.h (parse_expression_for_completion): Update.
12492         * completer.c (complete_expression): Update.
12493         (add_struct_fields): Make fieldname const.
12494         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
12495         (mark_completion_tag, parse_exp_in_context_1): Update.
12496         (parse_expression_for_completion): Change "name" to
12497         unique_xmalloc_ptr*.
12498
12499 2018-02-21  Tom Tromey  <tom@tromey.com>
12500
12501         * infcall.c (call_function_by_hand_dummy): Use std::vector.
12502
12503 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12504
12505         * avr-tdep.c (avr_read_pc): Change parameter type to
12506         readable_regcache.
12507         * gdbarch.sh (read_pc): Likewise.
12508         * gdbarch.c: Re-generated.
12509         * gdbarch.h: Re-generated.
12510         * hppa-tdep.c (hppa_read_pc): Change parameter type to
12511         readable_regcache.
12512         * ia64-tdep.c (ia64_read_pc): Likewise.
12513         * mips-tdep.c (mips_read_pc): Likewise.
12514         * spu-tdep.c (spu_read_pc): Likewise.
12515
12516 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12517
12518         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
12519         * regcache-dump.c: New file.
12520         * regcache.c: Move register_dump to regcache-dump.c.
12521         (maintenance_print_registers): Likewise.
12522         (maintenance_print_raw_registers): Likewise.
12523         (maintenance_print_cooked_registers): Likewise.
12524         (maintenance_print_register_groups): Likewise.
12525         (maintenance_print_remote_registers): Likewise.
12526         (_initialize_regcache): Likewise.
12527         * regcache.h (register_dump): Moved from regcache.c.
12528
12529 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12530
12531         * regcache.c (regcache::regcache): Update.
12532         (regcache::invalidate): Move it to detached_regcache::invalidate.
12533         (get_thread_arch_aspace_regcache): Update.
12534         (regcache::raw_update): Update.
12535         (regcache::cooked_read): Remove some code.
12536         (regcache::cooked_read_value): Likewise.
12537         (regcache::raw_write): Remove assert on m_readonly_p.
12538         (regcache::raw_supply_integer): Move it to
12539         detached_regcache::raw_supply_integer.
12540         (regcache::raw_supply_zeroed): Likewise.
12541         * regcache.h (detached_regcache) <raw_supply_integer>: New
12542         declaration.
12543         <raw_supply_zeroed, invalidate>: Likewise.
12544         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
12545         <invalidate>: Likewise.
12546         <m_readonly_p>: Removed.
12547
12548 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12549
12550         * infcmd.c (get_return_value): Let stop_regs point to
12551         get_current_regcache.
12552         * regcache.c (regcache::regcache): Remove.
12553         (register_dump_reg_buffer): New class.
12554         (regcache_print): Adjust.
12555         * regcache.h (regcache): Remove constructors.
12556
12557 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12558
12559         * regcache.c (class register_dump): New class.
12560         (register_dump_regcache, register_dump_none): New class.
12561         (register_dump_remote, register_dump_groups): New class.
12562         (regcache_print): Update.
12563         * regcache.h (regcache_dump_what): Move it to regcache.c.
12564         (regcache) <dump>: Remove.
12565
12566 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12567
12568         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
12569          reg_buffer_rw *.
12570         (jit_unwind_reg_set_impl): Call raw_supply.
12571         (jit_frame_sniffer): Use reg_buffer_rw.
12572         * record-full.c (record_full_core_regbuf): Change its type.
12573         (record_full_core_open_1): Use reg_buffer_rw.
12574         (record_full_close): Likewise.
12575         (record_full_core_fetch_registers): Use regcache->raw_supply.
12576         (record_full_core_store_registers): Likewise.
12577         * regcache.c (regcache::get_register_status): Move it to
12578         reg_buffer.
12579         (regcache_raw_set_cached_value): Remove.
12580         (regcache::raw_set_cached_value): Remove.
12581         (regcache::raw_write): Call raw_supply.
12582         (regcache::raw_supply): Move it to reg_buffer_rw.
12583         * regcache.h (regcache_raw_set_cached_value): Remove.
12584         (reg_buffer_rw): New class.
12585
12586 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12587
12588         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
12589         readonly_detached_regcache.
12590         (dummy_frame_prev_register): Use regcache->cooked_read.
12591         * frame.c (frame_save_as_regcache): Change return type.
12592         (frame_pop): Update.
12593         * frame.h (frame_save_as_regcache): Update declaration.
12594         * inferior.h (get_infcall_suspend_state_regcache): Update
12595         declaration.
12596         * infrun.c (infcall_suspend_state) <registers>: use
12597         readonly_detached_regcache.
12598         (save_infcall_suspend_state): Don't use regcache_dup.
12599         (get_infcall_suspend_state_regcache): Change return type.
12600         * linux-fork.c (struct fork_info) <savedregs>: Change to
12601         readonly_detached_regcache.
12602         <pc>: New field.
12603         (fork_save_infrun_state): Don't use regcache_dup.
12604         (info_checkpoints_command): Adjust.
12605         * mi/mi-main.c (register_changed_p): Update declaration.
12606         (mi_cmd_data_list_changed_registers): Use
12607         readonly_detached_regcache.
12608         (register_changed_p): Change parameter type to
12609         readonly_detached_regcache.
12610         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
12611         readonly_detached_regcache.
12612         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
12613         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
12614         New.
12615         (regcache::save): Move it to reg_buffer.
12616         (regcache::restore): Change parameter type.
12617         (regcache_dup): Remove.
12618         * regcache.h (reg_buffer) <save>: New method.
12619         (readonly_detached_regcache): New class.
12620         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
12621         readonly_detached_regcache.
12622         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
12623
12624 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12625
12626         * frame.c (frame_save_as_regcache): Use regcache method save.
12627         (frame_pop): Use regcache method restore.
12628         * infrun.c (restore_infcall_suspend_state): Likewise.
12629         * linux-fork.c (fork_load_infrun_state): Likewise.
12630         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
12631         save.
12632         * regcache.c (regcache_save): Remove.
12633         (regcache::restore): More asserts.
12634         (regcache_cpy): Remove.
12635         * regcache.h (regcache_save): Remove the declaration.
12636         (regcache::restore): Move from private to public.
12637         Remove the friend declaration of regcache_cpy.
12638         (regcache_cpy): Remove declaration.
12639
12640 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12641
12642         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
12643         parameter type to 'readable_regcache *'.
12644         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12645         * arm-tdep.c (arm_neon_quad_read): Likewise.
12646         (arm_pseudo_read): Likewise.
12647         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12648         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12649         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12650         * gdbarch.c: Re-generated.
12651         * gdbarch.h: Re-generated.
12652         * gdbarch.sh (pseudo_register_read): Change parameter type to
12653         'readable_regcache *'.
12654         (pseudo_register_read_value): Likewise.
12655         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
12656         (h8300_pseudo_register_read): Likewise.
12657         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
12658         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12659         (i386_pseudo_register_read_into_value): Likewise.
12660         (i386_pseudo_register_read_value): Likewise.
12661         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
12662         declaration.
12663         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
12664         * m32c-tdep.c (m32c_raw_read): Likewise.
12665         (m32c_read_flg): Likewise.
12666         (m32c_banked_register): Likewise.
12667         (m32c_banked_read): Likewise.
12668         (m32c_sb_read): Likewise.
12669         (m32c_part_read): Likewise.
12670         (m32c_cat_read): Likewise.
12671         (m32c_r3r2r1r0_read): Likewise.
12672         (m32c_pseudo_register_read): Likewise.
12673         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12674         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12675         (mep_pseudo_cr64_read): Likewise.
12676         (mep_pseudo_register_read): Likewise.
12677         * mips-tdep.c (mips_pseudo_register_read): Likewise.
12678         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12679         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12680         * regcache.c (regcache::raw_read): Move it to readable_regcache.
12681         (regcache::cooked_read): Likewise.
12682         (regcache::cooked_read_value): Likewise.
12683         (regcache_cooked_read_signed):
12684         (regcache::cooked_read): Likewise.
12685         * regcache.h (readable_regcache): New class.
12686         (regcache): Inherit readable_regcache.  Move some methods to
12687         readable_regcache.
12688         * rl78-tdep.c (rl78_pseudo_register_read): Change
12689         parameter type to 'readable_regcache *'.
12690         * rs6000-tdep.c (do_regcache_raw_read): Remove.
12691         (e500_pseudo_register_read): Change parameter type to
12692         'readable_regcache *'.
12693         (dfp_pseudo_register_read): Likewise.
12694         (vsx_pseudo_register_read): Likewise.
12695         (efpr_pseudo_register_read): Likewise.
12696         * s390-tdep.c (s390_pseudo_register_read): Likewise.
12697         * sh-tdep.c (sh_pseudo_register_read): Likewise.
12698         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
12699         (sh64_pseudo_register_read): Likewise.
12700         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
12701         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12702         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
12703         (spu_pseudo_register_read): Likewise.
12704         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12705         (xtensa_pseudo_register_read): Likewise.
12706
12707 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12708
12709         * regcache.c (regcache::regcache): Call reg_buffer ctor.
12710         (regcache::arch): Move it to reg_buffer::arch.
12711         (regcache::register_buffer): Likewise.
12712         (regcache::assert_regnum): Likewise.
12713         (regcache::num_raw_registers): Likewise.
12714         * regcache.h (reg_buffer): New class.
12715         (regcache): Inherit reg_buffer.
12716
12717 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
12718
12719         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
12720         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
12721
12722 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
12723
12724         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
12725
12726 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
12727
12728         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
12729         (SFILES): Remove common/*.c files.
12730         (COMMON_OBS): Remove some *.o files built from common/*.c files.
12731         * common/common.host: Add common reference.
12732         * configure.ac: Likewise.
12733         * configure: Regenerate.
12734
12735 2018-02-16  Yao Qi  <yao.qi@linaro.org>
12736
12737         * block.c (block_namespace_info): Inherit allocate_on_obstack.
12738         (block_initialize_namespace): Use new.
12739         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
12740         (dwarf2_free_objfile): Use delete.
12741         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
12742         (copy_type_recursive): Use new.
12743         * gdb_obstack.h (allocate_on_obstack): New.
12744
12745 2018-02-15  Yao Qi  <yao.qi@linaro.org>
12746
12747         PR gdb/22849
12748         * inferior.c (exit_inferior_1): Reset inf->control.
12749
12750 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
12751
12752         * ada-lang.c (ada_to_fixed_value_create): Delete advance
12753         declaration.
12754
12755 2018-02-14  Pedro Alves  <palves@redhat.com>
12756
12757         * frame-unwind.c (frame_unwind_try_unwinder): Always call
12758         frame_cleanup_after_sniffer on exception.
12759
12760 2018-02-14  Tom Tromey  <tom@tromey.com>
12761
12762         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
12763         const.
12764         (solib_bfd_open): Make pathname const.
12765         * solib.c (solib_bfd_open): Make pathname const.
12766         * solib-spu.c (spu_bfd_fopen): Make name const.
12767         (spu_bfd_open): Make pathname const.
12768         * solib-darwin.c (darwin_bfd_open): Make pathname const.
12769         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
12770
12771 2018-02-14  Tom Tromey  <tom@tromey.com>
12772
12773         * symfile.c (symfile_bfd_open): Update.
12774         * source.h (openp, source_full_path_of, find_and_open_source):
12775         Change argument type to unique_xmalloc_ptr.
12776         * source.c (openp): Take a unique_xmalloc_ptr.
12777         (source_full_path_of, find_and_open_source): Likewise.
12778         (open_source_file, symtab_to_fullname): Update.
12779         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
12780         unique_xmalloc_ptr.
12781         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
12782         (exec_file_find): Update.
12783         * psymtab.c (psymtab_to_fullname): Update.
12784         * nto-tdep.h (nto_find_and_open_solib): Update.
12785         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
12786         unique_xmalloc_ptr.
12787         * exec.c (exec_file_attach): Update.
12788         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
12789         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
12790
12791 2018-02-14  Tom Tromey  <tom@tromey.com>
12792
12793         * solib.c: Include source.h.
12794         * nto-tdep.c: Include source.h.
12795         * mi/mi-cmd-env.c: Include source.h.
12796         * infcmd.c: Include source.h.
12797         * exec.c: Include source.h.
12798         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
12799         (add_path, directory_switch, source_path, init_source_path): Move
12800         declarations...
12801         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
12802         (add_path, directory_switch, source_path, init_source_path):
12803         ...here.
12804
12805 2018-02-14  Tom Tromey  <tom@tromey.com>
12806
12807         * solist.h (exec_file_find, solib_find): Return
12808         unique_xmalloc_ptr.
12809         (solib_bfd_fopen): Take a const char *.
12810         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
12811         (exec_file_find, solib_find): Likewise.
12812         (solib_bfd_fopen): Do not take ownership of "pathname".
12813         (solib_bfd_open): Use unique_xmalloc_ptr.
12814         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
12815         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
12816         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
12817         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
12818
12819 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
12820
12821         * ada-lang.c (name_match_type_from_name): Remove reference to
12822         ada_name_for_lookup in function's documentation.
12823         * ada-lang.h (ada_name_for_lookup): Delete declaration.
12824
12825 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
12826
12827         * defs.h (enum openp_flags): New enum.
12828         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
12829         Move to enum openp_flags.
12830         (openp_flags): New enum flags.
12831         (openp): Change parameter type to openp_flags.
12832         * source.c (openp): Change parameter type to openp_flags.
12833         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
12834         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
12835
12836 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
12837
12838         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
12839         per-command.
12840
12841 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12842
12843         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
12844         into...
12845         (class dwarf2_queue_guard): ...the destructor of this new class.
12846         (dw2_do_instantiate_symtab): Create instance of the new class
12847         dwarf2_queue_guard, remove cleanup.
12848
12849 2018-02-09  Tom Tromey  <tom@tromey.com>
12850
12851         * source.c (find_source_lines): Don't reference past the end of
12852         the vector.
12853
12854 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12855
12856         * remote.c (remote_btrace_maybe_reopen): Change error message.
12857         * btrace.c (btrace_enable): Likewise.
12858         (parse_xml_btrace): Likewise.
12859         (parse_xml_btrace_conf): Likewise.
12860
12861 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12862
12863         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
12864         (linux_enable_pt, linux_enable_bts): Call
12865         diagnose_perf_event_open_fail.
12866
12867 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12868
12869         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
12870         Remove parameter and change return type.  Update callers.  Move it.
12871         (linux_enable_bts, linux_enable_pt): Improve error message.
12872         (linux_enable_pt): Remove zero buffer size check.
12873         (linux_enable_btrace): Improve error messages.  Remove NULL return
12874         check.
12875
12876 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12877
12878         * btrace.c (btrace_enable): Remove target_supports_btrace call.
12879         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
12880         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
12881         (linux_supports_pt, linux_supports_btrace): Remove.
12882         (linux_enable_bts): Call cpu_supports_bts.
12883         * nat/linux-btrace.h (linux_supports_btrace): Remove.
12884         * remote.c (remote_supports_btrace): Remove.
12885         (init_remote_ops): Remove remote_supports_btrace.
12886         * target-delegates.c: Regenerated.
12887         * target.c (target_supports_btrace): Remove.
12888         * target.h (target_ops) <to_supports_btrace>: Remove
12889         (target_supports_btrace): Remove.
12890         * x86-linux-nat.c (x86_linux_create_target): Remove
12891         linux_supports_btrace.
12892
12893 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12894
12895         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
12896         btrace failed.
12897         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
12898         exception and use message in own exception.
12899
12900 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12901
12902         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
12903         (perf_event_pt_event_type): Use gdb_file_up.
12904         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
12905         scoped_fd, and scoped_mmap.
12906
12907 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12908
12909         * common/scoped_mmap.h: New.
12910         * unittests/scoped_mmap-selftest.c: New.
12911         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12912         unittests/scoped_mmap-selftest.c.
12913
12914 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12915
12916         * common/scoped_fd.h: New.
12917         * unittests/scoped_fd-selftest.c: New.
12918         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12919         unittests/scoped_fd-selftest.c.
12920
12921 2018-02-09  Tom Tromey  <tom@tromey.com>
12922
12923         * auto-load.c (auto_load_section_scripts): Use
12924         gdb::unique_xmalloc_ptr.
12925
12926 2018-02-09  Tom Tromey  <tom@tromey.com>
12927
12928         * auto-load.c (execute_script_contents): Use std::string.
12929
12930 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
12931
12932         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
12933         Python function, rather than a new command.
12934
12935 2018-02-08  Tom Tromey  <tom@tromey.com>
12936
12937         * solib.c (solib_find_1): Use std::string.
12938         (solib_bfd_fopen): Use unique_xmalloc_ptr.
12939
12940 2018-02-08  Tom Tromey  <tom@tromey.com>
12941
12942         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
12943
12944 2018-02-08  Tom Tromey  <tom@tromey.com>
12945
12946         * source.c (find_source_lines): Use gdb::def_vector.
12947
12948 2018-02-08  Tom Tromey  <tom@tromey.com>
12949
12950         * macrocmd.c (struct temporary_macro_definition): New.
12951         (macro_define_command): Use temporary_macro_definition.  Remove
12952         cleanups.
12953         (free_macro_definition_ptr): Remove.
12954
12955 2018-02-08  Tom Tromey  <tom@tromey.com>
12956
12957         * macroexp.c (maybe_expand): Use std::string.
12958
12959 2018-02-08  Tom Tromey  <tom@tromey.com>
12960
12961         * macroexp.c (struct macro_buffer): Add initializers for some
12962         members.
12963         (init_buffer, init_shared_buffer, free_buffer)
12964         (free_buffer_return_text): Remove.
12965         (macro_buffer): New constructors.
12966         (~macro_buffer): New destructor.
12967         (macro_buffer::set_shared): New method.
12968         (macro_buffer::resize_buffer, macro_buffer::appendc)
12969         (macro_buffer::appendmem): Now methods, not free functions.
12970         (set_token, append_tokens_without_splicing, stringify)
12971         (macro_stringify): Update.
12972         (gather_arguments): Change return type.  Remove argc_p argument,
12973         add args_ptr argument.  Use std::vector.
12974         (substitute_args): Remove argc argument.  Accept std::vector.
12975         (expand): Update.  Use std::vector.
12976         (scan, macro_expand, macro_expand_next): Update.
12977
12978 2018-02-08  Tom Tromey  <tom@tromey.com>
12979
12980         * symtab.c (default_collect_symbol_completion_matches_break_on):
12981         Use unique_xmalloc_ptr.
12982         * macroscope.h: (sal_macro_scope, user_macro_scope)
12983         (default_macro_scope): Return unique_xmalloc_ptr.
12984         * macroscope.c (sal_macro_scope, user_macro_scope)
12985         (default_macro_scope): Return unique_xmalloc_ptr.
12986         * macroexp.h (macro_expand, macro_expand_once): Return
12987         unique_xmalloc_ptr.
12988         * macroexp.c (macro_expand, macro_expand_once): Return
12989         unique_xmalloc_ptr.
12990         * macrocmd.c (macro_expand_command, macro_expand_once_command)
12991         (info_macro_command, info_macros_command): Use
12992         unique_xmalloc_ptr.
12993         * compile/compile-c-support.c (write_macro_definitions): Use
12994         unique_xmalloc_ptr.
12995         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
12996
12997 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
12998
12999         * value.c (value_static_field): Assign field type instead of
13000         containing type when returning an optimized out value.
13001
13002 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13003
13004         * ft32-tdep.c (ft32_read_pc): Remove.
13005         (ft32_write_pc): Remove.
13006         (ft32_gdbarch_init): Update.
13007         * m32r-tdep.c (m32r_read_pc): Remove.
13008         (m32r_gdbarch_init): Update.
13009         * mep-tdep.c (mep_read_pc): Remove.
13010         (mep_gdbarch_init): Update.
13011         * microblaze-tdep.c (microblaze_write_pc): Remove.
13012         (microblaze_gdbarch_init): Update.
13013         * mn10300-tdep.c (mn10300_read_pc): Remove.
13014         (mn10300_write_pc): Remove.
13015         (mn10300_gdbarch_init): Update.
13016         * moxie-tdep.c (moxie_read_pc): Remove.
13017         (moxie_write_pc): Remove.
13018         (moxie_gdbarch_init): Update.
13019
13020 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13021
13022         * expprint.c (print_subexp_standard): Handle
13023         OP_F77_UNDETERMINED_ARGLIST.
13024         (dump_subexp_body_standard): Likewise.
13025
13026 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13027
13028         * target-descriptions.c (tdesc_element_visitor) Add empty
13029         implementations.
13030         (tdesc_type): Move make_gdb_type from here.
13031         (tdesc_type_builtin): Likewise.
13032         (tdesc_type_vector): Likewise.
13033         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13034         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13035         (make_gdb_type_union): Likewise.
13036         (make_gdb_type_flags): Likewise.
13037         (make_gdb_type_enum): Likewise.
13038         (make_gdb_type): New function.
13039         (tdesc_register_type): Use static make_gdb_type.
13040
13041 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13042
13043         * infcmd.c (default_print_one_register_info): Align natural-format
13044         column values consistently one under another.
13045         (pad_to_column): New function.
13046
13047 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13048
13049         * dwarf2read.c (dwarf2_physname): Move commment.
13050
13051 2018-02-01  Leszek Swirski  <leszeks@google.com>
13052
13053         * varobj.c (varobj_formatted_print_options): Allow recursive
13054         pretty printing if pretty printing is enabled.
13055
13056 2018-02-01  Leszek Swirski  <leszeks@google.com>
13057
13058         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13059         names after a structop as a filename.
13060
13061 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13062
13063         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13064         (arm_record_coproc_data_proc): Likewise.
13065
13066 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13067
13068         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13069
13070 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13071
13072         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13073         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13074
13075 2018-01-31  Pedro Alves  <palves@redhat.com>
13076
13077         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13078         * inflow.c (child_terminal_save_inferior): Wrap reference to
13079         tcgetpgrp in HAVE_TERMIOS_H.
13080         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13081         _WIN32.
13082         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13083         always iterate over all inferiors.
13084         (gdbsim_cntrl_c): Adjust.
13085         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13086
13087 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13088
13089         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13090         index type is objfile-owned if the element type is as well.
13091
13092 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13093
13094         GDB 8.1 released.
13095
13096 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13097
13098         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13099         "features/s390x-linux64.c".
13100         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13101         s390_linux32 and s390x_linux64.
13102         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13103         default tdesc.
13104         * s390-tdep.c: Include "features/s390-linux32.c" and
13105         "features/s390x-linux64.c".
13106         (s390_tdesc_valid): Add check for tdesc_has_registers.
13107         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13108         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13109         tdesc_s390x_linux64.
13110         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13111         tdesc_s390x_linux64 to...
13112         * s390-tdep.h: ...here.
13113
13114 2018-01-30  Pedro Alves  <palves@redhat.com>
13115
13116         PR gdb/13211
13117         * config.in, configure: Regenerate.
13118         * configure.ac: Check for getpgid.
13119         * go32-nat.c (go32_pass_ctrlc): New.
13120         (go32_target): Install it.
13121         * inf-child.c (inf_child_target): Install
13122         child_terminal_save_inferior, child_pass_ctrlc and
13123         child_interrupt.
13124         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13125         (inf_ptrace_target): No longer install it.
13126         * infcmd.c (interrupt_target_1): Adjust.
13127         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13128         (child_interrupt): Declare.
13129         (inferior::terminal_state): New.
13130         * inflow.c (struct terminal_info): Update comments.
13131         (inferior_process_group): Delete.
13132         (terminal_is_ours): Delete.
13133         (gdb_tty_state): New.
13134         (child_terminal_init): Adjust.
13135         (is_gdb_terminal, sharing_input_terminal_1)
13136         (sharing_input_terminal): New functions.
13137         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13138         Set the process's actual process group in the foreground if
13139         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13140         mark terminal as the inferior's if not sharing GDB's terminal.
13141         Don't check attach_flag.
13142         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13143         pass down a target_terminal_state.
13144         (child_terminal_save_inferior): New, factored out from ...
13145         (child_terminal_ours_1): ... this.  Handle
13146         target_terminal_state::is_ours_for_output.
13147         (child_interrupt, child_pass_ctrlc): New.
13148         (inflow_inferior_exit): Clear the inferior's terminal_state.
13149         (copy_terminal_info): Copy the inferior's terminal state.
13150         (_initialize_inflow): Remove reference to terminal_is_ours.
13151         * inflow.h (inferior_process_group): Delete.
13152         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13153         * procfs.c (procfs_target): Don't install procfs_interrupt.
13154         (procfs_interrupt): Delete.
13155         * remote.c (remote_serial_quit_handler): Adjust.
13156         (remote_interrupt): Remove ptid parameter.  Adjust.
13157         * target-delegates.c: Regenerate.
13158         * target.c: Include "terminal.h".
13159         (target_terminal::terminal_state): Rename to ...
13160         (target_terminal::m_terminal_state): ... this.
13161         (target_terminal::init): Adjust.
13162         (target_terminal::inferior): Adjust to per-inferior
13163         terminal_state.
13164         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13165         (target_terminal::ours, target_terminal::ours_for_output): Use
13166         target_terminal_is_ours_kind.
13167         (target_interrupt): Remove ptid parameter.  Adjust.
13168         (default_target_pass_ctrlc): Adjust.
13169         * target.h (target_ops::to_terminal_save_inferior): New field.
13170         (target_ops::to_interrupt): Remove ptid_t parameter.
13171         (target_interrupt): Remove ptid_t parameter.  Update comment.
13172         (target_pass_ctrlc): Update comment.
13173         * target/target.h (target_terminal_state): New scoped enum,
13174         factored out of ...
13175         (target_terminal::terminal_state): ... here.
13176         (target_terminal::inferior): Update comments.
13177         (target_terminal::restore_inferior): New.
13178         (target_terminal::is_inferior, target_terminal::is_ours)
13179         (target_terminal::is_ours_for_output): Adjust.
13180         (target_terminal::scoped_restore_terminal_state): Adjust to
13181         rename, and call restore_inferior() instead of inferior().
13182         (target_terminal::scoped_restore_terminal_state::m_state): Change
13183         type.
13184         (target_terminal::terminal_state): Rename to ...
13185         (target_terminal::m_terminal_state): ... this and change type.
13186
13187 2018-01-30  Pedro Alves  <palves@redhat.com>
13188
13189         * linux-nat.c (wait_for_signal): New function.
13190         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13191         directly.
13192         (async_terminal_is_ours)
13193         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13194         (linux_nat_add_target): Don't override
13195         to_terminal_inferior/to_terminal_ours.
13196
13197 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13198
13199         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13200
13201 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13202
13203         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13204         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13205         dwarf2_per_objfile_free here.
13206         (dwarf2_per_objfile_free): Remove.
13207         (_initialize_dwarf2_read): Don't register
13208         dwarf2_per_objfile_free as a registry cleanup.
13209
13210 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13211
13212         Avoid compilation errors in MinGW native builds
13213
13214         The error is triggered by including python-internal.h, and the
13215         error message is:
13216
13217              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13218                       from build-gnulib/import/math.h:27,
13219                       from d:/usr/Python26/include/pyport.h:235,
13220                       from d:/usr/Python26/include/Python.h:58,
13221                       from python/python-internal.h:94,
13222                       from python/py-arch.c:24:
13223              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13224         using ::hypot;
13225                 ^~~~~
13226
13227         This happens because Python headers define 'hypot' to expand t
13228         '_hypot' in the Windows builds.
13229         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13230         'hypoth'.  This avoids a compilation error.
13231
13232 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13233
13234         * MAINTAINERS (Write After Approval): Fix ordering.
13235
13236 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13237
13238         * MAINTAINERS (Write After Approval): Add Alan Hayward.
13239
13240 2018-01-26  Alan Modra  <amodra@gmail.com>
13241
13242         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
13243         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
13244         Remove nop.  Make const.  Comment.
13245         (powerpc32_plt_stub_so_2): New.
13246         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
13247         Correct count.  Update uses.
13248         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
13249         Move common code reading PLT entry word.  Correct
13250         powerpc32_plt_stub PLT address calculation.
13251         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
13252         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
13253         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
13254         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
13255         (ppc64_standard_linkage8): Likewise.
13256         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
13257         Correct insns description.
13258         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
13259
13260 2018-01-24  Pedro Alves  <palves@redhat.com>
13261
13262         GCC PR libstdc++/83906
13263         * gdbtypes.c (operator==(const dynamic_prop &,
13264         const dynamic_prop &)): New.
13265         (operator==(const range_bounds &, const range_bounds &)): New.
13266         (check_types_equal): Use them instead of memcmp.
13267         * gdbtypes.h (operator==(const dynamic_prop &,
13268         const dynamic_prop &)): Declare.
13269         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
13270         (operator==(const range_bounds &, const range_bounds &)): Declare.
13271         (operator!=(const range_bounds &, const range_bounds &)): Declare.
13272
13273 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13274
13275         * s390-linux-tdep.c (s390_record_address_mask)
13276         (s390_record_calc_disp_common, s390_record_calc_disp)
13277         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13278         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13279         (s390_process_record): Move to s390-tdep.c.
13280         (s390_linux_init_abi_any): Adjust.
13281         * s390-tdep.c (s390_record_address_mask)
13282         (s390_record_calc_disp_common, s390_record_calc_disp)
13283         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13284         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13285         (s390_process_record): Moved from s390-linux-tdep.c
13286         (s390_gdbarch_init): Adjust.
13287
13288 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13289
13290         * s390-linux-nat.c (s390-tdep.h): New include.
13291         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
13292         (HFILES_NO_SRCDIR): Add s390-tdep.h.
13293         (ALLDEPFILES): Add s390-tdep.c.
13294         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
13295         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
13296         * s390-tdep.h: ...this.  New file.
13297         * s390-linux-tdep.c (s390-tdep.h): New include.
13298         (_initialize_s390_tdep): Rename to...
13299         (_initialize_s390_linux_tdep): ...this and adjust.
13300         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
13301         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
13302         s390-tdep.h.
13303         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
13304         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
13305         (s390_is_partial_instruction, s390_software_single_step)
13306         (is_non_branch_ril, s390_displaced_step_copy_insn)
13307         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
13308         (s390_prologue_data, s390_addr, s390_store, s390_load)
13309         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
13310         (s390_register_call_saved, s390_guess_tracepoint_registers)
13311         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
13312         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
13313         (s390_pseudo_register_name, s390_pseudo_register_type)
13314         (s390_pseudo_register_read, s390_pseudo_register_write)
13315         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
13316         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
13317         (s390_addr_bits_remove, s390_address_class_type_flags)
13318         (s390_address_class_type_flags_to_name)
13319         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
13320         (s390_function_arg_float, s390_function_arg_vector)
13321         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
13322         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
13323         (s390_frame_align, s390_register_return_value, s390_return_value)
13324         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
13325         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
13326         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
13327         (s390_trad_frame_prev_register, s390_unwind_cache)
13328         (s390_prologue_frame_unwind_cache)
13329         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
13330         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
13331         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
13332         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
13333         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
13334         (s390_frame_base_address, s390_local_base_address)
13335         (s390_frame_base, s390_gcc_target_options)
13336         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
13337         (s390_validate_reg_range, s390_tdesc_valid)
13338         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
13339         * s390-tdep.c: ...this.  New file.
13340
13341 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13342
13343         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
13344         (s390_process_record, s390_gdbarch_tdep_alloc)
13345         (s390_linux_init_abi_any): Use/set new hook.
13346
13347 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13348
13349         * s390-linux-tdep.c (osabi.h): New include.
13350         (s390_linux_init_abi_31, s390_linux_init_abi_64)
13351         (s390_linux_init_abi_any): New functions.
13352         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
13353
13354 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13355
13356         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
13357         tdesc_has_registers check
13358
13359 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13360
13361         * s390-linux-tdep.c (s390_tdesc_valid): New function.
13362         (s390_validate_reg_range): New macro.
13363         (s390_gdbarch_init): Adjust.
13364
13365 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13366
13367         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
13368         (s390_gdbarch_tdep_alloc): Adjust.
13369         (s390_gdbarch_init): Adjust.
13370
13371 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13372
13373         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
13374         <have_tdb>: Change type to bool.
13375         (s390_gdbarch_tdep_alloc): Adjust.
13376         (s390_gdbarch_init): Adjust.
13377
13378 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13379
13380         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
13381         (gdbarch_tdep) <have_upper, have_vx>: New fields.
13382         (s390_gdbarch_tdep_alloc): New function.
13383         (s390_gdbarch_init): Allocate tdep at start and use its fields
13384         instead of separate variables.
13385
13386 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13387
13388         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
13389         when looking for cached gdbarch and add comment for remaining.
13390
13391 2018-01-22  Pedro Alves  <palves@redhat.com>
13392             Sergio Durigan Junior  <sergiodj@redhat.com>
13393
13394         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
13395         case.
13396
13397 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
13398
13399         * MAINTAINERS: Update my company e-mail address.
13400
13401 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13402
13403         * regcache.c (cooked_write_test): New function.
13404         (_initialize_regcache): Register the test.
13405
13406 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13407
13408         * ia64-tdep.c (ia64_pseudo_register_read): Call
13409         regcache->cooked_read instead of regcache_cooked_read_unsigned.
13410         * m32c-tdep.c (m32c_cat_read): Likewise.
13411         (m32c_r3r2r1r0_read): Likewise.
13412         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13413         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13414
13415 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13416
13417         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
13418         method raw_read instead of regcache_raw_read.
13419         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13420         * arm-tdep.c (arm_neon_quad_read): Likewise.
13421         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13422         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13423         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13424         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
13425         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13426         (i386_pseudo_register_read_into_value): Likewise.
13427         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13428         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13429         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13430         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
13431         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
13432         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
13433         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13434         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
13435         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
13436
13437 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13438
13439         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
13440         * configure.tgt: Remove target mt.
13441         * mt-tdep.c: Remove.
13442         * regcache.c (cooked_read_test): Remove the check for mt.
13443
13444 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13445
13446         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
13447         instead of gdbarch_pseudo_register_read_value.
13448
13449 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13450
13451         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
13452         language is Ada.
13453
13454 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13455
13456         * linespec.c (create_sals_line_offset): Remove code that preserved
13457         the symtab_and_line's line number.
13458
13459 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13460
13461         * varobj.c (varobj_create): Don't set valid_block when creating a
13462         floating varobj.
13463
13464 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13465
13466         * varobj.c (varobj_create): Remove out of date comment.
13467
13468 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13469
13470         PR mi/20395
13471         * ada-exp.y (write_var_from_sym): Pass extra parameter when
13472         updating innermost block.
13473         * parse.c (innermost_block_tracker::update): Take extra type
13474         parameter, and check types match before updating innermost block.
13475         (write_dollar_variable): Update innermost block for registers.
13476         * parser-defs.h (enum innermost_block_tracker_type): New enum.
13477         (innermost_block_tracker::innermost_block_tracker): Initialise
13478         m_types member.
13479         (innermost_block_tracker::reset): Take type parameter.
13480         (innermost_block_tracker::update): Take type parameter, and pass
13481         type through as needed.
13482         (innermost_block_tracker::m_types): New member.
13483         * varobj.c (varobj_create): Pass type when reseting innermost
13484         block.
13485
13486 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13487
13488         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
13489         * ada-lang.c (resolve_subexp): Likewise.
13490         * breakpoint.c (set_breakpoint_condition) Likewise.
13491         (watch_command_1) Likewise.
13492         * c-exp.y (variable): Likewise.
13493         * d-exp.y (PrimaryExpression): Likewise.
13494         * f-exp.y (variable): Likewise.
13495         * go-exp.y (variable): Likewise.
13496         * m2-exp.y (variable): Likewise.
13497         * objfiles.c (objfile::~objfile): Likewise.
13498         * p-exp.y (variable): Likewise.
13499         * parse.c (innermost_block): Change type.
13500         * parser-defs.h (class innermost_block_tracker): New.
13501         (innermost_block): Change to innermost_block_tracker.
13502         * printcmd.c (display_command): Switch to innermost_block API.
13503         (do_one_display): Likewise.
13504         * rust-exp.y (do_one_display): Likewise.
13505         * symfile.c (clear_symtab_users): Likewise.
13506         * varobj.c (varobj_create): Switch to innermost_block API, replace
13507         use of innermost_block with block stored on varobj object.
13508
13509 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13510
13511         * expression.h (innermost_block): Remove declaration.
13512         * varobj.c: Add 'parser-defs.h' include.
13513
13514 2018-01-19  Tom Tromey  <tom@tromey.com>
13515
13516         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
13517         symbols in the static and global blocks.
13518
13519 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
13520
13521         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
13522         gdb_ptrace.h, and move including gdb_wait.h ...
13523         * nat/linux-ptrace.h: ... to here.
13524
13525 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13526
13527         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
13528         inf_ptrace_detach_success.
13529         (inf_ptrace_detach_success): Add inferior parameter, use it
13530         instead of inferior_ptid, pass it to detach_inferior.
13531         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
13532         parameter.
13533         * inferior.c (detach_inferior): Add overload that takes an
13534         inferior object.
13535         * inferior.h (detach_inferior): Likewise.
13536         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
13537         use inferior_ptid, adjust call to inf_ptrace_detach_success.
13538         * linux-thread-db.c (thread_db_detach): Use inf parameter.
13539
13540 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13541
13542         * target.h (struct target_ops) <to_detach>: Add inferior
13543         parameter.
13544         (target_detach): Likewise.
13545         * target.c (dispose_inferior): Pass inferior down.
13546         (target_detach): Pass inferior down.  Assert that it is equal to
13547         the current inferior.
13548         * aix-thread.c (aix_thread_detach): Pass inferior down.
13549         * corefile.c (core_file_command): Pass current_inferior() down.
13550         * corelow.c (core_detach): Add inferior parameter.
13551         * darwin-nat.c (darwin_detach): Likewise.
13552         * gnu-nat.c (gnu_detach): Likewise.
13553         * inf-ptrace.c (inf_ptrace_detach): Likewise.
13554         * infcmd.c (detach_command): Pass current_inferior() down to
13555         target_detach.
13556         * infrun.c (follow_fork_inferior): Pass parent_inf to
13557         target_detach.
13558         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
13559         target_detach.
13560         * linux-nat.c (linux_nat_detach): Add inferior parameter.
13561         * linux-thread-db.c (thread_db_detach): Likewise.
13562         * nto-procfs.c (procfs_detach): Likewise.
13563         * procfs.c (procfs_detach): Likewise.
13564         * record.c (record_detach): Likewise.
13565         * record.h (struct inferior): Forward-declare.
13566         (record_detach): Add inferior parameter.
13567         * remote-sim.c (gdbsim_detach): Likewise.
13568         * remote.c (remote_detach_1): Likewise.
13569         (remote_detach): Likewise.
13570         (extended_remote_detach): Likewise.
13571         * sol-thread.c (sol_thread_detach): Likewise.
13572         * target-debug.h (target_debug_print_inferior_p): New macro.
13573         * target-delegates.c: Re-generate.
13574         * top.c (kill_or_detach): Pass inferior down to target_detach.
13575         * windows-nat.c (windows_detach): Add inferior parameter.
13576
13577 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13578
13579         * target.h (struct target_ops) <to_detach>: Remove args
13580         parameter.
13581         (target_detach): Likewise.
13582         * target.c (dispose_inferior): Adjust.
13583         (target_detach): Remove args parameter, adjust.
13584         * aix-thread.c (aix_thread_detach): Adjust.
13585         * corefile.c (core_file_command): Adjust.
13586         * corelow.c (core_detach): Adjust.
13587         * darwin-nat.c (darwin_detach): Adjust.
13588         * gnu-nat.c (gnu_detach): Adjust.
13589         * inf-ptrace.c (inf_ptrace_detach): Adjust.
13590         * infcmd.c (detach_command): Adjust
13591         * infrun.c (follow_fork_inferior): Adjust.
13592         (handle_vfork_child_exec_or_exit): Adjust.
13593         * linux-fork.c (linux_fork_detach): Remove args parameter.
13594         * linux-fork.h (linux_fork_detach): Likewise.
13595         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
13596         * linux-thread-db.c (thread_db_detach): Likewise.
13597         * nto-procfs.c (procfs_detach): Likewise.
13598         * procfs.c (procfs_detach): Likewise.
13599         (do_detach): Remove signo parameter.
13600         * record.c (record_detach): Remove args parameter.
13601         * record.h (record_detach): Likewise.
13602         * remote-sim.c (gdbsim_detach): Likewise.
13603         * remote.c (remote_detach_1): Likewise.
13604         (remote_detach): Likewise.
13605         (extended_remote_detach): Likewise.
13606         * sol-thread.c (sol_thread_detach): Likewise.
13607         * target-delegates.c: Re-generate.
13608         * top.c (struct qt_args) <args>: Remove field.
13609         (kill_or_detach): Don't pass args.
13610         (quit_force): Don't set args.
13611         * windows-nat.c (windows_detach): Remove args parameter.
13612
13613 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13614
13615         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
13616         (arm_linux_init_abi): Install it.
13617
13618 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13619
13620         * osabi.c (gdb_osabi_names): Extend the regexp for
13621         arm-linux-gnueabihf.
13622
13623 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13624
13625         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
13626         m_abbrevs.
13627         (abbrev_table::add_abbrev): Update.
13628         (abbrev_table::lookup_abbrev): Update.
13629
13630 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13631
13632         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
13633
13634 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
13635
13636         * compile/compile.c (compile_to_object): Convert "triplet_rx"
13637         to "std::string".
13638
13639 2018-01-17  Tom Tromey  <tom@tromey.com>
13640
13641         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
13642
13643 2018-01-17  Tom Tromey  <tom@tromey.com>
13644
13645         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
13646         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
13647         (create_array_type_with_stride): Update.
13648         * dwarf2read.c (set_die_type): Update.
13649
13650 2018-01-17  Tom Tromey  <tom@tromey.com>
13651
13652         * dwarf2read.c (delayed_method_info): Remove typedef.
13653         (dwarf2_cu::method_info): Now a std::vector.
13654         (add_to_method_list): Update.
13655         (free_delayed_list): Remove.
13656         (compute_delayed_physnames): Update.
13657         (process_full_comp_unit, process_full_type_unit): Clear the method
13658         list.  Remove cleanups.
13659         (psymtab_include_file_name): Add name_holder parameter.  Use
13660         unique_xmalloc_ptr.
13661         (dwarf_decode_lines): Update.
13662
13663 2018-01-17  Tom Tromey  <tom@tromey.com>
13664             Simon Marchi  <simon.marchi@ericsson.com>
13665
13666         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
13667         (dwarf2_per_objfile::free_cached_comp_units)
13668         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13669         (init_cutu_and_read_dies_no_follow): Update.
13670         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
13671         (dwarf2_cu::~dwarf2_cu): New.
13672         (free_heap_comp_unit, free_stack_comp_unit): Remove.
13673         (age_cached_comp_units, free_one_cached_comp_unit): Update.
13674
13675 2018-01-17  Tom Tromey  <tom@tromey.com>
13676             Simon Marchi  <simon.marchi@ericsson.com>
13677
13678         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
13679         (struct die_reader_specs) <abbrev_table>: New member.
13680         (struct abbrev_table): Add constructor.
13681         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
13682         <abbrev_obstack>: Now an auto_obstack.
13683         (abbrev_table_up): New typedef.
13684         (init_cu_die_reader): Add abbrev_table parameter.
13685         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
13686         Add result_dwo_abbrev_table.
13687         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13688         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
13689         Update.
13690         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
13691         parameter.
13692         (skip_children): Update.
13693         (abbrev_table::alloc_abbrev): Rename from
13694         abbrev_table_alloc_abbrev.
13695         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
13696         (abbrev_table::lookup_abbrev): Rename from
13697         abbrev_table_lookup_abbrev.
13698         (abbrev_table_read_table): Return abbrev_table_up.
13699         (abbrev_table_free, abbrev_table_free_cleanup)
13700         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
13701         (load_partial_dies): Update.
13702
13703 2018-01-17  Tom Tromey  <tom@tromey.com>
13704
13705         * dwarf2read.c (dwarf2_compute_name): Update comment.
13706         (read_func_scope, read_variable): Update.
13707         (new_symbol): Remove.
13708         (new_symbol_full): Rename to new_symbol.
13709
13710 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
13711
13712         PR gdb/16577
13713         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
13714         a warning instead of throwing an error, set section size to 0 and return
13715         NULL.
13716         * gdb_bfd.h (gdb_bfd_map_section): Update description.
13717
13718 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13719
13720         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
13721         std::string.
13722         (linux_ptrace_attach_fail_reason_string): Likewise.
13723         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
13724         Likewise.
13725         (linux_ptrace_attach_fail_reason_string): Likewise.
13726         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
13727
13728 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13729
13730         * linux-nat.c (linux_nat_attach): Remove xstrdup.
13731
13732 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
13733
13734         PR gdb/21559
13735         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
13736         checking for fs_base/gs_base fields in struct user_regs_struct.
13737         * configure: Regenerate.
13738
13739 2018-01-17  Yao Qi  <yao.qi@linaro.org>
13740
13741         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
13742         function.
13743         (aarch64_linux_init_abi): Install it to gdbarch hook
13744         gcc_target_options.
13745
13746 2018-01-15  Pedro Alves  <palves@redhat.com>
13747
13748         * common/signals-state-save-restore.c
13749         (save_original_signals_state): Fix typos.
13750
13751 2017-01-12  Tom Tromey  <tom@tromey.com>
13752             Sergio Durigan Junior  <sergiodj@redhat.com>
13753
13754         * Makefile.in (install-only): Install gdb-add-index.
13755
13756 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
13757
13758         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
13759
13760 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13761
13762         * infrun.c (keep_going_pass_signal): Clear step-over info when
13763         insert_breakpoints fails.
13764
13765 2018-01-11  Pedro Alves  <palves@redhat.com>
13766
13767         PR gdb/22583
13768         * infrun.c (resume): Rename to ...
13769         (resume_1): ... this.
13770         (resume): Reimplement as wrapper around resume_1.
13771
13772 2018-01-11  Pedro Alves  <palves@redhat.com>
13773
13774         PR remote/22597
13775         * remote.c (remote_parse_stop_reply): Default to the last-set
13776         general thread instead of to 'magic_null_ptid'.
13777
13778 2018-01-10  Pedro Alves  <palves@redhat.com>
13779
13780         * language.h (language_get_symbol_name_matcher): Rename ...
13781         (get_symbol_name_matcher): ... this.
13782         * language.c (language_get_symbol_name_matcher): Ditto.
13783         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
13784         callers adjusted.
13785
13786 2018-01-10  Pedro Alves  <palves@redhat.com>
13787
13788         PR gdb/22670
13789         * dwarf2read.c
13790         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
13791         Adjust to use language_get_symbol_name_matcher instead of
13792         language_defn::la_get_symbol_name_matcher.
13793         * language.c (language_get_symbol_name_matcher): If in Ada mode
13794         and the lookup name is a verbatim match, return Ada's matcher.
13795         * language.h (language_get_symbol_name_matcher): Adjust comment.
13796         (ada_lookup_name_info::verbatim_p):: New method.
13797
13798 2018-01-10  Pedro Alves  <palves@redhat.com>
13799
13800         PR gdb/22670
13801         * ada-lang.c (ada_collect_symbol_completion_matches): If the
13802         minsym's language is language_auto or language_cplus, pass down
13803         language_ada instead.
13804         * symtab.c (compare_symbol_name): Don't frob symbol language here.
13805
13806 2018-01-10  Pedro Alves  <palves@redhat.com>
13807
13808         PR gdb/22670
13809         * minsyms.c (linkage_name_str): New function.
13810         (iterate_over_minimal_symbols): Use it.
13811
13812 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13813
13814         * NEWS: Document that 'info proc' now works on FreeBSD.
13815
13816 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13817
13818         * configure.ac: Check for kinfo_getfile in libutil.
13819         * configure: Regenerate.
13820         * config.in: Regenerate.
13821         * fbsd-nat.c: Include "fbsd-tdep.h".
13822         (fbsd_fetch_cmdline): New.
13823         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
13824         rather than calling error.
13825         (fbsd_info_proc): New.
13826         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
13827         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
13828         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
13829
13830 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13831
13832         * fbsd-nat.c (struct free_deleter): Remove.
13833         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
13834
13835 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13836
13837         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
13838         NULL for an empty pathname.
13839
13840 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13841
13842         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
13843         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
13844         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
13845         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
13846         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
13847         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
13848         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
13849         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
13850         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
13851         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
13852         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
13853         (fbsd_core_fetch_timeval, fbsd_print_sigset)
13854         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
13855         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
13856         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
13857
13858 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
13859
13860         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
13861         (gnu_xfer_auxv): New function.
13862         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
13863         TARGET_OBJECT_AUXV.
13864
13865 2018-01-08  Yao Qi  <yao.qi@linaro.org>
13866             Simon Marchi  <simon.marchi@ericsson.com>
13867
13868         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
13869         common/selftest.c.
13870         (COMMON_OBS): Remove selftest.o.
13871         * configure.ac: Append selftest-arch.c and common/selftest.c to
13872         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
13873         * configure: Re-generated.
13874         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
13875         GDB_SELF_TEST.
13876         (maintenance_info_selftests): Likewise.
13877
13878 2018-01-08  Xavier Roirand  <roirand@adacore.com>
13879
13880         * ada-valprint.c (val_print_packed_array_elements): Use
13881         proper number of elements when printing an array indexed
13882         by an enumeration type.
13883
13884 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13885
13886         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
13887         (dw2_get_file_names_reader): Adjust.
13888         (lookup_dwo_signatured_type): Adjust.
13889         (lookup_dwp_signatured_type): Adjust.
13890         (lookup_signatured_type): Adjust.
13891         (create_type_unit_group): Adjust.
13892         (get_type_unit_group): Adjust.
13893         (process_psymtab_comp_unit_reader): Adjust.
13894         (build_type_psymtabs_reader): Adjust.
13895         (scan_partial_symbols): Adjust.
13896         (add_partial_symbol): Adjust.
13897         (add_partial_subprogram): Adjust.
13898         (peek_die_abbrev): Adjust.
13899         (fixup_go_packaging): Adjust.
13900         (process_imported_unit_die): Adjust.
13901         (dwarf2_compute_name): Adjust.
13902         (dwarf2_physname): Adjust.
13903         (read_import_statement): Adjust.
13904         (handle_DW_AT_stmt_list): Adjust.
13905         (read_file_scope): Adjust.
13906         (read_func_scope): Adjust.
13907         (read_lexical_block_scope): Adjust.
13908         (read_call_site_scope): Adjust.
13909         (read_variable): Adjust.
13910         (dwarf2_rnglists_process): Adjust.
13911         (dwarf2_ranges_process): Adjust.
13912         (dwarf2_ranges_read): Adjust.
13913         (dwarf2_get_pc_bounds): Adjust.
13914         (dwarf2_record_block_ranges): Adjust.
13915         (dwarf2_add_field): Adjust.
13916         (dwarf2_add_member_fn): Adjust.
13917         (read_structure_type): Adjust.
13918         (process_structure_scope): Adjust.
13919         (read_enumeration_type): Adjust.
13920         (read_array_type): Adjust.
13921         (mark_common_block_symbol_computed): Adjust.
13922         (read_common_block): Adjust.
13923         (read_namespace_type): Adjust.
13924         (read_namespace): Adjust.
13925         (read_module_type): Adjust.
13926         (read_tag_pointer_type): Adjust.
13927         (read_tag_ptr_to_member_type): Adjust.
13928         (read_tag_string_type): Adjust.
13929         (read_subroutine_type): Adjust.
13930         (read_typedef): Adjust.
13931         (read_base_type): Adjust.
13932         (attr_to_dynamic_prop): Adjust.
13933         (read_subrange_type): Adjust.
13934         (read_unspecified_type): Adjust.
13935         (dwarf2_read_abbrevs): Adjust.
13936         (load_partial_dies): Adjust.
13937         (read_partial_die): Adjust.
13938         (find_partial_die): Adjust.
13939         (guess_partial_die_structure_name): Adjust.
13940         (fixup_partial_die): Adjust.
13941         (read_attribute_value): Adjust.
13942         (read_addr_index): Adjust.
13943         (read_addr_index_from_leb128): Adjust.
13944         (read_str_index): Adjust.
13945         (dwarf2_string_attr): Adjust.
13946         (get_debug_line_section): Adjust.
13947         (dwarf_decode_line_header): Adjust.
13948         (lnp_state_machine::check_line_address): Adjust.
13949         (dwarf_decode_lines_1): Adjust.
13950         (dwarf_decode_lines): Adjust.
13951         (dwarf2_start_symtab): Adjust.
13952         (var_decode_location): Adjust.
13953         (new_symbol_full): Adjust.
13954         (dwarf2_const_value_data): Adjust.
13955         (dwarf2_const_value_attr): Adjust.
13956         (dwarf2_const_value): Adjust.
13957         (die_type): Adjust.
13958         (die_containing_type): Adjust.
13959         (build_error_marker_type): Adjust.
13960         (lookup_die_type): Adjust.
13961         (guess_full_die_structure_name): Adjust.
13962         (anonymous_struct_prefix): Adjust.
13963         (determine_prefix): Adjust.
13964         (dwarf2_name): Adjust.
13965         (follow_die_ref_or_sig): Adjust.
13966         (follow_die_offset): Adjust.
13967         (follow_die_ref): Adjust.
13968         (follow_die_sig_1): Adjust.
13969         (follow_die_sig): Adjust.
13970         (get_signatured_type): Adjust.
13971         (get_DW_AT_signature_type): Adjust.
13972         (decode_locdesc): Adjust.
13973         (dwarf_decode_macros): Adjust.
13974         (cu_debug_loc_section): Adjust.
13975         (fill_in_loclist_baton): Adjust.
13976         (dwarf2_symbol_mark_computed): Adjust.
13977         (init_one_comp_unit): Don't assign
13978         dwarf2_cu::dwarf2_per_objfile.
13979         (set_die_type): Adjust.
13980
13981 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13982
13983         * dwarf2read.c (struct mapped_debug_names): Add constructor.
13984         <dwarf2_per_objfile>: New field.
13985         (dwarf2_per_objfile): Remove global.
13986         (get_dwarf2_per_objfile): New function.
13987         (set_dwarf2_per_objfile): New function.
13988         (dwarf2_build_psymtabs_hard): Change objfile parameter to
13989         dwarf2_per_objfile.
13990         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
13991         (read_abbrev_offset): Likewise.
13992         (read_indirect_string): Likewise.
13993         (read_indirect_line_string): Likewise.
13994         (read_indirect_string_at_offset): Likewise.
13995         (read_indirect_string_from_dwz): Likewise.
13996         (dwarf2_find_containing_comp_unit): Change objfile parameter to
13997         dwarf2_per_objfile.
13998         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
13999         (create_all_comp_units): Change objfile parameter to
14000         dwarf2_per_objfile.
14001         (create_all_type_units): Likewise.
14002         (process_queue): Add dwarf2_per_objfile parameter.
14003         (read_and_check_comp_unit_head): Likewise.
14004         (lookup_dwo_unit_in_dwp): Likewise.
14005         (get_dwp_file): Likewise.
14006         (process_cu_includes): Likewise.
14007         (struct free_dwo_file_cleanup_data): New struct.
14008         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14009         set_dwarf2_per_objfile.
14010         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14011         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14012         context, adjust calls.
14013         (dw2_instantiate_symtab): Likewise.
14014         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14015         (dw2_get_cu): Likewise.
14016         (create_cu_from_index_list): Change objfile parameter to
14017         dwarf2_per_objfile.
14018         (create_cus_from_index_list): Get dwarf2_per_objfile from
14019         context, adjust calls.
14020         (create_cus_from_index): Likewise.
14021         (create_signatured_type_table_from_index): Change objfile
14022         parameter to dwarf2_per_objfile.
14023         (create_signatured_type_table_from_debug_names): Change objfile
14024         parameter to dwarf2_per_objfile.
14025         (create_addrmap_from_index): Likewise.
14026         (create_addrmap_from_aranges): Likewise.
14027         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14028         (dw2_setup): Remove.
14029         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14030         context.
14031         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14032         get_dwarf2_per_objfile.
14033         (dw2_forget_cached_source_info): Likewise.
14034         (dw2_map_symtabs_matching_filename): Likewise.
14035         (struct dw2_symtab_iterator) <index>: Remove.
14036         <dwarf2_per_objfile>: New field.
14037         (dw2_symtab_iter_init): Replace index parameter with
14038         dwarf2_per_objfile.
14039         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14040         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14041         (dw2_print_stats): Likewise.
14042         (dw2_dump): Likewise.
14043         (dw2_expand_symtabs_for_function): Likewise.
14044         (dw2_expand_all_symtabs): Likewise.
14045         (dw2_expand_symtabs_with_fullname): Likewise.
14046         (dw2_expand_marked_cus): Replace index and objfile parameters
14047         with dwarf2_per_objfile.
14048         (dw_expand_symtabs_matching_file_matcher): Add
14049         dwarf2_per_objfile parameter and adjust calls.
14050         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14051         adjust calls.
14052         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14053         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14054         adjust calls.
14055         (create_cus_from_debug_names_list): Replace objfile parameter
14056         with dwarf2_per_objfile and adjust calls.
14057         (create_cus_from_debug_names): Likewise.
14058         (dwarf2_read_debug_names): Likewise.
14059         (mapped_debug_names::namei_to_name): Adjust call.
14060         (dw2_debug_names_iterator::next): Likewise.
14061         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14062         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14063         (dw2_debug_names_dump): Likewise.
14064         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14065         (dw2_debug_names_expand_symtabs_matching): Likewise.
14066         (dwarf2_initialize_objfile): Likewise.
14067         (dwarf2_build_psymtabs): Likewise.
14068         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14069         this_cu.
14070         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14071         (read_and_check_comp_unit_head): Likewise.
14072         (read_abbrev_offset): Likewise.
14073         (create_debug_type_hash_table): Likewise.
14074         (create_debug_types_hash_table): Likewise.
14075         (create_all_type_units): Replace objfile parameter with
14076         dwarf2_per_objfile.
14077         (add_type_unit): Add dwarf2_per_objfile parameter.
14078         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14079         with dwarf2_per_objfile.
14080         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14081         (lookup_dwp_signatured_type): Likewise.
14082         (lookup_signatured_type): Likewise.
14083         (read_cutu_die_from_dwo): Likewise.
14084         (init_tu_and_read_dwo_dies): Likewise.
14085         (init_cutu_and_read_dies): Likewise.
14086         (init_cutu_and_read_dies_no_follow): Likewise.
14087         (allocate_type_unit_groups_table): Add objfile parameter.
14088         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14089         (get_type_unit_group): Likewise.
14090         (process_psymtab_comp_unit): Update call.
14091         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14092         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14093         (print_tu_stats): Likewise.
14094         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14095         in void* parameter.
14096         (build_type_psymtabs): Change objfile parameter to
14097         dwarf2_per_objfile.
14098         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14099         passed in void* parameter.
14100         (process_skeletonless_type_units): Change objfile parameter to
14101         dwarf2_per_objfile.
14102         (set_partial_user): Likewise.
14103         (dwarf2_build_psymtabs_hard): Likewise.
14104         (read_comp_units_from_section): Likewise.
14105         (create_all_comp_units): Likewise.
14106         (scan_partial_symbols): Update calls.
14107         (add_partial_symbol): Likewise.
14108         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14109         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14110         (process_queue): Add dwarf2_per_objfile parameter.
14111         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14112         (compute_compunit_symtab_includes): Likewise.
14113         (process_cu_includes): Add dwarf2_per_objfile parameter.
14114         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14115         (process_full_type_unit): Likewise.
14116         (process_imported_unit_die): Update call.
14117         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14118         (read_file_scope): Likewise.
14119         (allocate_dwo_file_hash_table): Add objfile parameter.
14120         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14121         (create_cus_hash_table): Likewise.
14122         (create_dwp_hash_table): Likewise.
14123         (create_dwo_unit_in_dwp_v1): Likewise.
14124         (create_dwp_v2_section): Likewise.
14125         (create_dwo_unit_in_dwp_v2): Likewise.
14126         (lookup_dwo_unit_in_dwp): Likewise.
14127         (try_open_dwop_file): Likewise.
14128         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14129         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14130         cleanup to include a reference to dwarf2_per_objfile.
14131         (open_dwp_file): Add dwarf2_per_objfile parameter.
14132         (open_and_init_dwp_file): Likewise.
14133         (get_dwp_file): Likewise.
14134         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14135         (queue_and_load_all_dwo_tus): Update call.
14136         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14137         data.
14138         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14139         (dwarf2_ranges_process): Likewise.
14140         (dwarf2_get_pc_bounds): Likewise.
14141         (mark_common_block_symbol_computed): Likewise.
14142         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14143         (dwarf2_read_abbrevs): Update call.
14144         (read_partial_die): Use dwarf2_per_objfile from cu.
14145         (find_partial_die): Likewise.
14146         (fixup_partial_die): Likewise.
14147         (read_attribute_value): Likewise.
14148         (read_indirect_string_at_offset_from): Add objfile parameter.
14149         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14150         parameter.
14151         (read_indirect_string_from_dwz): Add objfile parameter.
14152         (read_indirect_string): Add objfile parameter.
14153         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14154         (read_addr_index): Use dwarf2_per_objfile from cu.
14155         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14156         call dw2_setup.
14157         (read_str_index): Use dwarf2_per_objfile from cu.
14158         (get_debug_line_section): Likewise.
14159         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14160         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14161         (new_symbol_full): Use dwarf2_per_objfile from cu.
14162         (build_error_marker_type): Likewise.
14163         (lookup_die_type): Likewise.
14164         (determine_prefix): Likewise.
14165         (follow_die_offset): Likewise.
14166         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14167         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14168         (dwarf2_fetch_die_type_sect_off): Likewise.
14169         (dwarf2_get_die_type): Likewise.
14170         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14171         (get_signatured_type): Likewise.
14172         (get_DW_AT_signature_type): Likewise.
14173         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14174         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14175         (cu_debug_loc_section): Likewise.
14176         (fill_in_loclist_baton): Likewise.
14177         (dwarf2_symbol_mark_computed): Likewise.
14178         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14179         dwarf2_per_objfile.
14180         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14181         parameter.
14182         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14183         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14184         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14185         (set_die_type): Use dwarf2_free_objfile from cu.
14186         (get_die_type_at_offset): Likewise.
14187         (dwarf2_per_objfile_free): Don't assign global variable.
14188         (debug_names) <constructor>: Add dwarf2_per_objfile
14189         parameter, update m_debugstrlookup construction.
14190         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14191         parameter.
14192         <m_dwarf2_per_objfile>: New field.
14193         <lookup>: Use m_dwarf2_per_objfile.
14194         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14195         (psyms_seen_size): Likewise.
14196         (write_gdbindex): Replace objfile parameter with
14197         dwarf2_per_objfile.
14198         (write_debug_names): Likewise.
14199         (write_psymtabs_to_index): Likewise.
14200         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14201         calls.
14202
14203 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14204
14205         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14206         <dwarf2_per_objfile>: New field.
14207         (struct dwarf2_per_cu_data) <objfile>: Remove.
14208         <dwarf2_per_objfile>: New field.
14209         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14210         of objfile.
14211         (create_signatured_type_table_from_index): Likewise.
14212         (create_debug_type_hash_table): Likewise.
14213         (fill_in_sig_entry_from_dwo_entry): Likewise.
14214         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14215         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14216         objfile.
14217         (create_partial_symtab): Access objfile through
14218         dwarf2_per_objfile.
14219         (process_psymtab_comp_unit_reader): Likewise.
14220         (read_comp_units_from_section): Likewise.
14221         (scan_partial_symbols): Likewise.
14222         (add_partial_symbol): Likewise.
14223         (add_partial_subprogram): Likewise.
14224         (peek_die_abbrev): Likewise.
14225         (fixup_go_packaging): Likewise.
14226         (process_full_comp_unit): Likewise.
14227         (process_full_type_unit): Likewise.
14228         (process_imported_unit_die): Likewise.
14229         (dwarf2_compute_name): Likewise.
14230         (dwarf2_physname): Likewise.
14231         (read_import_statement): Likewise.
14232         (create_cus_hash_table): Assign dwarf2_physname instead of
14233         objfile.
14234         (read_func_scope): Access objfile through dwarf2_per_objfile.
14235         (read_lexical_block_scope): Likewise.
14236         (read_call_site_scope): Likewise.
14237         (read_variable): Likewise.
14238         (dwarf2_rnglists_process): Likewise.
14239         (dwarf2_ranges_process): Likewise.
14240         (dwarf2_ranges_read): Likewise.
14241         (dwarf2_record_block_ranges): Likewise.
14242         (dwarf2_add_field): Likewise.
14243         (dwarf2_add_member_fn): Likewise.
14244         (read_structure_type): Likewise.
14245         (process_structure_scope): Likewise.
14246         (read_enumeration_type): Likewise.
14247         (read_array_type): Likewise.
14248         (read_common_block): Likewise.
14249         (read_namespace_type): Likewise.
14250         (read_namespace): Likewise.
14251         (read_module_type): Likewise.
14252         (read_tag_pointer_type): Likewise.
14253         (read_tag_ptr_to_member_type): Likewise.
14254         (read_tag_string_type): Likewise.
14255         (read_subroutine_type): Likewise.
14256         (read_typedef): Likewise.
14257         (read_base_type): Likewise.
14258         (attr_to_dynamic_prop): Likewise.
14259         (read_subrange_type): Likewise.
14260         (read_unspecified_type): Likewise.
14261         (load_partial_dies): Likewise.
14262         (read_partial_die): Likewise.
14263         (find_partial_die): Likewise.
14264         (guess_partial_die_structure_name): Likewise.
14265         (fixup_partial_die): Likewise.
14266         (read_attribute_value): Likewise.
14267         (read_addr_index_from_leb128): Likewise.
14268         (dwarf2_read_addr_index): Likewise.
14269         (dwarf2_string_attr): Likewise.
14270         (lnp_state_machine::check_line_address): Likewise.
14271         (dwarf_decode_lines_1): Likewise.
14272         (dwarf_decode_lines): Likewise.
14273         (dwarf2_start_symtab): Likewise.
14274         (var_decode_location): Likewise.
14275         (new_symbol_full): Likewise.
14276         (dwarf2_const_value_data): Likewise.
14277         (dwarf2_const_value_attr): Likewise.
14278         (dwarf2_const_value): Likewise.
14279         (die_type): Likewise.
14280         (die_containing_type): Likewise.
14281         (lookup_die_type): Likewise.
14282         (guess_full_die_structure_name): Likewise.
14283         (anonymous_struct_prefix): Likewise.
14284         (dwarf2_name): Likewise.
14285         (follow_die_ref_or_sig): Likewise.
14286         (follow_die_offset): Likewise.
14287         (follow_die_ref): Likewise.
14288         (dwarf2_fetch_die_loc_sect_off): Likewise.
14289         (dwarf2_fetch_constant_bytes): Likewise.
14290         (dwarf2_fetch_die_type_sect_off): Likewise.
14291         (dwarf2_get_die_type): Likewise.
14292         (follow_die_sig): Likewise.
14293         (decode_locdesc): Likewise.
14294         (dwarf2_per_cu_objfile): Likewise.
14295         (dwarf2_per_cu_text_offset): Likewise.
14296         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
14297         objfile.
14298         (set_die_type): Access objfile through
14299         dwarf2_per_objfile.
14300
14301 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14302
14303         * valprint.c (converted_character_d): Remove typedef.
14304         (DEF_VEC_O (converted_character_d)): Remove.
14305         (count_next_character): Use std::vector.
14306         (print_converted_chars_to_obstack): Likewise.
14307         (generic_printstr): Likewise.
14308
14309 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14310
14311         * xml-support.h (struct gdb_xml_value): Add constructor.
14312         <value>: Change type to unique_xmalloc_ptr.
14313         (gdb_xml_value_s): Remove typedef.
14314         (DEF_VEC_O (gdb_xml_value_s)): Remove.
14315         (gdb_xml_element_start_handler): Change parameter type to
14316         std::vector.
14317         (xml_find_attribute): Likewise.
14318         * xml-support.c (xml_find_attribute): Change parameter type to
14319         std::vector and adjust.
14320         (gdb_xml_values_cleanup): Remove.
14321         (gdb_xml_parser::start_element): Adjust to std::vector.
14322         (xinclude_start_include): Change paraeter type to std::vector
14323         and adjust.
14324         * btrace.c (check_xml_btrace_version): Likewise.
14325         (parse_xml_btrace_block): Likewise.
14326         (parse_xml_btrace_pt_config_cpu): Likewise.
14327         (parse_xml_btrace_pt): Likewise.
14328         (parse_xml_btrace_conf_bts): Likewise.
14329         (parse_xml_btrace_conf_pt): Likewise.
14330         * memory-map.c (memory_map_start_memory): Likewise.
14331         (memory_map_start_property): Likewise.
14332         * osdata.c (osdata_start_osdata): Likewise.
14333         (osdata_start_item): Likewise.
14334         (osdata_start_column): Likewise.
14335         * remote.c (start_thread): Likewise.
14336         * solib-aix.c (library_list_start_library): Likewise.
14337         (library_list_start_list): Likewise.
14338         * solib-svr4.c (library_list_start_library): Likewise.
14339         (svr4_library_list_start_list): Likewise.
14340         * solib-target.c (library_list_start_segment): Likewise.
14341         (library_list_start_section): Likewise.
14342         (library_list_start_library): Likewise.
14343         (library_list_start_list): Likewise.
14344         * tracepoint.c (traceframe_info_start_memory): Likewise.
14345         (traceframe_info_start_tvar): Likewise.
14346         * xml-syscall.c (syscall_start_syscall): Likewise.
14347         * xml-tdesc.c (tdesc_start_target): Likewise.
14348         (tdesc_start_feature): Likewise.
14349         (tdesc_start_reg): Likewise.
14350         (tdesc_start_union): Likewise.
14351         (tdesc_start_struct): Likewise.
14352         (tdesc_start_flags): Likewise.
14353         (tdesc_start_enum): Likewise.
14354         (tdesc_start_field): Likewise.
14355         (tdesc_start_enum_value): Likewise.
14356         (tdesc_start_vector): Likewise.
14357
14358 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14359
14360         * extension.h (struct xmethod_worker) <clone>: Remove.
14361         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
14362         Remove.
14363         (python_xmethod_worker::clone): Remove.
14364         * valops.c (find_overload_match): Use std::move instead of
14365         clone.
14366
14367 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14368
14369         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
14370         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
14371         <free_xmethod_worker_data>: Remove.
14372         <get_matching_xmethod_workers>: Chance VEC to std::vector.
14373         <get_xmethod_arg_types>: Remove.
14374         <get_xmethod_result_type>: Remove.
14375         <invoke_xmethod>: Remove.
14376         * extension.c (new_xmethod_worker): Remove.
14377         (clone_xmethod_worker): Remove.
14378         (get_matching_xmethod_workers): Return void, pass std::vector by
14379         pointer.
14380         (get_xmethod_arg_types): Rename to...
14381         (xmethod_worker::get_arg_types): ... this, and adjust.
14382         (get_xmethod_result_type): Rename to...
14383         (xmethod_worker::get_result_type): ... this, and adjust.
14384         (invoke_xmethod): Remove.
14385         (free_xmethod_worker): Remove.
14386         (free_xmethod_worker_vec): Remove.
14387         * extension.h (enum ext_lang_rc): Move here from
14388         extension-priv.h.
14389         (struct xmethod_worker): Add constructor and destructor.
14390         <data>: Remove.
14391         <value>: Remove.
14392         <invoke, clone, do_get_result_type, do_get_arg_types>: New
14393         virtual pure methods.
14394         <get_arg_types, get_result_type>: New methods.
14395         (xmethod_worker_ptr): Remove typedef.
14396         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
14397         (xmethod_worker_vec): Remove typedef.
14398         (xmethod_worker_up): New typedef.
14399         (invoke_xmethod): Remove.
14400         (clone_xmethod_worker): Remove.
14401         (free_xmethod_worker): Remove.
14402         (free_xmethod_worker_vec): Remove.
14403         (get_xmethod_arg_types): Remove.
14404         (get_xmethod_result_type): Remove.
14405         * valops.c (find_method_list): Use std::vector, don't use
14406         intermediate vector.
14407         (value_find_oload_method_list): Use std::vector.
14408         (find_overload_match): Use std::vector.
14409         (find_oload_champ): Use std::vector.
14410         * value.c (value_free): Use operator delete.
14411         (value_of_xmethod): Rename to...
14412         (value_from_xmethod): ... this.  Don't assign
14413         xmethod_worker::value, take rvalue-reference.
14414         (result_type_of_xmethod): Adjust.
14415         (call_xmethod): Adjust.
14416         * value.h: Include extension.h.
14417         (struct xmethod_worker): Don't forward-declare.
14418         (value_of_xmethod): Rename to...
14419         (value_from_xmethod): ... this, take rvalue-reference.
14420         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
14421         (struct python_xmethod_worker): ... this, add constructor and
14422         destructor.
14423         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
14424         (gdbpy_free_xmethod_worker_data): Rename to...
14425         (python_xmethod_worker::~python_xmethod_worker): ... this and
14426         adjust.
14427         (gdbpy_clone_xmethod_worker_data): Rename to...
14428         (python_xmethod_worker::clone): ... this and adjust.
14429         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
14430         temporary vector.
14431         (gdbpy_get_xmethod_arg_types): Rename to...
14432         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
14433         (gdbpy_get_xmethod_result_type): Rename to...
14434         (python_xmethod_worker::do_get_result_type): ... this and
14435         adjust.
14436         (gdbpy_invoke_xmethod): Rename to...
14437         (python_xmethod_worker::invoke): ... this and adjust.
14438         (new_python_xmethod_worker): Rename to...
14439         (python_xmethod_worker::python_xmethod_worker): ... this and
14440         adjust.
14441         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
14442         Remove.
14443         (gdbpy_free_xmethod_worker_data): Remove.
14444         (gdbpy_get_matching_xmethod_workers): Use std::vector.
14445         (gdbpy_get_xmethod_arg_types): Remove.
14446         (gdbpy_get_xmethod_result_type): Remove.
14447         (gdbpy_invoke_xmethod): Remove.
14448         * python/python.c (python_extension_ops): Remove obsolete
14449         callbacks.
14450
14451 2018-01-05  Pedro Alves  <palves@redhat.com>
14452
14453         PR gdb/18653
14454         * common/signals-state-save-restore.c
14455         (save_original_signals_state): New parameter 'quiet'.  Warn if we
14456         find a custom handler preinstalled, instead of internal erroring.
14457         But only warn if !quiet.
14458         * common/signals-state-save-restore.h
14459         (save_original_signals_state): New parameter 'quiet'.
14460         * main.c (captured_main_1): Move save_original_signals_state call
14461         after option handling, and pass QUIET.
14462
14463 2018-01-05  Pedro Alves  <palves@redhat.com>
14464
14465         * spu-tdep.c (spu_catch_start): Pass
14466         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
14467
14468 2018-01-05  Pedro Alves  <palves@redhat.com>
14469
14470         PR gdb/22670
14471         * ada-lang.c (literal_symbol_name_matcher): New function.
14472         (ada_get_symbol_name_matcher): Use it for
14473         symbol_name_match_type::SEARCH_NAME.
14474         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
14475         it down instead of assuming symbol_name_match_type::FULL.
14476         * block.h (block_lookup_symbol): New parameter 'match_type'.
14477         * c-valprint.c (print_unpacked_pointer): Use
14478         lookup_symbol_search_name instead of lookup_symbol.
14479         * compile/compile-object-load.c (get_out_value_type): Pass down
14480         symbol_name_match_type::SEARCH_NAME.
14481         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
14482         symbol_name_match_type::FULL.
14483         * cp-support.c (cp_get_symbol_name_matcher): Handle
14484         symbol_name_match_type::SEARCH_NAME.
14485         * infrun.c (insert_exception_resume_breakpoint): Use
14486         lookup_symbol_search_name.
14487         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
14488         * psymtab.c (maintenance_check_psymtabs): Use
14489         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
14490         * stack.c (print_frame_args): Use lookup_symbol_search_name and
14491         SYMBOL_SEARCH_NAME.
14492         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
14493         if symbol_name_match_type::SEARCH_NAME.
14494         (lookup_symbol_in_language): Pass down
14495         symbol_name_match_type::FULL.
14496         (lookup_symbol_search_name): New.
14497         (lookup_language_this): Pass down
14498         symbol_name_match_type::SEARCH_NAME.
14499         (lookup_symbol_aux, lookup_local_symbol): New parameter
14500         'match_type'.  Pass it down.
14501         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
14502         (lookup_symbol_search_name): New declaration.
14503         (lookup_symbol_in_block): New 'match_type' parameter.
14504
14505 2018-01-05  Pedro Alves  <palves@redhat.com>
14506
14507         PR gdb/22670
14508         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
14509         ada_lookup_symbol.
14510         (ada_lookup_symbol): Reimplement in terms of
14511         ada_lookup_symbol_list, bits factored out from
14512         ada_lookup_encoded_symbol.
14513
14514 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14515
14516         * ada-exp.y (write_object_renaming): When subscripting an array
14517         using a symbol as the index, pass the block in call to
14518         ada_lookup_encoded_symbol when looking that symbol up.
14519
14520 2018-01-05  Jerome Guitton  <guitton@adacore.com>
14521
14522         * ada-lang.c (ada_array_length): Use ada_index_type instead of
14523         TYPE_INDEX_TYPE.
14524
14525 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14526
14527         * ada-lang.c (ada_to_fixed_value_create): Add handling of
14528         the case where VALUE_LVAL (val0) is not lval_memory.
14529
14530 2018-01-05  Xavier Roirand  <roirand@adacore.com>
14531
14532         * ada-valprint.c (print_optional_low_bound): Handle
14533         character-indexed array printing like boolean-indexed array
14534         printing.
14535
14536 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14537
14538         * NEWS: Create a new section for the next release branch.
14539         Rename the section of the current branch, now that it has
14540         been cut.
14541
14542 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14543
14544         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
14545         * version.in: Bump version to 8.1.50.DATE-git.
14546
14547 2018-01-03  Xavier Roirand  <roirand@adacore.com>
14548
14549         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
14550         Add field.
14551         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
14552         Add field.
14553         (default_exception_support_info) <catch_handlers_sym>: Add field.
14554         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
14555         (ada_exception_name_addr_1): Add "catch handlers" handling.
14556         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
14557         Update all callers.
14558         (create_excep_cond_exprs) <ex>: Add parameter.
14559         (re_set_exception): Update create_excep_cond_exprs call.
14560         (print_it_exception, print_one_exception, print_mention_exception)
14561         (print_recreate_exception): Add "catch handler" handling.
14562         (allocate_location_catch_handlers, re_set_catch_handlers)
14563         (check_status_catch_handlers, print_it_catch_handlers)
14564         (print_one_catch_handlers, print_mention_catch_handlers)
14565         (print_recreate_catch_handlers): New function.
14566         (catch_handlers_breakpoint_ops): New variable.
14567         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
14568         Add parameter.  Add "catch handler" handling.
14569         (ada_exception_sym_name, ada_exception_breakpoint_ops):
14570         Add "catch handler" handling.
14571         (ada_exception_catchpoint_cond_string): Add "catch handler"
14572         handling.
14573         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
14574         call.
14575         (catch_ada_handlers_command): New function.
14576         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
14577         operations structure.
14578         (_initialize_ada_language): Add "catch handlers" command entry.
14579         * NEWS: Document "catch handlers" feature.
14580
14581 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14582
14583         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
14584         account when creating the array type of the slice.
14585         (ada_value_slice): Likewise.
14586
14587 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14588
14589         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
14590         New enum value.
14591         (create_array_type_with_stride): Add byte_stride_prop parameter.
14592         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
14593         New parameter.  Update all callers in this file.
14594         (array_type_has_dynamic_stride): New function.
14595         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
14596         of arrays with dynamic byte strides.
14597         * dwarf2read.c (read_array_type): Add support for dynamic
14598         DW_AT_byte_stride attributes.
14599
14600 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14601
14602         * dwarf2read.c (read_unspecified_type): Treat
14603         DW_TAG_enumeration_type DIEs from Ada units as stubs.
14604
14605 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14606
14607         Update copyright year range in all GDB files.
14608
14609 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
14610
14611         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
14612         and gdb/testsuite/gdb.base/step-line.c.
14613
14614 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14615
14616         * copyright.py (main): Dump the contents of
14617         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
14618         even if BY_HAND is empty.
14619
14620 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14621
14622         * top.c (print_gdb_version): Update Copyright year in version
14623         message.
14624
14625 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14626
14627         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
14628
14629 For older changes see ChangeLog-2017.
14630 \f
14631 Local Variables:
14632 mode: change-log
14633 left-margin: 8
14634 fill-column: 74
14635 version-control: never
14636 coding: utf-8
14637 End: