Aarch64: Better termination checks for sigcontext reading
[external/binutils.git] / gdb / ChangeLog
1 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
2
3         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
4         define.
5         (aarch64_linux_sigframe_init): Extra boundary checks.
6
7 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
8
9         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
10         the possibly non-existent tdesc type 'vec128', but the type of raw
11         register v16 instead.
12
13 2018-10-19  Gary Benson <gbenson@redhat.com>
14
15         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
16
17 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
18
19         PR cli/23785
20         * cli/cli-dump.c (restore_binary_file): Check if "file" is
21         NULL.
22
23 2018-10-17  Paul Koning  <paul_koning@dell.com>
24
25         * charset.c (convert_between_encodings): Fix unsigned overflow.
26
27 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
28
29         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
30         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
31         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
32         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
33         New functions.
34         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
35         and fbsd_info_proc_mappings_header.
36         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
37         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
38         New.
39
40 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
41
42         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
43         Solaris Maintainer.
44
45 2018-10-15  Tom Tromey  <tom@tromey.com>
46
47         * tui/tui.c (strcat_to_buf): Remove casts.
48         * tui/tui-winsource.c (tui_show_source_line)
49         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
50         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
51         * tui/tui-windata.c (tui_first_data_item_displayed)
52         (tui_delete_data_content_windows, tui_erase_data_content)
53         (tui_display_all_data, tui_display_data_from)
54         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
55         * tui/tui-win.c (tui_set_win_height)
56         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
57         casts.
58         * tui/tui-win.c (tui_resize_all): Remove casts.
59         (tui_scroll_backward_command, tui_set_focus)
60         (tui_set_tab_width_command): Likewise.
61         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
62         * tui/tui-regs.c (tui_show_register_group): Remove cast.
63         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
64         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
65         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
66         Remove casts.
67
68 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
69
70         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
71         AArch64/ARM maintainer.
72
73 2018-10-11  Gary Benson <gbenson@redhat.com>
74
75         * interps.h (interp::m_name): Make private and mutable.
76         * interps.c (interp::~interp): Free m_name.
77
78 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
79             Simon Marchi <simark@simark.ca>
80
81         * README (`configure' options): Add documentation for new
82         "--enable-unit-tests" option.
83         * acinclude.m4: Include "selftest.m4".
84         * configure: Regenerate.
85         * configure.ac: Use "GDB_AC_SELFTEST".
86         * maint.c (maintenance_selftest): Update message informing
87         that selftests have been disabled.
88         (maintenance_info_selftests): Likewise.
89         * selftest.m4: New file.
90
91 2018-10-10  Gary Benson <gbenson@redhat.com>
92
93         * remote.c (remote_target::remote_send_printf): Add
94         missing va_end found by Coverity.
95
96 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
97
98         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
99
100 2018-10-09  Tom Tromey  <tom@tromey.com>
101
102         * configure: Rebuild.
103         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
104         * NEWS: Update --enable-ubsan documentation.
105
106 2018-10-09  Gary Benson <gbenson@redhat.com>
107
108         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
109         found by Coverity.
110
111 2018-10-08  Tom Tromey  <tom@tromey.com>
112
113         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
114         variable.
115         (riscv_fbsd_init_abi): Likewise.
116
117 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
118         * valops.c (value_struct_elt_for_reference): Rename local variable
119         to work around the shadowing a previous local warning.
120
121 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
122
123         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
124         * NEWS: Mention new FreeBSD/riscv native configuration.
125         * configure.host: Add riscv*-*-freebsd*.
126         * configure.nat: Likewise.
127         * riscv-fbsd-nat.c: New file.
128
129 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
130
131         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
132         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
133         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
134         * NEWS: Mention new FreeBSD/riscv target.
135         * configure.tgt: Add riscv*-*-freebsd*.
136         * riscv-fbsd-tdep.c: New file.
137         * riscv-fbsd-tdep.h: New file.
138
139 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
140
141         * regcache.h (struct regcache_map_entry): Note that this type can
142         be used with traditional frame caches.
143         * trad-frame.c (trad_frame_set_reg_regmap): New.
144         * trad-frame.h (trad_frame_set_reg_regmap): New.
145
146 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
147
148         PR c++/16841
149         * valops.c (get_virtual_base_offset): New function.
150         (value_struct_elt_for_reference): Use it to get virtual base offset
151         and add it in calculating class member address.
152
153 2018-10-08   John Darrington <john@darrington.wattle.id.au>
154
155     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
156       (check_producer): Check if the producer is codewarrior.
157       (producer_is_codewarrior): New function.
158       (lnp_state_machine::record_line): Ignore is_stmt flag for records
159        produced by codewarrior.
160       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
161
162 2018-10-06  Tom Tromey  <tom@tromey.com>
163
164         PR python/19399:
165         * python/py-inferior.c: Add "architecture" entry.
166         (infpy_architecture): New function.
167
168 2018-10-06  Tom Tromey  <tom@tromey.com>
169
170         PR python/21765:
171         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
172         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
173         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
174         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
175
176 2018-10-06  Tom Tromey  <tom@tromey.com>
177
178         PR build/17077:
179         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
180         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
181         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
182         #include.
183
184 2018-10-06  Tom Tromey  <tom@tromey.com>
185
186         * python/py-breakpoint.c (bppy_get_location): Handle a
187         bp_breakpoint without a location.
188
189 2018-10-06  Tom Tromey  <tom@tromey.com>
190
191         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
192         (_RegEx): Reformat help text.
193         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
194         (AnyCallerIs, AnyCallerMatches): Reformat help text.
195         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
196         text.
197         * python/lib/gdb/command/xmethods.py (InfoXMethod)
198         (EnableXMethod, DisableXMethod): Remove help indentation.
199         Capitalize meta-syntactic variables.
200         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
201         (EnableUnwinder, DisableUnwinder): Remove help indentation.
202         Capitalize meta-syntactic variables.
203         * python/lib/gdb/command/explore.py (ExploreCommand)
204         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
205         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
206         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
207         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
208         Remove help indentation.
209         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
210         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
211         (DisableFrameFilter, SetFrameFilterPriority)
212         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
213
214 2018-10-06  Tom Tromey  <tom@tromey.com>
215
216         PR tui/28819:
217         * tui/tui-io.c (gdb_wgetch): New function.
218         (tui_mld_getc, tui_getc): Use it.
219
220 2018-10-05  Tom Tromey  <tom@tromey.com>
221
222         * sol-thread.c (sol_thread_target::wait): Rename inner
223         "save_ptid".
224
225 2018-10-04  Tom Tromey  <tom@tromey.com>
226
227         * configure: Rebuild.
228         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
229
230 2018-10-04  Tom Tromey  <tom@tromey.com>
231
232         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
233         declaration of "block".
234
235 2018-10-04  Tom Tromey  <tom@tromey.com>
236
237         * common/filestuff.c (fdwalk): Remove inner declaration of
238         "result".
239
240 2018-10-04  Tom Tromey  <tom@tromey.com>
241
242         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
243         "structs_addr" and hoist declaration.
244
245 2018-10-04  Tom Tromey  <tom@tromey.com>
246
247         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
248         variable "size".
249
250 2018-10-04  Tom Tromey  <tom@tromey.com>
251
252         * mdebugread.c (parse_partial_symbols): Use std::string.
253
254 2018-10-04  Tom Tromey  <tom@tromey.com>
255
256         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
257         * p-valprint.c (pascal_val_print): Split inner "i" variable.
258         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
259         header.
260         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
261         more inner scope.
262         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
263         * varobj.c (varobj_update): Rename inner "newobj",
264         "type_changed".
265         * valprint.c (generic_emit_char): Rename inner "buf".
266         * valops.c (find_overload_match): Rename inner "temp".
267         (value_struct_elt_for_reference): Declare "v" in more inner
268         scope.
269         * v850-tdep.c (v850_push_dummy_call): Rename "len".
270         * unittests/array-view-selftests.c (run_tests): Rename inner
271         "vec".
272         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
273         header.
274         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
275         "tsv" in more inner scope.
276         (print_one_static_tracepoint_marker): Rename inner
277         "tuple_emitter".
278         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
279         (tic6x_push_dummy_call): Don't redeclare "addr".
280         * target-float.c: Declare "dto" lower.
281         * symtab.c (lookup_local_symbol): Rename inner "sym".
282         (find_pc_sect_line): Rename inner "pc".
283         * stack.c (print_frame): Don't redeclare "gdbarch".
284         (return_command): Rename inner "gdbarch".
285         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
286         "sp".
287         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
288         header.
289         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
290         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
291         scope.
292         * remote.c (remote_target::update_thread_list): Don't redeclare
293         "tp".
294         (remote_target::process_initial_stop_replies): Rename inner
295         "thread".
296         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
297         (remote_target::wait_as): Don't redeclare "stop_reply".
298         (remote_target::get_thread_local_address): Rename inner
299         "result".
300         (remote_target::get_tib_address): Likewise.
301
302         * regcache.c (cooked_read_test): Rename "regnum".
303         * record-btrace.c (cmd_record_btrace_start): Rename inner
304         "exception".
305         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
306         loop header.
307         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
308         header.
309         (ppu2spu_sniffer): Rename inner "buf".
310         * parse.c (operator_check_standard): Rename inner "type",
311         "objfile".
312         * p-valprint.c (pascal_val_print): Introduce new scope for
313         "low_bound", "high_bound".
314         * p-exp.y (yylex): Declare "i" in loop header.
315         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
316         Lower declaration of "s".
317         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
318         header.
319         (nios2_push_dummy_call): Rename "len".
320         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
321         "buf".
322         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
323         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
324         (linux_xfer_osdata_modules): Likewise.
325         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
326         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
327         (mips_o64_push_dummy_call): Likewise.
328         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
329         "op".
330         * mi/mi-main.c (list_available_thread_groups): Rename inner
331         "tuple_emitter".
332         (mi_cmd_data_read_memory): Rename inner "opts".
333         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
334         "tuple_emitter".
335         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
336         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
337         more inner scope.
338         (parse_partial_symbols): Rename inner "pst", "p", "name"
339         * main.c (captured_main_1): Rename inner "i"s.
340         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
341         "oso2".
342         * linux-tdep.c (linux_info_proc): Rename inner "filename".
343         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
344         * infrun.c (handle_no_resumed): Don't redeclare "thread".
345         (handle_signal_stop): Rename inner "gdbarch".
346         (handle_command): Declare "signum" in loop header.
347         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
348         "status".
349         (examine_prologue): Rename inner "sol" and "sof".
350         (ia64_extract_return_value): Rename inner "val".  Declare another
351         "val" in a more inner scope.
352         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
353         inner scope.
354         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
355         "except".
356         * findvar.c (default_read_var_value): Don't redeclare "addr".
357         * f-exp.y (yylex): Declare "i" in loop header.
358         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
359         Rename inner "type", "expect_type".
360         (evaluate_subexp_for_sizeof): Rename inner "pc".
361         * elfread.c (elf_symfile_read): Rename inner "abfd".
362         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
363         "bytes_read".
364         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
365         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
366         (dwarf_decode_line_header): Rename inner "lh".
367         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
368         "offset".  Declare "i" in loop header.
369         (disassemble_dwarf_expression): Rename inner "addr_size".
370         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
371         inner "result".
372         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
373         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
374         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
375         "inner_list_emitter".
376         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
377         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
378         declaration in a block.
379         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
380         * cp-valprint.c (cp_print_value_fields): Don't redeclare
381         "obstack_final_size".
382         * cp-support.c (inspect_type): Declare "i" in loop header.
383         * compile/compile.c (compile_instance::insert_symbol_error):
384         Rename inner "e".
385         * common/agent.c (agent_run_command): Remove inner "ret"
386         declaration.
387         * coffread.c (coff_symfile_read): Rename inner "name".
388         (coff_symfile_read): Rename inner "abfd".
389         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
390         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
391         "high".
392         * c-exp.y (lex_one_token): Move "len" declaration lower.
393         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
394         "gdbarch".
395         (create_exception_master_breakpoint): Likewise.  Don't redeclare
396         "b".
397         (watch_command_1): Declare "mark" later.
398         (clear_command): Don't shadow "a" or "b".
399         (delete_command): Rename inner "b".
400         (delete_trace_command): Likewise.
401         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
402         "op".
403         (arm_gdbarch_init): Remove inner "e_flags".
404         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
405         "offset" in inner blocks.
406
407 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
408
409         * dwarf-index-write.c (file_write): Don't write if the vector is
410         empty.
411
412 2018-10-05  Tom de Vries  <tdevries@suse.de>
413
414         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
415         PyArg_ParseTuple call.
416
417 2018-10-05  Tom de Vries  <tdevries@suse.de>
418
419         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
420         PyArg_ParseTuple call.
421
422 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
423
424         * psymtab.c (recursively_search_psymtabs): Reformat parameters
425         to avoid exceeding 80 characters per line limit.
426
427 2018-10-04  Tom Tromey  <tom@tromey.com>
428
429         * symfile.c (syms_from_objfile_1, finish_new_objfile)
430         (reread_symbols): Update.
431         * complaints.h (clear_complaints): Remove argument.
432         * complaints.c (enum complaint_series): Remove.
433         (series): Remove global.
434         (complaint_internal): Update.
435         (clear_complaints): Remove argument.
436
437 2018-10-04  Tom Tromey  <tom@tromey.com>
438
439         * symfile.c (symbol_file_add_with_addrs): Do not print "no
440         debugging symbols" message if there is a separate debug objfile.
441
442 2018-10-04  Tom Tromey  <tom@tromey.com>
443
444         PR cli/19551:
445         * symfile.c (symbol_file_add_with_addrs): Update output.
446         * psymtab.c (require_partial_symbols): Update output.
447
448 2018-10-04  Tom Tromey  <tom@tromey.com>
449
450         PR cli/22234:
451         * complaints.c: Emit \n.
452
453 2018-10-04  Tom Tromey  <tom@tromey.com>
454
455         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
456         (separate_debug_file_exists, find_separate_debug_file)
457         (add_symbol_file_command, reread_symbols, allocate_symtab)
458         (allocate_compunit_symtab): Use filtered printing, not
459         unfiltered.
460         * psymtab.c (require_partial_symbols, dump_psymtab)
461         (allocate_psymtab): Use filtered printing, not unfiltered.
462
463 2018-10-04  Tom Tromey  <tom@tromey.com>
464
465         * complaints.c (complaint_internal): Correctly check complaint
466         count.
467
468 2018-10-04  Tom Tromey  <tom@tromey.com>
469
470         * complaints.h (struct complaints): Remove declaration.
471         * complaints.c (clear_complaints): Remove an unused variable.
472
473 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
474
475         * MAINTAINERS (Write After Approval): Add self.
476
477 2018-10-03  Tom Tromey  <tom@tromey.com>
478
479         * guile/scm-value.c (gdbscm_value_to_string): Initialize
480         "buffer_contents".
481         * coffread.c (coff_symtab_read): Initialize "newobj".
482
483 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
484
485         * dwarf2read.c (read_func_scope): Remove struct keyword in
486         range-based for.
487
488 2018-10-03  Tom Tromey  <tom@tromey.com>
489
490         * README: Mention --enable-ubsan.
491         * NEWS: Mention --enable-ubsan.
492         * acinclude.m4: Include sanitize.m4.
493         * configure: Rebuild.
494         * configure.ac: Call AM_GDB_UBSAN.
495         * sanitize.m4: New file.
496
497 2018-10-03  Tom Tromey  <tom@tromey.com>
498
499         * expression.h (enum exp_opcode): Use uint8_t as base type.
500         * expprint.c (op_name): Handle invalid opcodes.
501
502 2018-10-03  Tom Tromey  <tom@tromey.com>
503
504         * parse.c (prefixify_expression): Add assert.
505         (parse_exp_in_context_1): Throw exception if the expression is
506         empty.
507
508 2018-10-03  Tom Tromey  <tom@tromey.com>
509
510         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
511
512 2018-10-03  Tom Tromey  <tom@tromey.com>
513
514         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
515
516 2018-10-03  Tom Tromey  <tom@tromey.com>
517
518         * dwarf2read.c (read_subrange_type): Make "negative_mask"
519         unsigned.
520
521 2018-10-03  Tom Tromey  <tom@tromey.com>
522
523         * findvar.c (extract_integer): Do work in an unsigned type.
524
525 2018-10-03  Tom Tromey  <tom@tromey.com>
526
527         * common/enum-flags.h (enum_flags::operator~): Add static assert.
528         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
529         base type.
530         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
531         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
532         type.
533         * c-lang.h (enum c_string_type_values): Use unsigned as base
534         type.
535         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
536
537 2018-10-03  Tom Tromey  <tom@tromey.com>
538
539         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
540         <~dwarf2_frame_state_reg_info>: Update.
541         <dwarf2_frame_state_reg_info>: Update.
542         <alloc_regs>: Add assertion.  Update.
543         <reg>: Now a std::vector.
544         <num_regs>: Remove.
545         <swap>: Update.
546         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
547         (execute_cfa_program_test, dwarf2_frame_cache): Update.
548
549 2018-10-03  Tom Tromey  <tom@tromey.com>
550
551         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
552
553 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
554
555         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
556
557 2018-10-02  Tom Tromey  <tom@tromey.com>
558
559         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
560
561 2018-10-02  John Darrington <john@darrington.wattle.id.au>
562
563         * NEWS: Mention changed commands.
564         * ser-uds.c: New file.
565         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
566         * configure: Regenerate.
567         * Makefile.in: Add new file.
568         * serial.c (serial_open): Check if filename is a socket
569           and lookup the appropriate interface accordingly.
570
571 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
572
573         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
574         define.
575         (AARCH64_EXTRA_MAGIC): Likewise.
576         (AARCH64_FPSIMD_MAGIC): Likewise.
577         (AARCH64_SVE_MAGIC): Likewise.
578         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
579         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
580         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
581         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
582         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
583         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
584         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
585         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
586         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
587         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
588         (read_aarch64_ctx): Add function.
589         (aarch64_linux_sigframe_init): Detect FP registers.
590
591 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
592
593         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
594         (AARCH64_D0_REGNUM): Likewise.
595         (AARCH64_S0_REGNUM): Likewise.
596         (AARCH64_H0_REGNUM): Likewise.
597         (AARCH64_B0_REGNUM): Likewise.
598         (AARCH64_SVE_V0_REGNUM): Likewise.
599         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
600         (AARCH64_D0_REGNUM): Likewise.
601         (AARCH64_S0_REGNUM): Likewise.
602         (AARCH64_H0_REGNUM): Likewise.
603         (AARCH64_B0_REGNUM): Likewise.
604         (AARCH64_SVE_V0_REGNUM): Likewise.
605
606 2018-10-01  Gary Benson <gbenson@redhat.com>
607
608         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
609         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
610         prfpregset_t instead of gdb_prfpregset_t.
611         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
612         * configure, config.in: Rebuild.
613
614 2018-10-01  Gary Benson <gbenson@redhat.com>
615
616         * common/gdb_proc_service.h: New file, factored out from...
617         * gdb_proc_service.h: Moved common code to the above file.
618         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
619
620 2018-10-01  Gary Benson <gbenson@redhat.com>
621
622         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
623         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
624
625 2018-10-01  Gary Benson <gbenson@redhat.com>
626
627         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
628         (AC_CHECK_HEADERS): Check for linux/elf.h.
629         * configure, config.in: Rebuild.
630         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
631         doesn't define elf_fpregset_t.
632
633 2018-10-01  Gary Benson <gbenson@redhat.com>
634
635         * gdb_proc_service.h: Whitespace change.
636
637 2018-10-01  Tom Tromey  <tom@tromey.com>
638
639         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
640         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
641         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
642
643 2018-10-01  Tom Tromey  <tom@tromey.com>
644
645         * README: Minor change.
646
647 2018-09-30  Pedro Alves  <palves@redhat.com>
648
649         * darwin-nat-info.c (darwin_debug_regions_recurse)
650         (info_mach_exceptions_command): Remove unused local variables.
651         * darwin-nat.c (darwin_decode_notify_message)
652         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
653         (darwin_stop_inferior, darwin_setup_exceptions)
654         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
655         (darwin_nat_target::attach, darwin_nat_target::detach)
656         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
657         local variables.
658         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
659         variables.
660
661 2018-09-29  Tom Tromey  <tom@tromey.com>
662
663         * README: Remove some leftover text.
664
665 2018-09-29  Tom Tromey  <tom@tromey.com>
666
667         * PROBLEMS: Rewrite.
668         * README: Update.
669
670 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
671
672         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
673         case with explicit breakpoint kind.
674         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
675         'additional_info' and related logic.
676         (riscv_debug_breakpoints): New variable.
677         (riscv_breakpoint_kind_from_pc): Use the length of the existing
678         instruction to determine the breakpoint kind.
679         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
680         flag.  Update description of 'set/show riscv
681         use-compressed-breakpoints' flag.
682
683 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
684
685         (NEWS): Mention changes to frame related commands.
686         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
687         (add_prefix_cmd_suppress_notification): New function.
688         (add_com_suppress_notification): Call
689         add_cmd_suppress_notification.
690         * command.h (add_cmd_suppress_notification): Declare.
691         (add_prefix_cmd_suppress_notification): Declare.
692         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
693         (parse_frame_specification): Moved from stack.c, with
694         simplification to handle a single argument.
695         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
696         switch to the selected frame.  Add a header comment.
697         * stack.c: Remove 'safe-ctype.h' include.
698         (find_frame_for_function): Add declaration.
699         (find_frame_for_address): New function.
700         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
701         (frame_selection_by_function_completer): New function.
702         (info_frame_command): Rename to...
703         (info_frame_command_core): ...this, and update parameter types.
704         (select_frame_command): Rename to...
705         (select_frame_command_core): ...this, and update parameter types.
706         (frame_command): Rename to...
707         (frame_command_core): ...this, and update parameter types.
708         (class frame_command_helper): New class to wrap implementations of
709         frame related sub-commands.
710         (frame_apply_cmd_list): New static global.
711         (frame_cmd_list): Make static.
712         (select_frame_cmd_list): New global for sub-commands.
713         (info_frame_cmd_list): New global for sub-commands.
714         (_initialize_stack): Register sub-commands for 'frame',
715         'select-frame', and 'info frame'.  Update 'frame apply' commands
716         to use frame_apply_cmd_list.  Move function local static
717         frame_apply_list to file static frame_apply_cmd_list for
718         consistency.
719         * stack.h (select_frame_command): Delete declarationn.
720         (select_frame_for_mi): Declare new function.
721
722 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
723
724         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
725         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
726         and NOP.
727
728 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
729
730         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
731
732 2018-09-26  Tom Tromey  <tom@tromey.com>
733
734         * valops.c (auto_abandon): Remove dead code.
735
736 2018-09-26  Tom Tromey  <tom@tromey.com>
737
738         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
739
740 2018-09-24  Tom Tromey  <tom@tromey.com>
741
742         * common/pathstuff.c (get_standard_cache_dir): Make
743         "xdg_cache_home" and "home" const.
744         * top.c (init_history): Make "tmpenv" const.
745         * main.c (get_init_files): Make "homedir" const.
746
747 2018-09-23  Tom Tromey  <tom@tromey.com>
748
749         PR python/18852:
750         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
751
752 2018-09-23  Tom Tromey  <tom@tromey.com>
753
754         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
755         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
756         * python/python-internal.h (gdbpy_handle_exception): Declare.
757         * python/py-utils.c (gdbpy_handle_exception): New function.
758
759 2018-09-23  Tom Tromey  <tom@tromey.com>
760
761         PR python/17284:
762         * python/py-type.c (typy_template_argument): Check for negative
763         argument number.
764
765 2018-09-23  Tom Tromey  <tom@tromey.com>
766
767         PR python/14062:
768         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
769
770 2018-09-23  Tom Tromey  <tom@tromey.com>
771
772         PR python/18170:
773         * python/py-value.c (valpy_int): Allow conversion from pointer
774         type.
775
776 2018-09-23  Tom Tromey  <tom@tromey.com>
777
778         PR python/20126:
779         * python/py-value.c (valpy_int): Respect type sign.
780
781 2018-09-23  Tom Tromey  <tom@tromey.com>
782
783         PR python/18352;
784         * python/py-value.c (valpy_float): Allow conversions from int or
785         char.
786         (valpy_int, valpy_long): Allow conversions from float.
787
788 2018-09-23  Tom Tromey  <tom@tromey.com>
789
790         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
791         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
792
793 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
794
795         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
796         __sighndlr.
797         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
798
799 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
800
801         * windows-nat.c (windows_nat_target::wait): Remove a spurious
802         target_terminal::ours().
803
804 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
805
806         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
807         of vl to ULONGEST.
808
809 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
810
811         * breakpoint.c (update_inserted_breakpoint_locations): Remove
812         redundant condition.
813
814 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
815
816         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
817
818         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
819         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
820         * sol-thread.c (ps_pdmodel): Don't guard definition.
821
822         * procfs.c: Fix formatting.
823
824         * procfs.c (sysset_t_alloc): Remove.
825         (create_procinfo): Use XNEW instead of sysset_t_alloc.
826         (procfs_debug_inferior): Likewise.
827         (procfs_set_exec_trap): Likewise.
828         (proc_set_traced_sysentry): Don't allocate argp dynamically.
829         (proc_set_traced_sysexit): Likewise.
830
831         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
832         (dead_procinfo): Likewise.
833         (proc_warn): Likewise.
834         (proc_error): Likewise.
835         (proc_get_LDT_entry): Likewise.
836         (do_attach): Likewise.
837         (procfs_target::pid_to_str): Likewise.
838         (iterate_over_mappings): Likewise.
839
840         * procfs.c (create_procinfo): Fix ARI warning.
841         (proc_get_status): Likewise.
842         (proc_stop_process): Likewise.
843         (proc_run_process): Likewise.
844         (proc_kill): Likewise.
845         (proc_get_LDT_entry): Likewise.
846         (procfs_find_LDT_entry): Likewise.
847         (proc_update_threads): Likewise.
848         (proc_iterate_over_threads): Likewise.
849         (do_attach): Likewise.
850         (procfs_xfer_memory): Likewise.
851         (invalidate_cache): Likewise.
852         (procfs_target::resume): Likewise.
853         (procfs_init_inferior): Likewise.
854         (procfs_set_exec_trap): Likewise.
855         (procfs_target::thread_alive): Likewise.
856         (procfs_target::pid_to_exec_file): Likewise.
857         (iterate_over_mappings): Likewise.
858         (procfs_target::make_corefile_notes): Likewise.
859         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
860
861         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
862         (procfs_find_LDT_entry): Likewise.
863         * sol-thread.c (ps_lgetLDT): Likewise.
864
865 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
866
867         PR tdep/17903
868         * procfs.c (procfs_target): Declare pid_to_exec_file.
869         (procfs_target::pid_to_exec_file): New.
870
871 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
872
873         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
874         renaming.
875         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
876         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
877
878 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
879
880         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
881         (supply_fpregset, fill_fpregset): Move ...
882         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
883         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
884         Remove references to ioctl-based procfs.
885         Include <sys/reg.h>.
886         Remove PR_MODEL_NATIVE guards.
887         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
888         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
889
890 2018-09-19  Xavier Roirand  <roirand@adacore.com>
891
892         PR gdb/20981:
893         * solib-darwin.c (darwin_get_dyld_bfd): New function.
894         (darwin_solib_get_all_image_info_addr_at_init): Update call.
895         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
896
897 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
898
899         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
900         (fbsd_print_sockaddr_in6): Likewise.
901
902 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
903             Chris January  <chris.january@arm.com>
904
905         * eval.c (skip_undetermined_arglist): Skip argument list helper.
906         (evaluate_subexp_standard): Return a dummy type when
907         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
908         OP_F77_UNDETERMINED_ARGLIST case.
909         * expression.h (enum noside): Update comment.
910
911 2018-09-19  George Vasick <george.vasick@oracle.com>
912
913         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
914
915 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
916             April Chin <april.chin@oracle.com>
917             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
918
919         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
920         uint_t lwpid_t.
921         (create_procinfo): Print pids in /proc without leading zeros.
922
923 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
924
925         * nios2-tdep.c (nios2_gcc_target_options): New.
926         (nios2_gdb_arch_init): Install new hook.
927
928 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
929
930         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
931         New file.
932         * update-gnulib.sh: Apply patch.
933         * configure: Re-generate.
934
935 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
936
937         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
938         description.  Make "info proc" command descriptions more
939         consistent.
940
941 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
942
943         * NEWS: Mention 'info proc files' command.
944
945 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
946
947         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
948         descriptors for IP_FILES and IP_ALL.
949
950 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
951
952         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
953         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
954         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
955         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
956         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
957         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
958         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
959         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
960         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
961         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
962         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
963         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
964         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
965         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
966         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
967         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
968         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
969         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
970         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
971         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
972         (struct fbsd_sockaddr_un): New types.
973         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
974         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
975         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
976         (fbsd_core_info_proc_files): New functions.
977         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
978         IP_ALL.
979         * fbsd-tdep.h (fbsd_info_proc_files_header)
980         (fbsd_info_proc_files_entry): New.
981
982 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
983
984         * defs.h (enum info_proc_what) [IP_FILES]: New value.
985         * infcmd.c (info_proc_cmd_files): New function.
986         (_initialize_infcmd): Register 'info proc files' command.
987
988 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
989
990         * gnulib/aclocal-m4-deps.mk: Re-generate.
991         * gnulib/aclocal.m4: Re-generate.
992         * gnulib/config.in: Re-generate.
993         * gnulib/configure: Re-generate.
994         * gnulib/import/Makefile.am: Re-generate.
995         * gnulib/import/Makefile.in: Re-generate.
996         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
997         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
998         * gnulib/import/arpa_inet.in.h: New file.
999         * gnulib/import/inet_ntop.c: New file.
1000         * gnulib/import/m4/arpa_inet_h.m4: New file.
1001         * gnulib/import/m4/inet_ntop.m4: New file.
1002         * gnulib/import/m4/netinet_in_h.m4: New file.
1003         * gnulib/import/m4/socklen.m4: New file.
1004         * gnulib/import/m4/sockpfaf.m4: New file.
1005         * gnulib/import/m4/stdalign.m4: New file.
1006         * gnulib/import/m4/sys_uio_h.m4: New file.
1007         * gnulib/import/netinet_in.in.h: New file.
1008         * gnulib/import/stdalign.in.h: New file.
1009         * gnulib/import/sys_socket.c: New file.
1010         * gnulib/import/sys_socket.in.h: New file.
1011         * gnulib/import/sys_uio.in.h: New file.
1012         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1013         module.
1014
1015 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1016
1017         * gnulib/aclocal-m4-deps.mk: New file.
1018         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1019         deterministically.
1020
1021 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1022
1023         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1024         KVE_PATH.
1025
1026 2018-09-18  Tom Tromey  <tom@tromey.com>
1027
1028         * compile/compile-object-load.c (struct
1029         link_hash_table_cleanup_data): Add constructor and destructor.
1030         Use DISABLE_COPY_AND_ASSIGN.
1031         (~link_hash_table_cleanup_data): Rename from
1032         link_hash_table_free.  Now a destructor.
1033         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1034
1035 2018-09-18  Tom Tromey  <tom@tromey.com>
1036
1037         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1038         * compile/compile-object-load.c (struct munmap_list): Move to
1039         header file.
1040         (munmap_list::add): Rename from munmap_list_add; rewrite.
1041         (munmap_list::~munmap_list): Rename from munmap_list_free.
1042         (munmap_listp_free_cleanup): Remove.
1043         (compile_object_load): Update.
1044         * compile/compile-object-load.h (struct munmap_list): Move from
1045         compile-object-load.c.  Rewrite.
1046
1047 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1048
1049         * aarch64-tdep.c (pass_in_v): Use register size.
1050         (aarch64_extract_return_value): Likewise.
1051         (aarch64_store_return_value): Likewise.
1052
1053 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1054
1055         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1056         rlim_t.
1057
1058 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1059
1060         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1061         Fix short help line.
1062
1063 2018-09-17  Tom Tromey  <tom@tromey.com>
1064
1065         PR python/20445:
1066         * configure: Rebuild.
1067         * configure.ac: Conditionally use -DNDEBUG for Python.
1068
1069 2018-09-17  Tom Tromey  <tom@tromey.com>
1070
1071         * configure: Rebuild.
1072         * configure.ac: Use gmp as a library dependency when checking for
1073         mpfr.
1074
1075 2018-09-17  Pedro Alves  <palves@redhat.com>
1076
1077         * python/py-inferior.c (find_inferior_object): Delete.
1078
1079 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1080
1081         * compile/compile-cplus-types.c
1082         (compile_cplus_instance::enter_scope): Don't use new_scope after
1083         std::move.
1084
1085 2018-09-17  Tom Tromey  <tom@tromey.com>
1086
1087         * common/pathstuff.c (get_standard_cache_dir): Use
1088         ~/Library/Caches on macOS.
1089         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1090
1091 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1092
1093         PR python/23669
1094         * breakpoint.c (commands_cmd_element): New.
1095         (_initialize_breakpoint): Assign commands_cmd_element.
1096         * breakpoint.h (commands_cmd_element): New.
1097         * cli/cli-script.c (while_cmd_element, if_command,
1098         define_cmd_element): New.
1099         (command_name_equals): Remove.
1100         (process_next_line): Compare commands by pointer, not by name.
1101         (_initialize_cli_script): Assign the various cmd_list_element
1102         variables.
1103         * compile/compile.c (compile_cmd_element): New.
1104         (_initialize_compile): Assign compile_cmd_element.
1105         * compile/compile.h (compile_cmd_element): New.
1106         * guile/guile.c (guile_cmd_element): New.
1107         (install_gdb_commands): Assign guile_cmd_element.
1108         * guile/guile.h (guile_cmd_element): New.
1109         * python/python.c (python_cmd_element): New.
1110         (_initialize_python): Assign python_cmd_element.
1111         * python/python.h (python_cmd_element): New.
1112         * tracepoint.c (while_stepping_cmd_element): New.
1113         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1114         * tracepoint.h (while_stepping_cmd_element): New.
1115
1116 2018-09-17  Tom Tromey  <tom@tromey.com>
1117
1118         * infrun.c (save_infcall_suspend_state): Return
1119         infcall_suspend_state_up.
1120         (save_infcall_control_state): Return infcall_control_state_up.
1121         * inferior.h (save_infcall_suspend_state)
1122         (save_infcall_control_state): Declare later.  Return unique
1123         pointers.
1124
1125 2018-09-17  Tom Tromey  <tom@tromey.com>
1126
1127         * infrun.c (struct stop_context): Declare constructor,
1128         destructor, "changed" method.
1129         (stop_context::stop_context): Rename from save_stop_context.
1130         (stop_context::~stop_context): Rename from
1131         release_stop_context_cleanup.
1132         (normal_stop): Update.
1133         (stop_context::changed): Rename from stop_context_changed.  Return
1134         bool.
1135
1136 2018-09-17  Tom Tromey  <tom@tromey.com>
1137
1138         * inferior.h (struct infcall_suspend_state_deleter): New.
1139         (infcall_suspend_state_up): New typedef.
1140         (struct infcall_control_state_deleter): New.
1141         (infcall_control_state_up): New typedef.
1142         (make_cleanup_restore_infcall_suspend_state)
1143         (make_cleanup_restore_infcall_control_state): Don't declare.
1144         * infcall.c (call_function_by_hand_dummy): Update.
1145         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1146         (make_cleanup_restore_infcall_suspend_state): Remove.
1147         (do_restore_infcall_control_state_cleanup)
1148         (make_cleanup_restore_infcall_control_state): Remove.
1149
1150 2018-09-17  Tom Tromey  <tom@tromey.com>
1151
1152         * gdbthread.h (struct thread_control_state): Add initializer.
1153         (class thread_info) <control>: Remove initializer.
1154         * inferior.h (struct inferior_control_state): Add initializer.
1155         (class inferior) <control>: Remove initializer.
1156         (exit_inferior_1): Update.
1157         * infrun.c (struct infcall_control_state): Add constructors.
1158         (save_infcall_control_state): Use new.
1159         (restore_infcall_control_state, discard_infcall_control_state):
1160         Use delete.
1161
1162 2018-09-17  Tom Tromey  <tom@tromey.com>
1163
1164         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1165         unique_ptr.
1166         <siginfo_data>: Now a unique_xmalloc_ptr.
1167         (save_infcall_suspend_state, restore_infcall_suspend_state)
1168         (discard_infcall_suspend_state)
1169         (get_infcall_suspend_state_regcache): Update.
1170
1171 2018-09-17  Tom Tromey  <tom@tromey.com>
1172
1173         * gdbthread.h (struct thread_suspend_state): Add initializers.
1174         (class thread_info) <suspend>: Remove initializer.
1175         * infrun.c (struct infcall_suspend_state): Add initializers.
1176         (save_infcall_suspend_state): Use new.
1177         (discard_infcall_suspend_state): Use delete.
1178
1179 2018-09-16  Tom Tromey  <tom@tromey.com>
1180
1181         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1182         Remove.
1183         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1184         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1185         (py_varobj_iter_new): Likewise.
1186         (py_varobj_get_iterator): Use gdbpy_ref.
1187
1188 2018-09-16  Tom Tromey  <tom@tromey.com>
1189
1190         * python/py-threadevent.c (py_get_event_thread): Simplify.
1191         * python/py-inferior.c (infpy_thread_from_thread_handle):
1192         Return immediately after calling thread_to_thread_object.  Use
1193         Py_RETURN_NONE.
1194         (thread_to_thread_object): Set the exception on a NULL return.
1195
1196 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1197
1198         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1199
1200 2018-09-16  Tom Tromey  <tom@tromey.com>
1201
1202         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1203         Remove.
1204
1205 2018-09-16  Tom Tromey  <tom@tromey.com>
1206
1207         * python/python-internal.h (thread_to_thread_object): Change
1208         return type.
1209         * python/py-inferior.c (thread_to_thread_object): Return a new
1210         reference.
1211         (infpy_thread_from_thread_handle): Update.
1212         * python/py-infthread.c (gdbpy_selected_thread): Update.
1213         * python/py-stopevent.c (create_stop_event_object): Update.
1214         * python/py-threadevent.c (py_get_event_thread): Return a new
1215         reference.
1216         (py_get_event_thread): Update.
1217         * python/py-event.h (py_get_event_thread): Change return type.
1218         * python/py-continueevent.c (create_continue_event_object):
1219         Update.
1220
1221 2018-09-16  Tom Tromey  <tom@tromey.com>
1222
1223         * python/py-progspace.c (pspy_get_objfiles): Update.
1224         * python/python-internal.h (objfile_to_objfile_object): Change
1225         return type.
1226         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1227         Update.
1228         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1229         Update.
1230         * python/python.c (gdbpy_get_current_objfile): Update.
1231         (gdbpy_objfiles): Update.
1232         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1233         Update.
1234         (objfile_to_objfile_object): Return a new reference.
1235         * python/py-symtab.c (stpy_get_objfile): Update.
1236         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1237         Update.
1238
1239 2018-09-16  Tom Tromey  <tom@tromey.com>
1240
1241         * python/py-inferior.c (infpy_get_progspace): Update.
1242         * python/python-internal.h (pspace_to_pspace_object): Change
1243         return type.
1244         * python/py-newobjfileevent.c
1245         (create_clear_objfiles_event_object): Update.
1246         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1247         Update.
1248         * python/python.c (gdbpy_get_current_progspace): Update.
1249         (gdbpy_progspaces): Update.
1250         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1251         reference.
1252         * python/py-objfile.c (objfpy_get_progspace): Update.
1253         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1254         Update.
1255
1256 2018-09-16  Tom Tromey  <tom@tromey.com>
1257
1258         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1259         (solib_name, block_for_pc, find_pc_line): New functions.
1260         (execute_unwinders): Update.
1261         * python/py-block.c (gdbpy_block_for_pc): Remove.
1262         * python/py-inferior.c (infpy_get_progspace): New function.
1263         (inferior_object_getset) <progspace>: Add.
1264         * python/py-progspace.c (pspy_objfiles): Rewrite.
1265         (pspy_solib_name, pspy_block_for_pc)
1266         (pspy_find_pc_line, pspy_is_valid): New functions.
1267         (progspace_object_methods): Add entries for solib_name,
1268         block_for_pc, find_pc_line, is_valid.
1269         * python/python-internal.h (gdbpy_block_for_pc)
1270         (build_objfiles_list): Don't declare.
1271         * python/python.c: Don't include solib.h.
1272         (gdbpy_solib_name, gdbpy_find_pc_line)
1273         (gdbpy_get_current_progspace, build_objfiles_list)
1274         (gdbpy_objfiles): Remove.
1275         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1276         solib_name, find_pc_line>: Remove entries.
1277
1278 2018-09-16  Tom Tromey  <tom@tromey.com>
1279
1280         * top.c (new_ui_command): Use GNU style for metasyntactic
1281         variables.
1282         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1283         variables.
1284         * maint.c (maintenance_translate_address): Remove "<>" around
1285         text.
1286         * interps.c (interpreter_exec_cmd): Use GNU style for
1287         metasyntactic variables.
1288         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1289         metasyntactic variables.
1290         * tracepoint.c (tfind_range_command): Use GNU style for
1291         metasyntactic variables.
1292         (tfind_outside_command): Likewise.
1293         (_initialize_tracepoint): Likewise.
1294         * remote.c (extended_remote_target::create_inferior): Use GNU
1295         style for metasyntactic variables.
1296         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1297         metasyntactic variables.
1298         (adi_assign_command): Likewise.
1299
1300 2018-09-16  Tom Tromey  <tom@tromey.com>
1301
1302         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1303         metasyntactic variables.  Print message if no disassembler options
1304         are available.
1305
1306 2018-09-15  Tom Tromey  <tom@tromey.com>
1307
1308         * infcmd.c (get_inferior_args): Return const char *.
1309         * inferior.h (get_inferior_args): Return type now const.
1310         * linux-tdep.c (linux_fill_prpsinfo): Update.
1311         * procfs.c (procfs_target::make_corefile_notes): Update.
1312
1313 2018-09-07  Tom Tromey  <tom@tromey.com>
1314
1315         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1316         inside the TRY.
1317
1318 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1319
1320         * nios2-tdep.c (nios2_type_align): New.
1321         (nios2_gdb_arch_init): Install type_align hook.
1322
1323 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1324
1325         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1326         type that is neither object file owned, nor gdbarch owned.
1327         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1328         gdbarch is non-NULL.
1329         (alloc_type_instance): Allocate non-objfile owned types on the
1330         gdbarch obstack.
1331         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1332         using TYPE_ALLOC to ensure memory is allocated on the correct
1333         obstack.
1334         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1335         obstack, or the gdbarch obstack.
1336         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1337
1338 2018-09-14  Tom Tromey  <tom@tromey.com>
1339
1340         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1341         block.
1342
1343 2018-09-14  Tom Tromey  <tom@tromey.com>
1344
1345         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1346
1347 2018-09-13  Tom Tromey  <tom@tromey.com>
1348
1349         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1350         static.
1351
1352 2018-09-13  Tom Tromey  <tom@tromey.com>
1353
1354         * exec.c (try_open_exec_file): Use std::string.
1355
1356 2018-09-13  Tom Tromey  <tom@tromey.com>
1357
1358         * utils.h (gdb_bfd_errmsg): Return std::string.
1359         * exec.c (exec_file_attach): Update.
1360         * compile/compile-object-load.c (compile_object_load): Update.
1361         * utils.c (gdb_bfd_errmsg): Return std::string.
1362
1363 2018-09-13  Tom Tromey  <tom@tromey.com>
1364
1365         * procfs.c (struct procinfo_deleter): New.
1366         (procinfo_up): New typedef.
1367         (do_destroy_procinfo_cleanup): Remove.
1368         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
1369
1370 2018-09-13  Tom Tromey  <tom@tromey.com>
1371
1372         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
1373
1374 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1375 2018-09-13  Tom Tromey  <tom@tromey.com>
1376
1377         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
1378         (pspy_get_objfiles): New function.
1379         (progspace_object_methods): New.
1380         (pspace_object_type): Add tp_methods callback.
1381         * python/python-internal.h (build_objfiles_list): New
1382         declaration.
1383         * python/python.c (build_objfiles_list): New function.
1384         (gdbpy_objfiles): Implement using build_objfiles_list.
1385         * NEWS: Mention the Progspace.objfiles method.
1386
1387 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1388
1389         * python/py-inferior.c (infpy_get_progspace): New function.
1390         (inferior_object_getset): Add progspace property.
1391         * NEWS: Mention the new property.
1392
1393 2018-09-13  Tom Tromey  <tom@tromey.com>
1394
1395         PR rust/23650:
1396         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
1397
1398 2018-09-13  Tom Tromey  <tom@tromey.com>
1399
1400         PR rust/23626:
1401         * rust-lang.c (rust_enum_variant): Now static.
1402         (rust_empty_enum_p): New function.
1403         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
1404         Handle empty enum.
1405
1406 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1407
1408         * python/py-inferior.c (infpy_repr): New.
1409         (inferior_object_type): Register infpy_repr.
1410         * python/py-objfile.c (objfpy_repr): New.
1411         (objfile_object_type): Register objfpy_repr.
1412
1413 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1414
1415         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
1416
1417 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1418
1419         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
1420         typo.
1421
1422 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
1423
1424         * common/common-utils.c: Don't include '<sys/stat.h>'.
1425         (is_regular_file): Move to...
1426         * common/filestuff.c (is_regular_file): ... here.
1427         * common/common-utils.h (is_regular_file): Move to...
1428         * common/filestuff.h (is_regular_file): ... here.
1429
1430 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
1431
1432         * skip.c (debug_skip): New variable.
1433         (skiplist_entry::do_skip_file_p): Add debug output.
1434         (skiplist_entry::do_skip_gfile_p): Likewise.
1435         (skiplist_entry::skip_function_p): Likewise.
1436         (_initialize_step_skip): Create debug command.
1437         * NEWS: Mention set/show debug skip.
1438
1439 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1440
1441         * darwin-nat.c (should_disable_startup_with_shell):
1442         New function.
1443         (darwin_nat_target::create_inferior): Add call.
1444
1445 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1446
1447         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
1448         inf_port, msg_state>: Initialize.
1449         (struct darwin_thread_info) <signaled, single_step>: Change
1450         type and initialize.
1451         (struct darwin_thread_info) <event>: Initialize.
1452
1453 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1454
1455         PR gdb/23555
1456         PR gdb/23558
1457         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
1458         guesses.
1459
1460 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1461
1462         Revert:
1463         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1464
1465         PR gdb/23555
1466         PR gdb/23558
1467         * gnulib/aclocal.m4: Regenerate.
1468         * gnulib/config.in: Regenerate.
1469         * gnulib/configure: Regenerate.
1470         * gnulib/import/Makefile.am: Update.
1471         * gnulib/import/Makefile.in: Update.
1472         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1473         * gnulib/import/_Noreturn.h: ... this.
1474         * gnulib/import/alloca.in.h: Update.
1475         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
1476         * gnulib/import/arg-nonnull.h: ... this.
1477         * gnulib/import/assure.h: Update.
1478         * gnulib/import/at-func.c: Update.
1479         * gnulib/import/basename-lgpl.c: Update.
1480         * gnulib/import/extra/snippet/c++defs.h: Rename to...
1481         * gnulib/import/c++defs.h: ... this.
1482         * gnulib/import/canonicalize-lgpl.c: Update.
1483         * gnulib/import/cdefs.h: Update.
1484         * gnulib/import/chdir-long.c: Update.
1485         * gnulib/import/chdir-long.h: Update.
1486         * gnulib/import/cloexec.c: Update.
1487         * gnulib/import/cloexec.h: Update.
1488         * gnulib/import/close.c: Update.
1489         * gnulib/import/closedir.c: Update.
1490         * gnulib/import/config.charset: Update.
1491         * gnulib/import/dirent-private.h: Update.
1492         * gnulib/import/dirent.in.h: Update.
1493         * gnulib/import/dirfd.c: Update.
1494         * gnulib/import/dirname-lgpl.c: Update.
1495         * gnulib/import/dirname.h: Update.
1496         * gnulib/import/dosname.h: Update.
1497         * gnulib/import/dup-safer-flag.c: Update.
1498         * gnulib/import/dup-safer.c: Update.
1499         * gnulib/import/dup.c: Update.
1500         * gnulib/import/dup2.c: Update.
1501         * gnulib/import/errno.in.h: Update.
1502         * gnulib/import/error.c: Update.
1503         * gnulib/import/error.h: Update.
1504         * gnulib/import/exitfail.c: Update.
1505         * gnulib/import/exitfail.h: Update.
1506         * gnulib/import/extra/update-copyright: Update.
1507         * gnulib/import/fchdir.c: Update.
1508         * gnulib/import/fcntl.c: Update.
1509         * gnulib/import/fcntl.in.h: Update.
1510         * gnulib/import/fd-hook.c: Update.
1511         * gnulib/import/fd-hook.h: Update.
1512         * gnulib/import/fd-safer-flag.c: Update.
1513         * gnulib/import/fd-safer.c: Update.
1514         * gnulib/import/fdopendir.c: Update.
1515         * gnulib/import/filename.h: Update.
1516         * gnulib/import/filenamecat-lgpl.c: Update.
1517         * gnulib/import/filenamecat.h: Update.
1518         * gnulib/import/flexmember.h: Update.
1519         * gnulib/import/float+.h: Update.
1520         * gnulib/import/float.c: Update.
1521         * gnulib/import/float.in.h: Update.
1522         * gnulib/import/fnmatch.c: Update.
1523         * gnulib/import/fnmatch.in.h: Update.
1524         * gnulib/import/fnmatch_loop.c: Update.
1525         * gnulib/import/fpucw.h: Update.
1526         * gnulib/import/frexp.c: Update.
1527         * gnulib/import/frexpl.c: Update.
1528         * gnulib/import/fstat.c: Update.
1529         * gnulib/import/fstatat.c: Update.
1530         * gnulib/import/getcwd-lgpl.c: Update.
1531         * gnulib/import/getcwd.c: Update.
1532         * gnulib/import/getdtablesize.c: Update.
1533         * gnulib/import/getlogin_r.c: Update.
1534         * gnulib/import/getprogname.c: Update.
1535         * gnulib/import/getprogname.h: Update.
1536         * gnulib/import/gettext.h: Update.
1537         * gnulib/import/gettimeofday.c: Update.
1538         * gnulib/import/glob-libc.h: Update.
1539         * gnulib/import/glob.c: Update.
1540         * gnulib/import/glob.in.h: Update.
1541         * gnulib/import/glob_internal.h: Update.
1542         * gnulib/import/glob_pattern_p.c: Update.
1543         * gnulib/import/globfree.c: Update.
1544         * gnulib/import/hard-locale.c: Update.
1545         * gnulib/import/hard-locale.h: Update.
1546         * gnulib/import/intprops.h: Update.
1547         * gnulib/import/inttypes.in.h: Update.
1548         * gnulib/import/isnan.c: Update.
1549         * gnulib/import/isnand-nolibm.h: Update.
1550         * gnulib/import/isnand.c: Update.
1551         * gnulib/import/isnanl-nolibm.h: Update.
1552         * gnulib/import/isnanl.c: Update.
1553         * gnulib/import/itold.c: Update.
1554         * gnulib/import/libc-config.h: Update.
1555         * gnulib/import/limits.in.h: Update.
1556         * gnulib/import/localcharset.c: Update.
1557         * gnulib/import/localcharset.h: Update.
1558         * gnulib/import/localtime-buffer.c: Update.
1559         * gnulib/import/localtime-buffer.h: Update.
1560         * gnulib/import/lstat.c: Update.
1561         * gnulib/import/m4/00gnulib.m4: Update.
1562         * gnulib/import/m4/__inline.m4: Update.
1563         * gnulib/import/m4/absolute-header.m4: Update.
1564         * gnulib/import/m4/alloca.m4: Update.
1565         * gnulib/import/m4/builtin-expect.m4: Update.
1566         * gnulib/import/m4/canonicalize.m4: Update.
1567         * gnulib/import/m4/chdir-long.m4: Update.
1568         * gnulib/import/m4/close.m4: Update.
1569         * gnulib/import/m4/closedir.m4: Update.
1570         * gnulib/import/m4/configmake.m4: Update.
1571         * gnulib/import/m4/d-ino.m4: Update.
1572         * gnulib/import/m4/d-type.m4: Update.
1573         * gnulib/import/m4/dirent_h.m4: Update.
1574         * gnulib/import/m4/dirfd.m4: Update.
1575         * gnulib/import/m4/dirname.m4: Update.
1576         * gnulib/import/m4/double-slash-root.m4: Update.
1577         * gnulib/import/m4/dup.m4: Update.
1578         * gnulib/import/m4/dup2.m4: Update.
1579         * gnulib/import/m4/eealloc.m4: Update.
1580         * gnulib/import/m4/environ.m4: Update.
1581         * gnulib/import/m4/errno_h.m4: Update.
1582         * gnulib/import/m4/error.m4: Update.
1583         * gnulib/import/m4/exponentd.m4: Update.
1584         * gnulib/import/m4/exponentl.m4: Update.
1585         * gnulib/import/m4/extensions.m4: Update.
1586         * gnulib/import/m4/extern-inline.m4: Update.
1587         * gnulib/import/m4/fchdir.m4: Update.
1588         * gnulib/import/m4/fcntl-o.m4: Update.
1589         * gnulib/import/m4/fcntl.m4: Update.
1590         * gnulib/import/m4/fcntl_h.m4: Update.
1591         * gnulib/import/m4/fdopendir.m4: Update.
1592         * gnulib/import/m4/filenamecat.m4: Update.
1593         * gnulib/import/m4/flexmember.m4: Update.
1594         * gnulib/import/m4/float_h.m4: Update.
1595         * gnulib/import/m4/fnmatch.m4: Update.
1596         * gnulib/import/m4/fnmatch_h.m4: Update.
1597         * gnulib/import/m4/fpieee.m4: Update.
1598         * gnulib/import/m4/frexp.m4: Update.
1599         * gnulib/import/m4/frexpl.m4: Update.
1600         * gnulib/import/m4/fstat.m4: Update.
1601         * gnulib/import/m4/fstatat.m4: Update.
1602         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1603         * gnulib/import/m4/getcwd-path-max.m4: Update.
1604         * gnulib/import/m4/getcwd.m4: Update.
1605         * gnulib/import/m4/getdtablesize.m4: Update.
1606         * gnulib/import/m4/getlogin.m4: Update.
1607         * gnulib/import/m4/getlogin_r.m4: Update.
1608         * gnulib/import/m4/getpagesize.m4: Update.
1609         * gnulib/import/m4/getprogname.m4: Update.
1610         * gnulib/import/m4/gettimeofday.m4: Update.
1611         * gnulib/import/m4/glibc21.m4: Update.
1612         * gnulib/import/m4/glob.m4: Update.
1613         * gnulib/import/m4/glob_h.m4: Update.
1614         * gnulib/import/m4/gnulib-cache.m4: Update.
1615         * gnulib/import/m4/gnulib-common.m4: Update.
1616         * gnulib/import/m4/gnulib-comp.m4: Update.
1617         * gnulib/import/m4/gnulib-tool.m4: Update.
1618         * gnulib/import/m4/hard-locale.m4: Update.
1619         * gnulib/import/m4/include_next.m4: Update.
1620         * gnulib/import/m4/inttypes-pri.m4: Update.
1621         * gnulib/import/m4/inttypes.m4: Update.
1622         * gnulib/import/m4/isnand.m4: Update.
1623         * gnulib/import/m4/isnanl.m4: Update.
1624         * gnulib/import/m4/largefile.m4: Update.
1625         * gnulib/import/m4/limits-h.m4: Update.
1626         * gnulib/import/m4/localcharset.m4: Update.
1627         * gnulib/import/m4/locale-fr.m4: Update.
1628         * gnulib/import/m4/locale-ja.m4: Update.
1629         * gnulib/import/m4/locale-zh.m4: Update.
1630         * gnulib/import/m4/localtime-buffer.m4: Update.
1631         * gnulib/import/m4/longlong.m4: Update.
1632         * gnulib/import/m4/lstat.m4: Update.
1633         * gnulib/import/m4/malloc.m4: Update.
1634         * gnulib/import/m4/malloca.m4: Update.
1635         * gnulib/import/m4/math_h.m4: Update.
1636         * gnulib/import/m4/mbrtowc.m4: Update.
1637         * gnulib/import/m4/mbsinit.m4: Update.
1638         * gnulib/import/m4/mbsrtowcs.m4: Update.
1639         * gnulib/import/m4/mbstate_t.m4: Update.
1640         * gnulib/import/m4/memchr.m4: Update.
1641         * gnulib/import/m4/memmem.m4: Update.
1642         * gnulib/import/m4/mempcpy.m4: Update.
1643         * gnulib/import/m4/memrchr.m4: Update.
1644         * gnulib/import/m4/mkdir.m4: Update.
1645         * gnulib/import/m4/mkstemp.m4: Update.
1646         * gnulib/import/m4/mmap-anon.m4: Update.
1647         * gnulib/import/m4/mode_t.m4: Update.
1648         * gnulib/import/m4/msvc-inval.m4: Update.
1649         * gnulib/import/m4/msvc-nothrow.m4: Update.
1650         * gnulib/import/m4/multiarch.m4: Update.
1651         * gnulib/import/m4/nocrash.m4: Update.
1652         * gnulib/import/m4/off_t.m4: Update.
1653         * gnulib/import/m4/onceonly.m4: Update.
1654         * gnulib/import/m4/open-cloexec.m4: Update.
1655         * gnulib/import/m4/open.m4: Update.
1656         * gnulib/import/m4/openat.m4: Update.
1657         * gnulib/import/m4/opendir.m4: Update.
1658         * gnulib/import/m4/pathmax.m4: Update.
1659         * gnulib/import/m4/rawmemchr.m4: Update.
1660         * gnulib/import/m4/readdir.m4: Update.
1661         * gnulib/import/m4/readlink.m4: Update.
1662         * gnulib/import/m4/realloc.m4: Update.
1663         * gnulib/import/m4/rename.m4: Update.
1664         * gnulib/import/m4/rewinddir.m4: Update.
1665         * gnulib/import/m4/rmdir.m4: Update.
1666         * gnulib/import/m4/save-cwd.m4: Update.
1667         * gnulib/import/m4/secure_getenv.m4: Update.
1668         * gnulib/import/m4/setenv.m4: Update.
1669         * gnulib/import/m4/signal_h.m4: Update.
1670         * gnulib/import/m4/ssize_t.m4: Update.
1671         * gnulib/import/m4/stat-time.m4: Update.
1672         * gnulib/import/m4/stat.m4: Update.
1673         * gnulib/import/m4/std-gnu11.m4: Update.
1674         * gnulib/import/m4/stdbool.m4: Update.
1675         * gnulib/import/m4/stddef_h.m4: Update.
1676         * gnulib/import/m4/stdint.m4: Update.
1677         * gnulib/import/m4/stdio_h.m4: Update.
1678         * gnulib/import/m4/stdlib_h.m4: Update.
1679         * gnulib/import/m4/strchrnul.m4: Update.
1680         * gnulib/import/m4/strdup.m4: Update.
1681         * gnulib/import/m4/strerror.m4: Update.
1682         * gnulib/import/m4/string_h.m4: Update.
1683         * gnulib/import/m4/strstr.m4: Update.
1684         * gnulib/import/m4/strtok_r.m4: Update.
1685         * gnulib/import/m4/sys_socket_h.m4: Update.
1686         * gnulib/import/m4/sys_stat_h.m4: Update.
1687         * gnulib/import/m4/sys_time_h.m4: Update.
1688         * gnulib/import/m4/sys_types_h.m4: Update.
1689         * gnulib/import/m4/tempname.m4: Update.
1690         * gnulib/import/m4/time_h.m4: Update.
1691         * gnulib/import/m4/unistd-safer.m4: Update.
1692         * gnulib/import/m4/unistd_h.m4: Update.
1693         * gnulib/import/m4/warn-on-use.m4: Update.
1694         * gnulib/import/m4/wchar_h.m4: Update.
1695         * gnulib/import/m4/wchar_t.m4: Update.
1696         * gnulib/import/m4/wctype_h.m4: Update.
1697         * gnulib/import/m4/wint_t.m4: Update.
1698         * gnulib/import/malloc.c: Update.
1699         * gnulib/import/malloc/scratch_buffer.h: Update.
1700         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1701         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1702         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1703         * gnulib/import/malloca.c: Update.
1704         * gnulib/import/malloca.h: Update.
1705         * gnulib/import/malloca.valgrind: Update.
1706         * gnulib/import/math.in.h: Update.
1707         * gnulib/import/mbrtowc.c: Update.
1708         * gnulib/import/mbsinit.c: Update.
1709         * gnulib/import/mbsrtowcs-impl.h: Update.
1710         * gnulib/import/mbsrtowcs-state.c: Update.
1711         * gnulib/import/mbsrtowcs.c: Update.
1712         * gnulib/import/memchr.c: Update.
1713         * gnulib/import/memmem.c: Update.
1714         * gnulib/import/mempcpy.c: Update.
1715         * gnulib/import/memrchr.c: Update.
1716         * gnulib/import/mkdir.c: Update.
1717         * gnulib/import/mkstemp.c: Update.
1718         * gnulib/import/msvc-inval.c: Update.
1719         * gnulib/import/msvc-inval.h: Update.
1720         * gnulib/import/msvc-nothrow.c: Update.
1721         * gnulib/import/msvc-nothrow.h: Update.
1722         * gnulib/import/open.c: Update.
1723         * gnulib/import/openat-die.c: Update.
1724         * gnulib/import/openat-priv.h: Update.
1725         * gnulib/import/openat-proc.c: Update.
1726         * gnulib/import/openat.c: Update.
1727         * gnulib/import/openat.h: Update.
1728         * gnulib/import/opendir.c: Update.
1729         * gnulib/import/pathmax.h: Update.
1730         * gnulib/import/pipe-safer.c: Update.
1731         * gnulib/import/rawmemchr.c: Update.
1732         * gnulib/import/readdir.c: Update.
1733         * gnulib/import/readlink.c: Update.
1734         * gnulib/import/realloc.c: Update.
1735         * gnulib/import/ref-add.sin: Update.
1736         * gnulib/import/ref-del.sin: Update.
1737         * gnulib/import/rename.c: Update.
1738         * gnulib/import/rewinddir.c: Update.
1739         * gnulib/import/rmdir.c: Update.
1740         * gnulib/import/same-inode.h: Update.
1741         * gnulib/import/save-cwd.c: Update.
1742         * gnulib/import/save-cwd.h: Update.
1743         * gnulib/import/scratch_buffer.h: Update.
1744         * gnulib/import/secure_getenv.c: Update.
1745         * gnulib/import/setenv.c: Update.
1746         * gnulib/import/signal.in.h: Update.
1747         * gnulib/import/stat-time.c: Update.
1748         * gnulib/import/stat-time.h: Update.
1749         * gnulib/import/stat-w32.c: Update.
1750         * gnulib/import/stat-w32.h: Update.
1751         * gnulib/import/stat.c: Update.
1752         * gnulib/import/stdbool.in.h: Update.
1753         * gnulib/import/stddef.in.h: Update.
1754         * gnulib/import/stdint.in.h: Update.
1755         * gnulib/import/stdio.in.h: Update.
1756         * gnulib/import/stdlib.in.h: Update.
1757         * gnulib/import/str-two-way.h: Update.
1758         * gnulib/import/strchrnul.c: Update.
1759         * gnulib/import/strdup.c: Update.
1760         * gnulib/import/streq.h: Update.
1761         * gnulib/import/strerror-override.c: Update.
1762         * gnulib/import/strerror-override.h: Update.
1763         * gnulib/import/strerror.c: Update.
1764         * gnulib/import/string.in.h: Update.
1765         * gnulib/import/stripslash.c: Update.
1766         * gnulib/import/strnlen1.c: Update.
1767         * gnulib/import/strnlen1.h: Update.
1768         * gnulib/import/strstr.c: Update.
1769         * gnulib/import/strtok_r.c: Update.
1770         * gnulib/import/sys_stat.in.h: Update.
1771         * gnulib/import/sys_time.in.h: Update.
1772         * gnulib/import/sys_types.in.h: Update.
1773         * gnulib/import/tempname.c: Update.
1774         * gnulib/import/tempname.h: Update.
1775         * gnulib/import/time.in.h: Update.
1776         * gnulib/import/unistd--.h: Update.
1777         * gnulib/import/unistd-safer.h: Update.
1778         * gnulib/import/unistd.in.h: Update.
1779         * gnulib/import/unsetenv.c: Update.
1780         * gnulib/import/verify.h: Update.
1781         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1782         * gnulib/import/wchar.in.h: Update.
1783         * gnulib/import/wctype.in.h: Update.
1784         * gnulib/import/xalloc-oversized.h: Update.
1785         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1786         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1787
1788 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
1789
1790         * record-btrace.c (get_thread_current_frame): Remove
1791         old_inferior_ptid.
1792
1793 2018-09-10  Jerome Guitton  <guitton@adacore.com>
1794
1795         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
1796         with check_tag to 1 if and only if the type is tagged and the
1797         component being searched cannot been found in the current
1798         view. Otherwise, always call ada_to_fixed_type with
1799         check_tag to 0.
1800
1801 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1802
1803         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
1804         declaration.
1805         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
1806         * ada-varobj.c (ada_varobj_get_number_of_children,
1807         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
1808
1809 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1810
1811         * ada-valprint.c (ada_value_print): Use type instead of
1812         enclosing type.
1813
1814 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1815
1816         * ada-lang.c (ada_value_subscript): Handle case when parameter is
1817         an array of access to unconstrained array.
1818
1819 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1820
1821         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
1822         (ada_check_typedef): Use it.
1823
1824 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1825
1826         * ada-varobj.c (ada_varobj_describe_struct_child)
1827         (ada_varobj_describe_child): Handle union case like struct one.
1828
1829 2018-09-10  Tom Tromey  <tom@tromey.com>
1830
1831         PR python/18380:
1832         * python/python.c (_initialize_python): Make example in "python"
1833         help work in Python 3.
1834
1835 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
1836
1837         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
1838         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
1839         $(EXEEXT) to the script, as it is not a program.
1840
1841 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
1842
1843         * python/py-prettyprint.c (pretty_print_one_value): Return
1844         gdbpy_ref<>.
1845         (print_string_repr): Adjust.
1846         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
1847         * python/python-internal.h (apply_varobj_pretty_printer): Return
1848         gdbpy_ref<>.
1849         * varobj.c (varobj_value_get_print_value): Adjust.
1850
1851 2018-09-08  Tom Tromey  <tom@tromey.com>
1852
1853         PR python/16047:
1854         * python/py-prettyprint.c (pretty_print_one_value): Check for
1855         to_string method.
1856
1857 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1858
1859         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
1860         replace_operator_with_call.
1861
1862 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1863
1864         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
1865
1866 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1867
1868         * ada-typeprint.c (print_range): Print the bounds using TYPE
1869         rather than its TYPE_TARGET_TYPE.
1870
1871 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1872
1873         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
1874         call to ada_to_fixed_value_create.
1875
1876 2018-09-08  Jerome Guitton  <guitton@adacore.com>
1877
1878         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
1879
1880 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1881
1882         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
1883         by calls to error.
1884
1885 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1886
1887         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
1888         Move update of loop variable "fi".
1889
1890 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1891
1892         * ada-lang.c (value_assign_to_component): In the case of
1893         big-endian targets, extract the bits of the given VAL
1894         using an src_offset of zero if container is not a scalar.
1895
1896 2018-09-06  Simon Ser  <contact@emersion.fr>
1897
1898         PR gdb/23105
1899         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
1900         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
1901         * fbsd-tdep.c (fbsd_make_note_desc): New.
1902         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
1903         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
1904         * target.h (enum target_object) Add FreeBSD-specific
1905         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
1906
1907 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1908
1909         * compile/compile-c.h (generate_c_for_variable_locations):
1910         Change reference to pointer.
1911         * compile/compile-c-support.c (compile_program) <compute>:
1912         Likewise.
1913         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
1914         (generate_c_for_for_one_variable): Likewise
1915         (generate_c_for_variable_locations): Likewise
1916         * compile/compile-c-types.c (compile_c_instance::convert_type):
1917         Likewise
1918         * compile/compile-cplus-symbols.c (convert_one_symbol):
1919         std::move the scope passed to enter_scope.
1920         * compile/compile-cplus-types.c
1921         (compile_cplus_instance::enter_scope): Make parameter
1922         rvalue-reference.
1923         (compile_cplus_instance::new_scope): Change reference to
1924         pointer.
1925         (compile_cplus_instance::convert_type): Likewise
1926         (compile_cplus_convert_typedef): std::move the scope passed to
1927         enter_scope.
1928         (compile_cplus_convert_struct_or_union): Likewise.
1929         (compile_cplus_convert_enum): Likewise.
1930         (compile_cplus_convert_namespace): Likewise.
1931         * compile/compile-cplus.h (compile_cplus_instance)
1932         <enter_scope>: Make parameter rvalue-reference.
1933         * compile/compile-internal.h (compile_instance)
1934         <get_cached_type>: Likewise
1935         * compile/compile-loc2c.c (push): Likewise
1936         (pushf): Likewise
1937         (unary): Likewise
1938         (binary): Likewise
1939         (print_label): Likewise
1940         (pushf_register_address): Likewise
1941         (pushf_register): Likewise
1942         (do_compile_dwarf_expr_to_c): Likewise
1943         (compile_dwarf_expr_to_c): Likewise
1944         (compile_dwarf_bounds_to_c): Likewise
1945         * compile/compile.c (compile_instance::get_cached_type):
1946         Likewise
1947         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
1948         (compile_dwarf_bounds_to_c): Likewise
1949         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
1950         (dwarf2_compile_property_to_c): Likewise
1951         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
1952         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
1953         Likewise
1954
1955 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1956
1957         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
1958         * tui/tui-data.c (init_content_element): Don't initialize it.
1959
1960 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1961
1962         * tui/tui-data.h (struct tui_win_info)
1963         <detail::opaque>: Remove.
1964         * tui/tui-data.c (init_win_info): Remove assignment.
1965
1966 2018-09-05  Tom Tromey  <tom@tromey.com>
1967
1968         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
1969         -Wformat-nonliteral.
1970         * target-float.c (host_float_ops<T>::to_string)
1971         (host_float_ops<T>::from_string): Use
1972         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
1973         * configure: Rebuild.
1974
1975 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
1976
1977         * printcmd.c (printf_c_string): Use
1978         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
1979         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
1980
1981 2018-09-05  Tom Tromey  <tom@tromey.com>
1982
1983         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
1984
1985 2018-09-05  Tom de Vries  <tdevries@suse.de>
1986
1987         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
1988         with resolve_abstract_p == true.
1989         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
1990         defaulting to false. Propagate resolve_abstract_p to
1991         dwarf2_fetch_die_loc_sect_off.
1992         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
1993         parameter, defaulting to false.
1994         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
1995         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
1996         parameter.
1997         * dwarf2read.h (struct die_info): Forward-declare.
1998         (die_info_ptr): New typedef.
1999         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2000
2001 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2002
2003         GDB 8.2 released.
2004
2005 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2006             Pedro Alves  <palves@redhat.com>
2007
2008         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2009         "aclocal-m4-deps.mk".  Include file here.
2010         $(srcdir)/aclocal.m4: Add "configure.ac".
2011         * gnulib/aclocal-m4-deps.mk: New file.
2012         * gnulib/update-gnulib.sh: Automatically update
2013         "aclocal-m4-deps.mk".
2014
2015 2018-09-04  Tom Tromey  <tom@tromey.com>
2016
2017         * configure: Rebuild.
2018         * configure.ac: Remove multi-ice code.
2019
2020 2018-09-04  Tom Tromey  <tom@tromey.com>
2021
2022         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2023         (ada-exp.o): Update.
2024
2025 2018-09-04  Tom Tromey  <tom@tromey.com>
2026
2027         * Makefile.in (printcmd.o, target-float.o): Remove.
2028         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2029
2030 2018-09-04  Tom Tromey  <tom@tromey.com>
2031
2032         * gnulib/Makefile.in: Remove obsolete comment.
2033         * Makefile.in: Remove obsolete comment.
2034
2035 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2036
2037         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2038         line with '+'.
2039
2040 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2041
2042         * riscv-tdep.c: Add 'prologue-value.h' include.
2043         (struct riscv_unwind_cache): New struct.
2044         (riscv_debug_unwinder): New global.
2045         (riscv_scan_prologue): Update arguments, capture register details
2046         from prologue scan.
2047         (riscv_skip_prologue): Reformat arguments line, move end of
2048         prologue calculation into riscv_scan_prologue.
2049         (riscv_frame_cache): Update return type, create
2050         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2051         details.
2052         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2053         (riscv_frame_prev_register): Use the trad_frame within the
2054         riscv_unwind_cache.
2055         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2056         flag.
2057
2058 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2059
2060         * trad-frame.h (trad_frame_set_realreg): Declare.
2061         (trad_frame_set_addr): Declare.
2062         * trad-frame.c (trad_frame_set_realreg): Define new function.
2063         (trad_frame_set_addr): Define new function.
2064         (trad_frame_set_reg_realreg): Use new function.
2065         (trad_frame_set_reg_addr): Use new function.
2066
2067 2018-09-01  Keith Seitz  <keiths@redhat.com>
2068
2069         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2070         pulongest instead of "%lld".
2071         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2072         ATTRIBUTE_UNUSED.
2073
2074 2018-08-31  Tom Tromey  <tom@tromey.com>
2075
2076         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2077         variant part type.
2078
2079 2018-08-31  Pedro Alves  <palves@redhat.com>
2080
2081         * gdbarch.h: Regenerate.
2082
2083 2018-08-31  Pedro Alves  <palves@redhat.com>
2084
2085         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2086         * target.h (Hardware watchpoint interfaces): Describe
2087         continuable/steppable/non-steppable watchpoints.
2088         * gdbarch.h, gdbarch.c: Regenerate.
2089
2090 2018-08-31  Pedro Alves  <palves@redhat.com>
2091
2092         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2093         Delete.
2094         * s390-linux-nat.c
2095         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2096         * target.h (target_ops::have_continuable_watchpoint): Delete.
2097         (target_have_continuable_watchpoint): Delete.
2098         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2099         * target-delegates.c: Regenerate.
2100
2101 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2102
2103         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2104         the files present in "gnulib/import/m4/".
2105
2106 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2107
2108         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2109         c.sw, c.swsp, and c.sdsp.
2110
2111 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2112
2113         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2114         (riscv_read_misa_reg): Don't cache value read into inferior data.
2115         (riscv_new_inferior_data): Delete.
2116         (riscv_inferior_data_cleanup): Delete.
2117         (riscv_inferior_data): Delete.
2118         (riscv_invalidate_inferior_data): Delete.
2119         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2120
2121 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2122
2123         * compile/compile-cplus-types.c
2124         (compile_cplus_instance::leave_scope): Take the address of scope
2125         object.
2126         (compile_cplus_instance::convert_qualified_base): Compare quals
2127         to 0.
2128
2129 2018-08-30  Keith Seitz  <keiths@redhat.com>
2130
2131         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2132         Use "%s" and host_address_to_string instead of "%p" in printf.
2133
2134 2018-08-29  Keith Seitz  <keiths@redhat.com>
2135
2136         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2137         and compile-cplus-types.c.
2138         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2139         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2140         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2141         Declare.
2142         * compile/compile-c-support.c: Include compile-cplus.h.
2143         (load_libcompile): Templatize.
2144         (get_compile_context): "New" function.
2145         (c_get_compile_context): Use get_compile_context.
2146         (cplus_get_compile_context): New function.
2147         (cplus_push_user_expression, cplus_pop_user_expression)
2148         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2149         (cplus_compute_program): Define new structs/functions.
2150         * compile/compile-cplus-symmbols.c: New file.
2151         * compile/compile-cplus-types.c: New file.
2152         * compile/compile-cplus.h: New file.
2153         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2154         Declare.
2155         * compile/compile-object-load.c (get_out_value_type): Use
2156         strncmp_iw when comparing symbol names.
2157         (compile_object_load): Add mst_bss and mst_data.
2158         * compile/compile.c (_initialize_compile): Remove
2159         -Wno-implicit-function-declaration from `compile_args'.
2160         * compile/gcc-cp-plugin.h: New file.
2161         * NEWS: Mention C++ compile support and new debug options.
2162
2163 2018-08-29  Keith Seitz  <keiths@redhat.com>
2164
2165         * linespec.c (collect_info::add_symbol): Make virtual.
2166         (struct symbol_searcher_collect_info): New struct.
2167         (symbol_searcher::find_all_symbols): New method.
2168         * symtab.h (class symbol_searcher): New class.
2169
2170 2018-08-29  Keith Seitz  <keiths@redhat.com>
2171
2172         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2173         Change to vector of block_symbol.  Update all users.
2174         (struct collect_info) <symbols>: Likewise.
2175         (collect_info::add_symbol): Take block_symbol as argument.
2176         Update all callers.
2177         (decode_compound_collector) <m_symbols>: Change type to vector
2178         of block_symbol.  Update all users.
2179         (decode_compound_collector::operator ()): Change parameter type
2180         to block_symbol.
2181         (find_method, find_function_symbols, find_linespec_symbols)
2182         (find_label_symbols_in_block, find_label_symbols): Change symbol
2183         vectors to block_symbol vectors.
2184         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2185         block_symbol.
2186
2187 2018-08-29  Keith Seitz  <keiths@redhat.com>
2188
2189         * linespec.c (symbolp): Remove typedef and VEC definitions.
2190         (bound_minimal_symbol_d): Likewise.
2191
2192 2018-08-29  Keith Seitz  <keiths@redhat.com>
2193
2194         * linespec.c (decode_compound_collector::decode_compound_collector):
2195         Remove initialization for `m_symtabs'.
2196         (decode_compound_collector::release_symbols): Change return type
2197         to std::vector.  Update all callers.
2198         (class decode_compound_collector) <m_symbols>: Change type to
2199         std::vector.
2200         (lookup_prefix_sym): Change return type to std::vector.  Update all
2201         callers.
2202         (compare_symbols): Remove.
2203         (std_compare_symbols): Rename to `compare_symbols'.
2204         (find_method): Change `sym_classes' parameter to std::vector.
2205         Update all callers.  Use std::sort to sort sym_classes.
2206         (find_linespec_symbols): Remove cleanup.
2207
2208 2018-08-29  Keith Seitz  <keiths@redhat.com>
2209
2210         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2211         std::vector.  Update all users.
2212         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2213         (struct collect_info) <minimal_symbols>: Likewise.
2214         (compare_msymbols): Return bool.  Change parameters to const
2215         bound_minimal_symbol references.
2216         (find_method, find_function_symbols, find_linespec_symbols): Change
2217         `minsyms' parameter to std::vector.  Update all callers.
2218
2219 2018-08-29  Keith Seitz  <keiths@redhat.com>
2220
2221         * linespec.c (struct linespec) <label_symbols>: Change type to
2222         std::vector.  Update all users.
2223         (find_label_symbols_in_block): Change `result' parameter to
2224         std::vector.  Update all callers.
2225         (find_label_symbols): Return std::vector.  Update all callers.
2226
2227 2018-08-29  Keith Seitz  <keiths@redhat.com>
2228
2229         * linespec.c (struct linespec) <function_symbols>: Change type to
2230         std::vector.  Update all users.
2231         (struct collect_info) <function_symbols>: Likewise.
2232         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2233         (std_compare_symbols): New function.
2234         (find_method, find_function_symbols, find_linespec_symbols)
2235         (find_label_symbols_in_block): Change `symbols' parameter to
2236         std::vector.  Update all callers.
2237         (find_label_symbols): Likewise for `function_symbols' and
2238         `label_funcs_ret'.
2239
2240 2018-08-29  Keith Seitz  <keiths@redhat.com>
2241
2242         * linespec.c (symtab_vector_up): Define.
2243         (struct linespec) <file_symtabs>: Change type to std::vector *.
2244         Update all uses.
2245         (struct collect_info) <file_symtabs>: Likewise.
2246         (collect_symtabs_from_filename): Return symtab_vector_up.
2247         Update all callers.
2248         (decode_objc): Remove cleanup.
2249         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2250         (symtab_collector::release_symtabs): Return symtab_vector_up.
2251         Update all callers.
2252         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2253         Update all users.
2254         (collect_symtabs_from_filename, symtabs_from_filename): Return
2255         symtab_vector_up.  Update all callers.
2256
2257 2018-08-29  Tom Tromey  <tom@tromey.com>
2258
2259         * csky-tdep.c (csky_analyze_prologue): Use
2260         core_addr_to_string_nz.
2261
2262 2018-08-29  Tom Tromey  <tom@tromey.com>
2263
2264         * windows-nat.c (struct xlate_exception) <them>: Change type to
2265         DWORD.
2266         (xlate): Fix formatting.  Remove last entry.
2267         (struct xlate_exception, xlate): Comment out.
2268         (windows_nat_target::resume): Use ranged for.
2269
2270 2018-08-29  Jim Wilson  <jimw@sifive.com>
2271
2272         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2273         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2274         of NT_PRFPREG.
2275         (riscv_linux_nat_target::store_registers): Likewise.
2276
2277 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2278
2279         PR gdb/23555
2280         PR gdb/23558
2281         * gnulib/aclocal.m4: Regenerate.
2282         * gnulib/config.in: Regenerate.
2283         * gnulib/configure: Regenerate.
2284         * gnulib/import/Makefile.am: Update.
2285         * gnulib/import/Makefile.in: Update.
2286         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2287         * gnulib/import/_Noreturn.h: ... this.
2288         * gnulib/import/alloca.in.h: Update.
2289         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2290         * gnulib/import/arg-nonnull.h: ... this.
2291         * gnulib/import/assure.h: Update.
2292         * gnulib/import/at-func.c: Update.
2293         * gnulib/import/basename-lgpl.c: Update.
2294         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2295         * gnulib/import/c++defs.h: ... this.
2296         * gnulib/import/canonicalize-lgpl.c: Update.
2297         * gnulib/import/cdefs.h: Update.
2298         * gnulib/import/chdir-long.c: Update.
2299         * gnulib/import/chdir-long.h: Update.
2300         * gnulib/import/cloexec.c: Update.
2301         * gnulib/import/cloexec.h: Update.
2302         * gnulib/import/close.c: Update.
2303         * gnulib/import/closedir.c: Update.
2304         * gnulib/import/config.charset: Update.
2305         * gnulib/import/dirent-private.h: Update.
2306         * gnulib/import/dirent.in.h: Update.
2307         * gnulib/import/dirfd.c: Update.
2308         * gnulib/import/dirname-lgpl.c: Update.
2309         * gnulib/import/dirname.h: Update.
2310         * gnulib/import/dosname.h: Update.
2311         * gnulib/import/dup-safer-flag.c: Update.
2312         * gnulib/import/dup-safer.c: Update.
2313         * gnulib/import/dup.c: Update.
2314         * gnulib/import/dup2.c: Update.
2315         * gnulib/import/errno.in.h: Update.
2316         * gnulib/import/error.c: Update.
2317         * gnulib/import/error.h: Update.
2318         * gnulib/import/exitfail.c: Update.
2319         * gnulib/import/exitfail.h: Update.
2320         * gnulib/import/extra/update-copyright: Update.
2321         * gnulib/import/fchdir.c: Update.
2322         * gnulib/import/fcntl.c: Update.
2323         * gnulib/import/fcntl.in.h: Update.
2324         * gnulib/import/fd-hook.c: Update.
2325         * gnulib/import/fd-hook.h: Update.
2326         * gnulib/import/fd-safer-flag.c: Update.
2327         * gnulib/import/fd-safer.c: Update.
2328         * gnulib/import/fdopendir.c: Update.
2329         * gnulib/import/filename.h: Update.
2330         * gnulib/import/filenamecat-lgpl.c: Update.
2331         * gnulib/import/filenamecat.h: Update.
2332         * gnulib/import/flexmember.h: Update.
2333         * gnulib/import/float+.h: Update.
2334         * gnulib/import/float.c: Update.
2335         * gnulib/import/float.in.h: Update.
2336         * gnulib/import/fnmatch.c: Update.
2337         * gnulib/import/fnmatch.in.h: Update.
2338         * gnulib/import/fnmatch_loop.c: Update.
2339         * gnulib/import/fpucw.h: Update.
2340         * gnulib/import/frexp.c: Update.
2341         * gnulib/import/frexpl.c: Update.
2342         * gnulib/import/fstat.c: Update.
2343         * gnulib/import/fstatat.c: Update.
2344         * gnulib/import/getcwd-lgpl.c: Update.
2345         * gnulib/import/getcwd.c: Update.
2346         * gnulib/import/getdtablesize.c: Update.
2347         * gnulib/import/getlogin_r.c: Update.
2348         * gnulib/import/getprogname.c: Update.
2349         * gnulib/import/getprogname.h: Update.
2350         * gnulib/import/gettext.h: Update.
2351         * gnulib/import/gettimeofday.c: Update.
2352         * gnulib/import/glob-libc.h: Update.
2353         * gnulib/import/glob.c: Update.
2354         * gnulib/import/glob.in.h: Update.
2355         * gnulib/import/glob_internal.h: Update.
2356         * gnulib/import/glob_pattern_p.c: Update.
2357         * gnulib/import/globfree.c: Update.
2358         * gnulib/import/hard-locale.c: Update.
2359         * gnulib/import/hard-locale.h: Update.
2360         * gnulib/import/intprops.h: Update.
2361         * gnulib/import/inttypes.in.h: Update.
2362         * gnulib/import/isnan.c: Update.
2363         * gnulib/import/isnand-nolibm.h: Update.
2364         * gnulib/import/isnand.c: Update.
2365         * gnulib/import/isnanl-nolibm.h: Update.
2366         * gnulib/import/isnanl.c: Update.
2367         * gnulib/import/itold.c: Update.
2368         * gnulib/import/libc-config.h: Update.
2369         * gnulib/import/limits.in.h: Update.
2370         * gnulib/import/localcharset.c: Update.
2371         * gnulib/import/localcharset.h: Update.
2372         * gnulib/import/localtime-buffer.c: Update.
2373         * gnulib/import/localtime-buffer.h: Update.
2374         * gnulib/import/lstat.c: Update.
2375         * gnulib/import/m4/00gnulib.m4: Update.
2376         * gnulib/import/m4/__inline.m4: Update.
2377         * gnulib/import/m4/absolute-header.m4: Update.
2378         * gnulib/import/m4/alloca.m4: Update.
2379         * gnulib/import/m4/builtin-expect.m4: Update.
2380         * gnulib/import/m4/canonicalize.m4: Update.
2381         * gnulib/import/m4/chdir-long.m4: Update.
2382         * gnulib/import/m4/close.m4: Update.
2383         * gnulib/import/m4/closedir.m4: Update.
2384         * gnulib/import/m4/configmake.m4: Update.
2385         * gnulib/import/m4/d-ino.m4: Update.
2386         * gnulib/import/m4/d-type.m4: Update.
2387         * gnulib/import/m4/dirent_h.m4: Update.
2388         * gnulib/import/m4/dirfd.m4: Update.
2389         * gnulib/import/m4/dirname.m4: Update.
2390         * gnulib/import/m4/double-slash-root.m4: Update.
2391         * gnulib/import/m4/dup.m4: Update.
2392         * gnulib/import/m4/dup2.m4: Update.
2393         * gnulib/import/m4/eealloc.m4: Update.
2394         * gnulib/import/m4/environ.m4: Update.
2395         * gnulib/import/m4/errno_h.m4: Update.
2396         * gnulib/import/m4/error.m4: Update.
2397         * gnulib/import/m4/exponentd.m4: Update.
2398         * gnulib/import/m4/exponentl.m4: Update.
2399         * gnulib/import/m4/extensions.m4: Update.
2400         * gnulib/import/m4/extern-inline.m4: Update.
2401         * gnulib/import/m4/fchdir.m4: Update.
2402         * gnulib/import/m4/fcntl-o.m4: Update.
2403         * gnulib/import/m4/fcntl.m4: Update.
2404         * gnulib/import/m4/fcntl_h.m4: Update.
2405         * gnulib/import/m4/fdopendir.m4: Update.
2406         * gnulib/import/m4/filenamecat.m4: Update.
2407         * gnulib/import/m4/flexmember.m4: Update.
2408         * gnulib/import/m4/float_h.m4: Update.
2409         * gnulib/import/m4/fnmatch.m4: Update.
2410         * gnulib/import/m4/fnmatch_h.m4: Update.
2411         * gnulib/import/m4/fpieee.m4: Update.
2412         * gnulib/import/m4/frexp.m4: Update.
2413         * gnulib/import/m4/frexpl.m4: Update.
2414         * gnulib/import/m4/fstat.m4: Update.
2415         * gnulib/import/m4/fstatat.m4: Update.
2416         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2417         * gnulib/import/m4/getcwd-path-max.m4: Update.
2418         * gnulib/import/m4/getcwd.m4: Update.
2419         * gnulib/import/m4/getdtablesize.m4: Update.
2420         * gnulib/import/m4/getlogin.m4: Update.
2421         * gnulib/import/m4/getlogin_r.m4: Update.
2422         * gnulib/import/m4/getpagesize.m4: Update.
2423         * gnulib/import/m4/getprogname.m4: Update.
2424         * gnulib/import/m4/gettimeofday.m4: Update.
2425         * gnulib/import/m4/glibc21.m4: Update.
2426         * gnulib/import/m4/glob.m4: Update.
2427         * gnulib/import/m4/glob_h.m4: Update.
2428         * gnulib/import/m4/gnulib-cache.m4: Update.
2429         * gnulib/import/m4/gnulib-common.m4: Update.
2430         * gnulib/import/m4/gnulib-comp.m4: Update.
2431         * gnulib/import/m4/gnulib-tool.m4: Update.
2432         * gnulib/import/m4/hard-locale.m4: Update.
2433         * gnulib/import/m4/include_next.m4: Update.
2434         * gnulib/import/m4/inttypes-pri.m4: Update.
2435         * gnulib/import/m4/inttypes.m4: Update.
2436         * gnulib/import/m4/isnand.m4: Update.
2437         * gnulib/import/m4/isnanl.m4: Update.
2438         * gnulib/import/m4/largefile.m4: Update.
2439         * gnulib/import/m4/limits-h.m4: Update.
2440         * gnulib/import/m4/localcharset.m4: Update.
2441         * gnulib/import/m4/locale-fr.m4: Update.
2442         * gnulib/import/m4/locale-ja.m4: Update.
2443         * gnulib/import/m4/locale-zh.m4: Update.
2444         * gnulib/import/m4/localtime-buffer.m4: Update.
2445         * gnulib/import/m4/longlong.m4: Update.
2446         * gnulib/import/m4/lstat.m4: Update.
2447         * gnulib/import/m4/malloc.m4: Update.
2448         * gnulib/import/m4/malloca.m4: Update.
2449         * gnulib/import/m4/math_h.m4: Update.
2450         * gnulib/import/m4/mbrtowc.m4: Update.
2451         * gnulib/import/m4/mbsinit.m4: Update.
2452         * gnulib/import/m4/mbsrtowcs.m4: Update.
2453         * gnulib/import/m4/mbstate_t.m4: Update.
2454         * gnulib/import/m4/memchr.m4: Update.
2455         * gnulib/import/m4/memmem.m4: Update.
2456         * gnulib/import/m4/mempcpy.m4: Update.
2457         * gnulib/import/m4/memrchr.m4: Update.
2458         * gnulib/import/m4/mkdir.m4: Update.
2459         * gnulib/import/m4/mkstemp.m4: Update.
2460         * gnulib/import/m4/mmap-anon.m4: Update.
2461         * gnulib/import/m4/mode_t.m4: Update.
2462         * gnulib/import/m4/msvc-inval.m4: Update.
2463         * gnulib/import/m4/msvc-nothrow.m4: Update.
2464         * gnulib/import/m4/multiarch.m4: Update.
2465         * gnulib/import/m4/nocrash.m4: Update.
2466         * gnulib/import/m4/off_t.m4: Update.
2467         * gnulib/import/m4/onceonly.m4: Update.
2468         * gnulib/import/m4/open-cloexec.m4: Update.
2469         * gnulib/import/m4/open.m4: Update.
2470         * gnulib/import/m4/openat.m4: Update.
2471         * gnulib/import/m4/opendir.m4: Update.
2472         * gnulib/import/m4/pathmax.m4: Update.
2473         * gnulib/import/m4/rawmemchr.m4: Update.
2474         * gnulib/import/m4/readdir.m4: Update.
2475         * gnulib/import/m4/readlink.m4: Update.
2476         * gnulib/import/m4/realloc.m4: Update.
2477         * gnulib/import/m4/rename.m4: Update.
2478         * gnulib/import/m4/rewinddir.m4: Update.
2479         * gnulib/import/m4/rmdir.m4: Update.
2480         * gnulib/import/m4/save-cwd.m4: Update.
2481         * gnulib/import/m4/secure_getenv.m4: Update.
2482         * gnulib/import/m4/setenv.m4: Update.
2483         * gnulib/import/m4/signal_h.m4: Update.
2484         * gnulib/import/m4/ssize_t.m4: Update.
2485         * gnulib/import/m4/stat-time.m4: Update.
2486         * gnulib/import/m4/stat.m4: Update.
2487         * gnulib/import/m4/std-gnu11.m4: Update.
2488         * gnulib/import/m4/stdbool.m4: Update.
2489         * gnulib/import/m4/stddef_h.m4: Update.
2490         * gnulib/import/m4/stdint.m4: Update.
2491         * gnulib/import/m4/stdio_h.m4: Update.
2492         * gnulib/import/m4/stdlib_h.m4: Update.
2493         * gnulib/import/m4/strchrnul.m4: Update.
2494         * gnulib/import/m4/strdup.m4: Update.
2495         * gnulib/import/m4/strerror.m4: Update.
2496         * gnulib/import/m4/string_h.m4: Update.
2497         * gnulib/import/m4/strstr.m4: Update.
2498         * gnulib/import/m4/strtok_r.m4: Update.
2499         * gnulib/import/m4/sys_socket_h.m4: Update.
2500         * gnulib/import/m4/sys_stat_h.m4: Update.
2501         * gnulib/import/m4/sys_time_h.m4: Update.
2502         * gnulib/import/m4/sys_types_h.m4: Update.
2503         * gnulib/import/m4/tempname.m4: Update.
2504         * gnulib/import/m4/time_h.m4: Update.
2505         * gnulib/import/m4/unistd-safer.m4: Update.
2506         * gnulib/import/m4/unistd_h.m4: Update.
2507         * gnulib/import/m4/warn-on-use.m4: Update.
2508         * gnulib/import/m4/wchar_h.m4: Update.
2509         * gnulib/import/m4/wchar_t.m4: Update.
2510         * gnulib/import/m4/wctype_h.m4: Update.
2511         * gnulib/import/m4/wint_t.m4: Update.
2512         * gnulib/import/malloc.c: Update.
2513         * gnulib/import/malloc/scratch_buffer.h: Update.
2514         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2515         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2516         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2517         * gnulib/import/malloca.c: Update.
2518         * gnulib/import/malloca.h: Update.
2519         * gnulib/import/malloca.valgrind: Update.
2520         * gnulib/import/math.in.h: Update.
2521         * gnulib/import/mbrtowc.c: Update.
2522         * gnulib/import/mbsinit.c: Update.
2523         * gnulib/import/mbsrtowcs-impl.h: Update.
2524         * gnulib/import/mbsrtowcs-state.c: Update.
2525         * gnulib/import/mbsrtowcs.c: Update.
2526         * gnulib/import/memchr.c: Update.
2527         * gnulib/import/memmem.c: Update.
2528         * gnulib/import/mempcpy.c: Update.
2529         * gnulib/import/memrchr.c: Update.
2530         * gnulib/import/mkdir.c: Update.
2531         * gnulib/import/mkstemp.c: Update.
2532         * gnulib/import/msvc-inval.c: Update.
2533         * gnulib/import/msvc-inval.h: Update.
2534         * gnulib/import/msvc-nothrow.c: Update.
2535         * gnulib/import/msvc-nothrow.h: Update.
2536         * gnulib/import/open.c: Update.
2537         * gnulib/import/openat-die.c: Update.
2538         * gnulib/import/openat-priv.h: Update.
2539         * gnulib/import/openat-proc.c: Update.
2540         * gnulib/import/openat.c: Update.
2541         * gnulib/import/openat.h: Update.
2542         * gnulib/import/opendir.c: Update.
2543         * gnulib/import/pathmax.h: Update.
2544         * gnulib/import/pipe-safer.c: Update.
2545         * gnulib/import/rawmemchr.c: Update.
2546         * gnulib/import/readdir.c: Update.
2547         * gnulib/import/readlink.c: Update.
2548         * gnulib/import/realloc.c: Update.
2549         * gnulib/import/ref-add.sin: Update.
2550         * gnulib/import/ref-del.sin: Update.
2551         * gnulib/import/rename.c: Update.
2552         * gnulib/import/rewinddir.c: Update.
2553         * gnulib/import/rmdir.c: Update.
2554         * gnulib/import/same-inode.h: Update.
2555         * gnulib/import/save-cwd.c: Update.
2556         * gnulib/import/save-cwd.h: Update.
2557         * gnulib/import/scratch_buffer.h: Update.
2558         * gnulib/import/secure_getenv.c: Update.
2559         * gnulib/import/setenv.c: Update.
2560         * gnulib/import/signal.in.h: Update.
2561         * gnulib/import/stat-time.c: Update.
2562         * gnulib/import/stat-time.h: Update.
2563         * gnulib/import/stat-w32.c: Update.
2564         * gnulib/import/stat-w32.h: Update.
2565         * gnulib/import/stat.c: Update.
2566         * gnulib/import/stdbool.in.h: Update.
2567         * gnulib/import/stddef.in.h: Update.
2568         * gnulib/import/stdint.in.h: Update.
2569         * gnulib/import/stdio.in.h: Update.
2570         * gnulib/import/stdlib.in.h: Update.
2571         * gnulib/import/str-two-way.h: Update.
2572         * gnulib/import/strchrnul.c: Update.
2573         * gnulib/import/strdup.c: Update.
2574         * gnulib/import/streq.h: Update.
2575         * gnulib/import/strerror-override.c: Update.
2576         * gnulib/import/strerror-override.h: Update.
2577         * gnulib/import/strerror.c: Update.
2578         * gnulib/import/string.in.h: Update.
2579         * gnulib/import/stripslash.c: Update.
2580         * gnulib/import/strnlen1.c: Update.
2581         * gnulib/import/strnlen1.h: Update.
2582         * gnulib/import/strstr.c: Update.
2583         * gnulib/import/strtok_r.c: Update.
2584         * gnulib/import/sys_stat.in.h: Update.
2585         * gnulib/import/sys_time.in.h: Update.
2586         * gnulib/import/sys_types.in.h: Update.
2587         * gnulib/import/tempname.c: Update.
2588         * gnulib/import/tempname.h: Update.
2589         * gnulib/import/time.in.h: Update.
2590         * gnulib/import/unistd--.h: Update.
2591         * gnulib/import/unistd-safer.h: Update.
2592         * gnulib/import/unistd.in.h: Update.
2593         * gnulib/import/unsetenv.c: Update.
2594         * gnulib/import/verify.h: Update.
2595         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2596         * gnulib/import/wchar.in.h: Update.
2597         * gnulib/import/wctype.in.h: Update.
2598         * gnulib/import/xalloc-oversized.h: Update.
2599         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2600         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2601
2602 2018-08-16  Gary Benson <gbenson@redhat.com>
2603
2604         PR gdb/13000:
2605         * gdb/main.c (captured_main_1): Exit with nonzero status
2606         in batch mode if the last command to be executed failed.
2607         * NEWS: Mention the above.
2608
2609 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
2610
2611         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
2612         end of warning message.
2613
2614 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2615
2616         PR gdb/22943:
2617         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
2618         (aarch64_extract_return_value): Use
2619         aapcs_is_vfp_call_or_return_candidate.
2620         (aarch64_return_in_memory): Likewise.
2621         (aarch64_store_return_value): Likewise.
2622
2623 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2624
2625         * aarch64-tdep.c
2626         (aapcs_is_vfp_call_or_return_candidate): Make static
2627         (pass_in_v_or_stack): Remove function.
2628         (pass_in_v_vfp_candidate): New function.
2629         (aarch64_push_dummy_call): Check for float register candidates.
2630
2631 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2632
2633         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
2634         (aapcs_is_vfp_call_or_return_candidate_1): New function.
2635         (aapcs_is_vfp_call_or_return_candidate): Likewise.
2636
2637 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
2638
2639         PR build/23399
2640         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
2641         (struct ipa_sym_addresses): Rename to...
2642         (struct ipa_sym_addresses_common): ... this.
2643         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
2644
2645 2018-08-28  Tom Tromey  <tom@tromey.com>
2646
2647         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2648         (token_fifo): Now a std::vector.
2649         (yylex, c_parse): Update.
2650         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2651         (token_fifo): Now a std::vector.
2652         (yylex, d_parse): Update.
2653         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2654         (token_fifo): Now a std::vector.
2655         (yylex, go_parse): Update.
2656
2657 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
2658
2659         * parser-defs.h (struct type_stack) <elements>: Change type to
2660         std::vector<union type_stack_elt>.
2661         <depth, size>: Remove.
2662         * parse.c (parse_exp_in_context_1): Adjust.
2663         (type_stack_reserve): Remove.
2664         (check_type_stack_depth): Remove.
2665         (insert_into_type_stack): Adjust to std::vector.
2666         (insert_type): Likewise.
2667         (push_type): Likewise.
2668         (push_type_int): Likewise.
2669         (insert_type_address_space): Likewise.
2670         (pop_type): Likewise.
2671         (pop_type_int): Likewise.
2672         (pop_typelist): Likewise.
2673         (pop_type_stack): Likewise.
2674         (append_type_stack): Likewise.
2675         (push_type_stack): Likewise.
2676         (get_type_stack): Likewise.
2677         (type_stack_cleanup): Likewise.
2678         (push_typelist): Likewise.
2679         (follow_types): Likewise.
2680         (_initialize_parse): Likewise.
2681
2682 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2683
2684         * NEWS: Mention csky target.
2685
2686 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
2687             Hafiz Abid Qadeer  <abidh@codesourcery.com>
2688             Don Breazeal  <donb@codesourcery.com>
2689
2690         * csky-linux-tdep.c: New file.
2691         * csky-tdep.c: Likewise.
2692         * csky-tdep.h: Likewise.
2693         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
2694         csky-tdep.o.
2695         (HFILES_NO_SRCDIR): Add csky-tdep.h.
2696         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
2697         * configure.tgt: Add csky support.
2698
2699 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
2700
2701         * python/py-framefilter.c (py_print_frame): Print frame architecture
2702         when printing on an MI output.
2703
2704 2018-08-27  Tom Tromey  <tom@tromey.com>
2705
2706         PR build/23087:
2707         * configure: Rebuild.
2708         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
2709
2710 2018-08-27  Tom Tromey  <tom@tromey.com>
2711
2712         * aarch64-linux-tdep.c
2713         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
2714         casts to int.
2715
2716 2018-08-27  Tom Tromey  <tom@tromey.com>
2717
2718         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
2719         unsigned.
2720         (ppc64_standard_linkage1, ppc64_standard_linkage2)
2721         (ppc64_standard_linkage3, ppc64_standard_linkage4)
2722         (ppc64_standard_linkage5, ppc64_standard_linkage6)
2723         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
2724         unsigned.
2725
2726 2018-08-27  Tom Tromey  <tom@tromey.com>
2727
2728         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
2729         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
2730
2731 2018-08-27  Tom Tromey  <tom@tromey.com>
2732
2733         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
2734         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
2735         ULONGEST_MAX.
2736         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
2737         ULONGEST_MAX.
2738         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
2739         ULONGEST_MAX.
2740         * sparc-linux-tdep.c (sparc32_linux_sigframe)
2741         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
2742         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
2743         ULONGEST_MAX.
2744         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
2745         (ppc64_linux_sigaction_tramp_frame)
2746         (ppc32_linux_sighandler_tramp_frame)
2747         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2748         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
2749         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
2750         * mn10300-linux-tdep.c (am33_linux_sigframe)
2751         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
2752         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
2753         * mips-linux-tdep.c (mips_linux_o32_sigframe)
2754         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
2755         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
2756         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
2757         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
2758         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
2759         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
2760         * microblaze-linux-tdep.c
2761         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2762         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
2763         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
2764         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
2765         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
2766         * common/common-types.h (ULONGEST_MAX): New define.
2767         (CORE_ADDR_MAX): Fix formatting.
2768         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
2769         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
2770         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
2771         (arm_linux_rt_sigreturn_tramp_frame)
2772         (arm_eabi_linux_sigreturn_tramp_frame)
2773         (arm_eabi_linux_rt_sigreturn_tramp_frame)
2774         (thumb2_eabi_linux_sigreturn_tramp_frame)
2775         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
2776         (arm_linux_restart_syscall_tramp_frame)
2777         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
2778         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
2779         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
2780         ULONGEST_MAX.
2781         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
2782
2783 2018-08-27  Tom Tromey  <tom@tromey.com>
2784
2785         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
2786         CORE_ADDR_MAX.
2787         * mips-tdep.c (mips_deal_with_atomic_sequence)
2788         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
2789         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
2790         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
2791         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
2792         CORE_ADDR_MAX.
2793         * aarch64-tdep.c (aarch64_software_single_step): Use
2794         CORE_ADDR_MAX.
2795
2796 2018-08-27  Tom Tromey  <tom@tromey.com>
2797
2798         * linespec.c (complete_linespec_component): Add cast to "char".
2799         * completer.c (completion_tracker::build_completion_result): Add
2800         cast to "char".
2801
2802 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2803
2804         * solist.h (struct solist, struct target_so_ops): Fix
2805         indentation.
2806
2807 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2808
2809         * ada-tasks.c (ada_task_info_s): Remove typedef.
2810         (DEF_VEC_O(ada_task_info_s)): Remove.
2811         (struct ada_tasks_inferior_data): Initialize fields.
2812         <task_list>: Make an std::vector.
2813         (get_ada_tasks_inferior_data): Allocate with new.
2814         (ada_get_task_number): Adjust.
2815         (get_task_number_from_id): Likewise.
2816         (valid_task_id): Likewise.
2817         (ada_get_task_info_from_ptid): Likewise.
2818         (iterate_over_live_ada_tasks): Likewise.
2819         (add_ada_task): Likewise.
2820         (read_known_tasks): Likewise.
2821         (ada_build_task_list): Likewise.
2822         (print_ada_task_info): Likewise.
2823         (info_task): Likewise.
2824         (task_command_1): Likewise.
2825
2826 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2827
2828         * ada-lang.c (add_angle_brackets): Return std::string.
2829
2830 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
2831
2832         * python/py-threadevent.c (py_get_event_thread): Initialize
2833         pythread.
2834
2835 2018-08-24  Pedro Alves  <palves@redhat.com>
2836
2837         * python/py-bpevent.c (create_breakpoint_event_object): Use
2838         copy-initialization.
2839         * python/py-continueevent.c (emit_continue_event): Use
2840         copy-initialization.
2841         * python/py-exitedevent.c (create_exited_event_object): Return a
2842         gdbpy_ref<>.
2843         (emit_exited_event): Use copy-initialization.
2844         * python/py-inferior.c (python_new_inferior)
2845         (python_inferior_deleted, add_thread_object): Use
2846         copy-initialization.
2847         * python/py-infevents.c (create_inferior_call_event_object)
2848         (create_register_changed_event_object)
2849         (create_memory_changed_event_object): Return a gdbpy_ref<>.
2850         (emit_inferior_call_event, emit_memory_changed_event)
2851         (emit_register_changed_event): Use copy-initialization.
2852         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2853         Return a gdbpy_ref<>.
2854         (emit_new_objfile_event): Use copy-initialization.
2855         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
2856         (emit_clear_objfiles_event): Use copy-initialization.
2857         * python/py-signalevent.c (create_signal_event_object): Use
2858         copy-initialization.
2859         * python/py-threadevent.c (create_thread_event_object): Use
2860         copy-initialization.
2861
2862 2018-08-24  Pedro Alves  <palves@redhat.com>
2863             Simon Marchi  <simon.marchi@ericsson.com>
2864
2865         PR gdb/23379
2866         * python/py-continueevent.c: Include "gdbthread.h".
2867         (create_continue_event_object): Add intro comment.  Add 'ptid'
2868         parameter.  Use it to find thread to pass to
2869         create_thread_event_object.
2870         (emit_continue_event): Pass PTID down to
2871         create_continue_event_object.
2872         * python/py-event.h (py_get_event_thread): Declare.
2873         (create_thread_event_object): Remove default from 'thread'
2874         parameter.
2875         * python/py-stopevent.c (create_stop_event_object): Use
2876         py_get_event_thread.
2877         * python/py-threadevent.c (get_event_thread): Rename to ...
2878         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
2879         and use it to find the thread.
2880         (create_thread_event_object): Assert that THREAD isn't null.
2881         Don't find the event thread here.
2882
2883 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
2884
2885         * block.h (blockrange, blockranges): New struct declarations.
2886         (struct block): Add new field named `ranges'.
2887         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
2888         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
2889         macros for accessing ranges in struct block.
2890         (make_blockranges): New declaration.
2891         block.c (make_blockranges): New function.
2892         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
2893         for block.
2894         * symtab.h (find_pc_partial_function): Add new parameter `block'.
2895         * blockframe.c (cache_pc_function_block): New static global.
2896         (clear_pc_function_cache): Clear cache_pc_function_block.
2897         (find_pc_partial_function): Move comment to symtab.h.  Add
2898         support for non-contiguous blocks.
2899         * cli/cli-cmds.c (block.h): Include.
2900         (print_disassembly): Handle printing of non-contiguous blocks.
2901         (disassemble_current_function): Likewise.
2902         (disassemble_command): Likewise.
2903
2904         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
2905         BLOCK_START.
2906         * blockframe.c (get_pc_function_start): Likewise.
2907         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
2908         (gcc_symbol_address): Likewise.
2909         * compile/compile-object-run.c (compile_object_run): Likewise.
2910         * compile/compile.c (get_expr_block_and_pc): Likewise.
2911         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
2912         (func_addr_to_tail_call_list): Likewise.
2913         * findvar.c (default_read_var_value): Likewise.
2914         * inline-frame.c (inline_frame_this_id): Likewise.
2915         (skip-inline_frames): Likewise.
2916         * infcmd.c (until_next_command): Likewise.
2917         * linespec.c (convert_linespec_to_sals): Likewise.
2918         * parse.c (parse_exp_in_context_1): Likewise.
2919         * printcmd.c (build_address_symbolic): likewise.
2920         (info_address_command): Likewise.
2921         symtab.c (find_function_start_sal): Likewise.
2922         (skip_prologue_sal): Likewise.
2923         (find_function_alias_target): Likewise.
2924         (find_gnu_ifunc): Likewise.
2925         * stack.c (find_frame_funname): Likewise.
2926         * symtab.c (fixup_symbol_section): Likewise.
2927         (find_function_start_sal): Likewise.
2928         (skip_prologue_sal): Likewsie.
2929         (find_function_alias_target): Likewise.
2930         (find_gnu_ifunc): Likewise.
2931         * tracepoint.c (info_scope_command): Likewise.
2932         * value.c (value_fn_field): Likewise.
2933
2934         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
2935         in place of find_pc_partial_function.
2936         * blockframe.c (find_function_entry_range_from_pc): New function.
2937         * symtab.h (find_function_entry_range_from_pc): Declare and document.
2938         * objfiles.c (objfile_relocate1): Relocate start and end addresses
2939         for each range in a block.
2940
2941
2942 2018-08-23  Xavier Roirand  <roirand@adacore.com>
2943
2944         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
2945         incrementation.
2946
2947 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2948
2949         * solib-svr4.c (read_program_headers_from_bfd): Return
2950         gdb::optional<gdb::byte_vector>.
2951         (svr4_exec_displacement): Adjust.
2952
2953 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2954
2955         * solib-svr4.c (read_program_header): Return
2956         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
2957         (find_program_interpreter): Return
2958         gdb::optional<gdb::byte_vector>.
2959         (scan_dyntag_auxv): Adjust.
2960         (enable_break): Adjust.
2961         (svr4_exec_displacement): Adjust.
2962
2963 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2964
2965         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
2966         * inf-child.c (inf_child_target::terminal_save_inferior): New.
2967
2968 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2969
2970         * guile/scm-string.c (gdbscm_scm_from_printf): Use
2971         string_vprintf.
2972         * guile/scm-utils.c (gdbscm_printf): Likewise.
2973         * serial.c (serial_printf): Likewise.
2974         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
2975
2976 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
2977
2978         * stack.c (print_frame): Print frame architecture when printing on
2979         an MI output.
2980         * NEWS: Mention new "arch" attribute in frame output.
2981
2982 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
2983
2984         * arch/aarch64.h (aarch64_regnum): Update comment.
2985
2986 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
2987
2988         * NEWS: Add SVE to 8.2 section.
2989
2990 2018-08-21  Pedro Alves  <palves@redhat.com>
2991
2992         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
2993         out from gdbscm_parse_function_args.
2994         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
2995         gdbscm_parse_function_args_1.
2996
2997 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
2998
2999         PR gdb/17816
3000         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3001         operator.
3002
3003 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3004
3005         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3006
3007 2018-08-19  Michael Spang  <spang@google.com>
3008
3009         PR gdb/11786
3010         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3011         for PT_TLS segments.
3012
3013 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3014
3015         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3016         dwarf_variable_value.
3017         * dwarf2-frame.c (class dwarf_expr_executor):
3018         Add override for dwarf_variable_value.
3019         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3020         (class symbol_needs_eval_context): Likewise.
3021         (indirect_synthetic_pointer): Add forward declaration.
3022         (sect_variable_value): New function.
3023         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3024         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3025         for DW_OP_GNU_variable_value.
3026
3027 2018-08-16  Tom Tromey  <tom@tromey.com>
3028
3029         * top.c (read_command_file): Update.
3030         (command_line_input): Remove "repeat" argument.
3031         * ada-lang.c (get_selections): Update.
3032         * linespec.c (decode_line_2): Update.
3033         * defs.h (command_line_input): Remove argument.
3034         * cli/cli-script.c (read_next_line): Update.
3035         * python/py-gdb-readline.c: Update.
3036
3037 2018-08-17  Tom Tromey  <tom@tromey.com>
3038
3039         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3040         command_line_input.
3041
3042 2018-08-15  Tom Tromey  <tom@tromey.com>
3043
3044         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3045
3046 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3047
3048         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3049         If used, use find_pc_partial_function to find address range
3050         to disassemble.
3051         * mi/mi-main.c (mi_cmd_list_features): Report
3052         "data-disassemble-a-option" feature.
3053         * NEWS: Mention new -data-disassemble option -a.
3054
3055 2018-08-13  Tom Tromey  <tom@tromey.com>
3056
3057         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3058
3059 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3060
3061         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3062         (aarch64_linux_collect_sve_regset): Likewise.
3063         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3064         * regcache.h (regcache_map_entry_size): New function.
3065
3066 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3067
3068         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3069         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3070         (SVE_HEADER_VL_LENGTH): Likewise.
3071         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3072         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3073         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3074         (SVE_HEADER_SIZE_OFFSET): Likewise.
3075         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3076         (SVE_HEADER_VL_OFFSET): Likewise.
3077         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3078         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3079         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3080         (SVE_HEADER_SIZE): Likewise.
3081         (aarch64_linux_core_read_vq): Add function.
3082         (aarch64_linux_core_read_description): Check for SVE section.
3083
3084 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3085
3086         * aarch64-fbsd-tdep.c
3087         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3088         collect_size.
3089         * aarch64-linux-tdep.c
3090         (aarch64_linux_iterate_over_regset_sections): Likewise.
3091         * alpha-linux-tdep.c
3092         (alpha_linux_iterate_over_regset_sections):
3093         * alpha-nbsd-tdep.c
3094         (alphanbsd_iterate_over_regset_sections): Likewise.
3095         * amd64-fbsd-tdep.c
3096         (amd64fbsd_iterate_over_regset_sections): Likewise.
3097         * amd64-linux-tdep.c
3098         (amd64_linux_iterate_over_regset_sections): Likewise.
3099         * arm-bsd-tdep.c
3100         (armbsd_iterate_over_regset_sections): Likewise.
3101         * arm-fbsd-tdep.c
3102         (arm_fbsd_iterate_over_regset_sections): Likewise.
3103         * arm-linux-tdep.c
3104         (arm_linux_iterate_over_regset_sections): Likewise.
3105         * corelow.c (get_core_registers_cb): Likewise.
3106         (core_target::fetch_registers): Likewise.
3107         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3108         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3109         * gdbarch.h (void): Regenerate.
3110         * gdbarch.sh: Add supply_size and collect_size.
3111         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3112         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3113         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3114         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3115         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3116         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3117         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3118         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3119         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3120         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3121         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3122         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3123         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3124         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3125         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3126         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3127         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3128         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3129         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3130         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3131         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3132         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3133         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3134         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3135         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3136         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3137         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3138         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3139         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3140         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3141
3142 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3143
3144         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3145         with string_printf.
3146
3147 2018-08-10  Keith Seitz  <keiths@redhat.com>
3148
3149         * compile/compile-c-support.c (add_code_header, add_code_footer):
3150         Move into policy class.
3151         (c_push_user_expression, pop_user_expression_nop)
3152         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3153         (compile_program): New host class.
3154         (c_compile_program): New typedef.
3155         (c_compute_porgram): Use c_compile_program.
3156
3157 2018-08-10  Keith Seitz  <keiths@redhat.com>
3158
3159         * compile/compile-internal.h (compile_instance::~compile_instance):
3160         Remove calls to htab_delete.
3161         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3162         * compile.c (compile_instance::compile_instance): Initialize
3163         htab unique pointers.
3164         (compile_instance::get_cached_type, compile_instance::insert_type)
3165         (compile_instance::error_symbol_once): Update for unique_ptr.
3166
3167 2018-08-10  Keith Seitz  <keiths@redhat.com>
3168
3169         * compile/compile-c-symbols.c (struct symbol_error)
3170         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3171         (compile_instance::insert_symbol_error)
3172         (compile_instance::error_symbol_once): Move to ...
3173         * compile/compile.c: ... here.
3174
3175 2018-08-10  Keith Seitz  <keiths@redhat.com>
3176
3177         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3178         instead of `new_compile_instance'.
3179         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3180         Update description.
3181         If the symbol error map is not initialized, create it.
3182         (generate_c_for_for_one_symbol): Do not check/initialize
3183         the symbol error map.
3184         * compile/compile-c-types.c (compile_c_instance): Make a class.
3185         Update all callers.
3186         (compile_instance::compile_instance): Initialize the type cache.
3187         (get_cached_type): New function.
3188         (insert_type): Update description.
3189         (compile_c_instance::m_default_cflags): Define.
3190         (convert_type): Update description.  Use get_cached_type.
3191         (delete_instance): Moved to destructor.
3192         (new_compile_instance): Moved to constructor.
3193         * compile/compile-c.h (compile_c_instance): Make class inheriting
3194         from compile_instance.
3195         <base>: Remove field.
3196         <type_map, symbol_err_map>: Move to base class.
3197         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3198         * compile/compile-internal.h (compile_instance): Make class.
3199         <type_map_t, symbol_err_map_t>: Define.
3200         <fe>: Rename to `m_gcc_fe'.
3201         <scope, block, gcc_target_options>: Add `m_' prefix.
3202         <m_type_map, m_symbol_err_map>: New fields, moved from
3203         compile_c_instance.
3204         <destroy>: Remove.
3205         (convert_type, new_compile_instance): Remove.
3206         * compile/compile.c (cleanup_compile_instance): Remove.
3207         (compile_to_object): Use unique_ptr to eliminate cleanups.
3208         (compile_instance::set_print_callback, compile_instance::version)
3209         (compile_instance::set_verbose)
3210         (compile_instance::set_driver_filename)
3211         (compile_instance::set_triplet_regexp)
3212         (compile_instance::set_arguments)
3213         (compile_instance::set_source_file)
3214         (compile_instance::compile): Define.
3215
3216 2018-08-10  Keith Seitz  <keiths@redhat.com>
3217
3218         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3219         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3220         gcc-c-fe.def to define C plugin.
3221         (delete_instance): Delete `c_plugin'.
3222         (new_compile_instance): Initialize `c_plugin'.
3223         * compile/compile-c.h: Include gcc_c_plugin.h.
3224         (struct compile_c_instance) <c_plugin>: New member.
3225         * gcc-c-plugin.h: New file.
3226         Update all callers with API change.
3227
3228 2018-08-10  Keith Seitz  <keiths@redhat.com>
3229
3230         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3231         (HFILES_NO_SRCDIR): ... to here.
3232         Add compile-internal.h and compile-c.h.
3233         * compile/compile-c-support.c: Include compile-c.h.
3234         * compile/compile-c-symbols.c: Include compile-c.h.
3235         (generate_c_for_variable_locations): Update comment.
3236         * compile/compile-c-types.c: Include compile-c.h.
3237         * compile/compile-c.h: New file -- moved C language declarations
3238         from other files here.
3239         * compile/compile-internal.h: Do not include hashtab.h or
3240         common/enum-flags.h.
3241         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3242         (gcc_convert_symbol, gcc_symbol_address)
3243         (generate_c_for_variable_locations, c_get_mode_for_size)
3244         (c_get_range_decl_name): Definitions moved to compile-c.h.
3245         * compile/compile-loc2c.c: Include compile-c.h.
3246
3247 2018-08-10  Keith Seitz  <keiths@redhat.com>
3248
3249         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3250         (c_symbol_substitution_name): ... this.
3251         Update all callers.
3252
3253 2018-08-10  Keith Seitz  <keiths@redhat.com>
3254
3255         * compile/compile-c-support.c (c_compute_program): Use
3256         unique_xmalloc_ptr to eliminate cleanup.
3257         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3258         Return a unique_xmalloc_ptr and eliminate cleanup.
3259         * compile/compile-internal.h (generate_c_for_variable_locations):
3260         Return unique_xmalloc_ptr and update description.
3261
3262 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3263
3264         * corelow.c (core_target::get_core_register_section): Rename
3265         min_size to section_min_size.
3266
3267 2018-08-09  Jim Wilson  <jimw@sifive.com>
3268
3269         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3270         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3271         * NEWS: Mention new GNU/Linux RISC-V target.
3272         * configure.host: Add riscv*-*-linux*.
3273         * configure.nat: Add riscv*.
3274         * configure.tgt: Add riscv*-*-linux*.
3275         * riscv-linux-nat.c: New file.
3276         * riscv-linux-tdep.c: New file.
3277
3278 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3279
3280         * infrun.c (resume): Make static, add forward declaration.
3281         (proceed): Update header comment.
3282         * infrun.h (resume): Delete declaration.
3283
3284 2018-08-09  Tom Tromey  <tom@tromey.com>
3285
3286         * riscv-tdep.h: Minor formatting fixes.
3287
3288 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3289
3290         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3291         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3292         (test_mkdir_recursive): Likewise.
3293         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3294
3295 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3296
3297         * valarith.c (value_subscripted_rvalue): If an array is not in
3298         memory, and we don't know the upper bound, then we can't know that
3299         the requested element exists or not.
3300
3301 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3302
3303         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3304         (target_options_to_string): Add comment.
3305
3306 2018-08-08  Tom Tromey  <tom@tromey.com>
3307
3308         * unittests/scoped_mmap-selftests.c: Check result of "write".
3309
3310 2018-08-08  Jim Wilson  <jimw@sifive.com>
3311
3312         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3313         (decode_register_index_short): New.
3314         (decode_j_type_insn, decode_cj_type_insn): New.
3315         (decode_b_type_insn, decode_cb_type_insn): New.
3316         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3317         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3318         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3319         is_c_sw_insn instead of is_sw_insn.
3320         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3321         (riscv_software_single_step): New.
3322         * riscv-tdep.h (riscv_software_single_step): Declare.
3323
3324         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3325         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3326
3327 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3328
3329         PR gdb/18050:
3330         * target.c (dispose_inferior): Don't dispose of inferiors that are
3331         already killed.
3332
3333 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3334
3335         * remote.c (remote_target::download_tracepoint): Change char* to
3336         const char*.
3337
3338 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3339
3340         * target.h (target_options_to_string): Return an std::string.
3341         * target.c (str_comma_list_concat_elem): Return void, use
3342         std::string.
3343         (do_option): Likewise.
3344         (target_options_to_string): Return an std::string.
3345         * linux-nat.c (linux_nat_target::wait): Adjust.
3346         * target-debug.h (target_debug_print_options): Adjust.
3347
3348 2018-08-07  Tom Tromey  <tom@tromey.com>
3349
3350         * Makefile.in (CPPFLAGS): New variable.
3351         (INTERNAL_CPPFLAGS): Use it.
3352
3353 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3354
3355         * NEWS: Mention the index cache.
3356
3357 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3358
3359         * common/pathstuff.h (get_standard_cache_dir): New.
3360         * common/pathstuff.c (get_standard_cache_dir): New.
3361         * build-id.h (build_id_to_string): New.
3362         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
3363         DEBUG_STR_SUFFIX): Move to here.
3364         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
3365         DEBUG_STR_SUFFIX): Move from there.
3366         (write_psymtabs_to_index): Make non-static, add basename
3367         parameter.  Write to temporary files, rename when done.
3368         (save_gdb_index_command): Adjust call to
3369         write_psymtabs_to_index.
3370         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
3371         field.
3372         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
3373         (get_gdb_index_contents_from_cache): New.
3374         (get_gdb_index_contents_from_cache_dwz): New.
3375         (dwarf2_initialize_objfile): Read index from cache.
3376         (dwarf2_build_psymtabs): Save to index.
3377         * dwarf-index-cache.h: New file.
3378         * dwarf-index-cache.c: New file.
3379         * dwarf-index-write.h: New file.
3380
3381 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3382
3383         * gnulib/aclocal.m4: Re-generate.
3384         * gnulib/config.in: Re-generate.
3385         * gnulib/configure: Re-generate.
3386         * gnulib/import/Makefile.am: Re-generate.
3387         * gnulib/import/Makefile.in: Re-generate.
3388         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3389         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3390         * gnulib/import/m4/mkdir.m4: New file.
3391         * gnulib/import/mkdir.c: New file.
3392         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
3393         module.
3394
3395 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3396
3397         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
3398         * common/scoped_mmap.c: New file.
3399         * common/scoped_mmap.h (destroy): New method.
3400         (~scoped_mmap, reset): Use destroy.
3401         (scoped_mmap): New move constructor.
3402         (mmap_file): New declaration.
3403         * unittests/scoped_mmap-selftests.c (test_normal,
3404         test_invalid_filename, run_tests): New functions.
3405         (_initialize_scoped_mmap_selftests): Register selftest.
3406
3407 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3408
3409         * dwarf2read.c (read_gdb_index_from_section): Rename to...
3410         (read_gdb_index_from_buffer): ... this.  Remove section
3411         parameter, add buffer parameter.
3412         (get_gdb_index_contents_ftype,
3413         get_gdb_index_contents_dwz_ftype): New typedefs.
3414         (dwarf2_read_gdb_index): Add callback parameters to get the
3415         index contents.
3416         (get_gdb_index_contents_from_section): New.
3417         (dwarf2_initialize_objfile): Update call to
3418         dwarf2_read_gdb_index.
3419
3420 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3421
3422         * common/filestuff.h (gdb_fopen_cloexec): New overload.
3423         (gdb_open_cloexec): Likewise.
3424         * nat/linux-osdata.c (command_from_pid): Use string_printf.
3425         (commandline_from_pid): Likewise.
3426         (linux_xfer_osdata_threads): Likewise.
3427         (linux_xfer_osdata_fds): Likewise.
3428         * ada-lang.c (is_package_name): Likewise.
3429         * auxv.c (procfs_xfer_auxv): Likewise.
3430         * breakpoint.c (print_one_breakpoint_location): Use
3431         uiout::field_fmt.
3432         (print_one_catch_solib): Use string_printf.
3433         * coff-pe-read.c (add_pe_exported_sym): Likewise.
3434         (add_pe_forwarded_sym): Likewise.
3435         * dwarf2read.c (create_type_unit_group): Likewise.
3436         (build_error_marker_type): Likewise.
3437         * infcall.c (get_function_name): Likewise.
3438         * valprint.c (print_converted_chars_to_obstack): Likewise.
3439         * xtensa-tdep.c (xtensa_register_type): Likewise.
3440
3441 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
3442
3443         * remote.c (remote_target::download_tracepoint): Fix format
3444         string errors.
3445
3446 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3447
3448         * tracefile.c: Include common/byte-vector.h.
3449         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
3450         with trace_regblock_size if needed.  Update uses of buf.
3451
3452 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3453
3454         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
3455         std::vector<unsigned char>.
3456         * tracepoint.c (collection_list::collection_list): Remove
3457         m_regs_mask initializer from initializer list.  Resize
3458         m_regs_mask using the largest remote register number.
3459         (collection_list::add_remote_register): Remove size check on
3460         m_regs_mask.  Use at to access element.
3461         (collection_list::stringify): Change type of temp_buf to
3462         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
3463         stringify the register mask.  Use pack_hex_byte for the register
3464         mask.
3465
3466 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3467
3468         * tracepoint.h (class collection_list) <add_register>: Remove.
3469         <add_remote_register, add_ax_registers, add_local_register>:
3470         Declare.
3471         <add_memrange>: Add scope parameter.
3472         * tracepoint.c (encode_actions_1): Likewise.
3473         (collection_list::add_register): Rename to ...
3474         (collection_list::add_remote_register): ... this.  Update
3475         comment.
3476         (collection_list::add_ax_registers, add_local_register): New
3477         methods.
3478         (collection_list::add_memrange): Add scope parameter.  Call
3479         add_local_register instead of add_register.
3480         (finalize_tracepoint_aexpr): New function.
3481         (collection_list::collect_symbol): Update calls to add_memrange.
3482         Call add_local_register instead of add_register.  Call
3483         add_ax_registers.  Call finalize_tracepoint_aexpr.
3484         (encode_actions_1): Get remote regnos for $reg action.  Call
3485         add_remote_register, add_ax_registers, and add_local_register.
3486         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
3487         (validate_actionline): Call finalize_tracepoint_aexpr.
3488
3489 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3490
3491         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
3492         Replace array buf with gdb::char_vector buf, of size
3493         get_remote_packet_size ().  Replace references to buf and
3494         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
3495         and xsnprintf with snprintf.  Raise errors if the buffer is too
3496         small.
3497
3498 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3499
3500         * remote.c (remote_target::download_tracepoint): Fix the has_more
3501         predicate in the QTDP action list iteration.
3502
3503 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3504
3505         * remote.c (remote_target::download_tracepoint): Fix indentation
3506         in for block.
3507
3508 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3509
3510         * proc-api.c (_initialize_proc_api): Remove c, unused.
3511         * procfs.c (procfs_init_inferior): Remove signals, unused.
3512         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
3513         unused.
3514
3515 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
3516             Andrew Burgess  <andrew.burgess@embecosm.com>
3517
3518         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
3519         'W_STOPCODE (0)' as this could be ambiguous.
3520
3521 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
3522
3523         * ser-tcp.c (net_open): Fix thinko when deciding whether to
3524         disable TCP's Nagle algorithm (use "ai_protocol" instead of
3525         "ai_socktype").
3526
3527 2018-08-02  Tom Tromey  <tom@tromey.com>
3528
3529         PR symtab/16842.
3530         * dwarf2read.c (read_func_scope): Set symtab on template parameter
3531         symbols.
3532         (process_structure_scope): Likewise.
3533
3534 2018-08-02  Xavier Roirand  <roirand@adacore.com>
3535
3536         PR gdb/22629:
3537         * darwin-nat.c (darwin_kill_inferior): Fix handling of
3538         kill inferior.
3539
3540 2018-08-02  Tom Tromey  <tom@tromey.com>
3541
3542         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
3543         (darwin_suspend_inferior, darwin_resume_inferior)
3544         (darwin_decode_notify_message, darwin_resume_inferior_threads)
3545         (darwin_check_new_threads): Check result of get_darwin_inferior.
3546
3547 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
3548
3549         GDB 8.1.1 released.
3550
3551 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
3552
3553         * varobj.c (varobj_get_path_expr_parent): Report an error if
3554         parent is a dynamic varobj.
3555
3556 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3557
3558         * gnulib/aclocal.m4: Re-generate.
3559         * gnulib/config.in: Re-generate.
3560         * gnulib/configure: Re-generate.
3561         * gnulib/import/Makefile.in: Re-generate.
3562         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3563         * gnulib/import/m4/onceonly.m4: Re-generate.
3564
3565 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3566
3567         * target-descriptions.c (struct xml_test_tdesc): New.
3568         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
3569         (record_xml_tdesc): Update.
3570         (maintenance_check_xml_descriptions): Update.
3571         * target-descriptions.h (record_xml_tdesc): Update comment.
3572
3573 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3574
3575         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
3576         checking array bounds are defined.
3577
3578 2018-07-30  Tom Tromey  <tom@tromey.com>
3579
3580         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
3581         irreflexivity violation.
3582
3583 2018-07-30  Tom Tromey  <tom@tromey.com>
3584
3585         * cli/cli-decode.c (lookup_cmd): Remove lint code.
3586         * value.c (unpack_long): Remove lint code.
3587         * valops.c (value_ind): Remove lint code.
3588         * valarith.c (value_x_binop, value_x_unop, value_equal)
3589         (value_pos): Remove lint code.
3590
3591 2018-07-28  Tom de Vries  <tdevries@suse.de>
3592
3593         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
3594         with undefined upper bound as <optimized out>.
3595
3596 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
3597
3598         * gcore.in: Rename variable "name" to "prefix".  Expand
3599         "usage" text.
3600
3601 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
3602
3603         * windows-nat.c (windows_nat_target::create_inferior): Update to
3604         call close() in global namespace.
3605
3606 2018-07-26  Tom Tromey  <tom@tromey.com>
3607
3608         * dwarf-index-write.c (add_address_entry): Don't add objfile
3609         offsets.
3610         * dbxread.c (find_stab_function): Rename from
3611         find_stab_function_addr.  Return a bound_minimal_symbol.
3612         (read_dbx_symtab): Use raw_text_low, raw_text_high.
3613         Don't add objfile offsets.
3614         (end_psymtab): Use raw_text_low, raw_text_high,
3615         MSYMBOL_VALUE_RAW_ADDRESS.
3616         (read_ofile_symtab): Update.
3617         (process_one_symbol): Update.
3618         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
3619         offsets.
3620         (dw2_relocate): Remove.
3621         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
3622         searching addrmap.
3623         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
3624         Update.
3625         (process_psymtab_comp_unit_reader, add_partial_symbol)
3626         (add_partial_subprogram, dwarf2_ranges_read): Update.
3627         (load_partial_dies): Update.
3628         (add_address_entry): Don't add objfile offsets.
3629         (dwarf2_build_include_psymtabs): Update.
3630         (create_addrmap_from_aranges): Don't add objfile offsets.
3631         (dw2_find_pc_sect_compunit_symtab): Update.
3632         * mdebugread.c (parse_symbol): Don't add objfile offsets.
3633         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
3634         Update.
3635         (parse_partial_symbols): Don't add objfile offsets.  Use
3636         raw_text_low, raw_text_high.  Update.
3637         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
3638         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
3639         or call 'relocate' quick function.  Clear psymbol_map.
3640         * psympriv.h (struct partial_symbol) <address>: Add section
3641         offset.
3642         <set_unrelocated_address>: Rename from set_address.
3643         <raw_text_low, raw_text_high>: New methods.
3644         <text_low, text_high>: Add objfile parameter.
3645         (add_psymbol_to_bcache): Add 'section' parameter.  Call
3646         set_unrelocated_address.
3647         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3648         (find_pc_psymbol): Update.
3649         (fixup_psymbol_section, relocate_psymtabs): Remove.
3650         (dump_psymtab, psym_functions): Update.
3651         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
3652         parameter.
3653         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
3654         (start_psymtab_common): Update.
3655         * symfile-debug.c (debug_qf_relocate): Remove.
3656         (debug_sym_quick_functions): Update.
3657         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
3658         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
3659         Update.
3660
3661 2018-07-26  Tom Tromey  <tromey@redhat.com>
3662
3663         * dbxread.c (end_psymtab): Use text_high_valid and
3664         text_low_valid.
3665         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
3666         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
3667         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3668         Update comment.
3669         <text_low_valid, text_high_valid>: New fields.
3670         <set_text_low, set_text_high>: Update.
3671         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
3672
3673 2018-07-26  Tom Tromey  <tom@tromey.com>
3674
3675         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
3676         Update.
3677         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
3678         textlow and texthigh fields.
3679         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
3680         Update.
3681         * mdebugread.c (parse_lines, parse_partial_symbols)
3682         (psymtab_to_symtab_1): Update.
3683         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3684         Rename fields.  Update comment.  Now private.
3685         <text_low, text_high, set_text_low, set_text_high>: New methods.
3686         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3687         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
3688         (start_psymtab_common, maintenance_info_psymtabs)
3689         (maintenance_check_psymtabs): Update.
3690         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
3691         texthigh fields.
3692         (scan_xcoff_symtab): Update.
3693
3694 2018-07-26  Tom Tromey  <tromey@redhat.com>
3695
3696         * psympriv.h (struct partial_symbol) <unrelocated_address,
3697         address, set_address>: New methods.
3698         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
3699         (fixup_psymbol_section, relocate_psymtabs): Update.
3700         (print_partial_symbols): Add 'objfile' parameter.  Update.
3701         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
3702         Update.
3703
3704 2018-07-26  Tom Tromey  <tom@tromey.com>
3705
3706         * dwarf-index-write.c (write_psymbols, debug_names::insert)
3707         (debug_names::write_psymbols): Update.
3708         * psympriv.h (struct partial_symbol): Derive from
3709         general_symbol_info.
3710         <obj_section>: New method.
3711         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
3712         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3713         (find_pc_sect_psymbol, fixup_psymbol_section)
3714         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
3715         (print_partial_symbols, recursively_search_psymtabs)
3716         (compare_psymbols, psymbol_hash, psymbol_compare)
3717         (add_psymbol_to_bcache, maintenance_check_psymtabs)
3718         (psymbol_name_matches, psym_fill_psymbol_map): Update.
3719
3720 2018-07-26  Tom Tromey  <tromey@redhat.com>
3721
3722         * dbxread.c (end_psymtab): Remove dead code.
3723
3724 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
3725
3726         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
3727         DWARF unwinders are disabled.
3728         * dwarf2-frame.c: Add dwarf2read.h include.
3729         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
3730         disabled.
3731         (dwarf2_frame_unwinders_enabled_p): Define.
3732         (show_dwarf_unwinders_enabled_p): New function.
3733         (_initialize_dwarf2_frame): Register switch to control DWARF
3734         unwinder use.
3735         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
3736         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
3737         (show_dwarf_cmdlist): Remove static keyword.
3738         * dwarf2read.h (set_dwarf_cmdlist): Declare.
3739         (show_dwarf_cmdlist): Declare.
3740         * NEWS: Document new feature.
3741
3742 2018-07-26  Tom de Vries  <tdevries@suse.de>
3743
3744         PR breakpoints/23366
3745         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
3746
3747 2018-07-26  Tom de Vries  <tdevries@suse.de>
3748
3749         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
3750         DW_AT_count can't be translated to a dynamic prop.
3751
3752 2018-07-25  Tom de Vries  <tdevries@suse.de>
3753
3754         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
3755         try/catch.
3756
3757 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
3758
3759         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
3760
3761 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
3762
3763         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
3764
3765 2018-07-24  Keith Seitz  <keiths@redhat.comt
3766
3767         PR symtab/23010
3768         * dwarf2read.c (dw2_add_symbol_to_list): New function.
3769         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
3770         instead of add_symbol_to_list.
3771         (read_file_scope): Call prepare_one_comp_unit before reading
3772         any other DIEs.
3773
3774 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
3775
3776         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
3777
3778 2018-07-24  Tom Tromey  <tom@tromey.com>
3779
3780         * utils.c (malloc, realloc, free): Don't declare.
3781         * configure, config.in: Rebuild.
3782         * configure.ac: Don't check for declarations of free, malloc, or
3783         realloc.
3784
3785 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3786
3787         * aarch64-linux-nat.c
3788         (aarch64_linux_nat_target::stopped_data_address): Remove unused
3789         variable.
3790         * arm-linux-nat.c (fetch_regs): Likewise.
3791         (store_regs): Likewise.
3792         (fetch_vfp_regs): Likewise.
3793         (store_vfp_regs): Likewise.
3794         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
3795         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
3796         (arm_linux_nat_target::insert_watchpoint): Likewise.
3797         (arm_linux_nat_target::remove_watchpoint): Likewise.
3798         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
3799         Likewise.
3800         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
3801         Likewise.
3802         * ppc-linux-nat.c (fetch_register): Likewise.
3803         (fetch_all_gp_regs): Likewise.
3804         (fetch_ppc_registers): Likewise.
3805         (store_all_gp_regs): Likewise.
3806         (store_ppc_registers): Likewise.
3807         (hwdebug_insert_point): Likewise.
3808         (can_use_watchpoint_cond_accel): Likewise.
3809         * remote-sim.c (gdb_os_write_stdout): Likewise.
3810
3811 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3812             Tom Tromey  <tom@tromey.com>
3813
3814         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
3815         test for it.
3816         * configure: Rebuild.
3817
3818 2018-07-22  Tom Tromey  <tom@tromey.com>
3819
3820         * regformats/regdat.sh: Define xmltarget_${name} inside
3821         #ifndef IN_PROCESS_AGENT.
3822
3823 2018-07-22  Tom Tromey  <tom@tromey.com>
3824
3825         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
3826
3827 2018-07-22  Tom Tromey  <tom@tromey.com>
3828
3829         * symfile.c (reread_symbols): Notify iter, not objfile.
3830
3831 2018-07-22  Tom Tromey  <tom@tromey.com>
3832
3833         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
3834         Use arch_ops.
3835         (ravenscar_thread_target::prepare_to_store): Likewise.
3836
3837 2018-07-22  Tom Tromey  <tom@tromey.com>
3838
3839         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
3840         unused variable.  Call value_fetch_lazy when needed.
3841         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
3842         Remove unused variable.  Call value_fetch_lazy when needed.
3843
3844 2018-07-22  Tom Tromey  <tom@tromey.com>
3845
3846         * m32c-tdep.c (mark_dma): Return void.
3847         (make_regs): Remove unused declarations.
3848
3849 2018-07-22  Tom Tromey  <tom@tromey.com>
3850
3851         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
3852         cmdscm_get_valid_command_smob_arg_unsafe for effect.
3853         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
3854         bkscm_get_valid_block_smob_arg_unsafe for effect.
3855
3856 2018-07-22  Tom Tromey  <tom@tromey.com>
3857
3858         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
3859         value_type.
3860
3861 2018-07-22  Tom Tromey  <tom@tromey.com>
3862
3863         * windows-nat.c (saved_context): Conditionally define.
3864         * remote.c (remote_target::remote_btrace_maybe_reopen):
3865         Conditionally declare "warned".
3866         * inflow.c (sigquit_ours): Conditionally define.
3867         (new_tty): Move "tty" declaration inside #if.
3868         * guile/guile.c (guile_datadir): Conditionally define.
3869         * charset.c (set_be_le_names): Move some declarations inside #if.
3870         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
3871         #if.
3872         (parse_xml_btrace_conf): Likewise.
3873
3874 2018-07-22  Tom Tromey  <tom@tromey.com>
3875
3876         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
3877
3878 2018-07-22  Tom Tromey  <tom@tromey.com>
3879
3880         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
3881         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
3882         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
3883         * buildsym-legacy.c (get_macro_table): Remove unused variable.
3884         * stack.c (frame_apply_level_command): Remove unused variable.
3885         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
3886         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
3887         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
3888         unused variable.
3889         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
3890         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
3891         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
3892         variable.
3893         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
3894         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
3895         variable.
3896         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
3897         Remove unused variable.
3898         * cli/cli-script.c (recurse_read_control_structure): Remove unused
3899         variable.
3900         * common/tdesc.c (print_xml_feature::visit): Remove unused
3901         variable.
3902         * compile/compile-object-load.c (store_regs): Remove unused
3903         variables.
3904         * complaints.c (clear_complaints): Remove unused variable.
3905         * corelow.c (core_target_open): Remove unused variable.
3906         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
3907         variable.
3908         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
3909         variable.
3910         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
3911         variable.
3912         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
3913         variable.
3914         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
3915         variable.
3916         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
3917         variable.
3918         * ia64-tdep.c (examine_prologue): Remove unused variable.
3919         * infcall.c (run_inferior_call): Remove unused variable.
3920         * inferior.c (exit_inferior): Remove unused variable.
3921         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
3922         * linespec.c (decode_line_2): Remove unused variable.
3923         * linux-nat.c (super_close): Remove.
3924         * linux-tdep.c (linux_info_proc): Remove unused variable.
3925         * mi/mi-main.c (mi_execute_command): Remove unused variable.
3926         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
3927         Remove unused variable.
3928         * parse.c (find_minsym_type_and_address): Remove unused variable.
3929         * printcmd.c (info_symbol_command, printf_floating): Remove unused
3930         variable.
3931         * python/py-breakpoint.c (bppy_set_commands): Remove unused
3932         variable.
3933         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
3934         variables.
3935         * record-btrace.c (record_btrace_target::store_registers): Remove
3936         unused variable.
3937         (cmd_show_record_btrace_cpu): Remove unused variable.
3938         * riscv-tdep.c (riscv_register_reggroup_p)
3939         (riscv_push_dummy_call, riscv_return_value): Remove unused
3940         variable.
3941         * rust-exp.y (literal): Remove unused variable.
3942         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
3943         unused variable.
3944         <STRUCTOP_ANONYMOUS>: Likewise.
3945         * s390-linux-tdep.c (s390_linux_init_abi_31)
3946         (s390_linux_init_abi_64): Remove unused variable.
3947         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
3948         (file_select_thread, net_windows_open, _initialize_ser_windows):
3949         Remove unused variables.
3950         * symtab.c (find_pc_sect_line): Remove unused variable.
3951         * target-memory.c (compute_garbled_blocks): Remove unused
3952         variable.
3953         (target_write_memory_blocks): Remove unused variable.
3954         * target.c (target_stack::unpush): Remove unused variables.
3955         * tracepoint.c (start_tracing, all_tracepoint_actions)
3956         (merge_uploaded_trace_state_variables)
3957         (print_one_static_tracepoint_marker): Remove unused variable.
3958         * unittests/basic_string_view/element_access/char/1.cc (test01):
3959         Remove unused variable.
3960         * windows-nat.c (windows_continue, windows_add_all_dlls)
3961         (do_initial_windows_stuff, windows_nat_target::create_inferior):
3962         Remove unused variables.
3963
3964 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
3965
3966         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
3967         attr_profile in HAVE_ELF.
3968         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
3969         HAVE_ELF.
3970
3971 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
3972
3973         * frame.c (frame_register_unwind): Change parameter name.
3974         (frame_unwind_register): Likewise.
3975         (frame_unwind_register_value): Likewise.
3976         (frame_unwind_register_signed): Likewise.
3977         (frame_unwind_register_unsigned): Likewise.
3978         * frame.h (frame_register_unwind): Likewise.
3979         (frame_unwind_register): Likewise.
3980         (frame_unwind_register_value): Likewise.
3981         (frame_unwind_register_signed): Likewise.
3982         (frame_unwind_register_unsigned): Likewise.
3983         (frame_unwind_arch): Likewise.
3984
3985 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
3986
3987         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
3988         ISA maintenance.
3989
3990 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
3991
3992         * mips-linux-nat.c (mips_linux_nat_target::read_description):
3993         Call `get_ptrace_pid' rather than extracting the ptrace PID by
3994         hand.
3995
3996 2018-07-20  Keith Seitz  <keiths@redhat.com>
3997
3998         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
3999         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4000         m_compunit_symtab, m_language>: Add "m_" prefix.
4001         Update all uses.
4002         * buildsym.c: Update all uses.
4003
4004 2018-07-20  Tom Tromey  <tom@tromey.com>
4005
4006         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4007         * buildsym.h (record_line_ftype): Remove typedef.
4008
4009 2018-07-20  Tom Tromey  <tom@tromey.com>
4010
4011         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4012         (end_expandable_symtab): Likewise.
4013         (end_symtab_get_static_block): Likewise.
4014         (end_symtab_from_static_block): Likewise.
4015         * buildsym-legacy.c (augment_type_symtab): Remove.
4016         (end_expandable_symtab): Remove.
4017         (end_symtab_get_static_block): Remove.
4018         (end_symtab_from_static_block): Remove.
4019
4020 2018-07-20  Tom Tromey  <tom@tromey.com>
4021
4022         * dwarf2read.c: Include buildsym.h.
4023         (struct dwarf2_cu) <builder>: New method.
4024         (fixup_go_packaging): Update.
4025         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4026         use scoped_free_pendings.
4027         (using_directives): Add "cu" parameter, remove "language".
4028         (read_import_statement, setup_type_unit_groups, )
4029         (read_func_scope, read_lexical_block_scope)
4030         (dwarf2_record_block_ranges, read_namespace): Update.
4031         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4032         (lnp_state_machine::handle_end_sequence): Update.
4033         (class lnp_state_machine) <m_cu>: New member.
4034         <m_record_line_callback>: Remove.
4035         <m_currently_recording_lines>: New member.
4036         (lnp_state_machine::handle_set_file): Update.
4037         (noop_record_line): Remove.
4038         (dwarf_record_line_p): Add cu parameter.
4039         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4040         (lnp_state_machine::record_line)
4041         (lnp_state_machine::lnp_state_machine)
4042         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4043         (dwarf_decode_lines): Update.
4044         (dwarf2_start_subfile): Add cu parameter.
4045         (dwarf2_start_symtab, new_symbol): Update.
4046         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4047         Remove dwarf2_per_objfile parameter.
4048         (dwarf_decode_macros): Update.
4049
4050 2018-07-20  Tom Tromey  <tom@tromey.com>
4051
4052         * stabsread.c (define_symbol): Update.
4053         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4054         * dwarf2read.c (new_symbol): Update.
4055         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4056         * cp-namespace.c: Include buildsym.h.
4057         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4058         * buildsym-legacy.c (get_buildsym_compunit): New function.
4059
4060 2018-07-20  Tom Tromey  <tom@tromey.com>
4061
4062         * xcoffread.c: Include buildsym-legacy.h.
4063         * windows-nat.c: Include buildsym-legacy.h.
4064         * stabsread.c: Include buildsym-legacy.h.
4065         * mdebugread.c: Include buildsym-legacy.h.
4066         * buildsym-legacy.h: New file.
4067         * buildsym-legacy.c: New file, from buildsym.c.
4068         * go32-nat.c: Include buildsym-legacy.h.
4069         * dwarf2read.c: Include buildsym-legacy.h.
4070         * dbxread.c: Include buildsym-legacy.h.
4071         * cp-namespace.c: Include buildsym-legacy.h.
4072         * coffread.c: Include buildsym-legacy.h.
4073         * buildsym.h: Move some contents to buildsym-legacy.h.
4074         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4075         buildsym-legacy.c.
4076         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4077
4078 2018-07-20  Tom Tromey  <tom@tromey.com>
4079
4080         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4081         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4082         (buildsym_compunit::buildsym_compunit)
4083         (buildsym_compunit::~buildsym_compunit)
4084         (buildsym_compunit::get_macro_table): Define.
4085
4086 2018-07-20  Tom Tromey  <tom@tromey.com>
4087
4088         * buildsym.c (reset_symtab_globals): Remove.
4089         (buildsym_compunit::end_symtab_from_static_block): Update.
4090         (buildsym_compunit::augment_type_symtab): Update.
4091         (end_symtab_from_static_block): Call free_buildsym_compunit.
4092         (augment_type_symtab, end_symtab, end_expandable_symtab):
4093         Likewise.
4094
4095 2018-07-20  Tom Tromey  <tom@tromey.com>
4096
4097         * arch-utils.c: Do not include buildsym.h.
4098         * mipsread.c: Do not include buildsym.h.
4099         * machoread.c: Do not include buildsym.h.
4100         * elfread.c: Do not include buildsym.h.
4101
4102 2018-07-20  Tom Tromey  <tom@tromey.com>
4103
4104         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4105         initialization.
4106         (buildsym_compunit): Add new constructor.
4107         (struct buildsym_compunit) <get_last_source_file, finish_block,
4108         record_block_range, start_subfile, patch_subfile_names,
4109         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4110         set_last_source_start_addr, get_last_source_start_addr,
4111         get_local_using_directives, set_local_using_directives,
4112         get_global_using_directives, outermost_context_p,
4113         get_current_context_stack, get_context_stack_depth,
4114         get_current_subfile, get_local_symbols, get_file_symbols,
4115         get_global_symbols, record_debugformat, record_producer,
4116         push_context, pop_context, end_symtab_get_static_block,
4117         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4118         New public methods.
4119         <record_pending_block, finish_block_internal, make_blockvector,
4120         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4121         private methods.
4122         Update all users.
4123
4124 2018-05-22  Tom Tromey  <tom@tromey.com>
4125
4126         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4127         parameter.
4128         (finish_block_internal): Update.
4129
4130 2018-07-20  Tom Tromey  <tom@tromey.com>
4131
4132         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4133         parameter.
4134         (finish_block_internal): Update.
4135
4136 2018-07-20  Tom Tromey  <tom@tromey.com>
4137
4138         * buildsym.h (EXTERN): Don't define or undef.
4139         * buildsym.c (EXTERN): Don't define.
4140
4141 2018-07-20  Tom Tromey  <tom@tromey.com>
4142
4143         * buildsym.c: Remove TODO comment.
4144
4145 2018-07-20  Tom Tromey  <tom@tromey.com>
4146
4147         * coffread.c (coff_symtab_read): Update.
4148         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4149         (xcoff_new_init): Update.
4150         * mipsread.c (mipscoff_new_init): Update.
4151         * mdebugread.c (mdebug_build_psymtabs): Update.
4152         * elfread.c (elf_new_init): Update.
4153         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4154         Update.
4155         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4156         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4157         (stabsect_build_psymtabs): Update.
4158         * buildsym.h (buildsym_init): Don't declare.
4159         * buildsym.c: Update comment.
4160         (prepare_for_building): Remove.
4161         (start_symtab, restart_symtab): Update.
4162         (reset_symtab_globals): Update comment.
4163         (buildsym_init): Remove.
4164
4165 2018-07-20  Tom Tromey  <tom@tromey.com>
4166
4167         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4168         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4169         (read_enum_type, common_block_start, common_block_end)
4170         (cleanup_undefined_types_1, finish_global_stabs): Update.
4171         * mdebugread.c (psymtab_to_symtab_1): Update.
4172         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4173         (read_lexical_block_scope, new_symbol): Update.
4174         * dbxread.c (process_one_symbol): Update.
4175         * coffread.c (coff_symtab_read, process_coff_symbol)
4176         (coff_read_enum_type): Update.
4177         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4178         declare.
4179         (get_local_symbols, get_file_symbols, get_global_symbols): New
4180         functions.
4181         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4182         m_global_symbols.
4183         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4184         (~scoped_free_pendings): Update.
4185         (finish_block, prepare_for_building, reset_symtab_globals)
4186         (end_symtab_get_static_block, end_symtab_with_blockvector)
4187         (augment_type_symtab, push_context): Update.
4188         (get_local_symbols, get_file_symbols, get_global_symbols): New
4189         functions.
4190         (buildsym_init): Update.
4191
4192 2018-07-20  Tom Tromey  <tom@tromey.com>
4193
4194         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4195         (process_full_type_unit): Likewise.
4196         (dwarf2_start_symtab): Set list_in_scope.
4197
4198 2018-07-20  Tom Tromey  <tom@tromey.com>
4199
4200         * dwarf2read.c (process_psymtab_comp_unit_reader)
4201         (build_type_psymtabs_reader): Do not set list_in_scope.
4202
4203 2018-07-20  Tom Tromey  <tom@tromey.com>
4204
4205         * buildsym.c (free_pendings): Remove.
4206         (add_symbol_to_list, scoped_free_pendings)
4207         (finish_block_internal, buildsym_init): Update.
4208
4209 2018-07-20  Tom Tromey  <tom@tromey.com>
4210
4211         * xcoffread.c (read_xcoff_symtab): Update.
4212         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4213         Update.
4214         * dbxread.c (process_one_symbol): Update.
4215         * coffread.c (coff_symtab_read): Update.
4216         * buildsym.h (finish_block): Update.
4217         * buildsym.c (finish_block): Remove "listhead" argument.
4218         (end_symtab_get_static_block): Update.
4219
4220 2018-07-20  Tom Tromey  <tom@tromey.com>
4221
4222         * buildsym.h (class scoped_free_pendings): Remove constructor.
4223         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4224         method.
4225         <m_pending_block_obstack, m_pending_blocks>: New members.
4226         (pending_block_obstack, pending_blocks): Remove.
4227         (scoped_free_pendings::scoped_free_pendings): Default.
4228         (~scoped_free_pendings): Update.
4229         (free_pending_blocks): Remove.
4230         (finish_block_internal, record_pending_block, make_blockvector)
4231         (end_symtab_get_static_block, augment_type_symtab, push_context)
4232         (buildsym_init): Update.
4233
4234 2018-07-20  Tom Tromey  <tom@tromey.com>
4235
4236         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4237         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4238         members.
4239         (pending_addrmap, pending_addrmap_obstack)
4240         (pending_addrmap_interesting): Remove.
4241         (scoped_free_pendings, record_block_range, make_blockvector)
4242         (prepare_for_building, reset_symtab_globals, buildsym_init):
4243         Update.
4244
4245 2018-07-20  Tom Tromey  <tom@tromey.com>
4246
4247         * xcoffread.c (process_linenos): Update.
4248         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4249         * mdebugread.c (psymtab_to_symtab_1): Update.
4250         * dwarf2read.c (setup_type_unit_groups)
4251         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4252         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4253         * dbxread.c (process_one_symbol): Update.
4254         * coffread.c (coff_symtab_read, enter_linenos)
4255         (process_coff_symbol): Update.
4256         * buildsym.h (current_subfile): Don't declare.
4257         (get_current_subfile): Declare.
4258         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4259         member.
4260         (start_subfile, free_buildsym_compunit, push_subfile)
4261         (prepare_for_building, start_symtab): Update.
4262         (get_current_subfile): New function.
4263
4264 2018-07-20  Tom Tromey  <tom@tromey.com>
4265
4266         * coffread.c (coff_symtab_read): Update.
4267         * xcoffread.c (read_xcoff_symtab): Update.
4268         * dwarf2read.c (new_symbol): Update.
4269         (read_func_scope, read_lexical_block_scope): Update.
4270         * dbxread.c (process_one_symbol): Update.
4271         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4272         (outermost_context_p): Remove macro.
4273         (outermost_context_p, get_current_context_stack)
4274         (get_context_stack_depth): Declare.
4275         (pop_context): Return struct context_stack.
4276         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4277         member.
4278         (context_stack_size): Remove.
4279         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4280         (prepare_for_building, end_symtab_get_static_block)
4281         (augment_type_symtab, push_context): Update.
4282         (pop_context): Return struct context_stack.
4283         (outermost_context_p, get_current_context_stack)
4284         (get_context_stack_depth): New functions.
4285         (buildsym_init): Update.
4286
4287 2018-07-20  Tom Tromey  <tom@tromey.com>
4288
4289         * rust-exp.y: Now a pure parser.  Update all rules.
4290         (%union): Move earlier.
4291         (current_parser, work_obstack): Remove globals.
4292         (rust_parser, ~rust_parser): Update.
4293         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4294         lex_character, lex_number, lex_string, lex_identifier,
4295         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4296         convert_name, convert_params_to_expression,
4297         convert_ast_to_expression, ast_basic_type, ast_operation,
4298         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4299         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4300         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4301         ast_array_type, ast_slice_type, ast_reference_type,
4302         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4303         (rust_parse): Update.
4304         (rustyyerror, rustyylex): Add parser parameter.
4305         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4306         (rust_lex_stringish_test, rust_lex_test_sequence)
4307         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4308         (rust_lex_test_push_back, rust_lex_tests): Update.
4309
4310 2018-07-19  Pedro Alves  <palves@redhat.com>
4311
4312         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4313         gdb::unique_xmalloc_ptr.
4314         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4315         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4316         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4317         copy-initialization.
4318         * guile/scm-pretty-print.c (ppscm_print_children): Use
4319         gdb::unique_xmalloc_ptr instead of cleanups.
4320         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4321         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4322         gdb::unique_xmalloc_ptr.
4323         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4324         Adjust to use gdb::unique_xmalloc_ptr.
4325         * guile/scm-utils.c (extract_arg): Adjust.
4326         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4327         gdb::unique_xmalloc_ptr instead of a cleanup.
4328
4329 2018-07-19  Tom Tromey  <tom@tromey.com>
4330
4331         * utils.c (do_value_free_to_mark)
4332         (make_cleanup_value_free_to_mark): Remove.
4333         * utils.h (make_cleanup_value_free_to_mark): Remove.
4334
4335 2018-07-19  Pedro Alves  <palves@redhat.com>
4336
4337         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4338         forwarding reference.
4339
4340 2018-07-18  Pedro Alves  <palves@redhat.com>
4341
4342         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4343         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4344         cleanup.
4345
4346 2018-07-18  Pedro Alves  <palves@redhat.com>
4347
4348         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4349         exceptions.
4350         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4351         (gdbscm_wrap): New.
4352         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4353         directly instead of a cleanup.
4354         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4355         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
4356         (vlscm_binop_gdbthrow): New, factored out from ...
4357         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
4358         (vlscm_rich_compare): Use gdbscm_wrap.
4359         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
4360         instead of a cleanup.
4361         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
4362         cleanup.
4363         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4364         Use xfree directly instead of a cleanup.
4365         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
4366         Adjust to use gdbscm_wrap and scoped_value_mark.
4367         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
4368         (gdbscm_value_address, gdbscm_value_dereference)
4369         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
4370         scoped_value_mark.
4371         (gdbscm_value_dynamic_type): Use scoped_value_mark.
4372         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
4373         scoped_value_mark.
4374         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
4375         gdbscm_wrap and scoped_value_mark.
4376         (gdbscm_value_to_string): Use xfree directly instead of a
4377         cleanup.  Move 'buffer' unique_ptr to TRY scope.
4378         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
4379         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
4380         scoped_value_mark.
4381         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
4382         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
4383         scoped_value_mark.
4384         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
4385         gdbscm_wrap.
4386
4387 2018-07-18  Tom de Vries  <tdevries@suse.de>
4388
4389         * findvar.c (default_read_var_value): Also resolve dynamic type for
4390         LOC_OPTIMIZED_OUT vars.
4391
4392 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
4393
4394         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
4395         decoding.
4396
4397 2018-07-17  Tom Tromey  <tom@tromey.com>
4398
4399         * guile/scm-param.c (pascm_set_func, pascm_show_func)
4400         (compute_enum_list, pascm_set_param_value_x)
4401         (gdbscm_parameter_value): Update.
4402         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
4403         (gdbscm_scm_to_host_string): Update.
4404         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
4405         Update.
4406         * guile/scm-cmd.c (cmdscm_add_completion): Update.
4407         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
4408         * guile/scm-string.c (gdbscm_scm_to_string): Return
4409         unique_xmalloc_ptr.
4410         (gdbscm_scm_to_host_string): Likewise.
4411
4412 2018-07-17  Tom Tromey  <tom@tromey.com>
4413
4414         * guile/guile.c (gdbscm_eval_from_control_command): Update.
4415         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
4416         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
4417         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
4418         unique_xmalloc_ptr.
4419
4420 2018-07-17  Tom Tromey  <tom@tromey.com>
4421
4422         * guile/scm-param.c (pascm_signal_setshow_error): Update.
4423         * guile/guile-internal.h (gdbscm_exception_message_to_string):
4424         Update.
4425         * guile/scm-cmd.c (cmdscm_function): Update.
4426         * guile/scm-pretty-print.c
4427         (ppscm_print_exception_unless_memory_error): Update.
4428         * guile/scm-exception.c (gdbscm_exception_message_to_string):
4429         Return unique_xmalloc_ptr.
4430
4431 2018-07-17  Tom Tromey  <tom@tromey.com>
4432
4433         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
4434         Use string_printf.
4435
4436 2018-07-17  Jim Wilson  <jimw@sifive.com>
4437
4438         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
4439         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
4440         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
4441         unecessary braces after EF_RISCV_RVC test.  Delete call to
4442         set_gdbarch_decr_pc_after_break.
4443
4444         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
4445         RISCV_LAST_FP_REGNUM + 1.
4446         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
4447
4448 2018-07-17  Tom Tromey  <tom@tromey.com>
4449
4450         * configure.ac: Remove --disable-gdbcli.
4451         * configure: Rebuild.
4452         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
4453         (SUBDIR_CLI_CFLAGS): Remove.
4454         (SFILES): Use SUBDIR_CLI_SRCS.
4455         (COMMON_OBS): Use SUBDIR_CLI_OBS.
4456
4457 2018-07-17  Tom Tromey  <tom@tromey.com>
4458
4459         PR gdb/18624:
4460         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
4461
4462 2018-07-16  Jim Wilson  <jimw@sifive.com>
4463
4464         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
4465
4466 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4467
4468         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
4469         variable.
4470         (libunwind_frame_sniffer): Likewise.
4471         (libunwind_frame_prev_register): Likewise.
4472         (libunwind_sigtramp_frame_sniffer): Likewise.
4473         * ia64-tdep.c (ia64_access_reg): Likewise.
4474         (ia64_access_rse_reg): Likewise.
4475         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
4476         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
4477
4478 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4479
4480         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
4481
4482 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4483
4484         * remote-sim.c (gdbsim_target::close,
4485         gdbsim_target::mourn_inferior): Remove unused variables.
4486
4487 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
4488
4489         * ia64-tdep.c (ktab_buf): New global.
4490         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
4491         (get_kernel_table): Adjust.
4492
4493 2018-07-16  Tom Tromey  <tom@tromey.com>
4494
4495         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
4496         * dwarf2read.c (using_directives, new_symbol): Use
4497         outermost_context_p.
4498         * dbxread.c (process_one_symbol): Use outermost_context_p.
4499         * coffread.c (coff_symtab_read): Use outermost_context_p.
4500
4501 2018-07-16  Tom Tromey  <tom@tromey.com>
4502
4503         * dwarf2read.c (using_directives, read_func_scope)
4504         (read_lexical_block_scope): Update.
4505         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
4506         * buildsym.h (local_using_directives, global_using_directives):
4507         Don't declare.
4508         (get_local_using_directives, set_local_using_directives)
4509         (get_global_using_directives): Declare.
4510         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
4511         m_global_using_directives>: New members.
4512         (finish_block_internal, prepare_for_building)
4513         (reset_symtab_globals, end_symtab_get_static_block)
4514         (push_context): Update.
4515         (get_local_using_directives, set_local_using_directives)
4516         (get_global_using_directives): New functions.
4517         (buildsym_init): Update.
4518
4519 2018-07-16  Tom Tromey  <tom@tromey.com>
4520
4521         * xcoffread.c (xcoff_initial_scan): Don't call
4522         free_pending_blocks.
4523         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
4524         * buildsym.h (class scoped_free_pendings): Add constructor.
4525         (free_pending_blocks): Don't declare.
4526         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
4527         (free_pending_blocks): Now static.
4528
4529 2018-07-16  Tom Tromey  <tom@tromey.com>
4530
4531         * buildsym.h (push_subfile, pop_subfile): Update declarations.
4532         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
4533         member.
4534         (struct subfile_stack): Remove.
4535         (subfile_stack): Remove.
4536         (push_subfile, pop_subfile, buildsym_init): Update.
4537
4538 2018-07-16  Tom Tromey  <tom@tromey.com>
4539
4540         * buildsym.c (push_subfile): Use gdb_assert.
4541         (pop_subfile): Use gdb_assert.
4542
4543 2018-07-16  Tom Tromey  <tom@tromey.com>
4544
4545         * buildsym.h (merge_symbol_lists): Remove.
4546         * buildsym.c (merge_symbol_lists): Remove.
4547
4548 2018-07-16  Tom Tromey  <tom@tromey.com>
4549
4550         * stabsread.c (scan_file_globals): Update comment.
4551         * stabsread.h (scan_file_globals): Move from buildsym.h.
4552         * buildsym.h (scan_file_globals): Move to stabsread.h.
4553
4554 2018-07-16  Tom Tromey  <tom@tromey.com>
4555
4556         * xcoffread.c (xcoff_new_init): Update.
4557         * mipsread.c (mipscoff_new_init): Update.
4558         * mdebugread.c (mdebug_build_psymtabs): Update.
4559         * elfread.c (elf_new_init): Update.
4560         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
4561         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
4562         * buildsym.h (buildsym_new_init): Don't declare.
4563         * buildsym.c (buildsym_new_init): Remove.
4564
4565 2018-07-16  Tom Tromey  <tom@tromey.com>
4566
4567         * stabsread.h (within_function): Move from buildsym.h.
4568         * stabsread.c (start_stabs): Clear within_function.
4569         * coffread.c (coff_start_symtab): Clear within_function.
4570         * buildsym.h (within_function): Move to stabsread.h.
4571         * buildsym.c (prepare_for_building): Update.
4572
4573 2018-07-16  Tom Tromey  <tom@tromey.com>
4574
4575         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
4576         * dwarf2read.c (dwarf2_start_symtab): Don't set
4577         processing_gcc_compilation.
4578         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
4579
4580 2018-07-16  Tom Tromey  <tom@tromey.com>
4581
4582         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
4583         (next_symbol_text_func): Move from buildsym.h.
4584         * stabsread.c (hashname): Move from buildsym.c.
4585         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
4586         (next_symbol_text_func, hashname): Move to stabsread.h.
4587         * buildsym.c: Don't include bcache.h
4588         (hashname): Move to stasbread.c.
4589
4590 2018-07-16  Tom Tromey  <tom@tromey.com>
4591
4592         * buildsym.h (context_stack_size): Don't declare.
4593         * buildsym.c (context_stack_size): New global.
4594
4595 2018-07-16  Tom Tromey  <tom@tromey.com>
4596
4597         * dbxread.c (processing_acc_compilation): New global.
4598         * buildsym.h (processing_acc_compilation): Don't declare.
4599
4600 2018-07-16  Tom Tromey  <tom@tromey.com>
4601
4602         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
4603         * dbxread.c (read_ofile_symtab): Update.
4604         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
4605         * buildsym.h (last_source_start_addr): Remove.
4606         (set_last_source_start_addr, get_last_source_start_addr):
4607         Declare.
4608         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
4609         parameter.
4610         (struct buildsym_compunit) <m_last_source_start_addr>: New
4611         member.
4612         (prepare_for_building): Remove start_addr parameter.
4613         (start_symtab, restart_symtab, end_symtab_get_static_block)
4614         (end_symtab_with_blockvector): Update.
4615         (set_last_source_start_addr, get_last_source_start_addr): New
4616         functions.
4617
4618 2018-07-16  Tom Tromey  <tom@tromey.com>
4619
4620         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
4621         member.
4622         (have_line_numbers): Remove.
4623         (record_line, prepare_for_building, end_symtab_get_static_block)
4624         (augment_type_symtab): Update.
4625
4626 2018-07-16  Tom Tromey  <tom@tromey.com>
4627
4628         * buildsym.c (~buildsym_compunit): Free the macro table.
4629         (struct buildsym_compunit) <get_macro_table, release_macros>: New
4630         methods.
4631         <m_pending_macros>: New member.
4632         (pending_macros): Remove.
4633         (~scoped_free_pendings, get_macro_table, prepare_for_building)
4634         (reset_symtab_globals, end_symtab_get_static_block)
4635         (end_symtab_with_blockvector, augment_type_symtab)
4636         (buildsym_init): Update.
4637
4638 2018-07-16  Tom Tromey  <tom@tromey.com>
4639
4640         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
4641         parameter.
4642         (buildsym_compunit::set_last_source_file): New method.
4643         <m_last_source_file>: New member.
4644         (prepare_for_building): Remove "name" parameter.
4645         (start_symtab, restart_symtab, reset_symtab_globals): Update.
4646         (last_source_file): Remove.
4647         (set_last_source_file, get_last_source_file): Update.
4648
4649 2018-07-16  Tom Tromey  <tom@tromey.com>
4650
4651         * buildsym.c (prepare_for_building): Add assert.
4652
4653 2018-07-16  Tom Tromey  <tom@tromey.com>
4654
4655         * buildsym.c (~buildsym_compunit): Update.
4656         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
4657         (start_subfile, patch_subfile_names)
4658         (end_symtab_with_blockvector): Update.
4659
4660 2018-07-16  Tom Tromey  <tom@tromey.com>
4661
4662         * buildsym.c (struct buildsym_compunit): Add constructor,
4663         destructor, initializers.
4664         (start_buildsym_compunit): Remove.
4665         (free_buildsym_compunit): Use "delete".
4666         (start_symtab, restart_symtab): Use "new".
4667
4668 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
4669
4670         * symfile.c (set_objfile_default_section_offset): Remove struct
4671         keyword.
4672
4673 2018-07-14  Stafford Horne  <shorne@gmail.com>
4674
4675         * (Responsible Maintainers): Add myself as or1k maintainer.
4676
4677 2018-07-13  Tom Tromey  <tom@tromey.com>
4678
4679         * symfile.c (set_objfile_default_section_offset): Use extra braces
4680         around initializer.
4681
4682 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
4683
4684         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
4685         non-branching basr.
4686
4687 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4688
4689         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4690         unittests/cli-utils-selftests.c
4691         * unittests/cli-utils-selftests.c: New file.
4692
4693 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4694
4695         * NEWS: Mention new commands. Mention change to 'thread apply'.
4696
4697 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4698
4699         * thread.c (thr_try_catch_cmd): New function.
4700         (thread_apply_all_command): Handle qcs flags.
4701         (thread_apply_command): Handle qcs flags.
4702         (taas_command): New function.
4703         (tfaas_command): New function.
4704         (_initialize_thread): Update to setup the new commands 'taas
4705         and 'tfaas'. Change doc string for 'thread apply'.
4706
4707 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4708
4709         * stack.c: (trailing_outermost_frame): New function, mostly
4710         extracted from backtrace_command_1.
4711         (leading_innermost_frame): New function.
4712         (backtrace_command_1): Update to call trailing_outermost_frame.
4713         (frame_apply_command_count): New function.
4714         (frame_apply_level_command): New function.
4715         (frame_apply_all_command): New function.
4716         (frame_apply_command): New function.
4717         (faas_command): New function.
4718         (frame_cmd_list): New variable.
4719         (_initialize_stack): Update to setup the new commands 'frame apply'
4720         and 'faas'.
4721
4722 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4723
4724         * cli-utils.c (number_or_range_parser::get_number): Only handle
4725         numbers or convenience var as numbers.
4726         (parse_flags): New function.
4727         (parse_flags_qcs): New function.
4728         (number_or_range_parser::finished): Ensure parsing end is detected
4729         before end of string.
4730         * cli-utils.h (parse_flags): New function.
4731         (parse_flags_qcs): New function.
4732         (number_or_range_parser): Remove m_finished bool.
4733         (number_or_range_parser::skip_range): Set m_in_range to false.
4734
4735 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
4736
4737         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
4738         on Windows.
4739
4740 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4741             Jan Kratochvil  <jan.kratochvil@redhat.com>
4742             Paul Fertser  <fercerpav@gmail.com>
4743             Tsutomu Seki  <sekiriki@gmail.com>
4744             Pedro Alves  <palves@redhat.com>
4745
4746         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4747         'unittests/parse-connection-spec-selftests.c'.
4748         (COMMON_SFILES): Add 'common/netstuff.c'.
4749         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
4750         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
4751         * common/netstuff.c: New file.
4752         * common/netstuff.h: New file.
4753         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
4754         (wait_for_connect): Update comment.  New parameter
4755         'gdb::optional<int> sock' instead of 'struct serial *scb'.
4756         Use 'sock' directly instead of 'scb->fd'.
4757         (try_connect): New function, with code from 'net_open'.
4758         (net_open): Rewrite main loop to deal with multiple
4759         sockets/addresses.  Handle IPv6-style hostnames; implement
4760         support for IPv6 connections.
4761         * unittests/parse-connection-spec-selftests.c: New file.
4762
4763 2018-07-11  Pedro Alves  <palves@redhat.com>
4764
4765         PR gdb/23377
4766         * remote.c (remote_target::remote_detach_pid): Call
4767         set_current_process.
4768
4769 2018-07-11  Pedro Alves  <palves@redhat.com>
4770
4771         * h8300-tdep.c (h8300_gdbarch_init): Remove
4772         set_gdbarch_ecoff_reg_to_regnum calls.
4773
4774 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4775
4776         PR c++/23373
4777         * c-typeprint.c (c_type_print_base_struct_union): Don't print
4778         offsets/sizes for static members of a class/struct.
4779
4780 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
4781
4782         * target-descriptions.c (tdesc_register_bitsize): Rename.
4783         * target-descriptions.h (tdesc_register_bitsize): Likewise.
4784         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
4785         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
4786
4787 2018-07-10  Tom Tromey  <tom@tromey.com>
4788
4789         * breakpoint.c (moribund_locations): Now static and a
4790         std::vector.
4791         (breakpoint_init_inferior, moribund_breakpoint_here_p)
4792         (build_bpstat_chain, update_global_location_list)
4793         (breakpoint_retire_moribund): Update.
4794         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
4795         VEC.
4796
4797 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4798
4799         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
4800         (riscv_register_reggroup_p): Use new function, remove unneeded
4801         parenthesis.
4802         (riscv_push_dummy_call): Extend assert to compare against xlen or
4803         flen based on register type.
4804
4805 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4806
4807         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
4808
4809 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4810
4811         * remote.c (show_hardware_watchpoint_limit): New function.
4812         (show_hardware_watchpoint_length_limit): New function.
4813         (show_hardware_breakpoint_limit): New function.
4814         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
4815         where appropriate, update help text.
4816
4817 2018-07-09  Tom Tromey  <tom@tromey.com>
4818
4819         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
4820         (CLIBS): Don't mention NAT_CLIBS.
4821
4822 2018-07-09  Tom Tromey  <tom@tromey.com>
4823
4824         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
4825         (LIBGDB_OBS, clean mostlyclean): Update.
4826         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
4827
4828 2018-07-09  Tom Tromey  <tom@tromey.com>
4829
4830         * Makefile.in (%.c: %.y): Use ECHO_YACC.
4831         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
4832         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
4833
4834 2018-07-09  Tom Tromey  <tom@tromey.com>
4835
4836         * Makefile.in (ALLDEPFILES): Remove exec.c.
4837         (COMMON_OBS): Remove exec.o.
4838         (COMMON_SFILES): Add exec.c.
4839
4840 2018-07-09  Tom Tromey  <tom@tromey.com>
4841
4842         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
4843
4844 2018-07-09  Tom Tromey  <tom@tromey.com>
4845
4846         * Makefile.in (clean mostlyclean): Remove stamp-version.
4847         (version.c): Depend on stamp-version.
4848         (stamp-version): New rule, from version.c rule.
4849
4850 2018-07-09  Tom Tromey  <tom@tromey.com>
4851
4852         * Makefile.in (init.c): Depend on stamp-init.
4853         (stamp-init): New rule, from init.c rule.
4854         (clean mostlyclean): Remove stamp-init.
4855
4856 2018-07-09  Tom Tromey  <tom@tromey.com>
4857
4858         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
4859         SUBDIR_GCC_COMPILE_SRCS.
4860
4861 2018-07-09  Tom Tromey  <tom@tromey.com>
4862
4863         * Makefile.in (init.c): Remove some unused sed rules.
4864
4865 2018-07-09  Tom Tromey  <tom@tromey.com>
4866
4867         * Makefile.in (TSOBS): Remove.
4868         (INIT_FILES): Update.
4869         (LIBGDB_OBS): Update.
4870         (COMMON_SFILES): Add inflow.c.
4871         (SFILES): Remove inflow.c.
4872
4873 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
4874
4875         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
4876
4877 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
4878
4879         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
4880         get_saveloc_name, is_signal_frame_name, step_name,
4881         init_remote_name, create_addr_space_name,
4882         destroy_addr_space_name, search_unwind_table_name,
4883         find_dyn_list_name): Constify.
4884
4885 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
4886
4887         * darwin-nat.c (darwin_pthread_kill): New function.
4888         (darwin_resume_thread): Use darwin_pthread_kill.
4889
4890 2018-07-05  Tom de Vries  <tdevries@suse.de>
4891
4892         * macroexp.c (macro_buffer) <operator=>: New member function.
4893
4894 2018-07-04  Tom Tromey  <tom@tromey.com>
4895
4896         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
4897
4898 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
4899
4900         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
4901         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
4902         * maint.c: Likewise.
4903         * top.c: Likewise.
4904
4905 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
4906
4907         * NEWS: Create a new section for the next release branch.
4908         Rename the section of the current branch, now that it has
4909         been cut.
4910
4911 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
4912
4913         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
4914         * version.in: Bump version to 8.2.50.DATE-git.
4915
4916 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
4917             Pedro Alves  <palves@redhat.com>
4918
4919         * linux-nat.c (linux_init_ptrace): Rename to ...
4920         (linux_init_ptrace_procfs): ... this.  Call
4921         linux_proc_init_warnings.
4922         (linux_nat_target::post_attach)
4923         (linux_nat_target::post_startup_inferior): Adjust.
4924         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
4925         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
4926
4927 2018-07-04  Tom de Vries  <tdevries@suse.de>
4928
4929         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
4930         check ...
4931         (read_comp_unit_head): ... here.
4932
4933 2018-07-03  Tom Tromey  <tom@tromey.com>
4934
4935         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
4936         (stop_tracing, tstatus_command)
4937         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
4938         (print_one_static_tracepoint_marker): Update.
4939         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
4940         std::vector.
4941         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
4942         VEC.
4943         (all_tracepoints, static_tracepoints_here): Return std::vector.
4944
4945 2018-07-03  Tom Tromey  <tom@tromey.com>
4946
4947         * common/ptid.c (ptid_equal): Remove.
4948         * common/ptid.h (ptid_equal): Don't declare.
4949         * ada-tasks.c: Update.
4950         * breakpoint.c: Update.
4951         * common/agent.c: Update.
4952         * corelow.c: Update.
4953         * darwin-nat-info.c: Update.
4954         * darwin-nat.c: Update.
4955         * dcache.c: Update.
4956         * dtrace-probe.c: Update.
4957         * dummy-frame.c: Update.
4958         * fbsd-nat.c: Update.
4959         * frame.c: Update.
4960         * gdbthread.h: Update.
4961         * gnu-nat.c: Update.
4962         * go32-nat.c: Update.
4963         * inf-loop.c: Update.
4964         * inf-ptrace.c: Update.
4965         * infcall.c: Update.
4966         * infcmd.c: Update.
4967         * inflow.c: Update.
4968         * infrun.c: Update.
4969         * linux-fork.c: Update.
4970         * linux-nat.c: Update.
4971         * linux-thread-db.c: Update.
4972         * mi/mi-cmd-var.c: Update.
4973         * mi/mi-interp.c: Update.
4974         * mi/mi-main.c: Update.
4975         * nto-procfs.c: Update.
4976         * ppc-linux-tdep.c: Update.
4977         * procfs.c: Update.
4978         * python/py-inferior.c: Update.
4979         * python/py-record-btrace.c: Update.
4980         * python/py-record.c: Update.
4981         * ravenscar-thread.c: Update.
4982         * regcache.c: Update.
4983         * remote-sim.c: Update.
4984         * remote.c: Update.
4985         * sol-thread.c: Update.
4986         * solib.c: Update.
4987         * target.c: Update.
4988         * tui/tui-stack.c: Update.
4989         * varobj.c: Update.
4990         * windows-nat.c: Update.
4991         * windows-tdep.c: Update.
4992
4993 2018-07-03  Tom Tromey  <tom@tromey.com>
4994
4995         * common/ptid.c (ptid_match): Remove.
4996         * common/ptid.h (ptid_match): Don't declare.
4997         * fbsd-nat.c: Update.
4998         * infcmd.c: Update.
4999         * infrun.c: Update.
5000         * linux-nat.c: Update.
5001         * record-btrace.c: Update.
5002         * regcache.c: Update.
5003         * remote.c: Update.
5004
5005 2018-07-03  Tom Tromey  <tom@tromey.com>
5006
5007         * common/ptid.c (ptid_tid_p): Remove.
5008         * common/ptid.h (ptid_tid_p): Don't declare.
5009         * sol-thread.c: Update.
5010
5011 2018-07-03  Tom Tromey  <tom@tromey.com>
5012
5013         * common/ptid.c (ptid_lwp_p): Remove.
5014         * common/ptid.h (ptid_lwp_p): Don't declare.
5015         * fbsd-nat.c: Update.
5016         * linux-nat.c: Update.
5017         * nat/linux-procfs.c: Update.
5018         * nat/x86-linux-dregs.c: Update.
5019         * sol-thread.c: Update.
5020
5021 2018-07-03  Tom Tromey  <tom@tromey.com>
5022
5023         * common/ptid.c (ptid_is_pid): Remove.
5024         * common/ptid.h (ptid_is_pid): Don't declare.
5025         * infrun.c: Update.
5026         * linux-nat.c: Update.
5027         * mi/mi-interp.c: Update.
5028         * remote.c: Update.
5029         * thread.c: Update.
5030
5031 2018-07-03  Tom Tromey  <tom@tromey.com>
5032
5033         * common/ptid.c (ptid_get_tid): Remove.
5034         * common/ptid.h (ptid_get_tid): Don't declare.
5035         * ada-tasks.c: Update.
5036         * aix-thread.c: Update.
5037         * bsd-uthread.c: Update.
5038         * darwin-nat.c: Update.
5039         * fbsd-nat.c: Update.
5040         * i386-darwin-nat.c: Update.
5041         * infrun.c: Update.
5042         * linux-tdep.c: Update.
5043         * nto-procfs.c: Update.
5044         * ppc-ravenscar-thread.c: Update.
5045         * python/py-infthread.c: Update.
5046         * ravenscar-thread.c: Update.
5047         * sol-thread.c: Update.
5048         * sparc-ravenscar-thread.c: Update.
5049         * windows-nat.c: Update.
5050
5051 2018-07-03  Tom Tromey  <tom@tromey.com>
5052
5053         * common/ptid.c (ptid_get_lwp): Remove.
5054         * common/ptid.h (ptid_get_lwp): Don't declare.
5055         * aarch64-linux-nat.c: Update.
5056         * ada-tasks.c: Update.
5057         * aix-thread.c: Update.
5058         * amd64-linux-nat.c: Update.
5059         * arm-linux-nat.c: Update.
5060         * corelow.c: Update.
5061         * fbsd-nat.c: Update.
5062         * fbsd-tdep.c: Update.
5063         * gnu-nat.c: Update.
5064         * i386-cygwin-tdep.c: Update.
5065         * i386-gnu-nat.c: Update.
5066         * i386-linux-nat.c: Update.
5067         * ia64-linux-nat.c: Update.
5068         * inf-ptrace.c: Update.
5069         * infrun.c: Update.
5070         * linux-fork.c: Update.
5071         * linux-nat.c: Update.
5072         * linux-tdep.c: Update.
5073         * linux-thread-db.c: Update.
5074         * mips-linux-nat.c: Update.
5075         * nat/aarch64-linux-hw-point.c: Update.
5076         * nat/aarch64-linux.c: Update.
5077         * nat/linux-btrace.c: Update.
5078         * nat/linux-osdata.c: Update.
5079         * nat/linux-procfs.c: Update.
5080         * nat/x86-linux-dregs.c: Update.
5081         * obsd-nat.c: Update.
5082         * ppc-fbsd-nat.c: Update.
5083         * ppc-linux-nat.c: Update.
5084         * procfs.c: Update.
5085         * python/py-infthread.c: Update.
5086         * ravenscar-thread.c: Update.
5087         * remote.c: Update.
5088         * s390-linux-nat.c: Update.
5089         * sol-thread.c: Update.
5090         * sol2-tdep.c: Update.
5091         * spu-linux-nat.c: Update.
5092         * x86-linux-nat.c: Update.
5093         * xtensa-linux-nat.c: Update.
5094
5095 2018-07-03  Tom Tromey  <tom@tromey.com>
5096
5097         * common/ptid.c (ptid_get_pid): Remove.
5098         * common/ptid.h (ptid_get_pid): Don't declare.
5099         * aarch64-linux-nat.c: Update.
5100         * ada-lang.c: Update.
5101         * aix-thread.c: Update.
5102         * alpha-bsd-nat.c: Update.
5103         * amd64-fbsd-nat.c: Update.
5104         * amd64-linux-nat.c: Update.
5105         * arm-linux-nat.c: Update.
5106         * arm-nbsd-nat.c: Update.
5107         * auxv.c: Update.
5108         * break-catch-syscall.c: Update.
5109         * breakpoint.c: Update.
5110         * bsd-uthread.c: Update.
5111         * corelow.c: Update.
5112         * ctf.c: Update.
5113         * darwin-nat.c: Update.
5114         * fbsd-nat.c: Update.
5115         * fbsd-tdep.c: Update.
5116         * gcore.c: Update.
5117         * gnu-nat.c: Update.
5118         * hppa-nbsd-nat.c: Update.
5119         * hppa-obsd-nat.c: Update.
5120         * i386-fbsd-nat.c: Update.
5121         * ia64-linux-nat.c: Update.
5122         * inf-ptrace.c: Update.
5123         * infcmd.c: Update.
5124         * inferior.c: Update.
5125         * inferior.h: Update.
5126         * inflow.c: Update.
5127         * infrun.c: Update.
5128         * linux-fork.c: Update.
5129         * linux-nat.c: Update.
5130         * linux-tdep.c: Update.
5131         * linux-thread-db.c: Update.
5132         * m68k-bsd-nat.c: Update.
5133         * mi/mi-interp.c: Update.
5134         * mi/mi-main.c: Update.
5135         * mips-linux-nat.c: Update.
5136         * mips-nbsd-nat.c: Update.
5137         * mips64-obsd-nat.c: Update.
5138         * nat/aarch64-linux-hw-point.c: Update.
5139         * nat/aarch64-linux.c: Update.
5140         * nat/linux-btrace.c: Update.
5141         * nat/linux-osdata.c: Update.
5142         * nat/linux-procfs.c: Update.
5143         * nat/x86-linux-dregs.c: Update.
5144         * nto-procfs.c: Update.
5145         * obsd-nat.c: Update.
5146         * ppc-linux-nat.c: Update.
5147         * ppc-nbsd-nat.c: Update.
5148         * ppc-obsd-nat.c: Update.
5149         * proc-service.c: Update.
5150         * procfs.c: Update.
5151         * python/py-inferior.c: Update.
5152         * python/py-infthread.c: Update.
5153         * ravenscar-thread.c: Update.
5154         * record.c: Update.
5155         * remote-sim.c: Update.
5156         * remote.c: Update.
5157         * rs6000-nat.c: Update.
5158         * s390-linux-nat.c: Update.
5159         * sh-nbsd-nat.c: Update.
5160         * sol-thread.c: Update.
5161         * sparc-nat.c: Update.
5162         * sparc64-tdep.c: Update.
5163         * spu-linux-nat.c: Update.
5164         * spu-tdep.c: Update.
5165         * target-debug.h: Update.
5166         * target.c: Update.
5167         * thread.c: Update.
5168         * tid-parse.c: Update.
5169         * tracefile-tfile.c: Update.
5170         * vax-bsd-nat.c: Update.
5171         * windows-nat.c: Update.
5172         * x86-linux-nat.c: Update.
5173         * x86-nat.c: Update.
5174
5175 2018-07-03  Tom Tromey  <tom@tromey.com>
5176
5177         * common/ptid.c (pid_to_ptid): Remove.
5178         * common/ptid.h (pid_to_ptid): Don't declare.
5179         * aix-thread.c: Update.
5180         * arm-linux-nat.c: Update.
5181         * common/ptid.c: Update.
5182         * common/ptid.h: Update.
5183         * corelow.c: Update.
5184         * ctf.c: Update.
5185         * darwin-nat.c: Update.
5186         * fbsd-nat.c: Update.
5187         * fork-child.c: Update.
5188         * gnu-nat.c: Update.
5189         * go32-nat.c: Update.
5190         * inf-ptrace.c: Update.
5191         * infcmd.c: Update.
5192         * inferior.c: Update.
5193         * infrun.c: Update.
5194         * linux-fork.c: Update.
5195         * linux-nat.c: Update.
5196         * nat/aarch64-linux-hw-point.c: Update.
5197         * nat/fork-inferior.c: Update.
5198         * nat/x86-linux-dregs.c: Update.
5199         * nto-procfs.c: Update.
5200         * obsd-nat.c: Update.
5201         * procfs.c: Update.
5202         * progspace.c: Update.
5203         * remote.c: Update.
5204         * rs6000-nat.c: Update.
5205         * s390-linux-nat.c: Update.
5206         * sol-thread.c: Update.
5207         * spu-linux-nat.c: Update.
5208         * target.c: Update.
5209         * top.c: Update.
5210         * tracefile-tfile.c: Update.
5211         * windows-nat.c: Update.
5212
5213 2018-07-03  Tom Tromey  <tom@tromey.com>
5214
5215         * common/ptid.h (ptid_build): Don't declare.
5216         * common/ptid.c (ptid_build): Remove.
5217         * aix-thread.c: Update.
5218         * bsd-kvm.c: Update.
5219         * bsd-uthread.c: Update.
5220         * common/agent.c: Update.
5221         * common/ptid.c: Update.
5222         * common/ptid.h: Update.
5223         * corelow.c: Update.
5224         * darwin-nat.c: Update.
5225         * fbsd-nat.c: Update.
5226         * gnu-nat.c: Update.
5227         * linux-fork.c: Update.
5228         * linux-nat.c: Update.
5229         * linux-thread-db.c: Update.
5230         * nat/linux-osdata.c: Update.
5231         * nat/linux-procfs.c: Update.
5232         * nto-procfs.c: Update.
5233         * obsd-nat.c: Update.
5234         * proc-service.c: Update.
5235         * procfs.c: Update.
5236         * ravenscar-thread.c: Update.
5237         * remote-sim.c: Update.
5238         * remote.c: Update.
5239         * sol-thread.c: Update.
5240         * target.c: Update.
5241         * windows-nat.c: Update.
5242
5243 2018-07-03  Tom Tromey  <tom@tromey.com>
5244
5245         * infrun.c (follow_exec): Use exit_inferior_silent.
5246         * inferior.c (exit_inferior_num_silent): Remove.
5247         * inferior.h (exit_inferior_num_silent): Don't declare.
5248
5249 2018-07-03  Tom Tromey  <tom@tromey.com>
5250
5251         PR cli/23340:
5252         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5253         inferior_ptid on error.
5254
5255 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5256             Simon Marchi  <simon.marchi@polymtl.ca>
5257
5258         PR tdep/8282
5259         * disasm.h (gdb_disassembler): Add
5260         `m_disassembler_options_holder'. member
5261         * disasm.c (get_all_disassembler_options): New function.
5262         (gdb_disassembler::gdb_disassembler): Use it.
5263         (gdb_buffered_insn_length_init_dis): Likewise.
5264         (gdb_buffered_insn_length): Adjust accordingly.
5265         (set_disassembler_options): Handle options with arguments.
5266         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5267         line if showing options with descriptions.
5268         (disassembler_options_completer): Adapt to using the
5269         `disasm_options_and_args_t' structure.
5270         * mips-tdep.c (mips_disassembler_options): New variable.
5271         (mips_disassembler_options_o32): Likewise.
5272         (mips_disassembler_options_n32): Likewise.
5273         (mips_disassembler_options_n64): Likewise.
5274         (gdb_print_insn_mips): Don't set `disassembler_options'.
5275         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5276         functions.
5277         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5278         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5279         `gdbarch_disassembler_options_implicit' and
5280         `gdbarch_valid_disassembler_options'.
5281         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5282         `disasm_options_and_args_t' structure.
5283         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5284         method.
5285         (valid_disassembler_options): Switch from `disasm_options_t' to
5286         the `disasm_options_and_args_t' structure.
5287         * NEWS: Document `set disassembler-options' support for the MIPS
5288         target.
5289         * gdbarch.h: Regenerate.
5290         * gdbarch.c: Regenerate.
5291
5292 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5293
5294         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5295
5296 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5297
5298         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5299         parameter in call to amd64_target_description.
5300         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5301         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5302         (amd64fbsd_init_abi): Likewise.
5303         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5304         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5305         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5306         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5307
5308 2018-06-29  Pedro Alves  <palves@redhat.com>
5309
5310         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5311         "segments" parameter.
5312         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5313         (_initialize_amd64_tdep): Update call to
5314         amd64_create_target_description.
5315         (amd64_target_description): Add "segments" parameter.  Adjust
5316         the implementation to use it.
5317         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5318         call to amd64_create_target_description.
5319         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5320         * gdb/arch/amd64.h (amd64_create_target_description): Add
5321         "segments" register.
5322         * gdb/arch/amd64.c (amd64_create_target_description): Add
5323         "segments" parameter.  Call create_feature_i386_64bit_segments
5324         only if SEGMENTS is true.
5325         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5326         call to amd64_create_target_description.
5327
5328 2018-06-29  Pedro Alves  <palves@redhat.com>
5329
5330         * thread.c (thread_target_id_str): New, factored out from ...
5331         (print_thread_info_1): ... here.  Use it to compute the max
5332         "Target Id" column width.
5333
5334 2018-06-29  Pedro Alves  <palves@redhat.com>
5335
5336         * remote.c (remote_target::extra_thread_info): Delete
5337         'display_buf' and 'n' locals.  from the cache, regardless of
5338         packet mechanims is in use.  Use cache for qThreadExtra and qP
5339         methods too.
5340
5341 2018-06-29  Pedro Alves  <palves@redhat.com>
5342
5343         * blockframe.c (find_pc_sect_containing_function): New function.
5344         * breakpoint.c (print_breakpoint_location): Don't call
5345         find_pc_sect_function.
5346         * linespec.c (create_sals_line_offset): Record the location's
5347         symbol in the sal.
5348         * linespec.c (convert_address_location_to_sals): Fill in sal's
5349         symbol with find_pc_sect_containing_function.
5350         * symtab.c (find_function_start_sal): Rename to ...
5351         (find_function_start_sal_1): ... this.
5352         (find_function_start_sal): Reimplement as wrapper around
5353         find_function_start_sal_1, and use
5354         find_pc_sect_containing_function to fill in the sal's symbol.
5355         (find_function_start_sal(symbol*, bool)): Adjust.
5356         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
5357         comments.
5358         (find_pc_sect_containing_function): Declare.
5359
5360 2018-06-29  Pedro Alves  <palves@redhat.com>
5361
5362         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
5363         true if the the location has no symbol.
5364
5365 2018-06-28  Tom Tromey  <tom@tromey.com>
5366
5367         * NEWS: Mention --enable-codesign.
5368         * silent-rules.mk (ECHO_SIGN): New variable.
5369         * configure.ac: Add --enable-codesign.
5370         * configure: Rebuild.
5371         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
5372         (gdb$(EXEEXT)): Optionally invoke codesign.
5373
5374 2018-06-28  Pedro Alves  <palves@redhat.com>
5375
5376         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
5377         comments.
5378         (switch_to_thread_no_regs): Adjust comment.
5379         * infcmd.c (stop_pc): Delete.
5380         (post_create_inferior, info_program_command): Replace references
5381         to stop_pc with references to thread_info->suspend.stop_pc.
5382         * inferior.h (stop_pc): Delete declaration.
5383         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
5384         (handle_inferior_event_1, handle_signal_stop)
5385         (process_event_stop_test, keep_going_stepped_thread)
5386         (handle_step_into_function, handle_step_into_function_backward)
5387         (print_stop_location): Replace references to stop_pc with
5388         references to thread_info->suspend.stop_pc.
5389         (struct infcall_suspend_state) <stop_pc>: Delete field.
5390         (save_infcall_suspend_state, restore_infcall_suspend_state):
5391         Remove references to inf_stat->stop_pc.
5392         * linux-fork.c (fork_load_infrun_state): Likewise.
5393         * record-btrace.c (record_btrace_set_replay): Likewise.
5394         * record-full.c (record_full_goto_entry): Likewise.
5395         * remote.c (print_one_stopped_thread): Likewise.
5396         * target.c (target_resume): Extend comment.
5397         * thread.c (set_executing_thread): New.
5398         (set_executing): Use it.
5399         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
5400         Remove references to stop_pc.
5401
5402 2018-06-28  Pedro Alves  <palves@redhat.com>
5403
5404         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
5405         Moving fetching stop_pc until after ecs->event_thread is refreshed.
5406
5407 2018-06-28  Tom Tromey  <tom@tromey.com>
5408
5409         * coffread.c (coff_symfile_finish): Update.
5410         * xcoffread.c (xcoff_symfile_finish): Update.
5411         * elfread.c (elf_symfile_finish): Update.
5412         * symfile.h (dwarf2_free_objfile): Don't declare.
5413         * dwarf2read.c (_initialize_dwarf2_read): Use
5414         register_objfile_data_with_cleanup.
5415         (dwarf2_free_objfile): Now static.  Change signature.
5416
5417 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5418
5419         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
5420         option "-o" to add-symbol-file-load to add an offset to each
5421         section's load address.
5422         * symfile.c (set_objfile_default_section_offset): New function.
5423
5424 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5425
5426         * symfile.c (add_symbol_file_command): Make sure that sections
5427         with the same name are sorted in the same order.
5428
5429 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5430
5431         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
5432         require the second argument.  If omitted, load sections at the
5433         addresses specified in the file.
5434
5435 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5436
5437         * symfile.c (symbol_file_command, symbol_file_add_main_1)
5438         (_initialize_symfile): Add option "-o" to symbol-file to add an
5439         offset to each section of the symbol file.
5440
5441 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5442
5443         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
5444
5445 2018-06-27  Tom Tromey  <tom@tromey.com>
5446
5447         * stack.c (_initialize_stack): Update "func" help text.
5448
5449 2018-06-27  Tom Tromey  <tom@tromey.com>
5450
5451         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
5452         std::vector.
5453         (unwind_infopy_str, pyuw_create_unwind_info)
5454         (unwind_infopy_add_saved_register, pyuw_sniffer)
5455         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
5456         Update.
5457         (struct saved_reg): Add constructor.
5458         <value>: Now a gdbpy_ref<>.
5459
5460 2018-06-27  Tom Tromey  <tom@tromey.com>
5461
5462         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
5463
5464 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5465
5466         * gdb-gdb.py.in: Format using autopep8.
5467
5468 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5469
5470         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
5471         (type_lookup_function): Recognize CORE_ADDR values.
5472
5473 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5474
5475         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
5476         print tag_name.
5477
5478 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5479
5480         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
5481         <__lt__>: Add.
5482
5483 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5484
5485         * gdb-gdb.py: Move to...
5486         * gdb-gdb.py.in: ... here.
5487         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
5488         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
5489         dependencies.
5490         (distclean): Remove gdb-gdb.py when cleaning.
5491         (gdb-gdb.py, gdb-gdb.gdb): New rules.
5492         * configure: Re-generate.
5493
5494 2018-06-27  Pedro Alves  <palves@redhat.com>
5495
5496         * proc-service.c (get_ps_regcache): New.
5497         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
5498         (ps_lsetfpregs): Use it.
5499
5500 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
5501
5502         PR gdb/21695
5503         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
5504         (dwarf_decode_lines_1): Adjust.
5505
5506 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5507
5508         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
5509         override.
5510         <info_proc>: Likewise.
5511
5512 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
5513
5514         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
5515         to windows_fetch_one_register, and only handle the case of
5516         fetching one register.  Move the code that reloads the context
5517         and iterates over all registers if R is negative to...
5518         (windows_nat_target::fetch_registers): ... here.
5519         (do_windows_store_inferior_registers): Rename to
5520         windows_store_one_register, and only handle the case of storing
5521         one register.  Move the code that handles the case where r is
5522         negative to...
5523         (windows_nat_target::store_registers) ... here.
5524
5525 2018-06-26  Tom Tromey  <tom@tromey.com>
5526
5527         PR rust/22574:
5528         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
5529         * rust-lang.c (rust_print_struct_def): Add podata parameter.
5530         Update.
5531         (rust_internal_print_type): Add podata parameter.
5532         (rust_print_type): Update.
5533
5534 2018-06-26  Tom Tromey  <tom@tromey.com>
5535
5536         * typeprint.h (struct print_offset_data) <update, finish,
5537         maybe_print_hole>: New methods.
5538         <indentation>: New constant.
5539         * typeprint.c (print_offset_data::indentation): Define.
5540         (print_offset_data::maybe_print_hole, print_offset_data::update)
5541         (print_offset_data::finish): Move from c-typeprint.c and rename.
5542         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
5543         (print_spaces_filtered_with_print_options): Update.
5544         (c_print_type_union_field_offset, maybe_print_hole)
5545         (c_print_type_struct_field_offset): Move to typeprint.c and
5546         rename.
5547         (c_type_print_base_struct_union): Update.
5548
5549 2018-06-25  Pedro Alves  <palves@redhat.com>
5550
5551         * gdbthread.h (thread_info_ref, delete_thread)
5552         (delete_thread_silent, first_thread_of_inferior)
5553         (any_thread_of_inferior, switch_to_thread)
5554         (enable_thread_stack_temporaries)
5555         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5556         (get_last_thread_stack_temporary)
5557         (value_in_thread_stack_temporaries, can_access_registers_thread):
5558         Spell out "struct thread_info" instead of just "thread_info".
5559         * inferior.h (notice_new_inferior): Likewise.
5560
5561 2018-06-25  Pedro Alves  <palves@redhat.com>
5562
5563         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5564         pass thread_info pointer to delete_thread.
5565         (windows_nat_target::detach): Pass inferior pointer to
5566         detach_inferior.
5567         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
5568         delete_thread.
5569         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
5570         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
5571         and pass a thread_info pointer to delete_thread.
5572         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
5573         pass thread_info pointer to delete_thread.
5574         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
5575         delete_thread_silent call.
5576         * procfs.c (procfs_target::detach): Pass inferior pointer to
5577         detach_inferior.
5578         (procfs_target::wait): Pass thread_info pointer to delete_thread.
5579         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
5580         delete_thread_silent call.
5581         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5582         pass thread_info pointer to delete_thread.
5583         (windows_nat_target::detach): Pass inferior pointer to
5584         delete_inferior.
5585
5586 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5587
5588         * regcache.c (readable_regcache::read_part): Fix asserts.
5589         (reg_buffer::raw_collect_part): New function.
5590         (regcache::write_part): Fix asserts.
5591         (reg_buffer::raw_supply_part): New function.
5592         (regcache::transfer_regset_register): New helper function.
5593         (regcache::transfer_regset): Call new functions.
5594         (regcache_supply_regset): Use gdb_byte*.
5595         (regcache::supply_regset): Likewise.
5596         (regcache_collect_regset): Likewise.
5597         (regcache::collect_regset): Likewise.
5598         * regcache.h (reg_buffer::raw_collect_part): New declaration.
5599         (reg_buffer::raw_supply_part): Likewise.
5600         (regcache::transfer_regset_register): Likewise.
5601         (regcache::transfer_regset): Use gdb_byte*.
5602
5603 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5604
5605         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
5606
5607 2018-06-21  Pedro Alves  <palves@redhat.com>
5608
5609         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
5610         instead of a ptid_t.  All callers adjusted.
5611         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
5612         adjusted.
5613         (print_ada_task_info, display_current_task_id, task_command_1):
5614         Adjust.
5615         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
5616         inferior_thread.
5617         (breakpoint_kind): Adjust.
5618         (remove_breakpoints_pid): Rename to ...
5619         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
5620         pointer.  All callers adjusted.
5621         (bpstat_clear_actions): Use inferior_thread.
5622         (get_bpstat_thread): New.
5623         (bpstat_do_actions): Use it.
5624         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
5625         to take a thread_info pointer.  All callers adjusted.
5626         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
5627         (breakpoint_re_set_thread): Use inferior_thread.
5628         * breakpoint.h (struct inferior): Forward declare.
5629         (bpstat_stop_status): Update.
5630         (remove_breakpoints_pid): Delete.
5631         (remove_breakpoints_inf): New.
5632         * bsd-uthread.c (bsd_uthread_target::wait)
5633         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
5634         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
5635         (maint_btrace_packet_history_cmd)
5636         (maint_btrace_clear_packet_history_cmd): Adjust.
5637         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
5638         inferior_thread.
5639         * cli/cli-interp.c: Include "inferior.h".
5640         * common/refcounted-object.h (struct
5641         refcounted_object_ref_policy): New.
5642         * compile/compile-object-load.c: Include gdbthread.h.
5643         (store_regs): Use inferior_thread.
5644         * corelow.c (core_target::close): Use current_inferior.
5645         (core_target_open): Adjust to use first_thread_of_inferior and use
5646         the current inferior.
5647         * ctf.c (ctf_target::close): Adjust to use current_inferior.
5648         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
5649         <thread>: ... this new field.  All references adjusted.
5650         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
5651         Take a thread_info pointer instead of a ptid_t.
5652         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
5653         (dummy_frame_discard, register_dummy_frame_dtor): Take a
5654         thread_info pointer instead of a ptid_t.
5655         * elfread.c: Include "inferior.h".
5656         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
5657         Use inferior_thread.
5658         * eval.c (evaluate_subexp): Likewise.
5659         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
5660         inferior_thread.
5661         * gdb_proc_service.h (struct thread_info): Forward declare.
5662         (struct ps_prochandle) <ptid>: Delete, replaced by ...
5663         <thread>: ... this new field.  All references adjusted.
5664         * gdbarch.h, gdbarch.c: Regenerate.
5665         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
5666         'thread' parameter.  All implementations and callers adjusted.
5667         * gdbthread.h (thread_info) <set_running>: New method.
5668         (delete_thread, delete_thread_silent): Take a thread_info pointer
5669         instead of a ptid.
5670         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
5671         (first_thread_of_process): Delete, replaced by ...
5672         (first_thread_of_inferior): ... this new function.  All callers
5673         adjusted.
5674         (any_live_thread_of_process): Delete, replaced by ...
5675         (any_live_thread_of_inferior): ... this new function.  All callers
5676         adjusted.
5677         (switch_to_thread, switch_to_no_thread): Declare.
5678         (is_executing): Delete.
5679         (enable_thread_stack_temporaries): Update comment.
5680         <enable_thread_stack_temporaries>: Take a thread_info pointer
5681         instead of a ptid_t.  Incref the thread.
5682         <~enable_thread_stack_temporaries>: Decref the thread.
5683         <m_ptid>: Delete
5684         <m_thr>: New.
5685         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5686         (get_last_thread_stack_temporary)
5687         (value_in_thread_stack_temporaries, can_access_registers_thread):
5688         Take a thread_info pointer instead of a ptid_t.  All callers
5689         adjusted.
5690         * infcall.c (get_call_return_value): Use inferior_thread.
5691         (run_inferior_call): Work with thread pointers instead of ptid_t.
5692         (call_function_by_hand_dummy): Work with thread pointers instead
5693         of ptid_t.  Use thread_info_ref.
5694         * infcmd.c (proceed_thread_callback): Access thread's state
5695         directly.
5696         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
5697         access thread's state directly.
5698         (continue_command): Use inferior_thread.
5699         (info_program_command): Use find_thread_ptid and access thread
5700         state directly.
5701         (proceed_after_attach_callback): Use thread state directly.
5702         (notice_new_inferior): Take a thread_info pointer instead of a
5703         ptid_t.  All callers adjusted.
5704         (exit_inferior): Take an inferior pointer instead of a pid.  All
5705         callers adjusted.
5706         (exit_inferior_silent): New.
5707         (detach_inferior): Delete.
5708         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
5709         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
5710         (detach_inferior_command, kill_inferior_command): Use
5711         find_inferior_id instead of valid_gdb_inferior_id and
5712         gdb_inferior_id_to_pid.
5713         (inferior_command): Use inferior and thread pointers.
5714         * inferior.h (struct thread_info): Forward declare.
5715         (notice_new_inferior): Take a thread_info pointer instead of a
5716         ptid_t.  All callers adjusted.
5717         (detach_inferior): Delete declaration.
5718         (exit_inferior, exit_inferior_silent): Take an inferior pointer
5719         instead of a pid.  All callers adjusted.
5720         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
5721         (valid_gdb_inferior_id): Delete.
5722         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
5723         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
5724         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
5725         ...
5726         <inf>: ... this new field.
5727         <step_ptid>: Delete, replaced by ...
5728         <step_thread>: ... this new field.
5729         (get_displaced_stepping_state): Take an inferior pointer instead
5730         of a pid.  All callers adjusted.
5731         (displaced_step_in_progress_any_inferior): Adjust.
5732         (displaced_step_in_progress_thread): Take a thread pointer instead
5733         of a ptid_t.  All callers adjusted.
5734         (displaced_step_in_progress, add_displaced_stepping_state): Take
5735         an inferior pointer instead of a pid.  All callers adjusted.
5736         (get_displaced_step_closure_by_addr): Adjust.
5737         (remove_displaced_stepping_state): Take an inferior pointer
5738         instead of a pid.  All callers adjusted.
5739         (displaced_step_prepare_throw, displaced_step_prepare)
5740         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
5741         All callers adjusted.
5742         (start_step_over): Adjust.
5743         (infrun_thread_ptid_changed): Remove bit updating ptids in the
5744         displaced step queue.
5745         (do_target_resume): Adjust.
5746         (fetch_inferior_event): Use inferior_thread.
5747         (context_switch, get_inferior_stop_soon): Take an
5748         execution_control_state pointer instead of a ptid_t.  All callers
5749         adjusted.
5750         (switch_to_thread_cleanup): Delete.
5751         (stop_all_threads): Use scoped_restore_current_thread.
5752         * inline-frame.c: Include "gdbthread.h".
5753         (inline_state) <inline_state>: Take a thread pointer instead of a
5754         ptid_t.  All callers adjusted.
5755         <ptid>: Delete, replaced by ...
5756         <thread>: ... this new field.
5757         (find_inline_frame_state): Take a thread pointer instead of a
5758         ptid_t.  All callers adjusted.
5759         (skip_inline_frames, step_into_inline_frame)
5760         (inline_skipped_frames, inline_skipped_symbol): Take a thread
5761         pointer instead of a ptid_t.  All callers adjusted.
5762         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
5763         (inline_skipped_frames, inline_skipped_symbol): Likewise.
5764         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
5765         pointers directly.
5766         * linux-nat.c (get_detach_signal): Likewise.
5767         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
5768         (thread_db_notice_clone): Adjust.
5769         (thread_db_find_new_threads_silently)
5770         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
5771         a thread pointer instead of a ptid_t.  All callers adjusted.
5772         * mi/mi-cmd-var.c: Include "inferior.h".
5773         (mi_cmd_var_update_iter): Update to use thread pointers.
5774         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
5775         inferior directly.
5776         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
5777         out to ...
5778         (mi_output_running): ... this new function.
5779         (mi_on_resume_1): Adjust to use it.
5780         (mi_user_selected_context_changed): Adjust to use inferior_thread.
5781         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
5782         directly.
5783         (interrupt_thread_callback): : Adjust to use thread and inferior
5784         pointers.
5785         * proc-service.c: Include "gdbthread.h".
5786         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
5787         * progspace-and-thread.c: Include "inferior.h".
5788         * progspace.c: Include "inferior.h".
5789         * python/py-exitedevent.c (create_exited_event_object): Adjust to
5790         hold a reference to an inferior_object.
5791         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
5792         inferior_thread.
5793         * python/py-inferior.c (struct inferior_object): Give the type a
5794         tag name instead of a typedef.
5795         (python_on_normal_stop): No need to check if the current thread is
5796         listed.
5797         (inferior_to_inferior_object): Change return type to
5798         inferior_object.  All callers adjusted.
5799         (find_thread_object): Delete, bits factored out to ...
5800         (thread_to_thread_object): ... this new function.
5801         * python/py-infthread.c (create_thread_object): Use
5802         inferior_to_inferior_object.
5803         (thpy_is_stopped): Use thread pointer directly.
5804         (gdbpy_selected_thread): Use inferior_thread.
5805         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
5806         field, replaced with ...
5807         <thread>: ... this new field.  All users adjusted.
5808         (btpy_insn_or_gap_new): Drop const.
5809         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
5810         callers adjusted.
5811         * python/py-record.c: Include "gdbthread.h".
5812         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5813         a ptid_t.  All callers adjusted.
5814         (gdbpy_current_recording): Use inferior_thread.
5815         * python/py-record.h (recpy_record_object) <ptid>: Delete
5816         field, replaced with ...
5817         <thread>: ... this new field.  All users adjusted.
5818         (recpy_element_object) <ptid>: Delete
5819         field, replaced with ...
5820         <thread>: ... this new field.  All users adjusted.
5821         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5822         a ptid_t.  All callers adjusted.
5823         * python/py-threadevent.c: Include "gdbthread.h".
5824         (get_event_thread): Use thread_to_thread_object.
5825         * python/python-internal.h (struct inferior_object): Forward
5826         declare.
5827         (find_thread_object, find_inferior_object): Delete declarations.
5828         (thread_to_thread_object, inferior_to_inferior_object): New
5829         declarations.
5830         * record-btrace.c: Include "inferior.h".
5831         (require_btrace_thread): Use inferior_thread.
5832         (record_btrace_frame_sniffer)
5833         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
5834         (get_thread_current_frame): Use scoped_restore_current_thread and
5835         switch_to_thread.
5836         (get_thread_current_frame): Use thread pointer directly.
5837         (record_btrace_replay_at_breakpoint): Use thread's inferior
5838         pointer directly.
5839         * record-full.c: Include "inferior.h".
5840         * regcache.c: Include "gdbthread.h".
5841         (get_thread_arch_regcache): Use the inferior's address space
5842         directly.
5843         (get_thread_regcache, registers_changed_thread): New.
5844         * regcache.h (get_thread_regcache(thread_info *thread)): New
5845         overload.
5846         (registers_changed_thread): New.
5847         (remote_target) <remote_detach_1>: Swap order of parameters.
5848         (remote_add_thread): <remote_add_thread>: Return the new thread.
5849         (get_remote_thread_info(ptid_t)): New overload.
5850         (remote_target::remote_notice_new_inferior): Use thread pointers
5851         directly.
5852         (remote_target::process_initial_stop_replies): Use
5853         thread_info::set_running.
5854         (remote_target::remote_detach_1, remote_target::detach)
5855         (extended_remote_target::detach): Adjust.
5856         * stack.c (frame_show_address): Use inferior_thread.
5857         * target-debug.h (target_debug_print_thread_info_pp): New.
5858         * target-delegates.c: Regenerate.
5859         * target.c (default_thread_address_space): Delete.
5860         (memory_xfer_partial_1): Use current_inferior.
5861         (target_detach): Use current_inferior.
5862         (target_thread_address_space): Delete.
5863         (generic_mourn_inferior): Use current_inferior.
5864         * target.h (struct target_ops) <thread_address_space>: Delete.
5865         (target_thread_address_space): Delete.
5866         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
5867         pointers directly.
5868         (delete_thread_1, delete_thread, delete_thread_silent): Take a
5869         thread pointer instead of a ptid_t.  Adjust all callers.
5870         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
5871         (first_thread_of_process): Delete, replaced by ...
5872         (first_thread_of_inferior): ... this new function.  All callers
5873         adjusted.
5874         (any_thread_of_process): Rename to ...
5875         (any_thread_of_inferior): ... this, and take an inferior pointer.
5876         (any_live_thread_of_process): Rename to ...
5877         (any_live_thread_of_inferior): ... this, and take an inferior
5878         pointer.
5879         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5880         (value_in_thread_stack_temporaries)
5881         (get_last_thread_stack_temporary): Take a thread pointer instead
5882         of a ptid_t.  Adjust all callers.
5883         (thread_info::set_running): New.
5884         (validate_registers_access): Use inferior_thread.
5885         (can_access_registers_ptid): Rename to ...
5886         (can_access_registers_thread): ... this, and take a thread
5887         pointer.
5888         (print_thread_info_1): Adjust to compare thread pointers instead
5889         of ptids.
5890         (switch_to_no_thread, switch_to_thread): Make extern.
5891         (scoped_restore_current_thread::~scoped_restore_current_thread):
5892         Use m_thread pointer directly.
5893         (scoped_restore_current_thread::scoped_restore_current_thread):
5894         Use inferior_thread.
5895         (thread_command): Use thread pointer directly.
5896         (thread_num_make_value_helper): Use inferior_thread.
5897         * top.c (execute_command): Use inferior_thread.
5898         * tui/tui-interp.c: Include "inferior.h".
5899         * varobj.c (varobj_create): Use inferior_thread.
5900         (value_of_root_1): Use find_thread_global_id instead of
5901         global_thread_id_to_ptid.
5902
5903 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
5904
5905         * regcache.c (readable_regcache::read_part): Avoid memcpy when
5906         possible.
5907         (regcache::write_part): Likewise.
5908         (readable_regcache::cooked_read_part): Update comment.
5909         (readable_regcache::cooked_write_part): Likewise.
5910         * regcache.h: (readable_regcache::read_part): Likewise.
5911         (regcache::write_part): Likewise.
5912
5913 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
5914             Dirk Schubert  <dirk.schubert@arm.com>
5915
5916         * aarch64-linux-nat.c (post_attach): New.
5917         (aarch64_linux_nat_target::post_attach): Override post_attach to
5918         record the number of hardware debug registers.
5919
5920 2018-06-20  Tom Tromey  <tom@tromey.com>
5921
5922         * python/py-param.c (add_setshow_generic): Make parameters const.
5923         (parmpy_init): Update.
5924
5925 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
5926
5927         * regcache.h (regcache_cooked_read_ftype): Rename to...
5928         (register_read_ftype): ...this, change type to function_view.
5929         (class reg_buffer) <save>: Remove src parameter.
5930         (readonly_detached_regcache) <readonly_detached_regcache>: Make
5931         parameter non-const in first overload.  Remove src parameter in
5932         second overload.
5933         * regcache.c (do_cooked_read): Remove.
5934         (readonly_detached_regcache::readonly_detached_regcache): Make
5935         parameter non-const, adjust call to other constructor.
5936         (reg_buffer::save): Remove src parameter.
5937         * frame.c (do_frame_register_read): Remove.
5938         (frame_save_as_regcache): Use lambda function.
5939         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
5940         parameter to ppu2spu_data *.
5941         (ppu2spu_sniffer): Use lambda function.
5942
5943 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
5944
5945         * record-full.c (record_full_target::insert_breakpoint): Remove
5946         "struct" keyword, add const.
5947
5948 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
5949
5950         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
5951         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
5952         * configure.ac: Remove AC_PREREQ, add missing quoting.
5953         * gnulib/configure.ac: Modernize usage of
5954         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
5955         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
5956         (AUTOMAKE_VERSION): Bump to 1.15.1.
5957         * configure: Re-generate.
5958         * config.in: Re-generate.
5959         * aclocal.m4: Re-generate.
5960         * gnulib/aclocal.m4: Re-generate.
5961         * gnulib/config.in: Re-generate.
5962         * gnulib/configure: Re-generate.
5963         * gnulib/import/Makefile.in: Re-generate.
5964
5965 2018-06-19  Pedro Alves  <palves@redhat.com>
5966
5967         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
5968         (lookup_minimal_symbol_by_pc_section): ... here with
5969         gdb_assert_not_reached added.
5970
5971 2018-06-19  Pedro Alves  <palves@redhat.com>
5972
5973         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
5974         parameter with a block parameter.  Compare location's block symbol
5975         with the frame's block instead of addresses.
5976         (skip_inline_frames): Pass the current block instead of the
5977         frame's address.  Break out as soon as we determine the frame
5978         should not be skipped.
5979
5980 2018-06-18  Tom Tromey  <tom@tromey.com>
5981
5982         * solib-aix.c (solib_aix_get_section_offsets): Return
5983         unique_xmalloc_ptr.
5984         (solib_aix_solib_create_inferior_hook): Update.
5985
5986 2018-06-18  Tom Tromey  <tom@tromey.com>
5987
5988         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
5989
5990 2018-06-18  Tom Tromey  <tom@tromey.com>
5991
5992         * solib-frv.c (frv_relocate_main_executable): Use
5993         unique_xmalloc_ptr.
5994         * solib-dsbt.c (dsbt_relocate_main_executable): Use
5995         unique_xmalloc_ptr.
5996
5997 2018-06-18  Tom Tromey  <tom@tromey.com>
5998
5999         * objfiles.h (inhibit_section_map_updates): Update.
6000         (resume_section_map_updates, resume_section_map_updates_cleanup):
6001         Remove.
6002         * solib-svr4.c (svr4_handle_solib_event): Update.
6003         * objfiles.c (inhibit_section_map_updates): Return
6004         scoped_restore_tmpl<int>.
6005         (resume_section_map_updates, resume_section_map_updates_cleanup):
6006         Remove.
6007
6008 2018-06-18  Tom Tromey  <tom@tromey.com>
6009
6010         * valprint.h (read_string): Update.
6011         * valprint.c (read_string): Change type of "buffer".
6012         (val_print_string): Update.
6013         * python/py-value.c (valpy_string): Update.
6014         * language.h (struct language_defn) <la_get_string>: Change
6015         type of "buffer".
6016         (default_get_string, c_get_string): Update.
6017         * language.c (default_get_string): Change type of "buffer".
6018         * guile/scm-value.c (gdbscm_value_to_string): Update.
6019         * c-lang.c (c_get_string): Change type of "buffer".
6020
6021 2018-06-18  Tom Tromey  <tom@tromey.com>
6022
6023         * ser-mingw.c (struct pipe_state_destroyer): New.
6024         (pipe_state_up): New typedef.
6025         (cleanup_pipe_state): Remove.
6026         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6027
6028 2018-06-18  Tom Tromey  <tom@tromey.com>
6029
6030         * rust-lang.h (rust_yyerror): Don't declare.
6031         * rust-lang.c (rust_language_defn): Update.
6032         * rust-exp.y (yyerror): Now static.
6033         * parse.c (parse_exp_in_context_1): Update.
6034         * p-lang.h (p_yyerror): Don't declare.
6035         * p-lang.c (p_language_defn): Update.
6036         * p-exp.y (yyerror): Now static.
6037         * opencl-lang.c (opencl_language_defn): Update.
6038         * objc-lang.c (objc_language_defn): Update.
6039         * m2-lang.h (m2_yyerror): Don't declare.
6040         * m2-lang.c (m2_language_defn): Update.
6041         * m2-exp.y (yyerror): Now static.
6042         * language.h (struct language_defn) <la_error>: Remove.
6043         * language.c (unk_lang_error): Remove.
6044         (unknown_language_defn, auto_language_defn): Remove.
6045         * go-lang.h (go_yyerror): Don't declare.
6046         * go-lang.c (go_language_defn): Update.
6047         * go-exp.y (yyerror): Now static.
6048         * f-lang.h (f_yyerror): Don't declare.
6049         * f-lang.c (f_language_defn): Update.
6050         * f-exp.y (yyerror): Now static.
6051         * d-lang.h (d_yyerror): Don't declare.
6052         * d-lang.c (d_language_defn): Update.
6053         * d-exp.y (yyerror): Now static.
6054         * c-lang.h (c_yyerror): Don't declare.
6055         * c-lang.c (c_language_defn, cplus_language_defn)
6056         (asm_language_defn, minimal_language_defn): Update.
6057         * c-exp.y (yyerror): Now static.
6058         * ada-lang.h (ada_yyerror): Don't declare.
6059         * ada-lang.c (ada_language_defn): Update.
6060         * ada-exp.y (yyerror): Now static.
6061
6062 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6063
6064         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6065         (store_sveregs_to_thread): Likewise.
6066         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6067         (aarch64_linux_store_inferior_registers): Likewise.
6068         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6069         function.
6070         (aarch64_sve_regs_copy_to_regcache): Likewise.
6071         (aarch64_sve_regs_copy_from_regcache): Likewise.
6072         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6073         declaration.
6074         (aarch64_sve_regs_copy_to_regcache): Likewise.
6075         (aarch64_sve_regs_copy_from_regcache): Likewise.
6076         (sve_context): Structure from Linux headers.
6077         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6078         (SVE_SIG_ZREG_SIZE): Likewise.
6079         (SVE_SIG_PREG_SIZE): Likewise.
6080         (SVE_SIG_FFR_SIZE): Likewise.
6081         (SVE_SIG_REGS_OFFSET): Likewise.
6082         (SVE_SIG_ZREGS_OFFSET): Likewise.
6083         (SVE_SIG_ZREG_OFFSET): Likewise.
6084         (SVE_SIG_ZREGS_SIZE): Likewise.
6085         (SVE_SIG_PREGS_OFFSET): Likewise.
6086         (SVE_SIG_PREG_OFFSET): Likewise.
6087         (SVE_SIG_PREGS_SIZE): Likewise.
6088         (SVE_SIG_FFR_OFFSET): Likewise.
6089         (SVE_SIG_REGS_SIZE): Likewise.
6090         (SVE_SIG_CONTEXT_SIZE): Likewise.
6091         (SVE_PT_REGS_MASK): Likewise.
6092         (SVE_PT_REGS_FPSIMD): Likewise.
6093         (SVE_PT_REGS_SVE): Likewise.
6094         (SVE_PT_VL_INHERIT): Likewise.
6095         (SVE_PT_VL_ONEXEC): Likewise.
6096         (SVE_PT_REGS_OFFSET): Likewise.
6097         (SVE_PT_FPSIMD_OFFSET): Likewise.
6098         (SVE_PT_FPSIMD_SIZE): Likewise.
6099         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6100         (SVE_PT_SVE_PREG_SIZE): Likewise.
6101         (SVE_PT_SVE_FFR_SIZE): Likewise.
6102         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6103         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6104         (__SVE_SIG_TO_PT): Likewise.
6105         (SVE_PT_SVE_OFFSET): Likewise.
6106         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6107         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6108         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6109         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6110         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6111         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6112         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6113         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6114         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6115         (SVE_PT_SVE_SIZE): Likewise.
6116         (SVE_PT_SIZE): Likewise.
6117         (HAS_SVE_STATE): New define.
6118
6119 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6120
6121         * nat/aarch64-sve-linux-sigcontext.h: New file.
6122         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6123         new files.
6124         (SVE_VQ_MIN): Likewise.
6125         (SVE_VQ_MAX): Likewise.
6126         (SVE_VL_MIN): Likewise.
6127         (SVE_VL_MAX): Likewise.
6128         (SVE_NUM_ZREGS): Likewise.
6129         (SVE_NUM_PREGS): Likewise.
6130         (sve_vl_valid): Likewise.
6131         (struct user_sve_header): Likewise.
6132
6133 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6134             Richard Bunt <Richard.Bunt@arm.com>
6135
6136         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6137         was requested by GDB.
6138
6139 2018-06-15  Tom de Vries  <tdevries@suse.de>
6140
6141         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6142
6143 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6144
6145         * gnulib/update-gnulib.sh: Print expected versions of
6146         autoconf/aclocal.
6147
6148 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6149
6150         * arch-utils.c (default_type_align): Use type_length_units.
6151         * gdbtypes.c (type_align): Use type_length_units.
6152
6153 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6154
6155         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6156         of 'define' command.
6157
6158 2018-06-14  Tom de Vries  <tdevries@suse.de>
6159
6160         PR cli/22573
6161         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6162         get_no_prettyformat_print_options.
6163
6164 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6165
6166         * sparc-nat.h: Include target.h.
6167         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6168         <fetch_registers>: Remove this argument in function call.
6169         <store_registers>: Remove this argument in function call, remove
6170         extra semicolon.
6171         <low_forget_process>: Call sparc64_forget_process instead of
6172         sparc_forget_process.
6173
6174 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6175
6176         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6177         (procfs_target::make_corefile_notes): Adjust to new
6178         target_read_alloc return type.
6179
6180 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6181             Stephen Roberts  <stephen.roberts@arm.com>
6182
6183         PR gdb/22882
6184         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6185         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6186         Move should_notify_stop local into more inner scope.
6187
6188 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6189             Stephen Roberts  <stephen.roberts@arm.com>
6190
6191         PR gdb/22882
6192         * infrun.c (resume_1): Add call to mark_async_event_handler.
6193
6194 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6195
6196         * infrun.c (do_target_wait): Change old version of $pc printed.
6197
6198 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6199
6200         * dwarf2read.c (read_index_from_section): Rename to...
6201         (read_gdb_index_from_section): ... this, update all callers.
6202         (dwarf2_read_index): Rename to...
6203         (dwarf2_read_gdb_index): ... this, update all callers.
6204
6205 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6206
6207         * gdb/hppa-linux-nat.c
6208         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6209         hppa_linux_nat_target::fetch_registers.
6210
6211 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6212
6213         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6214         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6215         (AARCH64_DWARF_SVE_FFR): Likewise.
6216         (AARCH64_DWARF_SVE_P0): Likewise.
6217         (AARCH64_DWARF_SVE_Z0): Likewise.
6218
6219 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6220
6221         * common/common-regcache.h (raw_compare): New function.
6222         * regcache.c (regcache::raw_compare): Likewise.
6223         * regcache.h (regcache::raw_compare): New declaration.
6224
6225 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6226
6227         * common/common-regcache.h (reg_buffer_common): New structure.
6228         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6229         (reg_buffer::raw_supply): Likewise.
6230         (reg_buffer::raw_supply_integer): Likewise.
6231         (reg_buffer::raw_supply_zeroed): Likewise.
6232         (reg_buffer::raw_collect): Likewise.
6233         (reg_buffer::raw_collect_integer): Likewise.
6234         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6235         (reg_buffer::raw_supply): Likewise.
6236         (reg_buffer::raw_supply_integer): Likewise.
6237         (reg_buffer::raw_supply_zeroed): Likewise.
6238         (reg_buffer::raw_collect): Likewise.
6239         (reg_buffer::raw_collect_integer): Likewise.
6240
6241 2018-06-10  Tom Tromey  <tom@tromey.com>
6242
6243         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6244         (class remote_state) <stop_reply_queue>: Now std::vector.
6245         (remote_state::~remote_state)
6246         (remote_target::stop_reply_queue_length): Update.
6247         (struct queue_iter_param, remove_child_of_pending_fork)
6248         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6249         (check_pending_event_prevents_wildcard_vcont_callback)
6250         (remove_stop_reply_for_inferior)
6251         (remove_stop_reply_of_remote_state)
6252         (remote_notif_remove_once_on_match)
6253         (stop_reply_match_ptid_and_ws)
6254         (remote_kill_child_of_pending_fork): Remove.
6255         (remote_target::remove_new_fork_children)
6256         (remote_target::check_pending_events_prevent_wildcard_vcont)
6257         (remote_target::discard_pending_stop_replies)
6258         (remote_target::discard_pending_stop_replies_in_queue)
6259         (remote_target::remote_notif_remove_queued_reply)
6260         (remote_target::queued_stop_reply)
6261         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6262         (remote_target::wait, remote_target::kill_new_fork_children)
6263         (remote_target::async): Update.
6264
6265 2018-06-10  Tom Tromey  <tom@tromey.com>
6266
6267         * record-full.c (record_full_arch_list_cleanups): Remove.
6268         (record_full_message): Use try/catch.
6269         (record_full_wait_cleanups): Remove.
6270         (record_full_wait_1): Use try/catch.
6271         (record_full_restore): Likewise.
6272
6273 2018-06-10  Tom Tromey  <tom@tromey.com>
6274
6275         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6276         declare VEC.  Add constructor.
6277         <in_target_beneath>: Now bool.
6278         (record_full_breakpoints): Now a std::vector, static.
6279         (record_full_sync_record_breakpoints)
6280         (record_full_init_record_breakpoints)
6281         (record_full_target::insert_breakpoint)
6282         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6283
6284 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6285
6286         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6287         * serial.c (serial_interface_lookup): Remove struct keyword.
6288
6289 2018-06-10  Tom Tromey  <tom@tromey.com>
6290
6291         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6292         method.
6293         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6294         a method.
6295         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6296         method.
6297         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6298         "beneath" as a method.
6299         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6300         Use "beneath" as a method.
6301
6302 2018-06-10  Tom Tromey  <tom@tromey.com>
6303
6304         * tracefile.c (struct trace_file_writer_deleter): New.
6305         <operator()>: Rename from trace_file_writer_xfree.
6306         (trace_file_writer_up): New typedef.
6307         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6308
6309 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6310
6311         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6312         <m_registers, m_register_status>: Change type to
6313         std::unique_ptr.
6314         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6315         XCNEWVEC.
6316
6317 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6318
6319         * common/common-regcache.h (enum register_status): Add
6320         underlying type "signed char".
6321         * regcache.h (reg_buffer) <m_register_status>: Change type to
6322         register_status *.
6323         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6324         register_status instead of signed char.
6325         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6326         (reg_buffer::get_register_status): Remove cast.
6327         (readable_regcache::raw_read): Remove cast.
6328         (readable_regcache::cooked_read): Remove cast.
6329
6330 2018-06-09  Tom Tromey  <tom@tromey.com>
6331
6332         * source.c (reverse_search_command, forward_search_command): Use
6333         scoped_fd.
6334
6335 2018-06-09  Tom Tromey  <tom@tromey.com>
6336
6337         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6338         (serial_ops_list): Now static, std::vector.
6339         (serial_interface_lookup, serial_add_interface): Update.
6340
6341 2018-06-09  Tom Tromey  <tom@tromey.com>
6342
6343         * dwarf2read.c (process_cu_includes): Update.
6344         (process_full_comp_unit): Update.
6345         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6346         std::vector.
6347
6348 2018-06-08  Paul Koning  <paul_koning@dell.com>
6349
6350         PR gdb/23252
6351
6352         * python/python.c (do_start_initialization):
6353         Avoid call to internal Python API.
6354         (init__gdb_module): New function.
6355
6356 2018-06-08  Gary Benson <gbenson@redhat.com>
6357
6358         * linux-thread-db.c (valprint.h): New include.
6359         (struct check_thread_db_info): New structure.
6360         (check_thread_db_on_load, tdb_testinfo): New static globals.
6361         (check_thread_db, check_thread_db_callback): New functions.
6362         (try_thread_db_load_1): Run integrity checks if requested.
6363         (maintenance_check_libthread_db): New function.
6364         (_initialize_thread_db): Register "maint check libthread-db"
6365         and "maint set/show check-libthread-db".
6366         * NEWS: Mention the above new commands.
6367
6368 2018-06-08  Tom Tromey  <tom@tromey.com>
6369
6370         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
6371         now a method.
6372
6373 2018-06-08  Tom Tromey  <tom@tromey.com>
6374
6375         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
6376
6377 2018-06-08  Tom Tromey  <tom@tromey.com>
6378
6379         * common/btrace-common.h (struct btrace_data): Add constructor,
6380         destructor, move assignment operator.
6381         <empty, clear, fini>: New methods.
6382         <format>: Initialize.
6383         (btrace_data_init, btrace_data_fini, btrace_data_clear)
6384         (btrace_data_empty): Don't declare.
6385         * common/btrace-common.c (btrace_data_init): Remove.
6386         (btrace_data::fini): Rename from btrace_data_fini.
6387         (btrace_data::empty): Rename from btrace_data_empty.
6388         (btrace_data::clear): Rename from btrace_data_clear.  Return
6389         bool.
6390         * btrace.h (make_cleanup_btrace_data): Don't declare.
6391         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
6392         (parse_xml_btrace): Update.
6393         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
6394         (maint_btrace_clear_packet_history_cmd): Update.
6395
6396 2018-06-07  Pedro Alves  <palves@redhat.com>
6397
6398         * target.h (target_ops) <beneath>: Now a method.  All references
6399         updated.
6400         (class target_stack): New.
6401         * target.c (g_target_stack): New.
6402         (g_current_top_target): Delete.
6403         (current_top_target): Get the top target out of g_target_stack.
6404         (target_stack::push, target_stack::unpush): New.
6405         (push_target, unpush_target): Reimplement.
6406         (target_is_pushed): Reimplement in terms of g_target_stack.
6407         (target_ops::beneath, target_stack::find_beneath): New.
6408
6409 2018-06-07  Pedro Alves  <palves@redhat.com>
6410
6411         * target.h (find_target_beneath): Delete declaration.
6412         * target.c (find_target_beneath): Delete definition.
6413         * aix-thread.c: All callers of find_target_beneath adjusted to
6414         call target_ops::beneath instead.
6415         * bsd-uthread.c: Likewise.
6416         * linux-thread-db.c: Likewise.
6417         * ravenscar-thread.c: Likewise.
6418         * sol-thread.c: Likewise.
6419         * spu-multiarch.c: Likewise.
6420
6421 2018-06-07  Pedro Alves  <palves@redhat.com>
6422
6423         * target.h (target_ops) <beneath>: Now a method.  All references
6424         updated.
6425         (target_ops) <m_beneath>: New.
6426         * target.c (target_ops::beneath): New.
6427         * corelow.c: Adjust all references to target_ops::beneath.
6428         * linux-thread-db.c: Likewise.
6429         * make-target-delegates: Likewise.
6430         * record-btrace.c: Likewise.
6431         * record-full.c: Likewise.
6432         * remote.c: Likewise.
6433         * target.c: Likewise.
6434         * target-delegates.c: Regenerate.
6435
6436 2018-06-07  Pedro Alves  <palves@redhat.com>
6437
6438         * target.h (target_stack): Delete.
6439         (current_top_target): Declare function.
6440         * target.c (target_stack): Delete.
6441         (g_current_top_target): New.
6442         (current_top_target): New function.
6443         * auxv.c: Use current_top_target instead of target_stack
6444         throughout.
6445         * avr-tdep.c: Likewise.
6446         * breakpoint.c: Likewise.
6447         * corefile.c: Likewise.
6448         * elfread.c: Likewise.
6449         * eval.c: Likewise.
6450         * exceptions.c: Likewise.
6451         * frame.c: Likewise.
6452         * gdbarch-selftests.c: Likewise.
6453         * gnu-v3-abi.c: Likewise.
6454         * ia64-tdep.c: Likewise.
6455         * ia64-vms-tdep.c: Likewise.
6456         * infcall.c: Likewise.
6457         * infcmd.c: Likewise.
6458         * infrun.c: Likewise.
6459         * linespec.c: Likewise.
6460         * linux-tdep.c: Likewise.
6461         * minsyms.c: Likewise.
6462         * ppc-linux-nat.c: Likewise.
6463         * ppc-linux-tdep.c: Likewise.
6464         * procfs.c: Likewise.
6465         * regcache.c: Likewise.
6466         * remote.c: Likewise.
6467         * rs6000-tdep.c: Likewise.
6468         * s390-linux-nat.c: Likewise.
6469         * s390-tdep.c: Likewise.
6470         * solib-aix.c: Likewise.
6471         * solib-darwin.c: Likewise.
6472         * solib-dsbt.c: Likewise.
6473         * solib-spu.c: Likewise.
6474         * solib-svr4.c: Likewise.
6475         * solib-target.c: Likewise.
6476         * sparc-tdep.c: Likewise.
6477         * sparc64-tdep.c: Likewise.
6478         * spu-tdep.c: Likewise.
6479         * symfile.c: Likewise.
6480         * symtab.c: Likewise.
6481         * target-descriptions.c: Likewise.
6482         * target-memory.c: Likewise.
6483         * target.c: Likewise.
6484         * target.h: Likewise.
6485         * tracefile-tfile.c: Likewise.
6486         * tracepoint.c: Likewise.
6487         * valops.c: Likewise.
6488         * valprint.c: Likewise.
6489         * value.c: Likewise.
6490         * windows-tdep.c: Likewise.
6491         * mi/mi-main.c: Likewise.
6492
6493 2018-06-07  Tom Tromey  <tom@tromey.com>
6494
6495         * valprint.h (build_address_symbolic): Declare.
6496         * printcmd.c (print_address_symbolic): Update.
6497         (build_address_symbolic): Change "name" and "filename" to
6498         std::string.
6499         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
6500         Update.
6501         * defs.h (build_address_symbolic): Remove declaration.
6502
6503 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
6504
6505         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
6506         (aarch64_vnv_type): Add function.
6507         (aarch64_pseudo_register_name): Add V regs for SVE.
6508         (aarch64_pseudo_register_type): Likewise.
6509         (aarch64_pseudo_register_reggroup_p): Likewise.
6510         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
6511         (aarch64_pseudo_read_value): Add V regs for SVE.
6512         (aarch64_pseudo_write_2): Use V0 offset for SVE
6513         (aarch64_pseudo_write): Add V regs for SVE.
6514         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
6515
6516 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
6517
6518         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
6519         (sve_vl_from_vq): Likewise.
6520
6521 2018-06-05  Tom Tromey  <tom@tromey.com>
6522
6523         * cli/cli-cmds.c (show_version): Update.
6524         * top.c (print_gdb_version): Add "interactive" parameter.
6525         Update.
6526         * main.c (captured_main_1): Update.
6527         * top.h (print_gdb_version): Add "interactive" parameter and a
6528         comment.
6529
6530 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
6531
6532         * common/enum-flags.h: Add trailing semicolon to example in
6533         comment.
6534
6535 2018-06-05  Tom Tromey  <tom@tromey.com>
6536
6537         PR cli/12326:
6538         * NEWS: Add entry about pager.
6539         * utils.c (pagination_disabled_for_command): New global.
6540         (prompt_for_continue): Allow "c" response to prompt.
6541         (reinitialize_more_filter): Clear
6542         pagination_disabled_for_command.
6543         (fputs_maybe_filtered): Check pagination_disabled_for_command.
6544
6545 2018-06-04  Tom Tromey  <tom@tromey.com>
6546
6547         * ada-lang.h (ada_lookup_symbol_list): Update.
6548         * ada-lang.c (resolve_subexp): Update.
6549         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
6550         parameter.
6551         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
6552         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
6553         results parameter to std::vector.
6554         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
6555         Update.
6556         * ada-exp.y (block_lookup): Update.
6557         (select_possible_type_sym): Change type of syms.  Remove nsyms
6558         parameter.
6559         (write_var_or_type, write_name_assoc): Update.
6560
6561 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
6562
6563         * windows-nat.c (windows_nat_target::xfer_partial): Return
6564         TARGET_XFER_E_IO if we need to delegate to the target beneath
6565         but BENEATH is NULL.
6566
6567 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
6568
6569         * Makefile.in (config.status): Add configure.nat as a
6570         dependency.
6571
6572 2018-06-04  Tom Tromey  <tom@tromey.com>
6573
6574         * cp-name-parser.y (cpname_state): Add method declarations.
6575         (HANDLE_QUAL): Update.
6576         (cpname_state::d_grab, cpname_state::fill_comp)
6577         (cpname_state::make_operator, cpname_state::make_dtor)
6578         (cpname_state::make_builtin_type, cpname_state::make_name)
6579         (cpname_state::d_qualify, cpname_state::d_int_type)
6580         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
6581         (%union): Move earlier.
6582
6583 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6584
6585         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
6586
6587 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6588
6589         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
6590         (aarch64_pseudo_write_1): Likewise.
6591         (aarch64_pseudo_read_value): Use helper.
6592         (aarch64_pseudo_write): Likewise.
6593
6594 2018-06-04  Pedro Alves  <palves@redhat.com>
6595
6596         * darwin-nat.c (darwin_ops): Delete.
6597         (darwin_attach_pid): Use get_native_target.
6598
6599 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6600
6601         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
6602         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
6603
6604 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6605
6606         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
6607         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
6608         (aarch64_gdbarch_init): Check for SVE.
6609         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
6610
6611 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6612
6613         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
6614         * aarch64-tdep.h (aarch64_read_description): Likewise.
6615         * arch/aarch64.c (aarch64_create_target_description): Likewise.
6616         * arch/aarch64.h (aarch64_create_target_description): Likewise.
6617         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
6618         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
6619         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
6620
6621 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
6622
6623         * value.c (value_fetch_lazy_bitfield): New.
6624         (value_fetch_lazy_memory): New.
6625         (value_fetch_lazy_register): New.
6626         (value_fetch_lazy): Factor out to smaller functions.
6627
6628 2018-06-01  Tom Tromey  <tom@tromey.com>
6629
6630         * cp-name-parser.y (backslashable, represented): Now const.
6631
6632 2018-06-01  Tom Tromey  <tom@tromey.com>
6633
6634         * cp-name-parser.y: Include parser-defs.h.
6635         (parser_fprintf): Remove declaration.
6636
6637 2018-06-01  Tom Tromey  <tom@tromey.com>
6638
6639         * cp-name-parser.y: Use %pure-parser, %lex-param, and
6640         %parse-param.
6641         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
6642         (global_result): Remove globals.
6643         (struct cpname_state): New.
6644         (yyparse): Don't declare.
6645         (yylex, yyerror): Move declarations after %union.
6646         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
6647         (make_name): Add state parameter.
6648         Update all callers.
6649         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
6650         parameter.
6651         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
6652         Update.
6653         (yylex): Add lvalp, state parameters.
6654         (yyerror): Add state parameter.
6655         (cp_demangled_name_to_comp): Update.
6656
6657 2018-06-01  Tom Tromey  <tom@tromey.com>
6658
6659         * cp-name-parser.y (parser_fprintf): Declare.
6660         (GDB_YY_REMAP_PREFIX): Define.
6661         Include yy-remap.h.  Don't redefine yy* identifiers.
6662
6663 2018-06-01  Tom Tromey  <tom@tromey.com>
6664
6665         * python/py-type.c (typy_legacy_template_argument): Update.
6666         * cp-support.h (cp_demangled_name_to_comp): Update.
6667         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
6668         parameter to be a "std::string *".
6669         (main): Update.
6670
6671 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
6672
6673         * ada-lex.l: Include "diagnostics.h" instead of
6674         "common/diagnostics.h".
6675         * unittests/environ-selftests.c: Likewise.
6676         * common/diagnostics.h: Moved to ../include.
6677
6678 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
6679
6680         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
6681         to language_mode_manual while calling breakpoint_re_set_one.
6682
6683 2018-06-01  Tom Tromey  <tom@tromey.com>
6684
6685         * valops.c (value_cast_structs, destructor_name_p): Update.
6686         * symtab.c (gdb_mangle_name): Update.
6687         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
6688         Update.
6689         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
6690         (pascal_object_print_value_fields, pascal_object_print_value):
6691         Update.
6692         * p-typeprint.c (pascal_type_print_derivation_info): Update.
6693         * linespec.c (find_methods): Update.
6694         * gdbtypes.h (type_name_no_tag): Remove.
6695         (type_name_or_error): Rename from type_name_no_tag_or_error.
6696         * gdbtypes.c (type_name_no_tag): Remove.
6697         (type_name_or_error): Rename from type_name_no_tag_or_error.
6698         (lookup_struct_elt_type, check_typedef): Update.
6699         * expprint.c (print_subexp_standard): Update.
6700         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
6701         * d-namespace.c (d_lookup_nested_symbol): Update.
6702         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
6703         (cp_print_class_member): Update.
6704         * cp-namespace.c (cp_lookup_nested_symbol): Update.
6705         * completer.c (add_struct_fields): Update.
6706         * c-typeprint.c (cp_type_print_derivation_info)
6707         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
6708         Update.
6709         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
6710         (ada_prefer_type, ada_is_exception_sym): Update.
6711
6712 2018-06-01  Tom Tromey  <tom@tromey.com>
6713
6714         * valops.c (enum_constant_from_type, value_namespace_elt)
6715         (value_maybe_namespace_elt): Update.
6716         * valarith.c (find_size_for_pointer_math): Update.
6717         * target-descriptions.c (make_gdb_type): Update.
6718         * symmisc.c (print_symbol): Update.
6719         * stabsread.c (define_symbol, read_type)
6720         (complain_about_struct_wipeout, add_undefined_type)
6721         (cleanup_undefined_types_1): Update.
6722         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
6723         (rust_range_type_p, val_print_struct, rust_print_struct_def)
6724         (rust_internal_print_type, rust_composite_type)
6725         (rust_evaluate_funcall, rust_evaluate_subexp)
6726         (rust_inclusive_range_type_p): Update.
6727         * python/py-type.c (typy_get_tag): Update.
6728         * p-typeprint.c (pascal_type_print_base): Update.
6729         * mdebugread.c (parse_symbol, parse_type): Update.
6730         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
6731         Update.
6732         * guile/scm-type.c (gdbscm_type_tag): Update.
6733         * go-lang.c (sixg_string_p): Update.
6734         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
6735         Update.
6736         * gdbtypes.h (struct main_type) <tag_name>: Remove.
6737         (TYPE_TAG_NAME): Remove.
6738         * gdbtypes.c (type_name_no_tag): Simplify.
6739         (check_typedef, check_types_equal, recursive_dump_type)
6740         (copy_type_recursive, arch_composite_type): Update.
6741         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
6742         in summary mode when needed.
6743         * eval.c (evaluate_funcall): Update.
6744         * dwarf2read.c (fixup_go_packaging, read_structure_type)
6745         (process_structure_scope, read_enumeration_type)
6746         (read_namespace_type, read_module_type, determine_prefix): Update.
6747         * cp-support.c (inspect_type): Update.
6748         * coffread.c (process_coff_symbol, decode_base_type): Update.
6749         * c-varobj.c (c_is_path_expr_parent): Update.
6750         * c-typeprint.c (c_type_print_base_struct_union): Update.
6751         (c_type_print_base_1): Update.  Print struct/class/union/enum in
6752         summary when using C language.
6753         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
6754         (gen_maybe_namespace_elt): Update.
6755         * ada-lang.c (ada_type_name): Simplify.
6756         (empty_record, ada_template_to_fixed_record_type_1)
6757         (template_to_static_fixed_type)
6758         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
6759
6760 2018-06-01  Tom Tromey  <tom@tromey.com>
6761
6762         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
6763         c_print_type.
6764         * c-typeprint.c (c_print_type_1): Add "language" parameter.
6765         (c_print_type): Update.
6766         (c_print_type): New overload.
6767         (c_type_print_varspec_prefix, c_type_print_args)
6768         (c_type_print_varspec_suffix, c_print_type_no_offsets)
6769         (c_type_print_base_struct_union, c_type_print_base_1)
6770         (cp_type_print_method_args): Add "language" parameter.
6771         (c_type_print_base): Update.
6772         * c-lang.h (c_print_type): Add new overload.
6773
6774 2018-06-01  Tom Tromey  <tom@tromey.com>
6775
6776         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
6777         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
6778
6779 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
6780
6781         * aarch64-tdep.c (aarch64_sve_register_names): New const
6782         var.
6783         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
6784         (AARCH64_SVE_Z_REGS_NUM): New define.
6785         (AARCH64_SVE_P_REGS_NUM): Likewise.
6786         (AARCH64_SVE_NUM_REGS): Likewise.
6787
6788 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
6789
6790         * nat/linux-ptrace.h [__alpha__]
6791         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
6792         definitions.
6793
6794 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
6795
6796         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
6797         the endianness selected.
6798         * NEWS: Document `set endian auto' mode operation update.
6799
6800 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6801
6802         * Makefile.in: Add new header.
6803         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
6804         (sve_vl_from_vg): Likewise.
6805         (sve_vq_from_vl): Likewise.
6806         (sve_vl_from_vq): Likewise.
6807         (sve_vq_from_vg): Likewise.
6808         (sve_vg_from_vq): Likewise.
6809         * configure.nat: Add new c file.
6810         * nat/aarch64-sve-linux-ptrace.c: New file.
6811         * nat/aarch64-sve-linux-ptrace.h: New file.
6812
6813 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6814
6815         * aarch64-linux-nat.c (aarch64_linux_read_description):
6816         Add parmeter zero.
6817         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
6818         Likewise.
6819         * aarch64-tdep.c (tdesc_aarch64_list): Add.
6820         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
6821         (aarch64_gdbarch_init): Add parmeter zero.
6822         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
6823         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
6824         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
6825         parmeter.
6826         * doc/gdb.texinfo: Describe SVE feature
6827         * features/aarch64-sve.c: New file.
6828
6829 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
6830
6831         PR gdb/23210
6832         * gdbarch.sh (significant_addr_bit): Default to zero when
6833         not set by target architecture.
6834         * gdbarch.c: Re-generated.
6835         * utils.c (address_significant): Update.
6836
6837 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
6838
6839         * stack.c (func_command): Remove trailing newline in call to error.
6840
6841 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6842
6843         * regcache.h (regcache_raw_collect): Remove, update callers to
6844         use regcache::raw_collect.
6845         * regcache.c (regcache_raw_collect): Remove.
6846
6847 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6848
6849         * regcache.h (regcache_raw_supply): Remove, update callers to
6850         use detached_regcache::raw_supply.
6851         * regcache.c (regcache_raw_supply): Remove.
6852
6853 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6854
6855         * regcache.h (regcache_cooked_write_part): Remove, update
6856         callers to use regcache::cooked_write_part.
6857         * regcache.c (regcache_cooked_write_part): Remove.
6858
6859 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6860
6861         * regcache.h (regcache_cooked_read_part): Remove, update callers
6862         to use readable_regcache::cooked_read_part.
6863         * regcache.c (regcache_cooked_read_part): Remove.
6864
6865 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6866
6867         * regcache.h (regcache_cooked_read_value): Remove, update
6868         callers to use readable_regcache::cooked_read_value.
6869         * regcache.c (regcache_cooked_read_value): Remove.
6870
6871 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6872
6873         * regcache.h (regcache_cooked_write): Remove, update callers to
6874         use regcache::cooked_write.
6875         * regcache.c (regcache_cooked_write): Remove.
6876
6877 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6878
6879         * regcache.h (regcache_invalidate): Remove, update callers to
6880         use detached_regcache::invalidate instead.
6881         * regcache.c (regcache_invalidate): Remove.
6882
6883 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6884
6885         * regcache.h (regcache_raw_write_part): Remove, update callers
6886         to use regcache::raw_write_part instead.
6887         * regcache.c (regcache_raw_write_part): Remove.
6888
6889 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6890
6891         * regcache.h (regcache_raw_read_part): Remove, update callers to
6892         use readable_regcache::raw_read_part instead.
6893         * regcache.c (regcache_raw_read_part): Remove.
6894
6895 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6896
6897         * regcache.h (regcache_cooked_read): Remove, update callers to
6898         use readable_regcache::cooked_read instead.
6899         * regcache.c (regcache_cooked_read): Remove.
6900
6901 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6902
6903         * regcache.h (regcache_raw_write): Remove, update callers to use
6904         regcache::raw_write instead.
6905         * regcache.c (regcache_raw_write): Remove.
6906
6907 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6908
6909         * regcache.h (regcache_raw_read): Remove, update callers to use
6910         readable_regcache::raw_read instead.
6911         * regcache.c (regcache_raw_read): Remove.
6912
6913 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6914
6915         * regcache.h (regcache_raw_update): Remove, update callers to
6916         use readable_regcache::raw_update instead.
6917         * regcache.c (regcache_raw_update): Remove.
6918
6919 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6920
6921         * regcache.h (regcache_register_status): Remove, update callers
6922         to use reg_buffer::get_register_status directly instead.
6923         * regcache.c (regcache_register_status): Remove.
6924
6925 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6926
6927         * regcache.h (regcache_get_ptid): Remove, update all callers to
6928         call regcache::ptid instead.
6929         * regcache.c (regcache_get_ptid): Remove.
6930
6931 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6932
6933         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
6934
6935 2018-05-30  Pedro Alves  <palves@redhat.com>
6936
6937         * common/common-exceptions.h (exception_rethrow): Use
6938         ATTRIBUTE_NORETURN.
6939
6940 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
6941
6942         * breakpoint.c (print_solib_event, check_status_catch_solib):
6943         Remove struct keyword in range-based for loops.
6944         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
6945         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
6946         Likewise.
6947         * linespec.c (find_superclass_methods, search_minsyms_for_name):
6948         Likewise.
6949         * symfile.c (addr_info_make_relative): Likewise.
6950         * thread.c (value_in_thread_stack_temporaries): Likewise.
6951
6952 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
6953
6954         PR gdb/16841
6955         * valops.c (value_struct_elt_for_reference): Call check_typedef on
6956         aggregate type to get its real type before accessing it.
6957
6958 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
6959
6960         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
6961         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
6962         * coff-pe-read.c (add_pe_forwarded_sym): Replace
6963         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
6964         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
6965         * jit.c (jit_breakpoint_re_set_internal): Likewise.
6966         * printcmd.c (info_address_command): Likewise.
6967
6968 2018-05-29  Tom Tromey  <tom@tromey.com>
6969
6970         * windows-nat.c (handle_exception): Update fall-through comment.
6971
6972 2018-05-29  Tom Tromey  <tom@tromey.com>
6973
6974         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
6975         (struct program_space) <added_solibs>: Now a std::vector.
6976         * breakpoint.c (print_solib_event): Update.
6977         (check_status_catch_solib): Update.
6978         * progspace.c (clear_program_space_solib_cache): Update.
6979         * solib.c (update_solib_list): Update.
6980
6981 2018-05-29  Tom Tromey  <tom@tromey.com>
6982
6983         * python/py-type.c (typy_richcompare): Update.
6984         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
6985         * gdbtypes.h (types_deeply_equal): Return bool.
6986         (types_equal): Likewise.
6987         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
6988         declare VEC.
6989         (check_types_equal): Change worklist to std::vector.  Return
6990         bool.
6991         (struct type_equality_entry): Add constructor.
6992         (compare_maybe_null_strings): Return bool.
6993         (check_types_worklist): Return bool.  Change worklist to
6994         std::vector.
6995         (types_deeply_equal): Use std::vector.
6996         (types_equal): Return bool.
6997         (compare_maybe_null_strings): Simplify.
6998
6999 2018-05-29  Tom Tromey  <tom@tromey.com>
7000
7001         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7002
7003 2018-05-29  Tom Tromey  <tom@tromey.com>
7004
7005         * objc-lang.h: Don't include cp-support.h.
7006         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7007         declare VEC.
7008
7009 2018-05-27  Tom Tromey  <tom@tromey.com>
7010
7011         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7012
7013 2018-05-25  Tom Tromey  <tom@tromey.com>
7014
7015         * value.c (value::location): Initialize.
7016
7017 2018-05-25  Tom Tromey  <tom@tromey.com>
7018
7019         * dbxread.c (init_bincl_list): Remove.
7020         (bincl_list): Now a std::vector.
7021         (bincls_allocated, next_bincl): Remove.
7022         (free_bincl_list, do_free_bincl_list_cleanup)
7023         (make_cleanup_free_bincl_list): Remove.
7024         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7025         unique_xmalloc_ptr.
7026         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7027         (struct header_file_location): Add constructor.
7028         (add_bincl_to_list): Remove.
7029
7030 2018-05-25  Tom Tromey  <tom@tromey.com>
7031
7032         * tui/tui.c (tui_enable): Update.
7033         * mi/mi-interp.c (mi_interp::init): Update.
7034         * interps.h (class interp) <name>: New method.
7035         <m_name>: Rename from name.
7036         (~scoped_restore_interp): Update.
7037         * interps.c (interp::interp): Update.
7038         (interp_add, interp_set, interp_lookup_existing)
7039         (current_interp_named_p): Update.
7040
7041 2018-05-25  Tom Tromey  <tom@tromey.com>
7042
7043         * interps.c (interp_name): Remove.
7044         * mi/mi-interp.c (mi_interp::init): Update.
7045         * interps.h (interp_name): Remove.
7046         (~scoped_restore_interp): Update.
7047         * tui/tui.c (tui_enable): Update.
7048
7049 2018-05-25  Tom Tromey  <tom@tromey.com>
7050
7051         * utils.c (fputs_maybe_filtered): Update.
7052         * linespec.c (decode_line_full): Update.
7053         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7054         (mi_print_breakpoint_for_event, mi_solib_loaded)
7055         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7056         (mi_user_selected_context_changed): Update.
7057         * mi/mi-main.c (mi_execute_command): Update.
7058         * cli/cli-script.c (execute_control_command): Update.
7059         * python/python.c (execute_gdb_command): Update.
7060         * solib.c (info_sharedlibrary_command): Update.
7061         * interps.c (interp_ui_out): Remove.
7062         * interps.h (interp_ui_out): Remove.
7063
7064 2018-05-25  Tom Tromey  <tom@tromey.com>
7065
7066         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7067         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7068         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7069
7070 2018-05-25  Tom Tromey  <tom@tromey.com>
7071
7072         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7073         * interps.c (interp_exec): Use scoped_restore.
7074
7075 2018-05-25  Tom Tromey  <tom@tromey.com>
7076
7077         * remote.c (remote_target::remote_file_get): Use
7078         gdb::byte_vector.
7079         (remote_target::remote_file_put): Likewise.
7080
7081 2018-05-25  Tom Tromey  <tom@tromey.com>
7082
7083         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7084         a std::string.
7085         (get_pe_section_index, add_pe_exported_sym): Update.
7086         (read_pe_exported_syms): Use gdb::def_vector.
7087
7088 2018-05-25  Tom Tromey  <tom@tromey.com>
7089
7090         * frame.c (remove_prev_frame): Remove.
7091         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7092
7093 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7094
7095         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7096         Remove prototypes.
7097         * mips-linux-nat.c (supply_fpregset): Always call
7098         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7099         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7100         `mips_fill_fpregset'.
7101         * mips-linux-tdep.c (mips_supply_fpregset)
7102         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7103         (mips_fill_fpregset_wrapper): Remove functions.
7104         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7105         (mips_linux_fpregset): Remove variable.
7106         (mips_linux_iterate_over_regset_sections): Use
7107         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7108         (mips_linux_o32_sigframe_init): Remove comment.
7109
7110 2018-05-25  Pedro Alves  <palves@redhat.com>
7111
7112         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7113         (struct readahead_cache, struct packet_reg, struct
7114         remote_arch_state, class remote_state): Move higher up in the
7115         file.
7116         (remote_target::m_remote_state): Now an object instead of a pointer.
7117         (remote_target::get_remote_state): Adjust.
7118
7119 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7120
7121         * stack.c (select_and_print_frame): Delete.
7122         (struct function_bounds): Move struct within function.
7123         (func_command): Most content moved into new function
7124         find_frame_for_function, use new function, print result, add
7125         function comment.
7126         (find_frame_for_function): New function, now returns a result.
7127
7128 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7129
7130         * stack.c (iterate_over_block_arg_vars): Fix comment.
7131         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7132
7133 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7134
7135         PR gdb/23203
7136         * frame.c
7137         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7138         Define.
7139         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7140         Define.
7141         * frame.h (class scoped_restore_selected_frame): New class.
7142         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7143         of any exception, use scoped_restore_selected_frame to restore the
7144         frame instead.
7145
7146 2018-05-24  Pedro Alves  <palves@redhat.com>
7147
7148         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7149         override.
7150
7151 2018-05-23  Tom Tromey  <tom@tromey.com>
7152
7153         * complaints.c (struct complaints): Remove.
7154         (symfile_complaint_book): Remove.
7155         (series): New global.
7156         (complaint_internal): Update.
7157         (clear_complaints): Update.
7158
7159 2018-05-23  Tom Tromey  <tom@tromey.com>
7160
7161         * complaints.c (counters): New global.
7162         (struct complain): Remove.
7163         (struct complaints) <root>: Remove.
7164         (complaint_sentinel): Remove.
7165         (symfile_complaint_book): Update.
7166         (find_complaint) Remove.
7167         (complaint_internal, clear_complaints): Update.
7168
7169 2018-05-23  Tom Tromey  <tom@tromey.com>
7170
7171         * complaints.c (struct complain) <file, line>: Remove.
7172         (find_complaint): Remove file, line parameters.
7173         (complaint_internal): Update.
7174
7175 2018-05-23  Tom Tromey  <tom@tromey.com>
7176
7177         * complaints.c (vcomplaint): Remove.
7178         (complaint_internal) Merge in contents of vcomplaint.
7179
7180 2018-05-23  Tom Tromey  <tom@tromey.com>
7181
7182         * complaints.c (struct complaints) <explanation>: Remove.
7183         (symfile_explanations): Remove.
7184         (symfile_complaint_book): Update.
7185         (vcomplaint): Update.
7186         (struct explanation): Remove.
7187
7188 2018-05-23  Tom Tromey  <tom@tromey.com>
7189
7190         * complaints.c (symfile_complaints): Remove.
7191         (complaint_internal): Remove "complaints" parameter.
7192         (clear_complaints, vcomplaint): Remove "c" parameter.
7193         (get_complaints): Remove.
7194         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7195         (dwarf2_debug_line_missing_file_complaint)
7196         (dwarf2_debug_line_missing_end_sequence_complaint)
7197         (dwarf2_complex_location_expr_complaint)
7198         (dwarf2_const_value_length_mismatch_complaint)
7199         (dwarf2_section_buffer_overflow_complaint)
7200         (dwarf2_macro_malformed_definition_complaint)
7201         (dwarf2_invalid_attrib_class_complaint)
7202         (create_addrmap_from_index, dw2_symtab_iter_next)
7203         (dw2_expand_marked_cus)
7204         (dw2_debug_names_iterator::find_vec_in_debug_names)
7205         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7206         (create_debug_type_hash_table, init_cutu_and_read_dies)
7207         (partial_die_parent_scope, add_partial_enumeration)
7208         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7209         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7210         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7211         (create_cus_hash_table, create_dwp_hash_table)
7212         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7213         (dwarf2_rnglists_process, dwarf2_ranges_process)
7214         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7215         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7216         (handle_struct_member_die, process_structure_scope)
7217         (read_array_type, read_common_block, read_module_type)
7218         (read_tag_pointer_type, read_typedef, read_base_type)
7219         (read_subrange_type, load_partial_dies, partial_die_info::read)
7220         (partial_die_info::read, partial_die_info::read)
7221         (partial_die_info::read, read_checked_initial_length_and_offset)
7222         (dwarf2_string_attr, read_formatted_entries)
7223         (dwarf_decode_line_header)
7224         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7225         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7226         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7227         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7228         (get_signatured_type, get_DW_AT_signature_type)
7229         (decode_locdesc, file_file_name, consume_improper_spaces)
7230         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7231         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7232         (dwarf2_symbol_mark_computed, set_die_type)
7233         (read_attribute_value): Update.
7234         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7235         Update.
7236         * dbxread.c (unknown_symtype_complaint)
7237         (lbrac_mismatch_complaint, repeated_header_complaint)
7238         (set_namestring, function_outside_compilation_unit_complaint)
7239         (read_dbx_symtab, process_one_symbol): Update.
7240         * gdbtypes.c (stub_noname_complaint): Update.
7241         * windows-nat.c (handle_unload_dll): Update.
7242         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7243         (decode_base_type): Update.
7244         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7245         (eb_complaint, record_include_begin, record_include_end)
7246         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7247         (process_xcoff_symbol, read_symbol)
7248         (function_outside_compilation_unit_complaint)
7249         (scan_xcoff_symtab): Update.
7250         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7251         * buildsym.c (finish_block_internal, make_blockvector)
7252         (end_symtab_get_static_block, augment_type_symtab): Update.
7253         * dtrace-probe.c (dtrace_process_dof)
7254         (dtrace_static_probe_ops::get_probes): Update.
7255         * complaints.h (struct complaint): Don't declare.
7256         (symfile_complaints): Remove.
7257         (complaint_internal): Remove "complaints" parameter.
7258         (complaint): Likewise.
7259         (clear_complaints): Likewise.
7260         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7261         (reread_symbols): Update.
7262         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7263         (dwarf2_frame_cache, decode_frame_entry): Update.
7264         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7265         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7266         (info_selectors_command): Update.
7267         * macrotab.c (macro_include, check_for_redefinition)
7268         (macro_undef): Update.
7269         * objfiles.c (filter_overlapping_sections): Update.
7270         * stabsread.c (invalid_cpp_abbrev_complaint)
7271         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7272         (define_symbol, error_type, read_type, rs6000_builtin_type)
7273         (stabs_method_name_from_physname, read_member_functions)
7274         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7275         (attach_fields_to_type, complain_about_struct_wipeout)
7276         (read_range_type, read_args, common_block_start)
7277         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7278         Update.
7279         * mdebugread.c (index_complaint, unknown_ext_complaint)
7280         (basic_type_complaint, bad_tag_guess_complaint)
7281         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7282         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7283         (parse_procedure, parse_lines)
7284         (function_outside_compilation_unit_complaint)
7285         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7286         (bad_tag_guess_complaint, reg_value_complaint): Update.
7287         * cp-support.c (demangled_name_complaint): Update.
7288         * macroscope.c (sal_macro_scope): Update.
7289         * dwarf-index-write.c (class debug_names): Update.
7290
7291 2018-05-23  Tom Tromey  <tom@tromey.com>
7292
7293         * complaints.c (clear_complaints): Remove "noisy" parameter.
7294         * complaints.h (clear_complaints): Update.
7295         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7296         (reread_symbols): Update.
7297
7298 2018-05-23  Tom Tromey  <tom@tromey.com>
7299
7300         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7301         SUBSEQUENT_MESSAGE.
7302         (vcomplaint, clear_complaints): Update.
7303         (symfile_explanations): Remove some messages.
7304
7305 2018-05-23  Tom Tromey  <tom@tromey.com>
7306
7307         * complaints.c (internal_complaint): Remove.
7308         * complaints.h (internal_complaint): Remove.
7309
7310 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7311
7312         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7313
7314 2018-05-22  Pedro Alves  <palves@redhat.com>
7315
7316         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7317         (remote_fileio_badfd, remote_fileio_return_errno)
7318         (remote_fileio_return_success, remote_fileio_func_open)
7319         (remote_fileio_func_open, remote_fileio_func_close)
7320         (remote_fileio_func_read, remote_fileio_func_write)
7321         (remote_fileio_func_lseek, remote_fileio_func_rename)
7322         (remote_fileio_func_unlink, remote_fileio_func_stat)
7323         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7324         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7325         remote_target parameter.
7326         (remote_fio_func_map) <func>: Add remote_target parameter.
7327         (do_remote_fileio_request, remote_fileio_request):
7328         * remote-fileio.h (remote_fileio_request):
7329         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7330         remote_target parameter.
7331         (remote_notif_process, handle_notification): Adjust to pass down
7332         the remote.
7333         (remote_notif_state_allocate): Add remote_target parameter.  Save
7334         it.
7335         * remote-notif.h (struct remote_target): Forward declare.
7336         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7337         remote_target parameter.
7338         (struct remote_notif_state) <remote>: New field.
7339         (remote_notif_ack, remote_notif_parse): Add remote_target
7340         parameter.
7341         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7342         remote_target parameter.
7343         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7344         (threads_listing_context, rmt_thread_action, protocol_feature)
7345         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7346         (packet_result, struct threads_listing_context, remote_state):
7347         Move definitions and declarations higher up.
7348         (remote_target) <~remote_target>: Declare.
7349         (remote_download_command_source, remote_file_put, remote_file_get)
7350         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7351         (remote_hostio_pread_vFile, remote_hostio_send_command)
7352         (remote_hostio_set_filesystem, remote_hostio_open)
7353         (remote_hostio_close, remote_hostio_unlink, remote_state)
7354         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7355         (get_memory_write_packet_size, get_memory_read_packet_size)
7356         (append_pending_thread_resumptions, remote_detach_1)
7357         (append_resumption, remote_resume_with_vcont)
7358         (add_current_inferior_and_thread, wait_ns, wait_as)
7359         (process_stop_reply, remote_notice_new_inferior)
7360         (process_initial_stop_replies, remote_add_thread)
7361         (btrace_sync_conf, remote_btrace_maybe_reopen)
7362         (remove_new_fork_children, kill_new_fork_children)
7363         (discard_pending_stop_replies, stop_reply_queue_length)
7364         (check_pending_events_prevent_wildcard_vcont)
7365         (discard_pending_stop_replies_in_queue, stop_reply)
7366         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
7367         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
7368         (remote_interrupt_as, remote_interrupt_ns)
7369         (remote_get_noisy_reply, remote_query_attached)
7370         (remote_add_inferior, remote_current_thread, get_current_thread)
7371         (set_thread, set_general_thread, set_continue_thread)
7372         (set_general_process, write_ptid)
7373         (remote_unpack_thread_info_response, remote_get_threadinfo)
7374         (parse_threadlist_response, remote_get_threadlist)
7375         (remote_threadlist_iterator, remote_get_threads_with_ql)
7376         (remote_get_threads_with_qxfer)
7377         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
7378         (get_offsets, remote_check_symbols, remote_supported_packet)
7379         (remote_query_supported, remote_packet_size)
7380         (remote_serial_quit_handler, remote_detach_pid)
7381         (remote_vcont_probe, remote_resume_with_hc)
7382         (send_interrupt_sequence, interrupt_query)
7383         (remote_notif_get_pending_events, fetch_register_using_p)
7384         (send_g_packet, process_g_packet, fetch_registers_using_g)
7385         (store_register_using_P, store_registers_using_G)
7386         (set_remote_traceframe, check_binary_download)
7387         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
7388         (remote_xfer_live_readonly_partial, remote_read_bytes)
7389         (remote_send_printf, remote_flash_write, readchar)
7390         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
7391         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
7392         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
7393         (extended_remote_disable_randomization, extended_remote_run)
7394         (send_environment_packet, extended_remote_environment_support)
7395         (extended_remote_set_inferior_cwd, remote_write_qxfer)
7396         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
7397         (packet_command): Now methods of ...
7398         (remote_target): ... this class.
7399         (m_remote_state) <remote_target>: New field.
7400         (struct remote_state) <stop_reply_queue,
7401         remote_async_inferior_event_token, wait_forever_enabled_p>: New
7402         fields.
7403         (remote_state::remote_state): Allocate stop_reply_queue.
7404         (remote_state): Delete global.
7405         (get_remote_state_raw): Delete.
7406         (remote_target::get_remote_state): Allocate m_remote_state on
7407         demand.
7408         (get_current_remote_target): New.
7409         (remote_ops, extended_remote_ops): Delete.
7410         (wait_forever_enabled_p, remote_async_inferior_event_token):
7411         Delete, moved to struct remote_state.
7412         (remote_target::close): Delete self.  Destruction bits split to
7413         ...
7414         (remote_target::~remote_target): ... this.
7415         (show_memory_packet_size): Adjust to use
7416         get_current_remote_target.
7417         (struct protocol_feature) <func>: Add remote_target parameter.
7418         All callers adjusted.
7419         (curr_quit_handler_target): New.
7420         (remote_serial_quit_handler): Reimplement.
7421         (remote_target::open_1): Adjust to use get_current_remote_target.
7422         Heap-allocate remote_target/extended_remote_target instances.
7423         (vcont_builder::vcont_builder): Add remote_target parameter, and
7424         save it in m_remote.  All callers adjusted.
7425         (vcont_builder::m_remote): New field.
7426         (vcont_builder::restart, vcont_builder::flush)
7427         (vcont_builder::push_action): Use it.
7428         (remote_target::commit_resume): Use it.
7429         (struct queue_iter_param) <remote>: New field.
7430         (remote_target::remove_new_fork_children): Fill in 'remote' field.
7431         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
7432         (check_pending_event_prevents_wildcard_vcont_callback)
7433         (remote_target::check_pending_events_prevent_wildcard_vcont)
7434         (remote_target::discard_pending_stop_replies)
7435         (remote_target::discard_pending_stop_replies_in_queue)
7436         (remote_target::remote_notif_remove_queued_reply): Fill in
7437         'remote' field.
7438         (remote_notif_get_pending_events): New.
7439         (remote_target::readchar, remote_target::remote_serial_write):
7440         Save/restore curr_quit_handler_target.
7441         (putpkt): New.
7442         (kill_new_fork_children): Fill in 'remote' field.
7443         (packet_command): Use get_current_remote_target, defer to
7444         remote_target method of same name.
7445         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
7446         parameter, and save it in m_remote.  All callers adjusted.
7447         (scoped_remote_fd::release): Use m_remote.
7448         (scoped_remote_fd::m_remote): New field.
7449         (remote_file_put, remote_file_get, remote_file_delete): Use
7450         get_current_remote_target, defer to remote_target method of same
7451         name.
7452         (remote_btrace_reset): Add remote_state paremeter.  Update all
7453         callers.
7454         (remote_async_inferior_event_handler). Pass down 'data'.
7455         (remote_new_objfile): Use get_current_remote_target.
7456         (remote_target::vcont_r_supported): New.
7457         (set_range_stepping): Use get_current_remote_target and
7458         remote_target::vcont_r_supported.
7459         (_initialize_remote): Don't allocate 'remote_state' and
7460         'stop_reply_queue' globals.
7461         * remote.h (struct remote_target): Forward declare.
7462         (getpkt, putpkt, remote_notif_get_pending_events): Add
7463         'remote_target' parameter.
7464
7465 2018-05-22  Pedro Alves  <palves@redhat.com>
7466
7467         * remote.c (vcont_builder): Now a class.  Make all data members
7468         private.
7469         (vcont_builder) <vcont_builder, restart, flush, push_action>:
7470         Declare methods.
7471         (vcont_builder_restart): Rename to ...
7472         (vcont_builder::restart): ... this.
7473         (vcont_builder_flush): Rename to ...
7474         (vcont_builder::flush): ... this.
7475         (vcont_builder_push_action): Rename to ...
7476         (vcont_builder::push_action): ... this.
7477         (remote_target::commit_resume): Adjust.
7478
7479 2018-05-22  Pedro Alves  <palves@redhat.com>
7480
7481         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
7482         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
7483         (get_fixed_memory_packet_size): New.
7484         (get_memory_packet_size): Use it.
7485         (set_memory_packet_size): Don't override the config size with
7486         DEFAULT_MAX_MEMORY_PACKET_SIZE.
7487         (show_memory_packet_size): Use get_fixed_memory_packet_size.
7488         Don't refer to get_memory_packet_size if not connected to a remote
7489         target.  Show "(default)" if configured size is 0.
7490
7491 2018-05-22  Pedro Alves  <palves@redhat.com>
7492
7493         * remote.c (remote_target::mourn_inferior): Move
7494         discard_pending_stop_replies call here from ...
7495         (_initialize_remote): ... here.
7496
7497 2018-05-22  Pedro Alves  <palves@redhat.com>
7498
7499         * remote.c (compare_section_command): Remove set_general_process
7500         call.
7501
7502 2018-05-22  Pedro Alves  <palves@redhat.com>
7503
7504         * remote.c (struct packet_reg, struct remote_arch_state):
7505         Move higher up in the file.
7506         (remote_state) <m_arch_states>: Store remote_arch_state values
7507         instead of remote_arch_state pointers.
7508         (remote_state::get_remote_arch_state): Adjust.
7509
7510 2018-05-22  Pedro Alves  <palves@redhat.com>
7511
7512         * remote.c: Include <unordered_map>.
7513         (remote_state): Now a class.
7514         (remote_state) <get_remote_arch_state>: Declare method.
7515         <get_remote_arch_state>: New field.
7516         (remote_arch_state) <remote_arch_state>: Declare ctor.
7517         <regs>: Now a unique_ptr.
7518         (remote_gdbarch_data_handle): Delete.
7519         (get_remote_arch_state): Delete.
7520         (remote_state::get_remote_arch_state): New.
7521         (get_remote_state): Adjust to call remote_state's
7522         get_remote_arch_state method.
7523         (init_remote_state): Delete, bits factored out to ...
7524         (remote_arch_state::remote_arch_state): ... this new method.
7525         (get_remote_packet_size, get_memory_packet_size)
7526         (process_g_packet, remote_target::fetch_registers)
7527         (remote_target::prepare_to_store, store_registers_using_G)
7528         (remote_target::store_registers, remote_target::get_trace_status):
7529         Adjust to call remote_state's method.
7530         (_initialize_remote): Remove reference to
7531         remote_gdbarch_data_handle.
7532
7533 2018-05-22  Pedro Alves  <palves@redhat.com>
7534
7535         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
7536         pread>: New method declarations.
7537         (remote_target::open_1): Adjust.
7538         (readahead_cache_invalidate): Rename to ...
7539         (readahead_cache::invalidate): ... this, and adjust to be a class
7540         method.
7541         (readahead_cache_invalidate_fd): Rename to ...
7542         (readahead_cache::invalidate_fd): ... this, and adjust to be a
7543         class method.
7544         (remote_hostio_pwrite): Adjust.
7545         (remote_hostio_pread_from_cache): Rename to ...
7546         (readahead_cache::pread): ... this, and adjust to be a class
7547         method.
7548         (remote_hostio_close): Adjust.
7549
7550 2018-05-22  Pedro Alves  <palves@redhat.com>
7551
7552         * remote.c (remote_hostio_close_cleanup): Delete.
7553         (class scoped_remote_fd): New.
7554         (remote_file_put, remote_file_get): Use it.
7555
7556 2018-05-22  Pedro Alves  <palves@redhat.com>
7557
7558         (struct vCont_action_support): Use bool and initialize all fields.
7559         (struct readahead_cache): Initialize all fields.
7560         (remote_state): Use bool and initialize all fields.
7561         (remote_state::remote_state, remote_state::~remote_state): New.
7562         (new_remote_state): Delete.
7563         (_initialize_remote): Use new to allocate remote_state.
7564
7565 2018-05-22  Pedro Alves  <palves@redhat.com>
7566             張俊芝  <zjz@zjz.name>
7567
7568         PR gdb/22973
7569         * c-exp.y: Include "c-support.h".
7570         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
7571         of tolower.  Use c_ident_is_alpha to scan names.
7572         * c-lang.c: Include "c-support.h".
7573         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
7574         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
7575         * c-support.h: New file, with bits factored out from ...
7576         * cp-name-parser.y: ... this file.
7577         Include "c-support.h".
7578         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
7579         c-support.h and renamed.
7580         (symbol_end, yylex): Adjust.
7581
7582 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7583
7584         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
7585         parameter type to CORE_ADDR.
7586         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
7587         parameter type in declaration to CORE_ADDR.
7588         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
7589         target_auxv_search to get AT_HWCAP and use the result to get the
7590         target description.
7591         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
7592         to CORE_ADDR. Remove the cast of the return value to unsigned
7593         long. Fix error predicate of target_auxv_search.
7594         (ppc_linux_nat_target::read_description): Change the type of the
7595         hwcap variable to CORE_ADDR.
7596
7597 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7598
7599         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
7600         if the size of fpscr is larger than 32 bits.
7601
7602 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7603
7604         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
7605         (ppc32_linux_vsxregmap): New global.
7606         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
7607         regcache_supply_regset, and regcache_collect_regset.
7608         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
7609         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
7610         (fetch_vsx_register, store_vsx_register): Remove.
7611         (fetch_vsx_registers): Add regno parameter. Get regset using
7612         ppc_linux_vsxregset. Use regset to supply registers.
7613         (store_vsx_registers): Add regno parameter. Get regset using
7614         ppc_linux_vsxregset. Use regset to collect registers.
7615         (fetch_register): Call fetch_vsx_registers instead of
7616         fetch_vsx_register.
7617         (store_register): Call store_vsx_registers instead of
7618         store_vsx_register.
7619         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
7620         new regno parameter.
7621         (store_ppc_registers): Call store_vsx_registers with -1 for the
7622         new regno parameter.
7623         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
7624         (ppc_collect_vsxregset): Remove.
7625
7626 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7627
7628         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
7629         offset fields.
7630         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
7631         for vector register offset fields.
7632         (ppc64_fbsd_reg_offsets): Likewise.
7633         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7634         to vector register offset fields.
7635         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7636         to vector register offset fields.
7637         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
7638         vector register offset fields.
7639         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
7640         initializers for vector register offset fields.
7641         (rs6000_aix64_reg_offsets): Likewise.
7642         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
7643         (ppc_supply_vrregset): Remove.
7644         (ppc_collect_vrregset): Remove.
7645         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
7646         (ppc_linux_vrregset) : New function.
7647         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
7648         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
7649         (ppc32_linux_vrregset): Remove.
7650         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
7651         and use result instead of ppc32_linux_vrregset.
7652         (ppc32_linux_reg_offsets): Remove initializers for vector register
7653         offset fields.
7654         (ppc64_linux_reg_offsets): Likewise.
7655         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
7656         * ppc-linux-nat.c: Include regset.h.
7657         (gdb_vrregset_t): Adjust comment to account for little-endian
7658         mode.
7659         (supply_vrregset, fill_vrregset): Remove.
7660         (fetch_altivec_register, store_altivec_register): Remove.
7661         (fetch_altivec_registers): Add regno parameter. Get regset using
7662         ppc_linux_vrregset. Use regset to supply registers.
7663         (store_altivec_registers): Add regno parameter. Get regset using
7664         ppc_linux_vrregset. Use regset to collect registers.
7665         (fetch_register): Call fetch_altivec_registers instead of
7666         fetch_altivec_register.
7667         (store_register): Call store_altivec_registers instead of
7668         store_altivec_register.
7669         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
7670         the new regno parameter.
7671         (store_ppc_registers): Call store_altivec_registers with -1 for
7672         the new regno parameter.
7673
7674 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7675
7676         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
7677         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
7678         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
7679         (gdb_vrregset_t): Change array type size to
7680         PPC_LINUX_SIZEOF_VRREGSET.
7681         (gdb_vsxregset_t): Change array type size to
7682         PPC_LINUX_SIZEOF_VSXREGSET.
7683         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
7684         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
7685         PPC_LINUX_SIZEOF_VSXREGSET.
7686
7687 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7688
7689         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
7690         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
7691         nat/ppc-linux.c.
7692         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
7693         ppc_linux_target_wordsize with tid.
7694         (ppc_linux_nat_target::read_description): Call ppc_linux_target
7695         wordsize with tid.
7696         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
7697         (ppc64_64bit_inferior_p): Add static and inline specifiers.
7698         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
7699         tid parameter. Remove static specifier.
7700         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
7701         (ppc_linux_target_wordsize): New declaration.
7702
7703 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7704
7705         * arch/ppc-linux-common.c: New file.
7706         * arch/ppc-linux-common.h: New file.
7707         * arch/ppc-linux-tdesc.h: New file.
7708         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
7709         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
7710         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
7711         arch/ppc-linux-tdesc.h.
7712         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
7713         arch/ppc-linux-tdesc.h.
7714         (ppc_linux_nat_target::read_description): Remove target
7715         description matching code. Fill a ppc_linux_features struct and
7716         call ppc_linux_match_description with it. Move comment about ISA
7717         2.05 to ppc-linux-common.c.
7718         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
7719         arch/ppc-linux-tdesc.h.
7720         (ppc_linux_core_read_description): Remove target description
7721         matching code. Fill a ppc_linux_features struct and call
7722         ppc_linux_match_description with it.
7723         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
7724         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
7725         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
7726         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
7727         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
7728         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
7729         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
7730         (tdesc_powerpc_e500l): Remove.
7731
7732 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
7733
7734         * ada-lang.c (catch_assert_command): Pass empty string instead
7735         of NULL for excep_string argument.
7736
7737 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7738
7739         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
7740         the width of the requested register exceeds the width of the
7741         `ptrace' data type.
7742
7743 2018-05-21  Tom Tromey  <tom@tromey.com>
7744
7745         * printcmd.c (output_command): Remove.
7746         (output_command_const): Rename to output_command.
7747         * valprint.h (output_command): Rename from output_command_const.
7748         * tracepoint.c (trace_dump_actions): Call output_command.
7749
7750 2018-05-21  Tom Tromey  <tom@tromey.com>
7751
7752         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
7753         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
7754         * ada-lang.h (create_ada_exception_catchpoint): Update.
7755         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
7756         std::string.
7757         (create_excep_cond_exprs, ~ada_catchpoint)
7758         (should_stop_exception, print_one_exception)
7759         (print_mention_exception, print_recreate_exception): Update.
7760         (ada_get_next_arg): Remove.
7761         (catch_ada_exception_command_split): Use std::string.  Change type
7762         of "excep_string", "cond_string".
7763         (catch_ada_exception_command): Update.
7764         (create_ada_exception_catchpoint): Change type of excep_string.
7765         (ada_exception_sal): Remove excep_string parameter.
7766         (~ada_catchpoint): Remove.
7767
7768 2018-05-21  Tom Tromey  <tom@tromey.com>
7769
7770         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
7771         cleanup.
7772
7773 2018-05-21  Tom Tromey  <tom@tromey.com>
7774
7775         * ada-lang.c (ada_exception_message_1, ada_exception_message):
7776         Return unique_xmalloc_ptr.
7777         (print_it_exception): Update.
7778
7779 2018-05-21  Tom Tromey  <tom@tromey.com>
7780
7781         * tracepoint.c (trace_dump_actions): Use std::string.
7782
7783 2018-05-21  Tom Tromey  <tom@tromey.com>
7784
7785         * symfile.c (reread_symbols): Use std::string for original_name.
7786
7787 2018-05-21  Tom Tromey  <tom@tromey.com>
7788
7789         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
7790         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
7791         constructor.
7792
7793 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
7794
7795         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
7796         instance to...
7797         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
7798         * objfiles.c (get_objfile_bfd_data): Allocate
7799         objfile_per_bfd_storage with obstack_new when allocating on
7800         obstack.
7801
7802 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7803
7804         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
7805         OBSTACK_ZALLOC.
7806         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
7807         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
7808         * mdebugread.c (mdebug_build_psymtabs): Likewise.
7809         (add_pending): Likewise.
7810         (parse_symbol): Likewise.
7811         (parse_partial_symbols): Likewise.
7812         (psymtab_to_symtab_1): Likewise.
7813         (new_psymtab): Likewise.
7814         (elfmdebug_build_psymtabs): Likewise.
7815         * minsyms.c (terminate_minimal_symbol_table): Likewise.
7816         * objfiles.c (get_objfile_bfd_data): Likewise.
7817         (objfile_register_static_link): Likewise.
7818         * psymtab.c (allocate_psymtab): Likewise.
7819         * stabsread.c (read_member_functions): Likewise.
7820         * xcoffread.c (xcoff_end_psymtab): Likewise.
7821
7822 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7823
7824         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
7825         compiler supports std::is_trivially_constructible.
7826         * common/poison.h: Include obstack.h.
7827         (IsMallocable): Define to is_trivially_constructible if the
7828         compiler supports it, define to true_type otherwise.
7829         (xobnew): New.
7830         (XOBNEW): Redefine.
7831         (xobnewvec): New.
7832         (XOBNEWVEC): Redefine.
7833         * gdb_obstack.h (obstack_zalloc): New.
7834         (OBSTACK_ZALLOC): Redefine.
7835         (obstack_calloc): New.
7836         (OBSTACK_CALLOC): Redefine.
7837         (obstack_new): New.
7838         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
7839         (gdbarch_obstack): New declaration in gdbarch.h, definition in
7840         gdbarch.c.
7841         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
7842         obstack_calloc/obstack_zalloc.
7843         (gdbarch_obstack_zalloc): Remove.
7844         * target-descriptions.c (tdesc_data_init): Use obstack_new.
7845
7846 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7847
7848         * stack.c (backtrace_command_1): Remove useless variable int i.
7849
7850 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7851
7852         * stack.c (print_frame_info): Fix comment.
7853
7854 2018-05-18  Tom Tromey  <tom@tromey.com>
7855
7856         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
7857         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
7858         (~dwarf2_per_objfile): Update
7859         (dwarf2_get_dwz_file): Use new.
7860         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
7861         unique_ptr.
7862
7863 2018-05-18  Tom Tromey  <tom@tromey.com>
7864
7865         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
7866         unique_ptr.
7867         * dwarf2read.c (struct dwp_file): Add constructor and
7868         initializers.
7869         (open_and_init_dwp_file): Return a unique_ptr.
7870         (dwarf2_per_objfile, create_dwp_hash_table)
7871         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
7872         (lookup_dwo_unit_in_dwp): Update.
7873         (open_and_init_dwp_file, get_dwp_file): Update.
7874
7875 2018-05-18  Tom Tromey  <tom@tromey.com>
7876
7877         * dwarf2read.c (dwarf2_per_objfile): Update.
7878         (struct mapped_index): Add initializers.
7879         (dwarf2_read_index): Use new.
7880         (dw2_symtab_iter_init): Update.
7881         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
7882         unique_ptr.
7883
7884 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
7885
7886         * dwarf2read.c (mapped_index) <total_size>: Remove.
7887
7888 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
7889
7890         * unittests/format_pieces-selftests.c (test_format_specifier):
7891         Add ARI comments.
7892
7893 2018-05-18  Tom Tromey  <tom@tromey.com>
7894
7895         * c-typeprint.c (maybe_print_hole): New function.
7896         (c_print_type_struct_field_offset): Update.
7897         (c_type_print_base_struct_union): Call maybe_print_hole.
7898
7899 2018-05-17  Keith Seitz  <keiths@redhat.com>
7900
7901         * breakpoint.c (build_bpstat_chain): New function, moved from
7902         bpstat_stop_status.
7903         (bpstat_stop_status): Add optional parameter, `stop_chain'.
7904         If no stop chain is passed, call build_bpstat_chain to build it.
7905         * breakpoint.h (build_bpstat_chain): Declare.
7906         (bpstat_stop_status): Move documentation here from breakpoint.c.
7907         * infrun.c (handle_signal_stop): Before eliding inlined frames,
7908         build the stop chain and pass it to skip_inline_frames.
7909         Pass this stop chain to bpstat_stop_status.
7910         * inline-frame.c: Include breakpoint.h.
7911         (stopped_by_user_bp_inline_frame): New function.
7912         (skip_inline_frames): Add parameter `stop_chain'.
7913         Move documention to inline-frame.h.
7914         If non-NULL, use stopped_by_user_bp_inline_frame to determine
7915         whether the frame should be elided.
7916         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
7917         Add moved documentation and update for new parameter.
7918
7919 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
7920
7921         PR cli/14975
7922         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
7923         unittests/format_pieces-selftests.c.
7924         * common/format.h (format_piece) <operator==>: New.
7925         (format_pieces) <operator[]>: Remove.
7926         * common/format.c (format_pieces::format_pieces): Handle \e.
7927         * unittests/format_pieces-selftests.c: New.
7928
7929 2018-05-17  Tom Tromey  <tom@tromey.com>
7930
7931         PR symtab/23010:
7932         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
7933         (dw2_instantiate_symtab): Add skip_partial parameter.
7934         (dw2_find_last_source_symtab, dw2_map_expand_apply)
7935         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
7936         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
7937         (dw2_expand_symtabs_matching_one)
7938         (dw2_find_pc_sect_compunit_symtab)
7939         (dw2_debug_names_lookup_symbol)
7940         (dw2_debug_names_expand_symtabs_for_function): Update.
7941         (init_cutu_and_read_dies): Add skip_partial parameter.
7942         (process_psymtab_comp_unit, build_type_psymtabs_1)
7943         (process_skeletonless_type_unit, load_partial_comp_unit)
7944         (psymtab_to_symtab_1): Update.
7945         (load_full_comp_unit): Add skip_partial parameter.
7946         (process_imported_unit_die, dwarf2_read_addr_index)
7947         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
7948         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
7949         (read_signatured_type): Update.
7950
7951 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
7952
7953         * value.c (release_value): Remove unused variable.
7954         (record_latest_value): Likewise.
7955         (access_value_history): Likewise.
7956         (preserve_values): Likewise.
7957
7958 2018-05-17  Tom Tromey  <tom@tromey.com>
7959
7960         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
7961         Initialize.
7962
7963 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
7964
7965         PR gdb/22286
7966         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
7967         Also handle registers whose width is not a multiple of
7968         PTRACE_TYPE_RET.
7969         (linux_nat_trad_target::store_register): Likewise.
7970
7971 2018-05-16  Tom Tromey  <tom@tromey.com>
7972
7973         * gdbcore.h (core_bfd): Redefine.
7974         * corelow.c (core_target::close): Update.
7975         (core_target_open): Update.
7976         * progspace.h (struct program_space) <cbfd>: Now a
7977         gdb_bfd_ref_ptr.
7978
7979 2018-05-16  Tom Tromey  <tom@tromey.com>
7980
7981         PR cli/19551:
7982         * symfile-add-flags.h (enum symfile_add_flags)
7983         <SYMFILE_NOT_FILENAME>: New constant.
7984         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
7985         objfile name from BFD.
7986         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
7987         * minidebug.c (find_separate_debug_file_in_section): Put
7988         ".gnu_debugdata" into BFD's file name.
7989
7990 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
7991
7992         * regcache.c (regcache_read_ftype, regcache_write_ftype):
7993         Remove.
7994
7995 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
7996
7997         PR binutils/21446
7998         * aarch64-tdep.c (aarch64_analyze_prologue,
7999         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8000         Indicate not interested in errors.
8001
8002 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8003
8004         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8005         Supply the MIPS_ZERO_REGNUM register.
8006
8007 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8008
8009         * mips-tdep.c (mask_address_var): Make variable static.
8010
8011 2018-05-14  Tom Tromey  <tom@tromey.com>
8012
8013         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8014
8015 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8016
8017         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8018         FXSAVE_ADDR for the mxcsr register.
8019
8020 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8021
8022         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8023
8024 2018-05-11  Pedro Alves  <palves@redhat.com>
8025
8026         * corelow.c (core_target) <core_target>: No longer inline.
8027         Initialize m_core_gdbarch, m_core_vec and build the section table
8028         here.
8029         <~core_target>: New.
8030         <core_gdbarch, get_core_register_section>: New methods.
8031         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8032         factored out from ...
8033         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8034         (core_ops): Delete.
8035         (sniff_core_bfd): Add gdbarch parameter.
8036         (core_close): Delete, merged into ...
8037         (core_target::close): ... here.  Delete self.
8038         (core_close_cleanup): Delete.
8039         (core_target_open): Allocate a core_target on the heap.  Use a
8040         unique_ptr instead of a cleanup.  Bits moved into the core_target
8041         ctor.  Adjust to use core_target methods instead of globals.
8042         (get_core_register_section): Rename to ...
8043         (core_target::get_core_register_section): ... this and adjust.
8044         (struct get_core_registers_cb_data): New.
8045         (get_core_registers_cb): Use it.  Use bool.
8046         (core_target::fetch_registers, core_target::files_info)
8047         (core_target::xfer_partial, core_target::read_description)
8048         (core_target::pid_to, core_target::thread_name): Adjust to
8049         reference class fields instead of globals.
8050         * target.h (struct target_ops_deleter, target_ops_up): New.
8051
8052 2018-05-11  Pedro Alves  <palves@redhat.com>
8053
8054         * corefile.c (core_file_command): Move to corelow.c.
8055         * corelow.c (the_core_target): Delete.
8056         (core_file_command): Moved from corefile.c.  Check exec_bfd
8057         instead of the_core_target.  Use target_detach instead of calling
8058         into the_core_target directly.
8059         (maybe_say_no_core_file_now): New.
8060         (core_target::detach): Use it.
8061         (_initialize_corelow): Remove references to the_core_target.
8062         * gdbcore.h (the_core_target): Delete.
8063
8064 2018-05-11  Tom Tromey  <tromey@redhat.com>
8065             Pedro Alves  <palves@redhat.com>
8066
8067         * corefile.c (core_bfd): Remove.
8068         * gdbcore.h (core_bfd): Now a macro.
8069         * progspace.h (struct program_space) <cbfd>: New field.
8070
8071 2018-05-11  Tom Tromey  <tom@tromey.com>
8072
8073         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8074         gdb::def_vector.
8075
8076 2018-05-10  Tom Tromey  <tom@tromey.com>
8077
8078         * configure: Rebuild.
8079         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8080
8081 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8082
8083         PR server/23158:
8084         * regformats/regdat.sh: Adjust script, following the addition
8085         of the new expedite_regs parameter to init_target_desc.
8086
8087 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8088     
8089         PR gdb/23127
8090         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8091         set_gdbarch_significant_addr_bit.
8092         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8093         set_gdbarch_significant_addr_bit.
8094         * utils.c (address_significant): Update to sign extend addr.
8095
8096 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8097
8098         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8099         (xtensa_linux_init_abi): Limit tdep->num_regs by
8100         tdep->num_nopriv_regs.
8101         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8102         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8103         not initialized.
8104
8105 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8106
8107         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8108
8109 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8110
8111         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8112         (I387_MXCSR_INIT_VAL): New constant.
8113         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8114         buffer if it was supplied by the inferior.
8115         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8116         (i387_xsave_get_clear_bv): New function.
8117         (i387_supply_xsave): Only read x87 control registers from the
8118         xsave buffer if the feature is enabled, and the state will have
8119         been written, otherwise, provide a suitable default.
8120         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8121         including x87 control registers.  Update control registers if they
8122         have changed from the default value, and mark features as enabled
8123         as required.
8124         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8125
8126 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8127
8128         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8129
8130 2018-05-07  Tom Tromey  <tom@tromey.com>
8131
8132         * configure: Rebuild.
8133         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8134
8135 2018-05-07  Tom Tromey  <tom@tromey.com>
8136
8137         PR tdep/20362:
8138         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8139         bit.  Use correct value for VDIV.
8140
8141 2018-05-04  Tom Tromey  <tom@tromey.com>
8142
8143         * configure: Rebuild.
8144         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8145
8146 2018-05-04  Tom Tromey  <tom@tromey.com>
8147
8148         * linux-record.c (record_linux_system_call) <case
8149         RECORD_SYS_RECVFROM>: Add "break".
8150
8151 2018-05-04  Tom Tromey  <tom@tromey.com>
8152
8153         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8154         Add missing "break".
8155         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8156         Add missing "break".
8157
8158 2018-05-04  Tom Tromey  <tom@tromey.com>
8159
8160         * rs6000-tdep.c (ppc_process_record_op4)
8161         (ppc_process_record_op63): Add fall-through comment.
8162
8163 2018-05-04  Tom Tromey  <tom@tromey.com>
8164
8165         * i386-tdep.c (i386_process_record): Add fall-through comment.
8166
8167 2018-05-04  Tom Tromey  <tom@tromey.com>
8168
8169         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8170         comment.
8171
8172 2018-05-04  Tom Tromey  <tom@tromey.com>
8173
8174         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8175         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8176         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8177         comment.
8178         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8179         comment.
8180         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8181         comment.
8182
8183 2018-05-04  Tom Tromey  <tom@tromey.com>
8184
8185         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8186
8187 2018-05-04  Tom Tromey  <tom@tromey.com>
8188
8189         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8190         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8191         * symfile.c (section_is_mapped): Fix fall-through comment.
8192         * stabsread.c (define_symbol, read_member_functions): Fix
8193         fall-through comment.
8194         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8195         comment.
8196         * remote.c (remote_wait_as): Fix fall-through comment.
8197         * p-exp.y (yylex): Fix fall-through comment.
8198         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8199         comment.
8200         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8201         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8202         * jv-exp.y (yylex): Fix fall-through comment.
8203         * go-exp.y (lex_one_token): Fix fall-through comment.
8204         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8205         fall-through comment.
8206         * f-exp.y (yylex): Fix fall-through comment.
8207         * dwarf2read.c (process_die): Fix fall-through comments.
8208         * dbxread.c (process_one_symbol): Fix fall-through comment.
8209         * d-exp.y (lex_one_token): Fix fall-through comment.
8210         * cp-name-parser.y (yylex): Fix fall-through comment.
8211         * coffread.c (coff_symtab_read): Fix fall-through comment.
8212         * c-exp.y (lex_one_token): Fix fall-through comment.
8213         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8214         comment.
8215         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8216         comment.
8217
8218 2018-05-04  Tom Tromey  <tom@tromey.com>
8219
8220         PR python/22730:
8221         * NEWS: Mention gdb.execute change.
8222         * gdbcmd.h (execute_control_command): Don't declare.
8223         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8224         execute_control_commands, execute_control_commands_to_string.
8225         * cli/cli-script.h (execute_control_commands)
8226         (execute_control_commands_to_string): Declare.
8227         (execute_control_command): Add from_tty parameter.
8228         * cli/cli-script.c (execute_control_commands)
8229         (execute_control_commands_to_string): New functions.
8230         (execute_user_command): Use execute_control_commands.
8231         (execute_control_command_1): Add "from_tty" parameter.  Update.
8232         (execute_control_command): Likewise.
8233
8234 2018-05-04  Tom Tromey  <tom@tromey.com>
8235
8236         PR python/22731:
8237         * NEWS: Mention that breakpoint commands are writable.
8238         * python/py-breakpoint.c (bppy_set_commands): New function.
8239         (breakpoint_object_getset) <"commands">: Use it.
8240
8241 2018-05-04  Tom Tromey  <tom@tromey.com>
8242
8243         * tracepoint.c (actions_command): Update.
8244         * mi/mi-cmd-break.c (mi_command_line_array)
8245         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8246         (mi_read_next_line): Remove.
8247         (mi_cmd_break_commands): Update.
8248         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8249         function_view.
8250         * cli/cli-script.c (get_command_line): Update.
8251         (process_next_line): Use function_view.  Constify.
8252         (recurse_read_control_structure, read_command_lines)
8253         (read_command_lines_1): Change argument types to function_view.
8254         (do_define_command, document_command): Update.
8255         * breakpoint.h (check_tracepoint_command): Don't declare.
8256         * breakpoint.c (check_tracepoint_command): Remove.
8257         (commands_command_1, create_tracepoint_from_upload): Update.
8258
8259 2018-05-04  Tom Tromey  <tom@tromey.com>
8260
8261         PR gdb/11750:
8262         * cli/cli-script.h (enum command_control_type) <define_control>:
8263         New constant.
8264         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8265         (build_command_line, execute_control_command_1)
8266         (process_next_line): Likewise.
8267         (do_define_command): New function, extracted from define_command.
8268         (define_command): Use it.
8269
8270 2018-05-04  Tom Tromey  <tom@tromey.com>
8271
8272         * tracepoint.c (actions_command): Update.
8273         * cli/cli-script.h (read_command_lines): Update.
8274         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8275         (MAX_TMPBUF): Remove define.
8276         (define_command): Use string_printf.
8277         (document_command): Likewise.
8278         * breakpoint.c (commands_command_1): Update.
8279
8280 2018-05-04  Tom Tromey  <tom@tromey.com>
8281
8282         * top.c (execute_command): Update.
8283         * cli/cli-script.h (print_command_lines): Now varargs.
8284         * cli/cli-script.c (print_command_lines): Now varargs.
8285         (execute_control_command_1) <case while_control, case if_control>:
8286         Update.
8287
8288 2018-05-04  Tom Tromey  <tom@tromey.com>
8289
8290         * tracepoint.c (all_tracepoint_actions): Rename from
8291         all_tracepoint_actions_and_cleanup.  Change return type.
8292         (actions_command, encode_actions_1, encode_actions)
8293         (trace_dump_actions, tdump_command): Update.
8294         * remote.c (remote_download_command_source): Update.
8295         * python/python.c (gdbpy_eval_from_control_command)
8296         (python_command, python_interactive_command): Update.
8297         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8298         * guile/guile.c (guile_command)
8299         (gdbscm_eval_from_control_command, guile_command): Update.
8300         * compile/compile.c (compile_code_command)
8301         (compile_print_command, compile_to_object): Update.
8302         * cli/cli-script.h (struct command_lines_deleter): New.
8303         (counted_command_line): New typedef.
8304         (struct command_line): Add constructor, destructor.
8305         <body_list>: Remove.
8306         <body_list_0, body_list_1>: New members.
8307         (command_line_up): Remove typedef.
8308         (read_command_lines, read_command_lines_1, get_command_line):
8309         Update.
8310         (copy_command_lines): Don't declare.
8311         * cli/cli-script.c (build_command_line): Use "new".
8312         (get_command_line): Return counted_command_line.
8313         (print_command_lines, execute_user_command)
8314         (execute_control_command_1, while_command, if_command): Update.
8315         (realloc_body_list): Remove.
8316         (process_next_line, recurse_read_control_structure): Update.
8317         (read_command_lines, read_command_lines_1): Return counted_command_line.
8318         (free_command_lines): Use "delete".
8319         (copy_command_lines): Remove.
8320         (define_command, document_command, show_user_1): Update.
8321         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8322         a counted_command_line.
8323         * breakpoint.h (counted_command_line): Remove typedef.
8324         (breakpoint_set_commands): Update.
8325         * breakpoint.c (check_no_tracepoint_commands)
8326         (validate_commands_for_breakpoint): Update.
8327         (breakpoint_set_commands): Change commands to be a
8328         counted_command_line.
8329         (commands_command_1, update_dprintf_command_list)
8330         (create_tracepoint_from_upload): Update.
8331
8332 2018-05-04  Tom Tromey  <tom@tromey.com>
8333
8334         * cli/cli-decode.h (cmd_list_element): New constructor.
8335         (~cmd_list_element): New destructor.
8336         (struct cmd_list_element): Add initializers.
8337         * cli/cli-decode.c (do_add_cmd): Use "new".
8338         (delete_cmd): Use "delete".
8339
8340 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8341             Pedro Alves <palves@redhat.com>
8342
8343         PR breakpoints/19806 and support for PR external/20207.
8344         * NEWS: Mention Aarch64 watchpoint improvements.
8345         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8346         watchpoints and PR external/20207 watchpoints.
8347         * nat/aarch64-linux-hw-point.c
8348         (kernel_supports_any_contiguous_range): New.
8349         (aarch64_watchpoint_offset): New.
8350         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8351         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8352         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8353         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8354         next_addr_orig_p.  Support PR external/20207 watchpoints.
8355         (aarch64_downgrade_regs): New.
8356         (aarch64_dr_state_insert_one_point): New parameters offset and
8357         addr_orig.
8358         (aarch64_dr_state_remove_one_point): Likewise.
8359         (aarch64_handle_breakpoint): Update caller.
8360         (aarch64_handle_aligned_watchpoint): Likewise.
8361         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
8362         aligned_offset.
8363         (aarch64_linux_set_debug_regs): Remove const from state.  Call
8364         aarch64_downgrade_regs.
8365         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
8366         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
8367         (DR_CONTROL_MASK): ... this.
8368         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
8369         (unsigned int aarch64_watchpoint_offset): New prototype.
8370         (aarch64_linux_set_debug_regs): Remove const from state.
8371         * utils.c (align_up, align_down): Move to ...
8372         * common/common-utils.c (align_up, align_down): ... here.
8373         * utils.h (align_up, align_down): Move to ...
8374         * common/common-utils.h (align_up, align_down): ... here.
8375
8376 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
8377
8378         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
8379         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
8380         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
8381         Re-implement to match the ABI as summarized in GCC's
8382         gcc/config/sparc/sparc.c.  All callers updated.
8383         (sparc32_store_arguments): Remove assertion.
8384
8385 2018-05-04  Tom Tromey  <tom@tromey.com>
8386
8387         * printcmd.c: Don't include tui.h.
8388         (decode_format): Use skip_spaces.
8389
8390 2018-05-04  Tom Tromey  <tom@tromey.com>
8391
8392         PR gdb/22619:
8393         * printcmd.c (last_count): New global.
8394         (x_command): Use saved count when repeating.
8395
8396 2018-05-04  Tom Tromey  <tom@tromey.com>
8397
8398         * nto-procfs.c (do_closedir_cleanup): Remove.
8399         (procfs_pidlist): Use gdb_dir_up.
8400         * procfs.c (do_closedir_cleanup): Remove.
8401         (proc_update_threads): Use gdb_dir_up.
8402         * common/filestuff.h (struct gdb_dir_deleter): New.
8403         (gdb_dir_up): New typedef.
8404
8405 2018-05-04  Tom Tromey  <tom@tromey.com>
8406
8407         * ada-lang.c (print_mention_exception): Use std::string.
8408
8409 2018-05-04  Tom Tromey  <tom@tromey.com>
8410
8411         * ada-lang.c (create_excep_cond_exprs): Update.
8412         (ada_exception_catchpoint_cond_string): Use std::string.
8413
8414 2018-05-04  Tom Tromey  <tom@tromey.com>
8415
8416         * ada-lang.c (xget_renaming_scope): Return std::string.
8417         (old_renaming_is_invisible): Update.
8418
8419 2018-05-04  Tom Tromey  <tom@tromey.com>
8420
8421         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
8422         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
8423
8424 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
8425
8426         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
8427
8428 2018-05-04  Tom Tromey  <tom@tromey.com>
8429
8430         * remote.c (remote_query_supported_append): Change type.
8431         (remote_check_symbols): Update.
8432
8433 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
8434
8435         PR gdb/11420
8436         * configure.ac: Prepend libpython.
8437         * python/python-config.py: Likewise.
8438         * configure: Regenerate.
8439
8440 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
8441
8442         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
8443
8444 2018-05-03  Pedro Alves  <palves@redhat.com>
8445
8446         * s390-linux-nat.c
8447         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
8448         override.  Write 'true' instead of '1'.
8449         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
8450         declaration.
8451
8452 2018-05-02  Pedro Alves  <palves@redhat.com>
8453
8454         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
8455         add_inf_child_target.
8456         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
8457         add_inf_child_target.
8458         * aix-thread.c (aix_thread_target_info): New.
8459         (aix_thread_target) <shortname, longname, doc>: Delete.
8460         <info>: New.
8461         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
8462         add_inf_child_target.
8463         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
8464         add_inf_child_target.
8465         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
8466         add_inf_child_target.
8467         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
8468         add_inf_child_target.
8469         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
8470         add_inf_child_target.
8471         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
8472         add_inf_child_target.
8473         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
8474         add_inf_child_target.
8475         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
8476         add_inf_child_target.
8477         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
8478         add_inf_child_target.
8479         * bfd-target.c (target_bfd_target_info): New.
8480         (target_bfd) <shortname, longname, doc>: Delete.
8481         <info>: New.
8482         * bsd-kvm.c (bsd_kvm_target_info): New.
8483         (bsd_kvm_target) <shortname, longname, doc>: Delete.
8484         <info>: New.
8485         (bsd_kvm_target::open): Rename to ...
8486         (bsd_kvm_target_open): ... this.  Adjust.
8487         * bsd-uthread.c (bsd_uthread_target_info): New.
8488         (bsd_uthread_target) <shortname, longname, doc>: Delete.
8489         <info>: New.
8490         * corefile.c (core_file_command): Adjust.
8491         * corelow.c (core_target_info): New.
8492         (core_target) <shortname, longname, doc>: Delete.
8493         <info>: New.
8494         (core_target::open): Rename to ...
8495         (core_target_open): ... this.  Adjust.
8496         * ctf.c (ctf_target_info): New.
8497         (ctf_target) <shortname, longname, doc>: Delete.
8498         <info>: New.
8499         (ctf_target::open): Rename to ...
8500         (ctf_target_open): ... this.
8501         (_initialize_ctf): Adjust.
8502         * exec.c (exec_target_info): New.
8503         (exec_target) <shortname, longname, doc>: Delete.
8504         <info>: New.
8505         (exec_target::open): Rename to ...
8506         (exec_target_open): ... this.
8507         * gdbcore.h (core_target_open): Declare.
8508         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
8509         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
8510         add_inf_child_target.
8511         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
8512         add_inf_child_target.
8513         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
8514         add_inf_child_target.
8515         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
8516         add_inf_child_target.
8517         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
8518         add_inf_child_target.
8519         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
8520         add_inf_child_target.
8521         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
8522         add_inf_child_target.
8523         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
8524         add_inf_child_target.
8525         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
8526         add_inf_child_target.
8527         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
8528         add_inf_child_target.
8529         * inf-child.c (inf_child_target_info): New.
8530         (inf_child_target::info): New.
8531         (inf_child_open_target): Remove 'target' parameter.  Use
8532         get_native_target instead.
8533         (inf_child_target::open): Delete.
8534         (add_inf_child_target): New.
8535         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
8536         Delete.
8537         <info>: New.
8538         (add_inf_child_target): Declare.
8539         (inf_child_open_target): Declare.
8540         * linux-thread-db.c (thread_db_target_info): New.
8541         (thread_db_target) <shortname, longname, doc>: Delete.
8542         <info>: New.
8543         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
8544         add_inf_child_target.
8545         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
8546         add_inf_child_target.
8547         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
8548         add_inf_child_target.
8549         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
8550         add_inf_child_target.
8551         * make-target-delegates (print_class): Adjust.
8552         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
8553         add_inf_child_target.
8554         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
8555         add_inf_child_target.
8556         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
8557         add_inf_child_target.
8558         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
8559         add_inf_child_target.
8560         * nto-procfs.c (nto_native_target_info): New.
8561         (nto_procfs_target_native) <shortname, longname, doc>:
8562         Delete.
8563         <info>: New.
8564         (nto_procfs_target_info): New.
8565         (nto_procfs_target_procfs) <shortname, longname, doc>:
8566         Delete.
8567         <info>: New.
8568         (init_procfs_targets): Adjust.
8569         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
8570         add_inf_child_target.
8571         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
8572         add_inf_child_target.
8573         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
8574         add_inf_child_target.
8575         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
8576         add_inf_child_target.
8577         * ravenscar-thread.c (ravenscar_target_info): New.
8578         (ravenscar_thread_target) <shortname, longname, doc>:
8579         Delete.
8580         <info>: New.
8581         * record-btrace.c (record_btrace_target_info):
8582         (record_btrace_target) <shortname, longname, doc>: Delete.
8583         <info>: New.
8584         (record_btrace_target::open): Rename to ...
8585         (record_btrace_target_open): ... this.  Adjust.
8586         * record-full.c (record_longname, record_doc): New.
8587         (record_full_base_target) <shortname, longname, doc>: Delete.
8588         <info>: New.
8589         (record_full_target_info): New.
8590         (record_full_target): <shortname>: Delete.
8591         <info>: New.
8592         (record_full_core_open_1, record_full_open_1): Update comments.
8593         (record_full_base_target::open): Rename to ...
8594         (record_full_open): ... this.
8595         (cmd_record_full_restore): Update.
8596         (_initialize_record_full): Update.
8597         * remote-sim.c (remote_sim_target_info): New.
8598         (gdbsim_target) <shortname, longname, doc>: Delete.
8599         <info>: New.
8600         (gdbsim_target::open): Rename to ...
8601         (gdbsim_target_open): ... this.
8602         (_initialize_remote_sim): Adjust.
8603         * remote.c (remote_doc): New.
8604         (remote_target_info): New.
8605         (remote_target) <shortname, longname, doc>: Delete.
8606         <info>: New.
8607         (extended_remote_target_info): New.
8608         (extended_remote_target) <shortname, longname, doc>: Delete.
8609         <info>: New.
8610         (remote_target::open_1): Make static.  Adjust.
8611         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
8612         * s390-linux-nat.c (_initialize_s390_nat): Use
8613         add_inf_child_target.
8614         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
8615         add_inf_child_target.
8616         * sol-thread.c (thread_db_target_info): New.
8617         (sol_thread_target) <shortname, longname, doc>: Delete.
8618         <info>: New.
8619         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
8620         add_inf_child_target.
8621         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
8622         add_inf_child_target.
8623         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
8624         add_inf_child_target.
8625         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
8626         add_inf_child_target.
8627         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
8628         add_inf_child_target.
8629         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
8630         add_inf_child_target.
8631         * spu-linux-nat.c (_initialize_spu_nat): Use
8632         add_inf_child_target.
8633         * spu-multiarch.c (spu_multiarch_target_info): New.
8634         (spu_multiarch_target) <shortname, longname, doc>: Delete.
8635         <info>: New.
8636         * target-delegates.c: Regenerate.
8637         * target.c: Include <unordered_map>.
8638         (target_ops_p): Delete.
8639         (DEF_VEC_P(target_ops_p)): Delete.
8640         (target_factories): New.
8641         (test_target_info): New.
8642         (test_target_ops::info): New.
8643         (open_target): Adjust to use target_factories.
8644         (add_target_with_completer): Rename to ...
8645         (add_target): ... this.  Change prototype.  Register target_info
8646         and open callback in target_factories.  Register target_info in
8647         command context instead of target_ops.
8648         (add_target): Delete old implementation.
8649         (add_deprecated_target_alias): Change prototype.  Adjust.
8650         (the_native_target): New.
8651         (set_native_target, get_native_target): New.
8652         (find_default_run_target): Use the_native_target.
8653         (find_attach_target, find_run_target): Simplify.
8654         (target_ops::open): Delete.
8655         (dummy_target_info): New.
8656         (dummy_target::shortname, dummy_target::longname)
8657         (dummy_target::doc): Delete.
8658         (dummy_target::info): New.
8659         (debug_target::shortname, debug_target::longname)
8660         (debug_target::doc): Delete.
8661         (debug_target::info): New.
8662         * target.h (struct target_info): New.
8663         (target_ops::~target_ops): Add comment.
8664         (target_ops::info): New.
8665         (target_ops::shortname, target_ops::longname, target_ops::doc): No
8666         longer virtual.  Implement in terms of target_info.
8667         (set_native_target, get_native_target): Declare.
8668         (target_open_ftype): New.
8669         (add_target, add_target_with_completer)
8670         (add_deprecated_target_alias): Change prototype.
8671         (test_target) <shortname, longname, doc>: Delete.
8672         <info>: New.
8673         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
8674         add_inf_child_target.
8675         * tracefile-tfile.c (tfile_target_info): New.
8676         (tfile_target) <shortname, longname, doc>: Delete.
8677         <info>: New.
8678         (tfile_target::open): Rename to ...
8679         (tfile_target_open): ... this.
8680         (_initialize_tracefile_tfile): Adjust.
8681         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
8682         add_inf_child_target.
8683         * windows-nat.c (_initialize_windows_nat): Use
8684         add_inf_child_target.
8685         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
8686         add_inf_child_target.
8687
8688 2018-05-02  Pedro Alves  <palves@redhat.com>
8689
8690         * linux-nat.h (linux_nat_target) <low_new_thread,
8691         low_delete_thread, low_new_fork, low_forget_process,
8692         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
8693         New virtual methods.
8694         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8695         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
8696         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
8697         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8698         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
8699         Delete.
8700         * linux-fork.c (delete_fork): Adjust to call low method.
8701         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
8702         (linux_nat_new_fork, linux_nat_forget_process_hook)
8703         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
8704         (linux_nat_status_is_event):
8705         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
8706         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
8707         to call low method.
8708         (sigtrap_is_event): Rename to ...
8709         (linux_nat_target::low_status_is_event): ... this.
8710         (linux_nat_set_status_is_event): Delete.
8711         (save_stop_reason, linux_nat_wait_1)
8712         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
8713         low methods.
8714         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8715         (linux_nat_set_new_fork, linux_nat_set_forget_process)
8716         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8717         (linux_nat_set_prepare_to_resume): Delete.
8718         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
8719         low virtual methods.
8720         * amd64-linux-nat.c: Likewise.
8721         * arm-linux-nat.c: Likewise.
8722         * i386-linux-nat.c: Likewise.
8723         * ia64-linux-nat.c: Likewise.
8724         * mips-linux-nat.c: Likewise.
8725         * ppc-linux-nat.c: Likewise.
8726         * s390-linux-nat.c: Likewise.
8727         * sparc64-linux-nat.c: Likewise.
8728         * x86-linux-nat.c: Likewise.
8729         * x86-linux-nat.h: Include "nat/x86-linux.h".
8730         (x86_linux_nat_target) <low_new_fork, low_forget_process,
8731         low_prepare_to_resume, low_new_thread, low_delete_thread>:
8732         Override methods.
8733
8734 2018-05-02  Pedro Alves  <palves@redhat.com>
8735
8736         * target.h (target_ops)
8737         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
8738         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
8739         stopped_by_watchpoint, have_continuable_watchpoint,
8740         stopped_data_address, watchpoint_addr_within_range,
8741         can_accel_watchpoint_condition, can_run, thread_alive,
8742         has_all_memory, has_memory, has_stack, has_registers,
8743         has_execution, can_async_p, is_async_p, supports_non_stop,
8744         always_non_stop_p, can_execute_reverse, supports_multi_process,
8745         supports_enable_disable_tracepoint,
8746         supports_disable_randomization, supports_string_tracing,
8747         supports_evaluation_of_breakpoint_conditions,
8748         can_run_breakpoint_commands, filesystem_is_local,
8749         can_download_tracepoint, get_trace_state_variable_value,
8750         set_trace_notes, get_tib_address, use_agent, can_use_agent,
8751         record_is_replaying, record_will_replay,
8752         augmented_libraries_svr4_read>: Adjust to return bool.
8753         * aarch64-linux-nat.c: All implementations adjusted.
8754         * aix-thread.c: All implementations adjusted.
8755         * arm-linux-nat.c: All implementations adjusted.
8756         * breakpoint.c: All implementations adjusted.
8757         * bsd-kvm.c: All implementations adjusted.
8758         * bsd-uthread.c: All implementations adjusted.
8759         * corelow.c: All implementations adjusted.
8760         * ctf.c: All implementations adjusted.
8761         * darwin-nat.c: All implementations adjusted.
8762         * darwin-nat.h: All implementations adjusted.
8763         * exec.c: All implementations adjusted.
8764         * fbsd-nat.c: All implementations adjusted.
8765         * fbsd-nat.h: All implementations adjusted.
8766         * gnu-nat.c: All implementations adjusted.
8767         * gnu-nat.h: All implementations adjusted.
8768         * go32-nat.c: All implementations adjusted.
8769         * ia64-linux-nat.c: All implementations adjusted.
8770         * inf-child.c: All implementations adjusted.
8771         * inf-child.h: All implementations adjusted.
8772         * inf-ptrace.c: All implementations adjusted.
8773         * inf-ptrace.h: All implementations adjusted.
8774         * linux-nat.c: All implementations adjusted.
8775         * linux-nat.h: All implementations adjusted.
8776         * mips-linux-nat.c: All implementations adjusted.
8777         * nto-procfs.c: All implementations adjusted.
8778         * ppc-linux-nat.c: All implementations adjusted.
8779         * procfs.c: All implementations adjusted.
8780         * ravenscar-thread.c: All implementations adjusted.
8781         * record-btrace.c: All implementations adjusted.
8782         * record-full.c: All implementations adjusted.
8783         * remote-sim.c: All implementations adjusted.
8784         * remote.c: All implementations adjusted.
8785         * s390-linux-nat.c: All implementations adjusted.
8786         * sol-thread.c: All implementations adjusted.
8787         * spu-multiarch.c: All implementations adjusted.
8788         * target-delegates.c: All implementations adjusted.
8789         * target.c: All implementations adjusted.
8790         * target.h: All implementations adjusted.
8791         * tracefile-tfile.c: All implementations adjusted.
8792         * tracefile.c: All implementations adjusted.
8793         * tracefile.h: All implementations adjusted.
8794         * windows-nat.c: All implementations adjusted.
8795         * x86-linux-nat.h: All implementations adjusted.
8796         * x86-nat.h: All implementations adjusted.
8797
8798 2018-05-02  Pedro Alves  <palves@redhat.com>
8799
8800         * make-target-delegates (scan_target_h): Don't trim lines here.
8801         Replace sequences of tabs and/or whitespace with a single
8802         whitespace.
8803         (top level, parsing methods): Trim each line before processing it
8804         here.
8805
8806 2018-05-02  Pedro Alves  <palves@redhat.com>
8807             John Baldwin  <jhb@freebsd.org>
8808
8809         * target.h (enum strata) <debug_stratum>: New.
8810         (struct target_ops) <all delegation methods>: Replace by C++
8811         virtual methods, and drop "to_" prefix.  All references updated
8812         throughout.
8813         <to_shortname, to_longname, to_doc, to_data,
8814         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
8815         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
8816         virtual methods.  All references updated throughout.
8817         <can_attach, supports_terminal_ours, can_create_inferior,
8818         get_thread_control_capabilities, attach_no_wait>: New
8819         virtual methods.
8820         <insert_breakpoint, remove_breakpoint>: Now
8821         TARGET_DEFAULT_NORETURN methods.
8822         <info_proc>: Now returns bool.
8823         <to_magic>: Delete.
8824         (OPS_MAGIC): Delete.
8825         (current_target): Delete.  All references replaced by references
8826         to ...
8827         (target_stack): ... this.  New.
8828         (target_shortname, target_longname): Adjust.
8829         (target_can_run): Now a function declaration.
8830         (default_child_has_all_memory, default_child_has_memory)
8831         (default_child_has_stack, default_child_has_registers)
8832         (default_child_has_execution): Remove target_ops parameter.
8833         (complete_target_initialization): Delete.
8834         (memory_breakpoint_target): New template class.
8835         (test_target_ops): Refactor as a C++ class with virtual methods.
8836         * make-target-delegates (NAME_PART): Tighten.
8837         (POINTER_PART, CP_SYMBOL): New.
8838         (SIMPLE_RETURN_PART): Reimplement.
8839         (VEC_RETURN_PART): Expect less.
8840         (RETURN_PART, VIRTUAL_PART): New.
8841         (METHOD): Adjust to C++ virtual methods.
8842         (scan_target_h): Remove reference to C99.
8843         (dname): Output "target_ops::" prefix.
8844         (write_function_header): Adjust to output a C++ class method.
8845         (write_declaration): New.
8846         (write_delegator): Adjust to output a C++ class method.
8847         (tdname): Output "dummy_target::" prefix.
8848         (write_tdefault, write_debugmethod): Adjust to output a C++ class
8849         method.
8850         (tdefault_names, debug_names): Delete.
8851         (return_types, tdefaults, styles, argtypes_array): New.
8852         (top level): All methods are delegators.
8853         (print_class): New.
8854         (top level): Print dummy_target and debug_target classes.
8855         * target-delegates.c: Regenerate.
8856         * target-debug.h (target_debug_print_enum_info_proc_what)
8857         (target_debug_print_thread_control_capabilities)
8858         (target_debug_print_thread_info_p): New.
8859         * target.c (dummy_target): Delete.
8860         (the_dummy_target, the_debug_target): New.
8861         (target_stack): Now extern.
8862         (set_targetdebug): Push/unpush debug target.
8863         (default_child_has_all_memory, default_child_has_memory)
8864         (default_child_has_stack, default_child_has_registers)
8865         (default_child_has_execution): Remove target_ops parameter.
8866         (complete_target_initialization): Delete.
8867         (add_target_with_completer): No longer call
8868         complete_target_initialization.
8869         (target_supports_terminal_ours): Use regular delegation.
8870         (update_current_target): Delete.
8871         (push_target): No longer check magic number.  Don't call
8872         update_current_target.
8873         (unpush_target): Don't call update_current_target.
8874         (target_is_pushed): No longer check magic number.
8875         (target_require_runnable): Skip for all stratums over
8876         process_stratum.
8877         (target_ops::info_proc): New.
8878         (target_info_proc): Use find_target_at and
8879         find_default_run_target.
8880         (target_supports_disable_randomization): Use regular delegation.
8881         (target_get_osdata): Use find_target_at.
8882         (target_ops::open, target_ops::close, target_ops::can_attach)
8883         (target_ops::attach, target_ops::can_create_inferior)
8884         (target_ops::create_inferior, target_ops::can_run)
8885         (target_can_run): New.
8886         (default_fileio_target): Use regular delegation.
8887         (target_ops::fileio_open, target_ops::fileio_pwrite)
8888         (target_ops::fileio_pread, target_ops::fileio_fstat)
8889         (target_ops::fileio_close, target_ops::fileio_unlink)
8890         (target_ops::fileio_readlink): New.
8891         (target_fileio_open_1, target_fileio_unlink)
8892         (target_fileio_readlink): Always call the target method.  Handle
8893         FILEIO_ENOSYS.
8894         (return_zero, return_zero_has_execution): Delete.
8895         (init_dummy_target): Delete.
8896         (dummy_target::dummy_target, dummy_target::shortname)
8897         (dummy_target::longname, dummy_target::doc)
8898         (debug_target::debug_target, debug_target::shortname)
8899         (debug_target::longname, debug_target::doc): New.
8900         (target_supports_delete_record): Use regular delegation.
8901         (setup_target_debug): Delete.
8902         (maintenance_print_target_stack): Skip debug_stratum.
8903         (initialize_targets): Instantiate the_dummy_target and
8904         the_debug_target.
8905         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
8906         use target_stack.
8907         (target_auxv_search, fprint_target_auxv): Adjust.
8908         (info_auxv_command): Adjust to use target_stack.
8909         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
8910         * exceptions.c (print_flush): Handle a NULL target_stack.
8911         * regcache.c (target_ops_no_register): Refactor as class with
8912         virtual methods.
8913
8914         * exec.c (exec_target): New class.
8915         (exec_ops): Now an exec_target.
8916         (exec_open, exec_close_1, exec_get_section_table)
8917         (exec_xfer_partial, exec_files_info, exec_has_memory)
8918         (exec_make_note_section): Refactor as exec_target methods.
8919         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
8920         Delete.
8921         (exec_target::find_memory_regions): New.
8922         (_initialize_exec): Don't call init_exec_ops.
8923         * gdbcore.h (exec_file_clear): Delete.
8924
8925         * corefile.c (core_target): Delete.
8926         (core_file_command): Adjust.
8927         * corelow.c (core_target): New class.
8928         (the_core_target): New.
8929         (core_close): Remove target_ops parameter.
8930         (core_close_cleanup): Adjust.
8931         (core_target::close): New.
8932         (core_open, core_detach, get_core_registers, core_files_info)
8933         (core_xfer_partial, core_thread_alive, core_read_description)
8934         (core_pid_to_str, core_thread_name, core_has_memory)
8935         (core_has_stack, core_has_registers, core_info_proc): Rework as
8936         core_target methods.
8937         (ignore, core_remove_breakpoint, init_core_ops): Delete.
8938         (_initialize_corelow): Initialize the_core_target.
8939         * gdbcore.h (core_target): Delete.
8940         (the_core_target): New.
8941
8942         * ctf.c: (ctf_target): New class.
8943         (ctf_ops): Now a ctf_target.
8944         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
8945         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
8946         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
8947         methods.
8948         (init_ctf_ops): Delete.
8949         (_initialize_ctf): Don't call it.
8950         * tracefile-tfile.c (tfile_target): New class.
8951         (tfile_ops): Now a tfile_target.
8952         (tfile_open, tfile_close, tfile_files_info)
8953         (tfile_get_tracepoint_status, tfile_trace_find)
8954         (tfile_fetch_registers, tfile_xfer_partial)
8955         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
8956         Refactor as tfile_target methods.
8957         (tfile_xfer_partial_features): Remove target_ops parameter.
8958         (init_tfile_ops): Delete.
8959         (_initialize_tracefile_tfile): Don't call it.
8960         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
8961         (tracefile_has_stack, tracefile_has_registers)
8962         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
8963         tracefile_target methods.
8964         (init_tracefile_ops): Delete.
8965         (tracefile_target::tracefile_target): New.
8966         * tracefile.h: Include "target.h".
8967         (tracefile_target): New class.
8968         (init_tracefile_ops): Delete.
8969
8970         * spu-multiarch.c (spu_multiarch_target): New class.
8971         (spu_ops): Now a spu_multiarch_target.
8972         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
8973         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
8974         (spu_search_memory, spu_mourn_inferior): Refactor as
8975         spu_multiarch_target methods.
8976         (init_spu_ops): Delete.
8977         (_initialize_spu_multiarch): Remove references to init_spu_ops,
8978         complete_target_initialization.
8979
8980         * ravenscar-thread.c (ravenscar_thread_target): New class.
8981         (ravenscar_ops): Now a ravenscar_thread_target.
8982         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
8983         (ravenscar_thread_alive, ravenscar_pid_to_str)
8984         (ravenscar_fetch_registers, ravenscar_store_registers)
8985         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
8986         (ravenscar_stopped_by_hw_breakpoint)
8987         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
8988         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
8989         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
8990         methods.
8991         (init_ravenscar_thread_ops): Delete.
8992         (_initialize_ravenscar): Remove references to
8993         init_ravenscar_thread_ops and complete_target_initialization.
8994
8995         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
8996         (bsd_uthread_target): New class.
8997         (bsd_uthread_ops): Now a bsd_uthread_target.
8998         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
8999         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9000         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9001         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9002         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9003         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9004         (bsd_uthread_target): Delete function.
9005         (_initialize_bsd_uthread): Remove reference to
9006         complete_target_initialization.
9007
9008         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9009         (target_bfd): ... this new class.
9010         (target_bfd_xfer_partial, target_bfd_get_section_table)
9011         (target_bfd_close): Refactor as target_bfd methods.
9012         (target_bfd::~target_bfd): New.
9013         (target_bfd_reopen): Adjust.
9014         (target_bfd::close): New.
9015
9016         * record-btrace.c (record_btrace_target): New class.
9017         (record_btrace_ops): Now a record_btrace_target.
9018         (record_btrace_open, record_btrace_stop_recording)
9019         (record_btrace_disconnect, record_btrace_close)
9020         (record_btrace_async, record_btrace_info)
9021         (record_btrace_insn_history, record_btrace_insn_history_range)
9022         (record_btrace_insn_history_from, record_btrace_call_history)
9023         (record_btrace_call_history_range)
9024         (record_btrace_call_history_from, record_btrace_record_method)
9025         (record_btrace_is_replaying, record_btrace_will_replay)
9026         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9027         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9028         (record_btrace_store_registers, record_btrace_prepare_to_store)
9029         (record_btrace_to_get_unwinder)
9030         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9031         (record_btrace_commit_resume, record_btrace_wait)
9032         (record_btrace_stop, record_btrace_can_execute_reverse)
9033         (record_btrace_stopped_by_sw_breakpoint)
9034         (record_btrace_supports_stopped_by_sw_breakpoint)
9035         (record_btrace_stopped_by_hw_breakpoint)
9036         (record_btrace_supports_stopped_by_hw_breakpoint)
9037         (record_btrace_update_thread_list, record_btrace_thread_alive)
9038         (record_btrace_goto_begin, record_btrace_goto_end)
9039         (record_btrace_goto, record_btrace_stop_replaying_all)
9040         (record_btrace_execution_direction)
9041         (record_btrace_prepare_to_generate_core)
9042         (record_btrace_done_generating_core): Refactor as
9043         record_btrace_target methods.
9044         (init_record_btrace_ops): Delete.
9045         (_initialize_record_btrace): Remove reference to
9046         init_record_btrace_ops.
9047         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9048         the execution_direction global.
9049         (record_full_base_target, record_full_target)
9050         (record_full_core_target): New classes.
9051         (record_full_ops): Now a record_full_target.
9052         (record_full_core_ops): Now a record_full_core_target.
9053         (record_full_target::detach, record_full_target::disconnect)
9054         (record_full_core_target::disconnect)
9055         (record_full_target::mourn_inferior, record_full_target::kill):
9056         New.
9057         (record_full_open, record_full_close, record_full_async): Refactor
9058         as methods of the record_full_base_target class.
9059         (record_full_resume, record_full_commit_resume): Refactor
9060         as methods of the record_full_target class.
9061         (record_full_wait, record_full_stopped_by_watchpoint)
9062         (record_full_stopped_data_address)
9063         (record_full_stopped_by_sw_breakpoint)
9064         (record_full_supports_stopped_by_sw_breakpoint)
9065         (record_full_stopped_by_hw_breakpoint)
9066         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9067         methods of the record_full_base_target class.
9068         (record_full_store_registers, record_full_xfer_partial)
9069         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9070         Refactor as methods of the record_full_target class.
9071         (record_full_can_execute_reverse, record_full_get_bookmark)
9072         (record_full_goto_bookmark, record_full_execution_direction)
9073         (record_full_record_method, record_full_info, record_full_delete)
9074         (record_full_is_replaying, record_full_will_replay)
9075         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9076         (record_full_stop_replaying): Refactor as methods of the
9077         record_full_base_target class.
9078         (record_full_core_resume, record_full_core_kill)
9079         (record_full_core_fetch_registers)
9080         (record_full_core_prepare_to_store)
9081         (record_full_core_store_registers, record_full_core_xfer_partial)
9082         (record_full_core_insert_breakpoint)
9083         (record_full_core_remove_breakpoint)
9084         (record_full_core_has_execution): Refactor
9085         as methods of the record_full_core_target class.
9086         (record_full_base_target::supports_delete_record): New.
9087         (init_record_full_ops): Delete.
9088         (init_record_full_core_ops): Delete.
9089         (record_full_save): Refactor as method of the
9090         record_full_base_target class.
9091         (_initialize_record_full): Remove references to
9092         init_record_full_ops and init_record_full_core_ops.
9093
9094         * remote.c (remote_target, extended_remote_target): New classes.
9095         (remote_ops): Now a remote_target.
9096         (extended_remote_ops): Now an extended_remote_target.
9097         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9098         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9099         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9100         (remote_pass_signals, remote_set_syscall_catchpoint)
9101         (remote_program_signals, )
9102         (remote_thread_always_alive): Remove target_ops parameter.
9103         (remote_thread_alive, remote_thread_name)
9104         (remote_update_thread_list, remote_threads_extra_info)
9105         (remote_static_tracepoint_marker_at)
9106         (remote_static_tracepoint_markers_by_strid)
9107         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9108         (remote_open): Refactor as methods of remote_target.
9109         (extended_remote_open, extended_remote_detach)
9110         (extended_remote_attach, extended_remote_post_attach):
9111         (extended_remote_supports_disable_randomization)
9112         (extended_remote_create_inferior): : Refactor as method of
9113         extended_remote_target.
9114         (remote_set_permissions, remote_open_1, remote_detach)
9115         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9116         (remote_resume, remote_commit_resume, remote_stop)
9117         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9118         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9119         (remote_prepare_to_store, remote_store_registers)
9120         (remote_flash_erase, remote_flash_done, remote_files_info)
9121         (remote_kill, remote_mourn, remote_insert_breakpoint)
9122         (remote_remove_breakpoint, remote_insert_watchpoint)
9123         (remote_watchpoint_addr_within_range)
9124         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9125         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9126         (remote_supports_stopped_by_sw_breakpoint)
9127         (remote_stopped_by_hw_breakpoint)
9128         (remote_supports_stopped_by_hw_breakpoint)
9129         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9130         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9131         (remote_verify_memory): Refactor as methods of remote_target.
9132         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9133         parameter.
9134         (remote_xfer_partial, remote_get_memory_xfer_limit)
9135         (remote_search_memory, remote_rcmd, remote_memory_map)
9136         (remote_pid_to_str, remote_get_thread_local_address)
9137         (remote_get_tib_address, remote_read_description): Refactor as
9138         methods of remote_target.
9139         (remote_target::fileio_open, remote_target::fileio_pwrite)
9140         (remote_target::fileio_pread, remote_target::fileio_close): New.
9141         (remote_hostio_readlink, remote_hostio_fstat)
9142         (remote_filesystem_is_local, remote_can_execute_reverse)
9143         (remote_supports_non_stop, remote_supports_disable_randomization)
9144         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9145         (remote_supports_enable_disable_tracepoint)
9146         (remote_supports_string_tracing)
9147         (remote_can_run_breakpoint_commands, remote_trace_init)
9148         (remote_download_tracepoint, remote_can_download_tracepoint)
9149         (remote_download_trace_state_variable, remote_enable_tracepoint)
9150         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9151         (remote_trace_start, remote_get_trace_status)
9152         (remote_get_tracepoint_status, remote_trace_stop)
9153         (remote_trace_find, remote_get_trace_state_variable_value)
9154         (remote_save_trace_data, remote_get_raw_trace_data)
9155         (remote_set_disconnected_tracing, remote_core_of_thread)
9156         (remote_set_circular_trace_buffer, remote_traceframe_info)
9157         (remote_get_min_fast_tracepoint_insn_len)
9158         (remote_set_trace_buffer_size, remote_set_trace_notes)
9159         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9160         (remote_disable_btrace, remote_teardown_btrace)
9161         (remote_read_btrace, remote_btrace_conf)
9162         (remote_augmented_libraries_svr4_read, remote_load)
9163         (remote_pid_to_exec_file, remote_can_do_single_step)
9164         (remote_execution_direction, remote_thread_handle_to_thread_info):
9165         Refactor as methods of remote_target.
9166         (init_remote_ops, init_extended_remote_ops): Delete.
9167         (remote_can_async_p, remote_is_async_p, remote_async)
9168         (remote_thread_events, remote_upload_tracepoints)
9169         (remote_upload_trace_state_variables): Refactor as methods of
9170         remote_target.
9171         (_initialize_remote): Remove references to init_remote_ops and
9172         init_extended_remote_ops.
9173
9174         * remote-sim.c (gdbsim_target): New class.
9175         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9176         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9177         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9178         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9179         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9180         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9181         Refactor as methods of gdbsim_target.
9182         (gdbsim_ops): Now a gdbsim_target.
9183         (init_gdbsim_ops): Delete.
9184         (gdbsim_cntrl_c): Adjust.
9185         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9186
9187         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9188         (the_amd64_linux_nat_target): New.
9189         (amd64_linux_fetch_inferior_registers)
9190         (amd64_linux_store_inferior_registers): Refactor as methods of
9191         amd64_linux_nat_target.
9192         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9193         * i386-linux-nat.c: Don't include "linux-nat.h".
9194         (i386_linux_nat_target): New class.
9195         (the_i386_linux_nat_target): New.
9196         (i386_linux_fetch_inferior_registers)
9197         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9198         as methods of i386_linux_nat_target.
9199         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9200         * inf-child.c (inf_child_ops): Delete.
9201         (inf_child_fetch_inferior_registers)
9202         (inf_child_store_inferior_registers): Delete.
9203         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9204         methods of inf_child_target.
9205         (inf_child_target::supports_terminal_ours)
9206         (inf_child_target::terminal_init)
9207         (inf_child_target::terminal_inferior)
9208         (inf_child_target::terminal_ours_for_output)
9209         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9210         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9211         New.
9212         (inf_child_open, inf_child_disconnect, inf_child_close)
9213         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9214         (inf_child_post_startup_inferior, inf_child_can_run)
9215         (inf_child_pid_to_exec_file): Refactor as methods of
9216         inf_child_target.
9217         (inf_child_follow_fork): Delete.
9218         (inf_child_target::can_create_inferior)
9219         (inf_child_target::can_attach): New.
9220         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9221         (inf_child_target::has_stack, inf_child_target::has_registers)
9222         (inf_child_target::has_execution): New.
9223         (inf_child_fileio_open, inf_child_fileio_pwrite)
9224         (inf_child_fileio_pread, inf_child_fileio_fstat)
9225         (inf_child_fileio_close, inf_child_fileio_unlink)
9226         (inf_child_fileio_readlink, inf_child_use_agent)
9227         (inf_child_can_use_agent): Refactor as methods of
9228         inf_child_target.
9229         (return_zero, inf_child_target): Delete.
9230         (inf_child_target::inf_child_target): New.
9231         * inf-child.h: Include "target.h".
9232         (inf_child_target): Delete function prototype.
9233         (inf_child_target): New class.
9234         (inf_child_open_target, inf_child_mourn_inferior)
9235         (inf_child_maybe_unpush_target): Delete.
9236         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9237         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9238         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9239         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9240         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9241         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9242         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9243         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9244         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9245         methods of inf_ptrace_target.
9246         (inf_ptrace_target): Delete function.
9247         * inf-ptrace.h: Include "inf-child.h".
9248         (inf_ptrace_target): Delete function declaration.
9249         (inf_ptrace_target): New class.
9250         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9251         * linux-nat.c (linux_target): New.
9252         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9253         (linux_nat_target::~linux_nat_target): New.
9254         (linux_child_post_attach, linux_child_post_startup_inferior)
9255         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9256         (linux_child_remove_fork_catchpoint)
9257         (linux_child_insert_vfork_catchpoint)
9258         (linux_child_remove_vfork_catchpoint)
9259         (linux_child_insert_exec_catchpoint)
9260         (linux_child_remove_exec_catchpoint)
9261         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9262         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9263         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9264         (linux_nat_stopped_data_address)
9265         (linux_nat_stopped_by_sw_breakpoint)
9266         (linux_nat_supports_stopped_by_sw_breakpoint)
9267         (linux_nat_stopped_by_hw_breakpoint)
9268         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9269         (linux_nat_kill, linux_nat_mourn_inferior)
9270         (linux_nat_xfer_partial, linux_nat_thread_alive)
9271         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9272         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9273         (linux_child_static_tracepoint_markers_by_strid)
9274         (linux_nat_is_async_p, linux_nat_can_async_p)
9275         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9276         (linux_nat_supports_multi_process)
9277         (linux_nat_supports_disable_randomization, linux_nat_async)
9278         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9279         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9280         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9281         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9282         methods of linux_nat_target.
9283         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9284         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9285         parameter.
9286         (check_stopped_by_watchpoint): Adjust.
9287         (linux_xfer_partial): Delete.
9288         (linux_target_install_ops, linux_target, linux_nat_add_target):
9289         Delete.
9290         (linux_nat_target::linux_nat_target): New.
9291         * linux-nat.h: Include "inf-ptrace.h".
9292         (linux_nat_target): New.
9293         (linux_target, linux_target_install_ops, linux_nat_add_target):
9294         Delete function declarations.
9295         (linux_target): Declare global.
9296         * linux-thread-db.c (thread_db_target): New.
9297         (thread_db_target::thread_db_target): New.
9298         (thread_db_ops): Delete.
9299         (the_thread_db_target): New.
9300         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9301         (thread_db_update_thread_list, thread_db_pid_to_str)
9302         (thread_db_extra_thread_info)
9303         (thread_db_thread_handle_to_thread_info)
9304         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9305         (thread_db_resume): Refactor as methods of thread_db_target.
9306         (init_thread_db_ops): Delete.
9307         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9308         * x86-linux-nat.c: Don't include "linux-nat.h".
9309         (super_post_startup_inferior): Delete.
9310         (x86_linux_nat_target::~x86_linux_nat_target): New.
9311         (x86_linux_child_post_startup_inferior)
9312         (x86_linux_read_description, x86_linux_enable_btrace)
9313         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9314         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9315         methods of x86_linux_nat_target.
9316         (x86_linux_create_target): Delete.  Bits folded ...
9317         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9318         pointer.
9319         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9320         (x86_linux_nat_target): New class.
9321         (x86_linux_create_target): Delete.
9322         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9323         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9324         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9325         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9326         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9327         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9328         make extern.
9329         (x86_use_watchpoints): Delete.
9330         * x86-nat.h: Include "breakpoint.h" and "target.h".
9331         (x86_use_watchpoints): Delete.
9332         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9333         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9334         (x86_insert_watchpoint, x86_remove_watchpoint)
9335         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9336         (x86_stopped_by_hw_breakpoint): New declarations.
9337         (x86_nat_target): New template class.
9338
9339         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9340         (the_ppc_linux_nat_target): New.
9341         (ppc_linux_fetch_inferior_registers)
9342         (ppc_linux_can_use_hw_breakpoint)
9343         (ppc_linux_region_ok_for_hw_watchpoint)
9344         (ppc_linux_ranged_break_num_registers)
9345         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9346         (ppc_linux_insert_mask_watchpoint)
9347         (ppc_linux_remove_mask_watchpoint)
9348         (ppc_linux_can_accel_watchpoint_condition)
9349         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9350         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9351         (ppc_linux_watchpoint_addr_within_range)
9352         (ppc_linux_masked_watch_num_registers)
9353         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9354         (ppc_linux_read_description): Refactor as methods of
9355         ppc_linux_nat_target.
9356         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
9357
9358         * procfs.c (procfs_xfer_partial): Delete forward declaration.
9359         (procfs_target): New class.
9360         (the_procfs_target): New.
9361         (procfs_target): Delete function.
9362         (procfs_auxv_parse, procfs_attach, procfs_detach)
9363         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
9364         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
9365         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
9366         (procfs_create_inferior, procfs_update_thread_list)
9367         (procfs_thread_alive, procfs_pid_to_str)
9368         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
9369         (procfs_stopped_data_address, procfs_insert_watchpoint)
9370         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
9371         (proc_find_memory_regions, procfs_info_proc)
9372         (procfs_make_note_section): Refactor as methods of procfs_target.
9373         (_initialize_procfs): Adjust.
9374         * sol-thread.c (sol_thread_target): New class.
9375         (sol_thread_ops): Now a sol_thread_target.
9376         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
9377         (sol_thread_fetch_registers, sol_thread_store_registers)
9378         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
9379         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
9380         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
9381         (init_sol_thread_ops): Delete.
9382         (_initialize_sol_thread): Adjust.  Remove references to
9383         init_sol_thread_ops and complete_target_initialization.
9384
9385         * windows-nat.c (windows_nat_target): New class.
9386         (windows_fetch_inferior_registers)
9387         (windows_store_inferior_registers, windows_resume, windows_wait)
9388         (windows_attach, windows_detach, windows_pid_to_exec_file)
9389         (windows_files_info, windows_create_inferior)
9390         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
9391         (windows_close, windows_pid_to_str, windows_xfer_partial)
9392         (windows_get_tib_address, windows_get_ada_task_ptid)
9393         (windows_thread_name, windows_thread_alive): Refactor as
9394         windows_nat_target methods.
9395         (do_initial_windows_stuff): Adjust.
9396         (windows_target): Delete function.
9397         (_initialize_windows_nat): Adjust.
9398
9399         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
9400         (darwin_mourn_inferior, darwin_kill_inferior)
9401         (darwin_create_inferior, darwin_attach, darwin_detach)
9402         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
9403         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
9404         (darwin_supports_multi_process): Refactor as darwin_nat_target
9405         methods.
9406         (darwin_resume_to, darwin_files_info): Delete.
9407         (_initialize_darwin_inferior): Rename to ...
9408         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
9409         * darwin-nat.h: Include "inf-child.h".
9410         (darwin_nat_target): New class.
9411         (darwin_complete_target): Delete.
9412         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
9413         (darwin_target): New.
9414         (i386_darwin_fetch_inferior_registers)
9415         (i386_darwin_store_inferior_registers): Refactor as methods of
9416         darwin_nat_target.
9417         (darwin_complete_target): Delete, with ...
9418         (_initialize_i386_darwin_nat): ... bits factored out here.
9419
9420         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
9421         (the_alpha_linux_nat_target): New.
9422         (alpha_linux_register_u_offset): Refactor as
9423         alpha_linux_nat_target method.
9424         (_initialize_alpha_linux_nat): Adjust.
9425         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
9426         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9427         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
9428         methods of linux_nat_trad_target.
9429         (linux_trad_target): Delete.
9430         * linux-nat-trad.h (linux_trad_target): Delete function.
9431         (linux_nat_trad_target): New class.
9432         * mips-linux-nat.c (mips_linux_nat_target): New class.
9433         (super_fetch_registers, super_store_registers, super_close):
9434         Delete.
9435         (the_mips_linux_nat_target): New.
9436         (mips64_linux_regsets_fetch_registers)
9437         (mips64_linux_regsets_store_registers)
9438         (mips64_linux_fetch_registers, mips64_linux_store_registers)
9439         (mips_linux_register_u_offset, mips_linux_read_description)
9440         (mips_linux_can_use_hw_breakpoint)
9441         (mips_linux_stopped_by_watchpoint)
9442         (mips_linux_stopped_data_address)
9443         (mips_linux_region_ok_for_hw_watchpoint)
9444         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
9445         (mips_linux_close): Refactor as methods of mips_linux_nat.
9446         (_initialize_mips_linux_nat): Adjust to C++ification.
9447
9448         * aix-thread.c (aix_thread_target): New class.
9449         (aix_thread_ops): Now an aix_thread_target.
9450         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
9451         (aix_thread_fetch_registers, aix_thread_store_registers)
9452         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
9453         (aix_thread_thread_alive, aix_thread_pid_to_str)
9454         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
9455         Refactor as methods of aix_thread_target.
9456         (init_aix_thread_ops): Delete.
9457         (_initialize_aix_thread): Remove references to init_aix_thread_ops
9458         and complete_target_initialization.
9459         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
9460         (rs6000_nat_target): New class.
9461         (the_rs6000_nat_target): New.
9462         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
9463         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
9464         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
9465         (super_create_inferior): Delete.
9466         (_initialize_rs6000_nat): Adjust to C++ification.
9467
9468         * arm-linux-nat.c (arm_linux_nat_target): New class.
9469         (the_arm_linux_nat_target): New.
9470         (arm_linux_fetch_inferior_registers)
9471         (arm_linux_store_inferior_registers, arm_linux_read_description)
9472         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
9473         (arm_linux_remove_hw_breakpoint)
9474         (arm_linux_region_ok_for_hw_watchpoint)
9475         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
9476         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
9477         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
9478         arm_linux_nat_target.
9479         (_initialize_arm_linux_nat): Adjust to C++ification.
9480
9481         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
9482         (the_aarch64_linux_nat_target): New.
9483         (aarch64_linux_fetch_inferior_registers)
9484         (aarch64_linux_store_inferior_registers)
9485         (aarch64_linux_child_post_startup_inferior)
9486         (aarch64_linux_read_description)
9487         (aarch64_linux_can_use_hw_breakpoint)
9488         (aarch64_linux_insert_hw_breakpoint)
9489         (aarch64_linux_remove_hw_breakpoint)
9490         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
9491         (aarch64_linux_region_ok_for_hw_watchpoint)
9492         (aarch64_linux_stopped_data_address)
9493         (aarch64_linux_stopped_by_watchpoint)
9494         (aarch64_linux_watchpoint_addr_within_range)
9495         (aarch64_linux_can_do_single_step): Refactor as methods of
9496         aarch64_linux_nat_target.
9497         (super_post_startup_inferior): Delete.
9498         (_initialize_aarch64_linux_nat): Adjust to C++ification.
9499
9500         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
9501         (the_hppa_linux_nat_target): New.
9502         (hppa_linux_fetch_inferior_registers)
9503         (hppa_linux_store_inferior_registers): Refactor as methods of
9504         hppa_linux_nat_target.
9505         (_initialize_hppa_linux_nat): Adjust to C++ification.
9506
9507         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
9508         (the_ia64_linux_nat_target): New.
9509         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
9510         (ia64_linux_stopped_data_address)
9511         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
9512         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
9513         ia64_linux_nat_target methods.
9514         (super_xfer_partial): Delete.
9515         (_initialize_ia64_linux_nat): Adjust to C++ification.
9516
9517         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
9518         (the_m32r_linux_nat_target): New.
9519         (m32r_linux_fetch_inferior_registers)
9520         (m32r_linux_store_inferior_registers): Refactor as
9521         m32r_linux_nat_target methods.
9522         (_initialize_m32r_linux_nat): Adjust to C++ification.
9523
9524         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
9525         (the_m68k_linux_nat_target): New.
9526         (m68k_linux_fetch_inferior_registers)
9527         (m68k_linux_store_inferior_registers): Refactor as
9528         m68k_linux_nat_target methods.
9529         (_initialize_m68k_linux_nat): Adjust to C++ification.
9530
9531         * s390-linux-nat.c (s390_linux_nat_target): New class.
9532         (the_s390_linux_nat_target): New.
9533         (s390_linux_fetch_inferior_registers)
9534         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
9535         (s390_insert_watchpoint, s390_remove_watchpoint)
9536         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
9537         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
9538         (s390_auxv_parse, s390_read_description): Refactor as methods of
9539         s390_linux_nat_target.
9540         (_initialize_s390_nat): Adjust to C++ification.
9541
9542         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
9543         (the_sparc_linux_nat_target): New.
9544         (_initialize_sparc_linux_nat): Adjust to C++ification.
9545         * sparc-nat.c (sparc_fetch_inferior_registers)
9546         (sparc_store_inferior_registers): Remove target_ops parameter.
9547         * sparc-nat.h (sparc_fetch_inferior_registers)
9548         (sparc_store_inferior_registers): Remove target_ops parameter.
9549         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
9550         (the_sparc64_linux_nat_target): New.
9551         (_initialize_sparc64_linux_nat): Adjust to C++ification.
9552
9553         * spu-linux-nat.c (spu_linux_nat_target): New class.
9554         (the_spu_linux_nat_target): New.
9555         (spu_child_post_startup_inferior, spu_child_post_attach)
9556         (spu_child_wait, spu_fetch_inferior_registers)
9557         (spu_store_inferior_registers, spu_xfer_partial)
9558         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
9559         methods.
9560         (_initialize_spu_nat): Adjust to C++ification.
9561
9562         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
9563         (the_tilegx_linux_nat_target): New.
9564         (fetch_inferior_registers, store_inferior_registers):
9565         Refactor as methods.
9566         (_initialize_tile_linux_nat): Adjust to C++ification.
9567
9568         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
9569         (the_xtensa_linux_nat_target): New.
9570         (xtensa_linux_fetch_inferior_registers)
9571         (xtensa_linux_store_inferior_registers): Refactor as
9572         xtensa_linux_nat_target methods.
9573         (_initialize_xtensa_linux_nat): Adjust to C++ification.
9574
9575         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
9576         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
9577         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
9578         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
9579         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
9580         (fbsd_stopped_by_sw_breakpoint)
9581         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
9582         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
9583         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
9584         (fbsd_post_startup_inferior, fbsd_post_attach)
9585         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
9586         (fbsd_set_syscall_catchpoint)
9587         (super_xfer_partial, super_resume, super_wait)
9588         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
9589         (fbsd_handle_debug_trap): Remove target_ops parameter.
9590         (fbsd_nat_add_target): Delete.
9591         * fbsd-nat.h: Include "inf-ptrace.h".
9592         (fbsd_nat_add_target): Delete.
9593         (USE_SIGTRAP_SIGINFO): Define.
9594         (fbsd_nat_target): New class.
9595
9596         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
9597         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
9598         (amd64bsd_target): Delete.
9599         * amd64-bsd-nat.h: New file.
9600         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
9601         "x86-bsd-nat.h".
9602         (amd64_fbsd_nat_target): New class.
9603         (the_amd64_fbsd_nat_target): New.
9604         (amd64fbsd_read_description): Refactor as method of
9605         amd64_fbsd_nat_target.
9606         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9607         (_initialize_amd64fbsd_nat): Adjust to C++ification.
9608         * amd64-nat.h (amd64bsd_target): Delete function declaration.
9609         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
9610         (i386bsd_store_inferior_registers): Remove target_ops parameter.
9611         (i386bsd_target): Delete.
9612         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
9613         (i386bsd_fetch_inferior_registers)
9614         (i386bsd_store_inferior_registers): Declare.
9615         (i386_bsd_nat_target): New class.
9616         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
9617         (the_i386_fbsd_nat_target): New.
9618         (i386fbsd_resume, i386fbsd_read_description): Refactor as
9619         i386_fbsd_nat_target methods.
9620         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9621         (_initialize_i386fbsd_nat): Adjust to C++ification.
9622         * x86-bsd-nat.c (super_mourn_inferior): Delete.
9623         (x86bsd_mourn_inferior, x86bsd_target): Delete.
9624         (_initialize_x86_bsd_nat): Adjust to C++ification.
9625         * x86-bsd-nat.h: Include "x86-nat.h".
9626         (x86bsd_target): Delete declaration.
9627         (x86bsd_nat_target): New class.
9628
9629         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
9630         (the_aarch64_fbsd_nat_target): New.
9631         (aarch64_fbsd_fetch_inferior_registers)
9632         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
9633         aarch64_fbsd_nat_target.
9634         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
9635         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
9636         (the_alpha_bsd_nat_target): New.
9637         (alphabsd_fetch_inferior_registers)
9638         (alphabsd_store_inferior_registers): Refactor as
9639         alpha_bsd_nat_target methods.
9640         (_initialize_alphabsd_nat): Refactor as methods of
9641         alpha_bsd_nat_target.
9642         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
9643         (the_amd64_nbsd_nat_target): New.
9644         (_initialize_amd64nbsd_nat): Adjust to C++ification.
9645         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
9646         (the_amd64_obsd_nat_target): New.
9647         (_initialize_amd64obsd_nat): Adjust to C++ification.
9648         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
9649         (the_arm_fbsd_nat_target): New.
9650         (arm_fbsd_fetch_inferior_registers)
9651         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
9652         (_initialize_arm_fbsd_nat): Refactor as methods of
9653         arm_fbsd_nat_target.
9654         (_initialize_arm_fbsd_nat): Adjust to C++ification.
9655         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
9656         (the_arm_netbsd_nat_target): New.
9657         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
9658         arm_netbsd_nat_target.
9659         (_initialize_arm_netbsd_nat): Adjust to C++ification.
9660         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
9661         (the_hppa_nbsd_nat_target): New.
9662         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
9663         hppa_nbsd_nat_target methods.
9664         (_initialize_hppanbsd_nat): Adjust to C++ification.
9665         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
9666         (the_hppa_obsd_nat_target): New.
9667         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
9668         methods of hppa_obsd_nat_target.
9669         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
9670         add_target.
9671         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
9672         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
9673         add_target.
9674         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
9675         (_initialize_i386obsd_nat): Use add_target.
9676         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
9677         (the_m68k_bsd_nat_target): New.
9678         (m68kbsd_fetch_inferior_registers)
9679         (m68kbsd_store_inferior_registers): Refactor as methods of
9680         m68k_bsd_nat_target.
9681         (_initialize_m68kbsd_nat): Adjust to C++ification.
9682         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
9683         (the_mips_fbsd_nat_target): New.
9684         (mips_fbsd_fetch_inferior_registers)
9685         (mips_fbsd_store_inferior_registers): Refactor as methods of
9686         mips_fbsd_nat_target.
9687         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
9688         add_target.
9689         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
9690         (the_mips_nbsd_nat_target): New.
9691         (mipsnbsd_fetch_inferior_registers)
9692         (mipsnbsd_store_inferior_registers): Refactor as methods of
9693         mips_nbsd_nat_target.
9694         (_initialize_mipsnbsd_nat): Adjust to C++ification.
9695         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
9696         (the_mips64_obsd_nat_target): New.
9697         (mips64obsd_fetch_inferior_registers)
9698         (mips64obsd_store_inferior_registers): Refactor as methods of
9699         mips64_obsd_nat_target.
9700         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
9701         add_target.
9702         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
9703         nbsd_nat_target.
9704         * nbsd-nat.h: Include "inf-ptrace.h".
9705         (nbsd_nat_target): New class.
9706         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
9707         (obsd_wait): Refactor as methods of obsd_nat_target.
9708         (obsd_add_target): Delete.
9709         * obsd-nat.h: Include "inf-ptrace.h".
9710         (obsd_nat_target): New class.
9711         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
9712         (the_ppc_fbsd_nat_target): New.
9713         (ppcfbsd_fetch_inferior_registers)
9714         (ppcfbsd_store_inferior_registers): Refactor as methods of
9715         ppc_fbsd_nat_target.
9716         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
9717         add_target.
9718         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
9719         (the_ppc_nbsd_nat_target): New.
9720         (ppcnbsd_fetch_inferior_registers)
9721         (ppcnbsd_store_inferior_registers): Refactor as methods of
9722         ppc_nbsd_nat_target.
9723         (_initialize_ppcnbsd_nat): Adjust to C++ification.
9724         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
9725         (the_ppc_obsd_nat_target): New.
9726         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
9727         methods of ppc_obsd_nat_target.
9728         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
9729         add_target.
9730         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
9731         (the_sh_nbsd_nat_target): New.
9732         (shnbsd_fetch_inferior_registers)
9733         (shnbsd_store_inferior_registers): Refactor as methods of
9734         sh_nbsd_nat_target.
9735         (_initialize_shnbsd_nat): Adjust to C++ification.
9736         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
9737         (inf_ptrace_xfer_partial): Delete.
9738         (sparc_xfer_partial, sparc_target): Delete.
9739         * sparc-nat.h (sparc_fetch_inferior_registers)
9740         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
9741         (sparc_target): Delete function declaration.
9742         (sparc_target): New template class.
9743         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
9744         (_initialize_sparcnbsd_nat): Adjust to C++ification.
9745         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
9746         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
9747         add_target.
9748         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
9749         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
9750         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
9751         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
9752         add_target.
9753         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
9754         (the_vax_bsd_nat_target): New.
9755         (vaxbsd_fetch_inferior_registers)
9756         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
9757         methods.
9758         (_initialize_vaxbsd_nat): Adjust to C++ification.
9759
9760         * bsd-kvm.c (bsd_kvm_target): New class.
9761         (bsd_kvm_ops): Now a bsd_kvm_target.
9762         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
9763         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
9764         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
9765         bsd_kvm_target.
9766         (bsd_kvm_return_one): Delete.
9767         (bsd_kvm_add_target): Adjust to C++ification.
9768
9769         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
9770         (nto_procfs_target_procfs): New classes.
9771         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
9772         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
9773         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
9774         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
9775         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
9776         (procfs_remove_hw_breakpoint, procfs_resume)
9777         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
9778         (procfs_kill_inferior, procfs_store_registers)
9779         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
9780         as methods of nto_procfs_target.
9781         (nto_procfs_ops): Now an nto_procfs_target_procfs.
9782         (nto_native_ops): Delete.
9783         (procfs_open, procfs_native_open): Delete.
9784         (nto_native_ops): Now an nto_procfs_target_native.
9785         (init_procfs_targets): Adjust to C++ification.
9786         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
9787         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
9788         Refactor as methods of nto_procfs_target.
9789
9790         * go32-nat.c (go32_nat_target): New class.
9791         (the_go32_nat_target): New.
9792         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
9793         (go32_store_registers, go32_xfer_partial, go32_files_info)
9794         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
9795         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
9796         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
9797         (go32_pid_to_str): Refactor as methods of go32_nat_target.
9798         (go32_target): Delete.
9799         (_initialize_go32_nat): Adjust to C++ification.
9800
9801         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
9802         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
9803         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
9804         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
9805         gnu_nat_target.
9806         (gnu_target): Delete.
9807         * gnu-nat.h (gnu_target): Delete.
9808         (gnu_nat_target): New class.
9809         * i386-gnu-nat.c (gnu_base_target): New.
9810         (i386_gnu_nat_target): New class.
9811         (the_i386_gnu_nat_target): New.
9812         (_initialize_i386gnu_nat): Adjust to C++ification.
9813
9814 2018-05-02  Pedro Alves  <palves@redhat.com>
9815
9816         * bfd-target.c (target_bfd_xclose): Rename to ...
9817         (target_bfd_close): ... this.
9818         (target_bfd_reopen): Adjust.
9819         * target.c (target_close): Remove references to to_xclose.
9820         * target.h (target_ops::to_xclose): Delete.
9821         (target_ops::to_close): Update comments.
9822
9823 2018-05-02  Pedro Alves  <palves@redhat.com>
9824
9825         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
9826         "linux-nat.h".
9827         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
9828         * inf-ptrace.c (inf_ptrace_register_u_offset)
9829         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9830         (inf_ptrace_store_register, inf_ptrace_store_registers)
9831         (inf_ptrace_trad_target): Move to ...
9832         * linux-nat-trad.c: ... this new file.
9833         * linux-nat-trad.h: New file.
9834         * linux-nat.c (linux_target_install_ops): Make extern.
9835         (linux_trad_target): Delete.
9836         * linux-nat.h (linux_trad_target): Delete declaration.
9837         (linux_target_install_ops): Declare.
9838         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
9839         "linux-nat.h".
9840
9841 2018-05-02  Pedro Alves  <palves@redhat.com>
9842
9843         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9844         procfs_target/add_target here.
9845         * procfs.c (procfs_target): Make static.
9846         (_initialize_procfs): Call add_target here.
9847         * procfs.h (struct target_ops): Remove forward declaration.
9848         (procfs_target): Remove declaration.
9849         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
9850
9851 2018-05-02  Pedro Alves  <palves@redhat.com>
9852
9853         * procfs.c (procfs_stopped_by_watchpoint)
9854         (procfs_insert_watchpoint, procfs_remove_watchpoint)
9855         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
9856         Forward declare.
9857         (procfs_use_watchpoints): Delete, move contents...
9858         (procfs_target): ... here.
9859         * procfs.h (procfs_use_watchpoints): Delete declaration.
9860         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9861         procfs_use_watchpoints.
9862         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
9863         procfs_use_watchpoints.
9864
9865 2018-05-02  Tom Tromey  <tom@tromey.com>
9866
9867         PR python/20084:
9868         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
9869         and var_zuinteger_unlimited.
9870         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
9871         and PARAM_ZUINTEGER_UNLIMITED.
9872         (set_parameter_value): Handle var_zuinteger and
9873         var_zuinteger_unlimited.
9874         (add_setshow_generic): Likewise.
9875         (parmpy_init): Likewise.
9876
9877 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
9878
9879         PR rust/23124
9880         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
9881         pointer is not null before dereferencing it.
9882
9883 2018-04-30  Tom Tromey  <tom@tromey.com>
9884
9885         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
9886         is_mi_like_p.
9887
9888 2018-04-30  Tom Tromey  <tom@tromey.com>
9889
9890         * breakpoint.c (mention): Remove use of is_mi_like_p.
9891         (print_mention_ranged_breakpoint): Likewise.
9892         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
9893         of is_mi_like_p.
9894
9895 2018-04-30  Tom Tromey  <tom@tromey.com>
9896
9897         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
9898
9899 2018-04-30  Tom Tromey  <tom@tromey.com>
9900
9901         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
9902         (info_spu_event_command): Remove some uses of is_mi_like_p.
9903
9904 2018-04-30  Tom Tromey  <tom@tromey.com>
9905
9906         * python/py-framefilter.c (py_print_single_arg)
9907         (enumerate_locals, py_print_args, py_print_frame): Remove some
9908         uses of is_mi_like_p.
9909
9910 2018-04-30  Tom Tromey  <tom@tromey.com>
9911
9912         * ui-out.c: Update.
9913         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
9914         * ui-out.h (ui_out::is_mi_like_p): Now const.
9915         (ui_out::do_is_mi_like_p): Now const.
9916         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
9917
9918 2018-04-30  Tom Tromey  <tom@tromey.com>
9919
9920         * varobj.c (varobj_set_visualizer): Use new_reference.
9921         * python/python.c (gdbpy_decode_line): Use new_reference.
9922         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
9923         new_reference.
9924
9925 2018-04-30  Tom Tromey  <tom@tromey.com>
9926
9927         * varobj.c (install_new_value): Use new_reference.
9928         * value.h (value_incref): Return void.  Swap intro comment with
9929         value_decref.
9930         * value.c (set_value_parent): Use new_reference.
9931         (value_incref): Return void.  Update intro comment.
9932         (release_value): Use new_reference.
9933         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
9934
9935 2018-04-30  Tom Tromey  <tom@tromey.com>
9936
9937         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
9938         * gdb_bfd.h (new_bfd_ref): Remove.
9939         (gdb_bfd_open): Update comment.
9940         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
9941         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
9942         (gdb_bfd_fdopenr): Use new_reference.
9943         * exec.c (exec_file_attach): Use new_reference.
9944
9945 2018-04-30  Tom Tromey  <tom@tromey.com>
9946
9947         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
9948         method.
9949
9950 2018-04-30  Tom Tromey  <tom@tromey.com>
9951
9952         * jit.c (jit_read_code_entry): Use type_align.
9953         * i386-tdep.c (i386_gdbarch_init): Don't call
9954         set_gdbarch_long_long_align_bit.
9955         * gdbarch.sh: Remove long_long_align_bit.
9956         * gdbarch.c, gdbarch.h: Rebuild.
9957         * arc-tdep.c (arc_type_align): New function.
9958         (arc_gdbarch_init): Use arc_type_align.  Don't call
9959         set_gdbarch_long_long_align_bit.
9960
9961 2018-04-30  Tom Tromey  <tom@tromey.com>
9962
9963         * rust-lang.c (rust_type_alignment): Remove.
9964         (rust_composite_type): Use type_align.
9965
9966 2018-04-30  Tom Tromey  <tom@tromey.com>
9967
9968         * NEWS: Mention Type.align.
9969         * python/py-type.c (typy_get_alignof): New function.
9970         (type_object_getset): Add "alignof".
9971
9972 2018-04-30  Tom Tromey  <tom@tromey.com>
9973
9974         PR exp/17095:
9975         * NEWS: Update.
9976         * std-operator.def (UNOP_ALIGNOF): New operator.
9977         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
9978         New.
9979         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
9980         * c-lang.c (c_op_print_tab): Add alignof.
9981         * c-exp.y (ALIGNOF): New token.
9982         (exp): Add "ALIGNOF" production.
9983         (ident_tokens): Add _Alignof and alignof.
9984
9985 2018-04-30  Tom Tromey  <tom@tromey.com>
9986
9987         * i386-tdep.c (i386_type_align): New function.
9988         (i386_gdbarch_init): Update.
9989         * gdbarch.sh (type_align): New method.
9990         * gdbarch.c, gdbarch.h: Rebuild.
9991         * arch-utils.h (default_type_align): Declare.
9992         * arch-utils.c (default_type_align): New function.
9993         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
9994         (struct type) <align_log2>: New field.
9995         <instance_flags>: Now a bitfield.
9996         (TYPE_RAW_ALIGN): New macro.
9997         (type_align, type_raw_align, set_type_align): Declare.
9998         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
9999         functions.
10000         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10001         (get_alignment, maybe_set_alignment): New functions.
10002         (read_structure_type, read_enumeration_type, read_array_type)
10003         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10004         (read_subrange_type, read_base_type): Set type alignment.
10005
10006 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10007
10008         * dwarf2read.c (read_index_from_section): Use bool.
10009
10010 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10011
10012         PR gdb/22950
10013         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10014         with #ifdef.
10015
10016 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10017
10018         PR build/22873
10019         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10020         last step, and do it atomically.
10021
10022 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10023
10024         * compile/compile-c-types.c (convert_int, convert_float):
10025         Update for C FE v1.
10026
10027 2018-04-27  Tom Tromey  <tom@tromey.com>
10028
10029         PR rust/22545:
10030         * rust-lang.c (rust_inclusive_range_type_p): New function.
10031         (rust_range): Handle inclusive ranges.
10032         (rust_compute_range): Likewise.
10033         * rust-exp.y (struct rust_op) <inclusive>: New field.
10034         (DOTDOTEQ): New constant.
10035         (range_expr): Add "..=" productions.
10036         (operator_tokens): Add "..=" token.
10037         (ast_range): Add "inclusive" parameter.
10038         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10039         ranges.
10040         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10041         bounds values.
10042         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10043         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10044         Update comments.
10045         * expprint.c (print_subexp_standard): Handle new bounds values.
10046         (dump_subexp_body_standard): Likewise.
10047
10048 2018-04-27  Tom Tromey  <tom@tromey.com>
10049
10050         * configure: Rebuild.
10051         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10052         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10053         "OVERRIDE".
10054         (class symbol_needs_eval_context): Likewise.
10055         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10056         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10057         "virtual".
10058         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10059         "override".
10060         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10061         * aarch64-tdep.c (instruction_reader::read): Use "override".
10062         (instruction_reader_test::read): Likewise.
10063         * arm-tdep.c (instruction_reader::read): Use "override".
10064         (instruction_reader_thumb::read): Likewise.
10065
10066 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10067
10068         PR remote/9665
10069         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10070         instead of remote_send.
10071         (remote_send): Remove.
10072
10073 2018-04-26  Pedro Alves  <palves@redhat.com>
10074
10075         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10076         find_function_start_sal instead of find_pc_line.
10077
10078 2018-04-26  Pedro Alves  <palves@redhat.com>
10079
10080         * breakpoint.c (set_breakpoint_location_function): Handle
10081         mst_data_gnu_ifunc.
10082         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10083         * elfread.c (elf_symtab_read): Give data symbols with
10084         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10085         (elf_rel_plt_read): Update comment.
10086         * linespec.c (convert_linespec_to_sals): Handle
10087         mst_data_gnu_ifunc.
10088         (minsym_found): Handle mst_data_gnu_ifunc.
10089         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10090         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10091         * parse.c (find_minsym_type_and_address): Handle
10092         mst_data_gnu_ifunc.
10093         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10094         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10095         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10096         comment.
10097         <mst_data_gnu_ifunc>: New enumerator.
10098
10099 2018-04-26  Pedro Alves  <palves@redhat.com>
10100
10101         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10102         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10103         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10104         Handle it.
10105         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10106         (lookup_minimal_symbol_by_pc): Adjust.
10107         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10108         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10109         * minsyms.h (lookup_msym_prefer): New enum.
10110         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10111         parameter by a lookup_msym_prefer parameter.
10112
10113 2018-04-26  Pedro Alves  <palves@redhat.com>
10114
10115         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10116         ends in "@plt" instead of looking at the symbol's section.
10117
10118 2018-04-26  Pedro Alves  <palves@redhat.com>
10119
10120         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10121         all references.
10122         (find_pc_partial_function_gnu_ifunc): Rename to ...
10123         (find_pc_partial_function): ... this, and remove references to
10124         'is_gnu_ifunc_p'.
10125         (find_pc_partial_function): Delete old implementation.
10126         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10127
10128 2018-04-26  Pedro Alves  <palves@redhat.com>
10129
10130         * linespec.c (struct bound_minimal_symbol_search_key): New.
10131         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10132         skip first line if we found a GNU ifunc minimal symbol by name.
10133         (compare_msymbols): Change parameters to work with a destructured
10134         lhs minsym.
10135         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10136         functions.
10137
10138 2018-04-26  Pedro Alves  <palves@redhat.com>
10139
10140         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10141         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10142         address/name.
10143         (add_location_to_breakpoint): Store the minsym and the objfile in
10144         the breakpoint location.
10145         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10146         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10147         Record the minsym in the sal.
10148         * symtab.h (symtab_and_line) <msymbol>: New field.
10149
10150 2018-04-26  Pedro Alves  <palves@redhat.com>
10151
10152         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10153         unless we actually resolved the ifunc.
10154
10155 2018-04-26  Pedro Alves  <palves@redhat.com>
10156
10157         * c-exp.y (variable production): Prefer ifunc minsyms over
10158         regular function symbols.
10159         * symtab.c (find_gnu_ifunc): New function.
10160         * minsyms.h (lookup_msym_prefer): New enum.
10161         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10162         parameter by a lookup_msym_prefer parameter.
10163         * symtab.h (find_gnu_ifunc): New declaration.
10164
10165 2018-04-26  Pedro Alves  <palves@redhat.com>
10166
10167         * blockframe.c (find_gnu_ifunc_target_type): New function.
10168         (find_function_type): New.
10169         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10170         return a value with a memory address.
10171         (eval_call): For calls to GNU ifunc functions, try to find the
10172         type of the target function from the type that the resolver
10173         returns.
10174         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10175         symbols.
10176         * infcall.c (find_function_return_type): Delete.
10177         (find_function_addr): Add 'function_type' parameter.  For calls to
10178         GNU ifunc functions, try to find the type of the target function
10179         from the type that the resolver returns, and return it via
10180         FUNCTION_TYPE.
10181         (call_function_by_hand_dummy): Adjust to use the function type
10182         returned by find_function_addr.
10183         (find_function_addr): Add 'function_type' parameter and move
10184         description here.
10185         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10186         declarations.
10187
10188 2018-04-26  Pedro Alves  <palves@redhat.com>
10189
10190         * c-exp.y (variable production): Skip finding an alias for ifunc
10191         symbols.
10192
10193 2018-04-26  Pedro Alves  <palves@redhat.com>
10194
10195         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10196
10197 2018-04-25  Pedro Alves  <palves@redhat.com>
10198
10199         * infcmd.c (kill_command): Print the pid as string, not the whole
10200         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10201         message.
10202         * remote.c (remote_detach_1): Print the pid as string, not the
10203         whole thread's ptid.
10204
10205 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10206             Sergio Durigan Junior  <sergiodj@redhat.com>
10207             Pedro Alves  <palves@redhat.com>
10208
10209         * infcmd.c (kill_command): Print message when inferior has
10210         been killed.
10211         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10212         '1'.
10213         (add_inferior): Improve message printed when
10214         'print_inferior_events' is on.
10215         (exit_inferior): Remove message printed when
10216         'print_inferior_events' is on.
10217         (detach_inferior): Improve message printed when
10218         'print_inferior_events' is on.
10219         (initialize_inferiors): Use 'add_inferior_silent' to set
10220         'current_inferior_'.
10221         * inferior.h (print_inferior_events): Declare here as
10222         'extern'.
10223         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10224         '[Detaching...]' messages when 'print_inferior_events' is on.
10225         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10226         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10227         'Detaching after fork from child...', replace it by '... from
10228         parent...'.
10229         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10230         prefix/suffix when printing 'Detaching...' messages.  Print
10231         them when 'print_inferior_events' is on.
10232         * remote.c (remote_detach_1): Print message when detaching
10233         from inferior and '!is_fork_parent'.
10234
10235 2018-04-24  Tom Tromey  <tom@tromey.com>
10236
10237         * cli-out.h: Reindent.
10238
10239 2018-04-24  Tom Tromey  <tom@tromey.com>
10240
10241         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10242         (cli_ui_out::do_field_string): Use fputs_filtered.
10243         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10244
10245 2018-04-23  Tom Tromey  <tom@tromey.com>
10246
10247         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10248         gdb::unique_xmalloc_ptr.
10249
10250 2018-04-23  Tom Tromey  <tom@tromey.com>
10251
10252         * configure: Rebuild.
10253
10254 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10255
10256         PR gdb/23095
10257         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10258         prepare_for_testing.  Set normal_bp to r_debug_state if target
10259         is bsd.
10260
10261 2018-04-21  Pedro Alves  <palves@redhat.com>
10262             Rajendra SY  <rajendra.sy@gmail.com>
10263
10264         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10265         * remote.c (extended_remote_attach): In all-stop mode, mark the
10266         thread as executing.
10267
10268 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10269
10270         * thread.c (thread_apply_all_command): Fix comment.
10271         (thread_command): Fix comment.
10272
10273 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10274
10275         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10276         parameter.
10277         * features/aarch64-core.c (create_feature_aarch64_core):
10278         Regenerate.
10279         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10280         Likewise.
10281         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10282         Likewise.
10283         * features/i386/32bit-avx512.c
10284         (create_feature_i386_32bit_avx512): Likewise.
10285         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10286         Likewise.
10287         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10288         Likewise.
10289         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10290         Likewise.
10291         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10292         Likewise.
10293         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10294         Likewise.
10295         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10296         Likewise.
10297         * features/i386/64bit-avx512.c
10298         (create_feature_i386_64bit_avx512): Likewise.
10299         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10300         Likewise.
10301         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10302         Likewise.
10303         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10304         Likewise.
10305         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10306         Likewise.
10307         * features/i386/64bit-segments.c
10308         (create_feature_i386_64bit_segments): Likewise.
10309         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10310         Likewise.
10311         * features/i386/x32-core.c
10312         (create_feature_i386_x32_core): Likewise.
10313         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10314         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10315         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10316         * target-descriptions.c: In generated code, don't pass xml
10317         filename.
10318
10319 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10320
10321         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10322         (print_xml_feature::visit_post): Likewise.
10323         (print_xml_feature::visit): Likewise.
10324         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10325         (print_xml_feature): Add new class.
10326         * regformats/regdat.sh: Null xmltarget on feature targets.
10327         * target-descriptions.c (struct target_desc): Add xmltarget.
10328         (maintenance_check_tdesc_xml_convert): Add unittest function.
10329         (tdesc_get_features_xml): Add function to get xml.
10330         (maintenance_check_xml_descriptions): Test xml generation.
10331         * xml-tdesc.c (string_read_description_xml): Add function.
10332         * xml-tdesc.h (string_read_description_xml): Add declaration.
10333
10334 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10335
10336         * features/Makefile: Add feature marker to targets with new style
10337         target descriptions.
10338         * regformats/aarch64.dat: Regenerate.
10339         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10340         * regformats/i386/amd64-avx-linux.dat: Likewise.
10341         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10342         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10343         * regformats/i386/amd64-linux.dat: Likewise.
10344         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10345         * regformats/i386/amd64.dat: Likewise.
10346         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10347         * regformats/i386/i386-avx-linux.dat: Likewise.
10348         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10349         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10350         * regformats/i386/i386-linux.dat: Likewise.
10351         * regformats/i386/i386-mmx-linux.dat: Likewise.
10352         * regformats/i386/i386-mpx-linux.dat: Likewise.
10353         * regformats/i386/i386.dat: Likewise.
10354         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10355         * regformats/i386/x32-avx-linux.dat: Likewise.
10356         * regformats/i386/x32-linux.dat: Likewise.
10357         * regformats/tic6x-c62x-linux.dat: Likewise.
10358         * regformats/tic6x-c64x-linux.dat: Likewise.
10359         * regformats/tic6x-c64xp-linux.dat: Likewise.
10360         * regformats/regdat.sh: Parse feature marker.
10361
10362 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10363
10364         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
10365         (tdesc_osabi_name): Likewise.
10366         * target-descriptions.c (tdesc_architecture_name): Add new
10367         function.
10368         (tdesc_osabi_name): Likewise.
10369
10370 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10371
10372         * common/tdesc.c (tdesc_predefined_type): Move to here.
10373         (tdesc_named_type): Likewise.
10374         (tdesc_create_vector): Likewise.
10375         (tdesc_create_struct): Likewise.
10376         (tdesc_set_struct_size): Likewise.
10377         (tdesc_create_union): Likewise.
10378         (tdesc_create_flags): Likewise.
10379         (tdesc_create_enum): Likewise.
10380         (tdesc_add_field): Likewise.
10381         (tdesc_add_typed_bitfield): Likewise.
10382         (tdesc_add_bitfield): Likewise.
10383         (tdesc_add_flag): Likewise.
10384         (tdesc_add_enum_value): Likewise.
10385         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
10386         (struct tdesc_type_vector): Likewise.
10387         (struct tdesc_type_field): Likewise.
10388         (struct tdesc_type_with_fields): Likewise.
10389         (tdesc_create_enum): Add declaration.
10390         (tdesc_add_typed_bitfield): Likewise.
10391         (tdesc_add_enum_value): Likewise.
10392         * target-descriptions.c (tdesc_type_field): Move from here.
10393         (tdesc_type_builtin): Likewise.
10394         (tdesc_type_vector): Likewise.
10395         (tdesc_type_with_fields): Likewise.
10396         (tdesc_predefined_types): Likewise.
10397         (tdesc_named_type): Likewise.
10398         (tdesc_create_vector): Likewise.
10399         (tdesc_create_struct): Likewise.
10400         (tdesc_set_struct_size): Likewise.
10401         (tdesc_create_union): Likewise.
10402         (tdesc_create_flags): Likewise.
10403         (tdesc_create_enum): Likewise.
10404         (tdesc_add_field): Likewise.
10405         (tdesc_add_typed_bitfield): Likewise.
10406         (tdesc_add_bitfield): Likewise.
10407         (tdesc_add_flag): Likewise.
10408         (tdesc_add_enum_value): Likewise.
10409         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
10410         (tdesc_add_typed_bitfield): Likewise.
10411         (tdesc_add_enum_value): Likewise.
10412
10413 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10414
10415         * common/tdesc.c (tdesc_feature::accept): Move to here.
10416         (tdesc_feature::operator==): Likewise.
10417         (tdesc_create_reg): Likewise.
10418         * common/tdesc.h (tdesc_type_kind): Likewise.
10419         (struct tdesc_type): Likewise.
10420         (struct tdesc_feature): Likewise.
10421         * regformats/regdat.sh: Create a feature.
10422         * target-descriptions.c (tdesc_type_kind): Move from here.
10423         (tdesc_type): Likewise.
10424         (tdesc_type_up): Likewise.
10425         (tdesc_feature): Likewise.
10426         (tdesc_create_reg): Likewise.
10427
10428 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10429
10430         * Makefile.in: Add arch/tdesc.c
10431         * common/tdesc.c: New file.
10432         * common/tdesc.h (tdesc_element_visitor): Move to here.
10433         (tdesc_element): Likewise.
10434         (tdesc_reg): Likewise.
10435         (tdesc_reg_up): Likewise.
10436         * regformats/regdef.h (reg): Add offset to constructors.
10437         * target-descriptions.c (tdesc_element_visitor): Move from here.
10438         (tdesc_element): Likewise.
10439         (tdesc_reg): Likewise.
10440         (tdesc_reg_up): Likewise.
10441
10442 2018-04-17  Tom Tromey  <tom@tromey.com>
10443
10444         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
10445         discriminant field.
10446
10447 2018-04-17  Tom Tromey  <tom@tromey.com>
10448
10449         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
10450
10451 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10452
10453         * symtab.c (print_symbol_info): Skip printing filename and line
10454         number when `last' is NULL.
10455         (symtab_symbol_info): Use empty string instead of NULL for first
10456         invocation of print_symbol_info.
10457         (rbreak_command): Pass NULL to `last' parameter of
10458         print_symbol_info.
10459
10460 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
10461
10462         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
10463         instead of nullptr.
10464
10465 2018-04-16  Pedro Alves  <palves@redhat.com>
10466
10467         * MAINTAINERS (sh): Remove.
10468         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
10469         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
10470         (ALLDEPFILES): Remove sh64-tdep.c.
10471         * NEWS: Mentions that support for SH-5/SH64 is removed.
10472         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
10473         (sh*-*-openbsd*): Ditto.
10474         (sh64-*-elf*): Remove.
10475         (sh*): Remove.
10476         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
10477         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
10478         * sh-tdep.c: No longer include "sh64-tdep.h".
10479         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
10480         * sh64-tdep.c, sh64-tdep.h: Remove files.
10481
10482 2018-04-16  Pedro Alves  <palves@redhat.com>
10483
10484         * MAINTAINERS: Remove m88k.
10485         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
10486         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
10487         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
10488         * NEWS: Mention that support for m88k was removed.
10489         * configure.host (m88*-*-*): Remove support.
10490         * configure.nat (m88k-*-*): Remove support.
10491         * configure.tgt (m88*-*-openbsd*): Remove.
10492         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
10493
10494 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
10495
10496         * configure.tgt (x86_tobjs): New variable.
10497         (amd64_tobjs, i386_tobjs): Use it.
10498
10499 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10500
10501         * symtab.c (print_symbol_info): Precede the symbol definition by
10502         the line number when available.
10503         * NEWS: Advertise this enhancement.
10504
10505 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10506
10507         * NEWS (New options): announce set/show record btrace cpu.
10508         * btrace.c: Include record-btrace.h.
10509         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
10510         the vendor is unknown.
10511         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
10512         Maybe overwrite the btrace configuration's cpu.
10513         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
10514         (btrace_fetch): Add cpu parameter.  Update callers.
10515         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
10516         Maybe overwrite the btrace configuration's cpu.  Skip enabling
10517         errata workarounds if the vendor is unknown.
10518         * python/py-record-btrace.c: Include record-btrace.h.
10519         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
10520         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
10521         * record-btrace.c (record_btrace_cpu_state_kind): New.
10522         (record_btrace_cpu): New.
10523         (set_record_btrace_cpu_cmdlist): New.
10524         (record_btrace_get_cpu): New.
10525         (require_btrace_thread, record_btrace_info)
10526         (record_btrace_resume_thread): Call record_btrace_get_cpu.
10527         (cmd_set_record_btrace_cpu_none): New.
10528         (cmd_set_record_btrace_cpu_auto): New.
10529         (cmd_set_record_btrace_cpu): New.
10530         (cmd_show_record_btrace_cpu): New.
10531         (_initialize_record_btrace): Initialize set/show record btrace cpu
10532         commands.
10533         * record-btrace.h (record_btrace_get_cpu): New.
10534
10535 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10536
10537         * record.c (set_record_command): Fix typo in message.
10538
10539 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10540
10541         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
10542
10543 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10544
10545         * infrun.c (process_event_stop_test): Call
10546         gdbarch_in_indirect_branch_thunk.
10547         * gdbarch.sh (in_indirect_branch_thunk): New.
10548         * gdbarch.c: Regenerated.
10549         * gdbarch.h: Regenerated.
10550         * x86-tdep.h: New.
10551         * x86-tdep.c: New.
10552         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
10553         (HFILES_NO_SRCDIR): Add x86-tdep.h.
10554         (ALLDEPFILES): Add x86-tdep.c.
10555         * arch-utils.h (default_in_indirect_branch_thunk): New.
10556         * arch-utils.c (default_in_indirect_branch_thunk): New.
10557         * i386-tdep: Include x86-tdep.h.
10558         (i386_in_indirect_branch_thunk): New.
10559         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
10560         function.
10561         * amd64-tdep: Include x86-tdep.h.
10562         (amd64_in_indirect_branch_thunk): New.
10563         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
10564
10565 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
10566
10567         PR gdb/23053
10568         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
10569         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
10570         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
10571         regression.
10572
10573 2018-04-12  Tom Tromey  <tom@tromey.com>
10574
10575         * rust-lang.c (rust_print_struct_def): Remove univariant code.
10576         (rust_evaluate_subexp): Likewise.
10577
10578 2018-04-12  Pedro Alves  <palves@redhat.com>
10579
10580         * procfs.c (procfs_detach): Make forward declaration's prototype
10581         match definition's protototype.
10582         (proc_get_LDT_entry): Remove stale do_cleanups call.
10583
10584 2018-04-12  Pedro Alves  <palves@redhat.com>
10585
10586         * target.h (target_ops::to_has_exited): Delete.
10587         (target_has_exited): Delete.
10588         * target-delegates.c: Regenerate.
10589
10590 2018-04-11  Pedro Alves  <palves@redhat.com>
10591
10592         * target.c (fileio_fh_t::t): Add comment.
10593         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10594         (target_fileio_close): Handle a NULL target.
10595         (invalidate_fileio_fh): New.
10596         (target_close): Call it.
10597         * remote.c (remote_hostio_send_command): No longer check whether
10598         remote_desc is open.
10599
10600 2018-04-11  Pedro Alves  <palves@redhat.com>
10601
10602         * target.c (fileio_fh_t): Make it a named struct instead of a
10603         typedef.
10604         (fileio_fh_t::is_closed): New method.
10605         (DEF_VEC_O (fileio_fh_t)): Remove.
10606         (fileio_fhandles): Now a std::vector.
10607         (is_closed_fileio_fh): Delete.
10608         (acquire_fileio_fd): Adjust.  Rename parameters.
10609         (release_fileio_fd): Adjust.
10610         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
10611         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10612         (target_fileio_close): Adjust.
10613
10614 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
10615
10616         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
10617         index.
10618
10619 2018-04-10  Pedro Alves  <palves@redhat.com>
10620
10621         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
10622         (scoped_finish_thread_state): New class.
10623         * infcmd.c (run_command_1): Use it instead of finish_thread_state
10624         cleanup.
10625         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
10626         (fetch_inferior_event, normal_stop): Likewise.
10627         * thread.c (finish_thread_state_cleanup): Delete.
10628
10629 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10630             Pedro Alves  <palves@redhat.com>
10631
10632         * value.c: Include "selftest.h" and "common/array-view.h".
10633         (struct range) <operator ==>: New.
10634         (test_ranges_contain): New.
10635         (check_ranges_vector): New.
10636         (test_insert_into_bit_range_vector): New.
10637         (_initialize_values): Register selftests.
10638         * common/array-view.h (operator==, operator!=): New.
10639
10640 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10641
10642         * common/gdb_vecs.h (unordered_remove): Add overload that takes
10643         an iterator.
10644         * inline-frame.c: Include <algorithm>.
10645         (struct inline_state): Add constructor.
10646         (inline_state_s): Remove.
10647         (DEF_VEC_O(inline_state_s)): Remove.
10648         (inline_states): Change type to std::vector.
10649         (find_inline_frame_state): Adjust to std::vector.
10650         (allocate_inline_frame_state): Remove.
10651         (clear_inline_frame_state): Adjust to std::vector.
10652         (skip_inline_frames): Adjust to std::vector.
10653
10654 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10655
10656         * tracepoint.h (struct trace_state_variable): Add constructor.
10657         <name>: Change type to std::string.
10658         * tracepoint.c (tsv_s): Remove.
10659         (DEF_VEC_O(tsv_s)): Remove.
10660         (tvariables): Change to std::vector.
10661         (create_trace_state_variable): Adjust to std::vector.
10662         (find_trace_state_variable): Likewise.
10663         (find_trace_state_variable_by_number): Likewise.
10664         (delete_trace_state_variable): Likewise.
10665         (trace_variable_command): Adjust to std::string.
10666         (delete_trace_variable_command): Likewise.
10667         (tvariables_info_1): Adjust to std::vector.
10668         (save_trace_state_variables): Likewise.
10669         (start_tracing): Likewise.
10670         (merge_uploaded_trace_state_variables): Adjust to std::vector
10671         and std::string.
10672         * target.h (struct target_ops)
10673         <to_download_trace_state_variable>: Pass reference to
10674         trace_state_variable.
10675         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
10676         * target-delegates.c: Re-generate.
10677         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
10678         (mi_tsv_deleted): Likewise.
10679         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
10680         * remote.c (remote_download_trace_state_variable): Change
10681         pointer to reference and adjust.
10682         * make-target-delegates (parse_argtypes): Handle references.
10683         (write_function_header): Likewise.
10684         (munge_type): Likewise.
10685
10686 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10687
10688         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10689         string_view-selftests.c.
10690         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
10691         testsuite.
10692         * unittests/basic_string_view/cons/char/1.cc: Likewise.
10693         * unittests/basic_string_view/cons/char/2.cc: Likewise.
10694         * unittests/basic_string_view/cons/char/3.cc: Likewise.
10695         * unittests/basic_string_view/element_access/char/1.cc:
10696         Likewise.
10697         * unittests/basic_string_view/element_access/char/empty.cc:
10698         Likewise.
10699         * unittests/basic_string_view/element_access/char/front_back.cc:
10700         Likewise.
10701         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
10702         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
10703         Likewise.
10704         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
10705         Likewise.
10706         * unittests/basic_string_view/modifiers/swap/char/1.cc:
10707         Likewise.
10708         * unittests/basic_string_view/operations/compare/char/1.cc:
10709         Likewise.
10710         * unittests/basic_string_view/operations/compare/char/13650.cc:
10711         Likewise.
10712         * unittests/basic_string_view/operations/copy/char/1.cc:
10713         Likewise.
10714         * unittests/basic_string_view/operations/data/char/1.cc:
10715         Likewise.
10716         * unittests/basic_string_view/operations/find/char/1.cc:
10717         Likewise.
10718         * unittests/basic_string_view/operations/find/char/2.cc:
10719         Likewise.
10720         * unittests/basic_string_view/operations/find/char/3.cc:
10721         Likewise.
10722         * unittests/basic_string_view/operations/find/char/4.cc:
10723         Likewise.
10724         * unittests/basic_string_view/operations/rfind/char/1.cc:
10725         Likewise.
10726         * unittests/basic_string_view/operations/rfind/char/2.cc:
10727         Likewise.
10728         * unittests/basic_string_view/operations/rfind/char/3.cc:
10729         Likewise.
10730         * unittests/basic_string_view/operations/substr/char/1.cc:
10731         Likewise.
10732         * unittests/basic_string_view/operators/char/2.cc: Likewise.
10733         * unittests/string_view-selftests.c: New file.
10734
10735 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10736
10737         * unittests/basic_string_view/capacity/1.cc: New file.
10738         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
10739         * unittests/basic_string_view/cons/char/1.cc: New file.
10740         * unittests/basic_string_view/cons/char/2.cc: New file.
10741         * unittests/basic_string_view/cons/char/3.cc: New file.
10742         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
10743         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
10744         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
10745         * unittests/basic_string_view/element_access/char/1.cc: New file.
10746         * unittests/basic_string_view/element_access/char/2.cc: New file.
10747         * unittests/basic_string_view/element_access/char/empty.cc: New file.
10748         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
10749         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
10750         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
10751         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
10752         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
10753         * unittests/basic_string_view/include.cc: New file.
10754         * unittests/basic_string_view/inserters/char/1.cc: New file.
10755         * unittests/basic_string_view/inserters/char/2.cc: New file.
10756         * unittests/basic_string_view/inserters/char/3.cc: New file.
10757         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
10758         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
10759         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
10760         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
10761         * unittests/basic_string_view/literals/types.cc: New file.
10762         * unittests/basic_string_view/literals/values.cc: New file.
10763         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
10764         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
10765         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
10766         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
10767         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
10768         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
10769         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
10770         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
10771         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
10772         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
10773         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
10774         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
10775         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
10776         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
10777         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
10778         * unittests/basic_string_view/operations/data/char/1.cc: New file.
10779         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
10780         * unittests/basic_string_view/operations/find/char/1.cc: New file.
10781         * unittests/basic_string_view/operations/find/char/2.cc: New file.
10782         * unittests/basic_string_view/operations/find/char/3.cc: New file.
10783         * unittests/basic_string_view/operations/find/char/4.cc: New file.
10784         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
10785         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
10786         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
10787         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
10788         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
10789         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
10790         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
10791         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
10792         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
10793         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
10794         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
10795         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
10796         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
10797         * unittests/basic_string_view/operators/char/2.cc: New file.
10798         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
10799         * unittests/basic_string_view/range_access/char/1.cc: New file.
10800         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
10801         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
10802         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
10803         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
10804         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
10805         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
10806         * unittests/basic_string_view/requirements/typedefs.cc: New file.
10807         * unittests/basic_string_view/typedefs.cc: New file.
10808         * unittests/basic_string_view/types/1.cc: New file.
10809
10810 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10811
10812         * common/gdb_string_view.h: Remove libstdc++ implementation
10813         details, adjust to gdb reality.
10814         * common/gdb_string_view.tcc: Likewise.
10815         * cli/cli-script.c (struct string_view): Remove.
10816         (user_args) <m_args>: Change element type to gdb::string_view.
10817         (user_args::insert_args): Adjust.
10818
10819 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10820
10821         * common/gdb_string_view.h: New file.
10822         * common/gdb_string_view.tcc: New file.
10823
10824 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10825
10826         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
10827         * configure: Re-generate.
10828
10829 2018-04-09  Pedro Alves  <palves@redhat.com>
10830
10831         * gdbarch.sh: Include "observable.h" instead of "observer.h".
10832         (set_target_gdbarch): Call
10833         gdb::observers::architecture_changed.notify instead of
10834         observer_notify_architecture_changed.
10835
10836 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10837
10838         * tracepoint.c (struct current_traceframe_cleanup): Remove.
10839         (do_restore_current_traceframe_cleanup): Remove.
10840         (restore_current_traceframe_cleanup_dtor): Remove.
10841         (make_cleanup_restore_current_traceframe): Remove.
10842         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
10843         New.
10844         * tracepoint.h (struct scoped_restore_current_traceframe): New.
10845         * infrun.c (fetch_inferior_event): Use
10846         scoped_restore_current_traceframe.
10847
10848 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10849
10850         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
10851         Remove.
10852         <n_allocated_type_units>: Remove.
10853         <all_type_units>: Change to std::vector.
10854         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10855         to std::vector change.
10856         (dwarf2_per_objfile::get_cutu): Likewise.
10857         (dwarf2_per_objfile::get_tu): Likewise.
10858         (create_signatured_type_table_from_index): Likewise.
10859         (create_signatured_type_table_from_debug_names): Likewise.
10860         (dw2_symtab_iter_next): Likewise.
10861         (dw2_print_stats): Likewise.
10862         (dw2_expand_all_symtabs): Likewise.
10863         (dw2_expand_marked_cus): Likewise.
10864         (dw2_debug_names_iterator::next): Likewise.
10865         (dwarf2_initialize_objfile): Likewise.
10866         (add_signatured_type_cu_to_table): Likewise.
10867         (create_all_type_units): Likewise.
10868         (add_type_unit): Likewise.
10869         (struct tu_abbrev_offset): Add constructor.
10870         (build_type_psymtabs_1): Adjust to std::vector change.
10871         (print_tu_stats): Likewise.
10872         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10873         (write_debug_names): Likewise.
10874
10875 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10876
10877         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
10878         Make an std::vector.
10879         <n_comp_units>: Remove.
10880         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10881         to std::vector change.
10882         (dwarf2_per_objfile::get_cutu): Likewise.
10883         (dwarf2_per_objfile::get_cu): Likewise.
10884         (create_cus_from_index): Likewise.
10885         (create_addrmap_from_index): Likewise.
10886         (create_addrmap_from_aranges): Likewise.
10887         (dwarf2_read_index): Likewise.
10888         (dw2_find_last_source_symtab): Likewise.
10889         (dw2_map_symtabs_matching_filename): Likewise.
10890         (dw2_symtab_iter_next): Likewise.
10891         (dw2_print_stats): Likewise.
10892         (dw2_expand_all_symtabs): Likewise.
10893         (dw2_expand_symtabs_with_fullname): Likewise.
10894         (dw2_expand_marked_cus): Likewise.
10895         (dw2_map_symbol_filenames): Likewise.
10896         (create_cus_from_debug_names): Likewise.
10897         (dwarf2_read_debug_names): Likewise.
10898         (dw2_debug_names_iterator::next): Likewise.
10899         (dwarf2_initialize_objfile): Likewise.
10900         (set_partial_user): Likewise.
10901         (dwarf2_build_psymtabs_hard): Likewise.
10902         (read_comp_units_from_section): Remove arguments, adjust to
10903         std::vector change.
10904         (create_all_comp_units): Adjust to std::vector and
10905         read_comp_units_from_section changes.
10906         (dwarf2_find_containing_comp_unit): Adjust to std::vector
10907         change.
10908         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10909         (psyms_seen_size): Likewise.
10910         (write_gdbindex): Likewise.
10911         (write_debug_names): Likewise.
10912
10913 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10914
10915         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
10916         with dwarf2_per_objfile.
10917         (create_cus_from_index): Likewise.
10918         (create_signatured_type_table_from_index): Likewise.
10919         (dwarf2_read_index): Likewise.
10920         (dwarf2_initialize_objfile): Likewise.
10921         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
10922         per_cu rather than get_dwarf2_per_objfile.
10923
10924 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10925
10926         * dwarf2read.h (struct signatured_type): Forward declare.
10927         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
10928         New methods.
10929         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
10930         (dw2_get_cutu): ...this.
10931         (dwarf2_per_objfile::get_cu): Rename from...
10932         (dw2_get_cu): ...this.
10933         (dwarf2_per_objfile::get_tu): New.
10934         (create_addrmap_from_index): Adjust.
10935         (create_addrmap_from_aranges): Adjust.
10936         (dw2_find_last_source_symtab): Adjust.
10937         (dw2_map_symtabs_matching_filename): Adjust.
10938         (dw2_symtab_iter_next): Adjust.
10939         (dw2_print_stats): Adjust.
10940         (dw2_expand_all_symtabs): Adjust.
10941         (dw2_expand_symtabs_with_fullname): Adjust.
10942         (dw2_expand_marked_cus): Adjust.
10943         (dw_expand_symtabs_matching_file_matcher): Adjust.
10944         (dw2_map_symbol_filenames): Adjust.
10945         (dw2_debug_names_iterator::next): Adjust.
10946         (dwarf2_initialize_objfile): Adjust.
10947         (set_partial_user): Adjust.
10948         (dwarf2_build_psymtabs_hard): Adjust.
10949
10950 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10951
10952         * dwarf2read.c (create_signatured_type_table_from_debug_names):
10953         Remove unused variables.
10954         (dw2_map_symtabs_matching_filename): Likewise.
10955         (dwarf2_record_block_ranges): Likewise.
10956         (dwarf2_read_addr_index): Likewise.
10957         (follow_die_offset): Likewise.
10958
10959 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10960
10961         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
10962         to symbol_file_add_main.
10963
10964 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10965
10966         PR mi/22299
10967         * mi/mi-console.c (do_fputc_async_safe): New.
10968         (mi_console_file::write_async_safe): New.
10969         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
10970         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
10971         New.
10972         * ui-file.c (ui_file::putstrn): Adjust call to
10973         fputstrn_unfiltered.
10974         * utils.c (printchar): Replace do_fputs and do_fprintf
10975         parameters by do_fputc.
10976         (fputstr_filtered): Adjust call to printchar.
10977         (fputstr_unfiltered): Likewise.
10978         (fputstrn_filtered): Likewise.
10979         (fputstrn_unfiltered): Add do_fputc parameter, pass to
10980         printchar.
10981         * utils.h (do_fputc_ftype): New typedef.
10982         (fputstrn_unfiltered): Add do_fputc parameter.
10983
10984 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10985
10986         * regformats/i386/i386-avx.dat: Remove.
10987
10988 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10989
10990         PR gdb/22979
10991         * amd64-tdep.c (amd64_none_init_abi): New function.
10992         (amd64_x32_none_init_abi): New function.
10993         (_initialize_amd64_tdep): Register handlers for x86-64 and
10994         x64_32 with GDB_OSABI_NONE.
10995         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
10996         GDB_OSABI_NONE osabi.
10997
10998 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10999
11000         PR gdb/22980
11001         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11002         GDB_OSABI_NONE.
11003         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11004         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11005
11006 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11007
11008         * common/byte-vector.h (char_vector): New type.
11009         * target.h (target_read_alloc): Return
11010         gdb::optional<byte_vector>.
11011         (target_read_stralloc): Return gdb::optional<char_vector>.
11012         (target_get_osdata): Return gdb::optional<char_vector>.
11013         * target.c (target_read_alloc_1): Templatize.  Replacement
11014         manual memory management with vector.
11015         (target_read_alloc): Change return type, adjust.
11016         (target_read_stralloc): Change return type, adjust.
11017         (target_get_osdata): Change return type, adjust.
11018         * auxv.c (struct auxv_info) <length>: Remove.
11019         <data>: Change type to gdb::optional<byte_vector>.
11020         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11021         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11022         (target_auxv_search): Adjust.
11023         (fprint_target_auxv): Adjust.
11024         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11025         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11026         (linux_make_corefile_notes): Adjust.
11027         * osdata.c (get_osdata): Adjust.
11028         * remote.c (remote_get_threads_with_qxfer): Adjust.
11029         (remote_memory_map): Adjust.
11030         (remote_traceframe_info): Adjust.
11031         (btrace_read_config): Adjust.
11032         (remote_read_btrace): Adjust.
11033         (remote_pid_to_exec_file): Adjust.
11034         * solib-aix.c (solib_aix_get_library_list): Adjust.
11035         * solib-dsbt.c (decode_loadmap): Don't free buf.
11036         (dsbt_get_initial_loadmaps): Adjust.
11037         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11038         * solib-target.c (solib_target_current_sos): Adjust.
11039         * tracepoint.c (sdata_make_value): Adjust.
11040         * xml-support.c (xinclude_start_include): Adjust.
11041         (xml_fetch_content_from_file): Adjust.
11042         * xml-support.h (xml_fetch_another): Change return type.
11043         (xml_fetch_content_from_file): Change return type.
11044         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11045         * xml-tdesc.c (file_read_description_xml): Adjust.
11046         (fetch_available_features_from_target): Change return type.
11047         (target_fetch_description_xml): Adjust.
11048         (target_read_description_xml): Adjust.
11049
11050 2018-04-06  Tom Tromey  <tom@tromey.com>
11051
11052         * value.c (~value): Update.
11053         (struct value) <contents>: Now unique_xmalloc_ptr.
11054         (value_contents_bits_eq, allocate_value_contents)
11055         (value_contents_raw, value_contents_all_raw)
11056         (value_contents_for_printing, value_contents_for_printing_const)
11057         (set_value_enclosing_type): Update.
11058
11059 2018-04-06  Tom Tromey  <tom@tromey.com>
11060
11061         * value.c (range_s): Remove typedef, VEC.
11062         (struct range): Add operator<.
11063         (range_lessthan): Remove.
11064         (ranges_contain): Change type.
11065         (~value): Update.
11066         (struct value) <unavailable, optimized_out>: Now std::vector.
11067         (value_entirely_available)
11068         (value_entirely_covered_by_range_vector)
11069         (value_entirely_unavailable, value_entirely_optimized_out):
11070         Update.
11071         (insert_into_bit_range_vector): Change argument type.
11072         (find_first_range_overlap): Likewise.
11073         (struct ranges_and_idx, value_contents_bits_eq)
11074         (require_not_optimized_out, require_available): Update.
11075         (ranges_copy_adjusted): Change argument types.
11076         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11077
11078 2018-04-06  Tom Tromey  <tom@tromey.com>
11079
11080         * value.c (~value): Update.
11081         (struct value) <parent>: Now a value_ref_ptr.
11082         (value_parent, set_value_parent, value_address, value_copy):
11083         Update.
11084
11085 2018-04-06  Tom Tromey  <tom@tromey.com>
11086
11087         * value.c (struct value): Add constructor, destructor, and member
11088         initializers.
11089         (allocate_value_lazy, value_decref): Update.
11090
11091 2018-04-06  Tom Tromey  <tom@tromey.com>
11092
11093         * value.c (struct value) <released, next>: Remove.
11094         (all_values): Now a std::vector.
11095         (allocate_value_lazy): Update.
11096         (value_next): Remove.
11097         (value_mark, value_free_to_mark, release_value)
11098         (value_release_to_mark): Update.
11099
11100 2018-04-06  Tom Tromey  <tom@tromey.com>
11101
11102         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11103         (free_value_chain): Remove.
11104         * value.c (free_value_chain): Remove.
11105         (value_release_to_mark): Return a std::vector.
11106         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11107         std::vector.
11108         (check_condition): Update.
11109         * eval.c (fetch_subexp_value): Change "val_chain" to a
11110         std::vector.
11111         * breakpoint.c (update_watchpoint): Update.
11112         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11113
11114 2018-04-06  Tom Tromey  <tom@tromey.com>
11115
11116         * value.h (free_all_values): Remove.
11117         * value.c (free_all_values): Remove.
11118
11119 2018-04-06  Tom Tromey  <tom@tromey.com>
11120
11121         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11122         (value_history_chain, value_history_count): Remove.
11123         (value_history): New global.
11124         (record_latest_value, access_value_history, show_values)
11125         (preserve_values): Update.
11126
11127 2018-04-06  Tom Tromey  <tom@tromey.com>
11128
11129         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11130         * varobj.c (varobj_set_display_format, varobj_set_value)
11131         (install_default_visualizer, construct_visualizer)
11132         (install_new_value, ~varobj, varobj_get_value_type)
11133         (my_value_of_variable, varobj_editable_p): Update.
11134         * c-varobj.c (c_describe_child, c_value_of_variable)
11135         (cplus_number_of_children, cplus_describe_child): Update.
11136         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11137         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11138         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11139
11140 2018-04-06  Tom Tromey  <tom@tromey.com>
11141
11142         * printcmd.c (last_examine_address): Change type to
11143         value_ref_ptr.
11144         (do_examine, x_command): Update.
11145
11146 2018-04-06  Tom Tromey  <tom@tromey.com>
11147
11148         * value.c (release_value): Update.
11149         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11150         (struct bpstats) <val>: Now a value_ref_ptr.
11151         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11152         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11153         (~watchpoint, print_it_watchpoint, watch_command_1)
11154         (invalidate_bp_value_on_memory_change): Update.
11155
11156 2018-04-06  Tom Tromey  <tom@tromey.com>
11157
11158         * varobj.c (varobj_clear_saved_item)
11159         (update_dynamic_varobj_children, install_new_value, ~varobj):
11160         Update.
11161         * value.h (value_incref): Move declaration earlier.
11162         (value_decref): Rename from value_free.
11163         (struct value_ref_policy): New.
11164         (value_ref_ptr): New typedef.
11165         (struct value_deleter): Remove.
11166         (gdb_value_up): Remove typedef.
11167         (release_value): Change return type.
11168         (release_value_or_incref): Remove.
11169         * value.c (set_value_parent): Update.
11170         (value_incref): Change return type.
11171         (value_decref): Rename from value_free.
11172         (value_free_to_mark, free_all_values, free_value_chain): Update.
11173         (release_value): Return value_ref_ptr.
11174         (release_value_or_incref): Remove.
11175         (record_latest_value, set_internalvar, clear_internalvar):
11176         Update.
11177         * stack.c (info_frame_command): Don't call value_free.
11178         * python/py-value.c (valpy_dealloc, valpy_new)
11179         (value_to_value_object): Update.
11180         * printcmd.c (do_examine): Update.
11181         * opencl-lang.c (lval_func_free_closure): Update.
11182         * mi/mi-main.c (register_changed_p): Don't call value_free.
11183         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11184         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11185         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11186         value_free.
11187         * guile/scm-value.c (vlscm_free_value_smob)
11188         (vlscm_scm_from_value): Update.
11189         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11190         (frame_unwind_register_unsigned, get_frame_register_bytes)
11191         (put_frame_register_bytes): Don't call value_free.
11192         * findvar.c (address_from_register): Don't call value_free.
11193         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11194         * dwarf2loc.c (entry_data_value_free_closure)
11195         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11196         (dwarf2_evaluate_loc_desc_full): Update.
11197         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11198         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11199         (~watchpoint, watch_command_1)
11200         (invalidate_bp_value_on_memory_change): Update.
11201         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11202
11203 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11204
11205         PR gdb/23022
11206         * warning.m4: Add -Wno-error=deprecated-register.
11207         * configure: Re-generate.
11208
11209 2018-04-05  Tom Tromey  <tom@tromey.com>
11210
11211         * linespec.h: Remove include of "vec.h".
11212
11213 2018-04-05  Tom Tromey  <tom@tromey.com>
11214
11215         * linespec.c (typep): Remove typedef.
11216         (find_methods, find_superclass_methods): Take a std::vector.
11217         (find_method): Use std::vector.
11218
11219 2018-04-05  Tom Tromey  <tom@tromey.com>
11220
11221         * utils.c (compare_strings): Remove.
11222         * utils.h (compare_strings): Remove.
11223         * objc-lang.h (find_imps): Update.
11224         * objc-lang.c (find_methods): Take a std::vector.
11225         (uniquify_strings, find_imps): Likewise.
11226         * linespec.c (find_methods): Take a std::vector.
11227         (decode_objc): Use std::vector.
11228         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11229         a std::vector.
11230         (find_method, find_function_symbols): Use std::vector.
11231
11232 2018-04-05  Tom Tromey  <tom@tromey.com>
11233
11234         * completer.c (completion_tracker::completion_tracker): Remove
11235         cast.
11236         (completion_tracker::discard_completions): Likewise.
11237         * breakpoint.c (ambiguous_names_p): Remove cast.
11238         * ada-lang.c (_initialize_ada_language): Remove cast.
11239         * utils.h (streq): Update.
11240         (streq_hash): Add new declaration.
11241         * utils.c (streq): Return bool.
11242         (streq_hash): New function.
11243
11244 2018-04-05  Tom Tromey  <tom@tromey.com>
11245
11246         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11247         Remove a string copy.
11248
11249 2018-04-05  Tom Tromey  <tom@tromey.com>
11250
11251         * linespec.c (filter_results): Use std::vector.
11252         (decode_line_2, decode_line_full): Update.
11253
11254 2018-04-05  Tom Tromey  <tom@tromey.com>
11255
11256         * linespec.c (canonical_to_fullform): Return std::string.
11257         (filter_results): Update.
11258         (struct decode_line_2_item): Add constructor.
11259         <fullform, displayform>: Now std::string.
11260         (decode_line_2_compare_items): Now a std::sort comparator.
11261         (decode_line_2): Update.
11262
11263 2018-04-05  Tom Tromey  <tom@tromey.com>
11264
11265         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11266         (unexpected_linespec_error): Update.
11267         (linespec_parse_basic, parse_linespec): Update.
11268
11269 2018-04-05  Tom Tromey  <tom@tromey.com>
11270
11271         * linespec.c (linespec_parse_basic): Reindent.
11272
11273 2018-04-05  Tom Tromey  <tom@tromey.com>
11274
11275         * minsyms.h (iterate_over_minimal_symbols): Update.
11276         * minsyms.c (iterate_over_minimal_symbols): Take a
11277         gdb::function_view.
11278         * linespec.c (struct collect_minsyms): Remove.
11279         (compare_msyms): Now a std::sort comparator.
11280         (add_minsym): Add parameters.
11281         (search_minsyms_for_name): Update.  Use std::vector.
11282
11283 2018-04-03  Tom Tromey  <tom@tromey.com>
11284
11285         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11286         gdb::byte_vector.
11287
11288 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11289
11290         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11291
11292 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11293
11294         PR gdb/16959
11295         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11296         printing static type.
11297
11298 2018-04-01  Tom Tromey  <tom@tromey.com>
11299
11300         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11301         (rs6000_xfer_shared_libraries): Update.
11302
11303 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11304
11305         * common/gdb_vecs.h (char_ptr): Remove.
11306         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11307
11308 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11309
11310         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11311         with std::vector.
11312         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11313
11314 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11315
11316         * tracepoint.h (struct uploaded_tp): Initialize fields.
11317         <actions, step_actions, cmd_strings>: Change type to
11318         std::vector<char *>.
11319         * tracepoint.c (get_uploaded_tp): Allocate with new.
11320         (free_uploaded_tps): Free with delete.
11321         (parse_tracepoint_definition): Adjust to std::vector change.
11322         * breakpoint.c (read_uploaded_action): Likewise.
11323         (create_tracepoint_from_upload): Likewise.
11324         * ctf.c (ctf_write_uploaded_tp): Likewise.
11325         (SET_ARRAY_FIELD): Likewise.
11326         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11327
11328 2018-03-30  Tom Tromey  <tom@tromey.com>
11329
11330         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11331         std::unique_ptr.
11332         (svr4_keep_data_in_core): Update.
11333         (svr4_read_so_list): Update.
11334
11335 2018-03-30  Tom Tromey  <tom@tromey.com>
11336
11337         * windows-nat.c (handle_output_debug_string, handle_exception):
11338         Update.
11339         * target.h (target_read_string): Update.
11340         * target.c (target_read_string): Change "string" to
11341         unique_xmalloc_ptr.
11342         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11343         Update.
11344         * solib-frv.c (frv_current_sos): Update.
11345         * solib-dsbt.c (dsbt_current_sos): Update.
11346         * solib-darwin.c (darwin_current_sos): Update.
11347         * linux-thread-db.c (inferior_has_bug): Update.
11348         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11349         Update.  Remove alloca.
11350         * ada-lang.c (ada_main_name): Update.
11351
11352 2018-03-30  Tom Tromey  <tom@tromey.com>
11353
11354         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11355         (struct dwo_file_deleter): New.
11356         (dwo_file_up): New typedef.
11357         (open_and_init_dwo_file): Use dwo_file_up.
11358         (free_dwo_file_cleanup): Remove.
11359
11360 2018-03-30  Tom Tromey  <tom@tromey.com>
11361
11362         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
11363         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
11364
11365 2018-03-30  Tom Tromey  <tom@tromey.com>
11366
11367         * dwarf2read.c (class free_cached_comp_units): New class.
11368         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
11369         (free_cached_comp_units): Remove function.
11370
11371 2018-03-30  Tom Tromey  <tom@tromey.com>
11372
11373         * utils.h (make_cleanup_unpush_target): Remove.
11374         * inf-ptrace.c (struct target_unpusher): New.
11375         (target_unpush_up) New typedef.
11376         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
11377         target_unpush_up.
11378         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
11379
11380 2018-03-27  Tom Tromey  <tom@tromey.com>
11381
11382         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
11383
11384 2018-03-27  Pedro Alves  <palves@redhat.com>
11385             Tom Tromey  <tom@tromey.com>
11386
11387         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
11388         destructor.  Now a class.
11389         (gdb_readline_wrapper_cleanup): Remove function.
11390         (gdb_readline_wrapper): Remove cleanups.
11391
11392 2018-03-27  Tom Tromey  <tom@tromey.com>
11393
11394         * typeprint.h (struct type_print_options) <local_typedefs,
11395         global_typedefs>: Remove "struct" keyword.
11396         (class typedef_hash_table): New class.
11397         (recursively_update_typedef_hash, add_template_parameters)
11398         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
11399         (find_typedef_in_hash): Don't declare.
11400         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
11401         (typedef_hash_table::recursively_update): Rename from
11402         recursively_update_typedef_hash.  Now a member.
11403         (typedef_hash_table::add_template_parameters): Rename from
11404         add_template_parameters.  Now a member.
11405         (typedef_hash_table::typedef_hash_table): Now a constructor;
11406         rename from create_typedef_hash.
11407         (typedef_hash_table::~typedef_hash_table): Now a destructor;
11408         rename from free_typedef_hash.
11409         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
11410         (do_free_global_table): Remove.
11411         (typedef_hash_table::typedef_hash_table): New constructor; renamed
11412         from copy_type_recursive.
11413         (create_global_typedef_table): Remove.
11414         (typedef_hash_table::find_global_typedef): Now a member of
11415         typedef_hash_table.
11416         (typedef_hash_table::find_typedef): Rename from
11417         find_typedef_in_hash; now a member.
11418         (whatis_exp): Update.
11419         * extension.h (struct ext_lang_type_printers): Add constructor and
11420         destructor.
11421         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
11422         declare.
11423         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
11424         Now a constructor; rename from start_ext_lang_type_printers.
11425         (ext_lang_type_printers): Now a destructor; rename from
11426         free_ext_lang_type_printers.
11427         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
11428         Update.
11429         (c_type_print_base_struct_union): Update.  Remove cleanups.
11430
11431 2018-03-27  Tom Tromey  <tom@tromey.com>
11432
11433         * dwarf-index-write.c: Include <cmath>.
11434
11435 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11436
11437         * NEWS: Add entry describing new "set|show varsize-limit" command.
11438         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
11439         command.
11440         * printcmd.c (_initialize_printcmd): Add "set var" alias of
11441         "set variable".
11442
11443 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
11444
11445         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
11446         dwarf-index-write.c
11447         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
11448         * dwarf-index-common.c: New file.
11449         * dwarf-index-common.h: New file.
11450         * dwarf-index-write.c: New file.
11451         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
11452         (struct dwarf2_section_info): Move from here.
11453         (dwarf2_section_info_def): Likewise.
11454         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
11455         (offset_type): Likewise.
11456         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
11457         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
11458         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
11459         (byte_swap): Likewise.
11460         (MAYBE_SWAP): Likewise.
11461         (dwarf2_per_cu_ptr): Likewise.
11462         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
11463         (struct tu_stats): Likewise.
11464         (struct dwarf2_per_objfile): Likewise.
11465         (struct dwarf2_per_cu_data): Likewise.
11466         (struct signatured_type): Likewise.
11467         (sig_type_ptr): Likewise.
11468         (DEF_VEC_P (sig_type_ptr)): Likewise.
11469         (INDEX4_SUFFIX): Likewise.
11470         (INDEX5_SUFFIX): Likewise.
11471         (DEBUG_STR_SUFFIX): Likewise.
11472         (dwarf2_read_section): Make non-static.
11473         (mapped_index_string_hash): Move from here.
11474         (dwarf5_djb_hash): Likewise.
11475         (file_write): Likewise.
11476         (class data_buf): Likewise.
11477         (struct symtab_index_entry): Likewise.
11478         (struct mapped_symtab): Likewise.
11479         (find_slot): Likewise.
11480         (hash_expand): Likewise.
11481         (add_index_entry): Likewise.
11482         (uniquify_cu_indices): Likewise.
11483         (class c_str_view): Likewise.
11484         (class c_str_view_hasher): Likewise.
11485         (class vector_hasher): Likewise.
11486         (write_hash_table): Likewise.
11487         (psym_index_map): Likewise.
11488         (struct addrmap_index_data): Likewise.
11489         (add_address_entry): Likewise.
11490         (add_address_entry_worker): Likewise.
11491         (write_address_map): Likewise.
11492         (symbol_kind): Likewise.
11493         (write_psymbols): Likewise.
11494         (struct signatured_type_index_data): Likewise.
11495         (write_one_signatured_type): Likewise.
11496         (recursively_count_psymbols): Likewise.
11497         (recursively_write_psymbols): Likewise.
11498         (class debug_names): Likewise.
11499         (check_dwarf64_offsets): Likewise.
11500         (psyms_seen_size): Likewise.
11501         (write_gdbindex): Likewise.
11502         (write_debug_names): Likewise.
11503         (assert_file_size): Likewise.
11504         (write_psymtabs_to_index): Likewise.
11505         (save_gdb_index_command): Likewise.
11506         (_initialize_dwarf2_read): Don't register the "save gdb-index"
11507         command.
11508         * dwarf2read.h: New file.
11509
11510 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11511
11512         PR gdb/22670
11513         * dwarf2read.c (dwarf2_physname): Do not return the demangled
11514         symbol name if the CU's language stores symbol names in linkage
11515         format.
11516         * language.h (struct language_defn)
11517         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
11518         all instances of this struct.
11519
11520 2018-03-26  Tom Tromey  <tom@tromey.com>
11521
11522         * stack.c (backtrace_command_1): Remove verbose code.
11523
11524 2018-03-26  Tom Tromey  <tom@tromey.com>
11525
11526         * python/py-framefilter.c (py_print_type): Don't catch
11527         exceptions.  Return void.
11528         (py_print_value): Likewise.
11529         (py_print_single_arg): Likewise.
11530         (enumerate_args): Don't catch exceptions.
11531         (py_print_args): Likewise.
11532         (py_print_frame): Likewise.
11533         (gdbpy_apply_frame_filter): Catch exceptions here.
11534
11535 2018-03-26  Tom Tromey  <tom@tromey.com>
11536
11537         * stack.c (_initialize_stack): Remove trailing newlines from help
11538         text.  Add "Usage" line to "backtrace" help.
11539
11540 2018-03-26  Tom Tromey  <tom@tromey.com>
11541
11542         PR python/16486:
11543         * python/py-framefilter.c (py_print_args): Call wrap_hint.
11544
11545 2018-03-26  Tom Tromey  <tom@tromey.com>
11546
11547         * python/py-framefilter.c (py_print_single_arg): Return
11548         EXT_LANG_BT_ERROR from catch.
11549
11550 2018-03-26  Tom Tromey  <tom@tromey.com>
11551
11552         PR backtrace/15584:
11553         * stack.c (backtrace_command_1): Move some code into no-filters
11554         "if".
11555
11556 2018-03-26  Tom Tromey  <tom@tromey.com>
11557
11558         * python/py-framefilter.c (throw_quit_or_print_exception): New
11559         function.
11560         (gdbpy_apply_frame_filter): Use it.
11561
11562 2018-03-26  Tom Tromey  <tom@tromey.com>
11563
11564         PR cli/17716:
11565         * python/py-framefilter.c (py_print_type, py_print_value)
11566         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
11567         RETURN_MASK_ERROR.
11568
11569 2018-03-26  Tom Tromey  <tom@tromey.com>
11570
11571         * python/py-framefilter.c (enumerate_args): Use
11572         gdb::unique_xmalloc_ptr.
11573
11574 2018-03-26  Tom Tromey  <tom@tromey.com>
11575
11576         * python/py-framefilter.c (py_print_frame): Return
11577         EXT_LANG_BT_OK.
11578         (gdbpy_apply_frame_filter): Update comment.
11579         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
11580         Remove.
11581         <EXT_LANG_BT_NO_FILTERS>: Change value.
11582
11583 2018-03-26  Tom Tromey  <tom@tromey.com>
11584
11585         PR backtrace/15582:
11586         * stack.c (backtrace_command): Parse "hide" argument.
11587         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
11588         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
11589         constant.
11590
11591 2018-03-26  Tom Tromey  <tom@tromey.com>
11592
11593         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
11594         add "flags".
11595         (backtrace_command): Remove "fulltrace", add "flags".
11596
11597 2018-03-26  Tom Tromey  <tom@tromey.com>
11598
11599         * stack.c (backtrace_command): Rewrite command line parsing.
11600
11601 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11602
11603         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
11604
11605 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11606
11607         * filename-seen-cache.h: Add include guard.
11608
11609 2018-03-26  Keith Seitz  <keiths@redhat.com>
11610
11611         * symfile.c (place_section): Remove "struct" from section_addr_info
11612         in comment.
11613         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
11614         "struct" keyword from section_addr_info.
11615
11616 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
11617
11618         * regformats/regdef.h (reg): Add constructors.
11619
11620 2018-03-25  Pedro Alves  <palves@redhat.com>
11621
11622         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
11623         if then/else bodies in var_func_name extraction.
11624
11625 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
11626
11627         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
11628         lookup_minimal_symbol() to find symbol entry.
11629         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
11630
11631 2018-03-23  Keith Seitz  <keiths@redhat.com>
11632
11633         PR c++/22968
11634         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
11635         nested type definitions for C++, too.
11636
11637 2018-03-23  Tom Tromey  <tom@tromey.com>
11638
11639         * machoread.c (struct oso_el): Add a constructor.  Don't define as
11640         a typedef.
11641         (macho_register_oso): Remove.
11642         (macho_symtab_read): Take a std::vector.
11643         (oso_el_compare_name): Now a std::sort comparator.
11644         (macho_symfile_read_all_oso): Take a std::vector.
11645         (macho_symfile_read): Use std::vector.  Remove cleanups.
11646
11647 2018-03-22  Tom Tromey  <tom@tromey.com>
11648
11649         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
11650         (record_full_goto_bookmark): Use std::string.
11651
11652 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11653
11654         PR tdep/18295
11655         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
11656         a single mask.
11657
11658 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11659
11660         * rs6000-tdep.c (store_insn_p): New function.
11661         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
11662         and cr_reg to their unshifted values. Use store_insn_p to
11663         match LR saves using either R1 or fdata->alloca_reg. Use
11664         store_insn_p to match CR saves. Set alloca_reg_offset
11665         when alloca_reg and framep are set. Remove lr_reg shift
11666         when assigning to fdata->lr_register.
11667
11668 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11669
11670         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
11671         command line args instead of emitting a warning.
11672
11673 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11674
11675         * tracepoint.h (struct static_tracepoint_marker): Initialize
11676         fields, define default constructor, move constructor and move
11677         assignment, disable the rest.
11678         <str_id, extra>: Make std::string.
11679         (release_static_tracepoint_marker): Remove.
11680         (free_current_marker): Remove.
11681         * tracepoint.c (free_current_marker): Remove.
11682         (parse_static_tracepoint_marker_definition): Adjust to
11683         std::string, use new hex2str overload.
11684         (release_static_tracepoint_marker): Remove.
11685         (print_one_static_tracepoint_marker): Get marker by reference
11686         and adjust to std::string.
11687         (info_static_tracepoint_markers_command): Adjust to std::vector
11688         changes
11689         * target.h (static_tracepoint_marker_p): Remove typedef.
11690         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
11691         (struct target_ops) <to_static_tracepoint_marker_at>: Return
11692         bool.
11693         <to_static_tracepoint_markers_by_strid>: Return std::vector.
11694         * target-debug.h
11695         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
11696         (target_debug_print_std_vector_static_tracepoint_marker): New.
11697         (target_debug_print_struct_static_tracepoint_marker_p): Rename
11698         to...
11699         (target_debug_print_static_tracepoint_marker_p): ... this.
11700         * target-delegates.c: Re-generate.
11701         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
11702         Make std::string.
11703         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
11704         (decode_static_tracepoint_spec): Adjust to std::vector.
11705         (tracepoint_print_one_detail): Adjust to std::string.
11706         (strace_marker_decode_location): Adjust to std::string.
11707         (update_static_tracepoint): Adjust to std::string, remove call
11708         to release_static_tracepoint_marker.
11709         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
11710         Adjust to std::vector.
11711         * remote.c (remote_static_tracepoint_marker_at): Return bool.
11712         (remote_static_tracepoint_markers_by_strid): Adjust to
11713         std::vector.
11714         * common/rsp-low.h (hex2str): New overload with explicit count
11715         of bytes.
11716         * common/rsp-low.c (hex2str): New overload with explicit count
11717         of bytes.
11718         * unittests/rsp-low-selftests.c (test_hex2str): New function.
11719         (_initialize_rsp_low_selftests): Add test_hex2str test.
11720         * unittests/tracepoint-selftests.c
11721         (test_parse_static_tracepoint_marker_definition): Adjust to
11722         std::string.
11723
11724 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11725
11726         * tracepoint.c (parse_static_tracepoint_marker_definition):
11727         Consider case where the definition is followed by more
11728         definitions.
11729         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11730         tracepoint-selftests.c.
11731         * unittests/tracepoint-selftests.c: New.
11732
11733 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11734
11735         * MAINTAINERS (Write After Approval): Add Pedro Franco de
11736         Carvalho.
11737
11738 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11739
11740         * symtab.c (find_pc_sect_line): fixed indentation.
11741
11742 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11743
11744         * symtab.c (find_pc_sect_line): now uses binary search.
11745
11746 2018-03-19  Tom Tromey  <tom@tromey.com>
11747
11748         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
11749         "IDENT" production.
11750
11751 2018-03-19  Pedro Alves  <palves@redhat.com>
11752             Tom Tromey  <tom@tromey.com>
11753
11754         * unittests/observable-selftests.c: New file.
11755         * common/observable.h: New file.
11756         * observable.h: New file.
11757         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
11758         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
11759         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
11760         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
11761         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
11762         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
11763         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
11764         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
11765         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
11766         python/py-breakpoint.c, python/py-finishbreakpoint.c,
11767         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
11768         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
11769         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
11770         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
11771         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
11772         tui/tui-interp.c, valops.c: Update all users.
11773         * tui/tui-hooks.c (tui_bp_created_observer)
11774         (tui_bp_deleted_observer, tui_bp_modified_observer)
11775         (tui_inferior_exit_observer, tui_before_prompt_observer)
11776         (tui_normal_stop_observer, tui_register_changed_observer):
11777         Remove.
11778         (tui_observers_token): New global.
11779         (attach_or_detach, tui_attach_detach_observers): New functions.
11780         (tui_install_hooks, tui_remove_hooks): Use
11781         tui_attach_detach_observers.
11782         * record-btrace.c (record_btrace_thread_observer): Remove.
11783         (record_btrace_thread_observer_token): New global.
11784         * observer.sh: Remove.
11785         * observer.c: Rename to observable.c.
11786         * observable.c (namespace gdb_observers): Define new objects.
11787         (observer_debug): Move into gdb_observers namespace.
11788         (struct observer, struct observer_list, xalloc_observer_list_node)
11789         (xfree_observer_list_node, generic_observer_attach)
11790         (generic_observer_detach, generic_observer_notify): Remove.
11791         (_initialize_observer): Update.
11792         Don't include observer.inc.
11793         * Makefile.in (generated_files): Remove observer.h, observer.inc.
11794         (clean mostlyclean): Likewise.
11795         (observer.h, observer.inc): Remove targets.
11796         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
11797         (COMMON_SFILES): Use observable.c, not observer.c.
11798         * .gitignore: Remove observer.h.
11799
11800 2018-03-18  Tom Tromey  <tom@tromey.com>
11801
11802         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
11803         gdb::def_vector.
11804         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
11805
11806 2018-03-17  Tom Tromey  <tom@tromey.com>
11807
11808         * auto-load.c (auto_load_objfile_script_1): Use std::string.
11809
11810 2018-03-17  Tom Tromey  <tom@tromey.com>
11811
11812         * target.c (class scoped_target_fd): New.
11813         (target_fileio_close_cleanup): Remove.
11814         (target_fileio_read_alloc_1): Use scoped_target_fd.
11815
11816 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
11817
11818         * silent-rules.mk: New.
11819         * Makefile.in: Include silent-rules.mk
11820         (srcdir, VPATH, top_srcdir): Move up.
11821         (COMPILE): Add ECHO_CXX.
11822         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
11823         (init.c): Add ECHO_INIT_C.
11824         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
11825         (version.c): Add ECHO_GEN.
11826         (printcmd.o): Add ECHO_CXX.
11827         (target-float.o): Add ECHO_CXX.
11828         (ada-exp.o): Add ECHO_CXX.
11829         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
11830         (insight$(EXEEXT)): Add ECHO_CXXLD.
11831         * gnulib/configure.ac: Add AM_SILENT_RULES.
11832         * gnulib/aclocal.m4: Re-generate.
11833         * gnulib/configure: Re-generate.
11834         * gnulib/import/Makefile.in: Re-generate.
11835
11836 2018-03-16  Tom Tromey  <tom@tromey.com>
11837
11838         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
11839         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
11840         * utils.c (do_free_section_addr_info)
11841         (make_cleanup_free_section_addr_info): Remove.
11842         * symfile.h (struct other_sections): Add constructor.
11843         (struct section_addr_info): Remove.
11844         (section_addr_info): New typedef.
11845         (struct sym_fns) <sym_offsets>: Change type of parameter.
11846         (build_section_addr_info_from_objfile)
11847         (relative_addr_info_to_section_offsets, addr_info_make_relative)
11848         (default_symfile_offsets, symbol_file_add)
11849         (symbol_file_add_from_bfd)
11850         (build_section_addr_info_from_section_table): Update.
11851         (alloc_section_addr_info, free_section_addr_info): Don't declare.
11852         * symfile.c (alloc_section_addr_info): Remove.
11853         (build_section_addr_info_from_section_table): Change return type.
11854         Update.
11855         (build_section_addr_info_from_bfd)
11856         (build_section_addr_info_from_objfile): Likewise.
11857         (free_section_addr_info): Remove.
11858         (relative_addr_info_to_section_offsets): Change type of "addrs".
11859         (addrs_section_compar): Now a std::sort comparator.
11860         (addrs_section_sort): Change return type.
11861         (addr_info_make_relative): Change type of "addrs".  Update.
11862         (default_symfile_offsets, syms_from_objfile_1)
11863         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
11864         (symbol_file_add_separate): Update.
11865         (symbol_file_add): Change type of "addrs".  Update.
11866         (add_symbol_file_command): Update.  Remove cleanups.
11867         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
11868         cleanups.
11869         * symfile-debug.c (debug_sym_offsets): Change type of "info".
11870         * solib.c (solib_read_symbols): Update.
11871         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
11872         * machoread.c (macho_symfile_offsets): Update.
11873         * jit.c (jit_bfd_try_read_symtab): Update.
11874
11875 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
11876
11877         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11878         unittests/utils-selftests.c.
11879         * unittests/utils-selftests.c: New file.
11880
11881 2018-03-14  Tom Tromey  <tom@tromey.com>
11882
11883         PR cli/14977:
11884         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
11885         for NULL.
11886
11887 2018-03-14  Tom Tromey  <tom@tromey.com>
11888
11889         PR cli/19918:
11890         * printcmd.c (printf_pointer): Allow "-" in format.
11891
11892 2018-03-14  Tom Tromey  <tom@tromey.com>
11893
11894         * printcmd.c (_initialize_printcmd): Add usage to printf.
11895
11896 2018-03-14  Yao Qi  <qiyao@sourceware.org>
11897
11898         * MAINTAINERS: Update my email address.
11899
11900 2018-03-13  Tom Tromey  <tom@tromey.com>
11901
11902         * machoread.c (macho_check_dsym): Change filenamep to a
11903         std::string*.
11904         (macho_symfile_read): Update.
11905         * symfile.c (load_command): Use std::string.
11906
11907 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
11908
11909         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
11910         to error message string.
11911         (riscv_register_name): Use xsnprintf instead of sprintf.
11912         (riscv_insn::fetch_instruction): Use gdb_assert instead of
11913         internal_error.
11914         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
11915         error.
11916         (riscv_push_dummy_call): Likewise.
11917
11918 2018-03-12  Tom Tromey  <tom@tromey.com>
11919
11920         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
11921         Use gdb::byte_vector.
11922         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
11923
11924 2018-03-12  Yao Qi  <yao.qi@linaro.org>
11925
11926         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
11927         parameter type to readable_regcache.
11928         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
11929         the declaration.
11930
11931 2018-03-11  Tom Tromey  <tom@tromey.com>
11932
11933         * dwarf2read.c (struct nextfield): Add initializers.
11934         (struct nextfnfield): Remove.
11935         (struct fnfieldlist): Add initializers.  Remove "length" and
11936         "head", use std::vector.
11937         (struct decl_field_list): Remove.
11938         (struct field_info): Add initializers.
11939         <fields, baseclasses>: Now std::vector.
11940         <nbaseclasses, nfnfields, typedef_field_list_count,
11941         nested_types_list_count>: Remove.
11942         (dwarf2_add_field, dwarf2_add_type_defn)
11943         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
11944         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
11945         (process_structure_scope): Update.
11946
11947 2018-03-11  Tom Tromey  <tom@tromey.com>
11948
11949         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
11950         for use by std::sort.
11951         (build_type_psymtabs_1): Use std::vector.
11952
11953 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
11954
11955         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
11956         and LIBMPFR in the printed configuration.
11957
11958 2018-03-08  Tom Tromey  <tom@tromey.com>
11959
11960         * source.c (get_filename_and_charpos): Use scoped_fd.
11961         * nto-procfs.c (procfs_open_1): Use scoped_fd.
11962         (procfs_pidlist): Likewise.
11963         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
11964         (iterate_over_mappings): Likewise.
11965
11966 2018-03-08  Tom Tromey  <tom@tromey.com>
11967
11968         * infcall.c (struct call_return_meta_info)
11969         <stack_temporaries_enabled>: Remove.
11970         (get_call_return_value, call_function_by_hand_dummy): Update.
11971         * thread.c (disable_thread_stack_temporaries): Remove.
11972         (enable_thread_stack_temporaries): Remove.
11973         (thread_stack_temporaries_enabled_p): Return bool.
11974         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
11975         (get_last_thread_stack_temporary): Update.
11976         * eval.c (evaluate_subexp): Update.
11977         * gdbthread.h (class enable_thread_stack_temporaries): Now a
11978         class, not a function.
11979         (value_ptr, value_vec): Remove typedefs.
11980         (class thread_info) <stack_temporaries_enabled>: Now bool.
11981         <stack_temporaries>: Now a std::vector.
11982         (thread_stack_temporaries_enabled_p)
11983         (value_in_thread_stack_temporaries): Return bool.
11984
11985 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
11986
11987         * remote.c (putpkt_binary): Fix omitted bytes reporting.
11988         (getpkt_or_notif_sane_1): Likewise.
11989
11990 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11991
11992         * build-id.c (build_id_to_debug_bfd): Use std::string.
11993
11994 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11995
11996         * build-id.c (find_separate_debug_file_by_buildid): Return
11997         std::string.
11998         * build-id.h (find_separate_debug_file_by_buildid): Return
11999         std::string.
12000         * coffread.c (coff_symfile_read): Adjust to std::string.
12001         * elfread.c (elf_symfile_read): Adjust to std::string.
12002         * symfile.c (separate_debug_file_exists): Change parameter to
12003         std::string.
12004         (find_separate_debug_file): Return std::string.
12005         (find_separate_debug_file_by_debuglink): Return std::string.
12006         * symfile.h (find_separate_debug_file_by_debuglink): Return
12007         std::string.
12008
12009 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12010
12011         * common/xml-utils.c (xml_escape_text): Move code to...
12012         (xml_escape_text_append): ... this new function.
12013         * common/xml-utils.h (xml_escape_text_append): New declaration.
12014         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12015         New function.
12016         (_initialize_xml_utils): register test_xml_escape_text_append as
12017         a selftest.
12018
12019 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12020
12021         * defs.h: Remove MAX_REGISTER_SIZE.
12022         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12023         asserts.
12024         * python/py-unwind.c (pyuw_sniffer): Likewise.
12025
12026 2018-03-07  Tom Tromey  <tom@tromey.com>
12027
12028         * linux-tdep.c (linux_info_proc): Update.
12029         * target.h (struct target_ops) <to_fileio_readlink>: Return
12030         optional<string>.
12031         (target_fileio_readlink): Return optional<string>.
12032         * remote.c (remote_hostio_readlink): Return optional<string>.
12033         * inf-child.c (inf_child_fileio_readlink): Return
12034         optional<string>.
12035         * target.c (target_fileio_readlink): Return optional<string>.
12036
12037 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12038
12039         * regcache.c (cooked_read_test): Add riscv to the list of
12040         architectures that have a save_reggroup.
12041
12042 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12043
12044         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12045         value is not a dynamic class object.
12046
12047 2018-03-06  Tom Tromey  <tom@tromey.com>
12048
12049         * rust-exp.y: Formatting fixes.
12050
12051 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12052
12053         * riscv-tdep.c (riscv_register_name): Remove target description
12054         support.
12055         (riscv_gdbarch_init): Remove target description check.
12056
12057 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12058
12059         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12060         comment.
12061         * riscv-tdep.h: Likewise.
12062
12063 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12064
12065         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12066         (riscv_pseudo_register_write): Delete.
12067         (riscv_gdbarch_init): Remove all use of pseudo registers.
12068
12069 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12070
12071         * record-btrace.c (btrace_print_lines): Replace cleanup
12072         parameter with RAII equivalents.
12073         (btrace_insn_history): Replace cleanup with RAII equivalents.
12074         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12075         make_cleanup_ui_out_tuple_begin_end): Remove.
12076         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12077         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12078         make_cleanup_ui_out_list_begin_end): Remove.
12079
12080 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12081
12082         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12083         parameter types to std::vector.  Use bool.
12084         (record_btrace_wait): Replace VEC(tp_t) with
12085         std::vector<thread_info *>.
12086         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12087
12088 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12089
12090         * record-btrace.c (record_btrace_disable_callback): Remove.
12091         (struct scoped_btrace_disable): New.
12092         (record_btrace_open): Use scoped_btrace_disable.
12093
12094 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12095
12096         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12097         reading values from registers.
12098
12099 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12100
12101         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12102         where appropriate.
12103
12104 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12105
12106         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12107         change parameter type.  Use GDB's print functions, and use
12108         core_addr_to_string where appropriate.
12109         (riscv_push_dummy_call): Use core_addr_to_string where
12110         appropriate, update call to riscv_print_arg_location, and reindent
12111         a few lines.
12112         (riscv_return_value): Update call to riscv_print_arg_location.
12113
12114 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12115             Tim Newsome <tim@sifive.com>
12116             Albert Ou <a0u@eecs.berkeley.edu>
12117             Darius Rad <darius@bluespec.com>
12118
12119         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12120         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12121         (ALLDEPFILES): Add riscv-tdep.c
12122         * configure.tgt: Add riscv support.
12123         * riscv-tdep.c: New file.
12124         * riscv-tdep.h: New file.
12125         * NEWS: Mention new target.
12126         * MAINTAINERS: Add entry for riscv.
12127
12128 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12129
12130         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12131         fields within aggregates.
12132
12133 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12134
12135         * record-btrace.c (btrace_print_lines): Change type of flags to
12136         gdb_disassembly_flags.
12137
12138 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12139
12140         * fbsd-nat.c: Include "inf-ptrace.h".
12141         (USE_SIGTRAP_SIGINFO): Conditionally define.
12142         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12143         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12144         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12145         function.
12146         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12147         Likewise.
12148         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12149         Likewise.
12150         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12151         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12152         "supports_stopped_by_hw_breakpoint" target methods.
12153
12154 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12155
12156         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12157         * fbsd-nat.c (debug_fbsd_nat): New variable.
12158         (show_fbsd_nat_debug): New function.
12159         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12160         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12161
12162 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12163
12164         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12165         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12166         prototype.
12167         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12168         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12169         method.
12170
12171 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12172
12173         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12174         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12175
12176 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12177
12178         * charset.c (struct charset_vector): New.
12179         (charsets): Change type to charset_vector.
12180         (find_charset_names): Adjust.
12181         (add_one): Adjust.
12182         (_initialize_charset): Adjust.
12183
12184 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12185
12186         * progspace.h (struct program_space) <deleted_solibs>: Change
12187         type to std::vector<std::string>.
12188         * progspace.c (clear_program_space_solib_cache): Adjust.
12189         * breakpoint.c (print_solib_event): Adjust.
12190         (check_status_catch_solib): Adjust.
12191         * solib.c (update_solib_list): Adjust.
12192         * ui-out.h (class ui_out) <field_string>: New overload.
12193         * ui-out.c (ui_out::field_string): New overload.
12194
12195 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12196
12197         * progspace.h (struct program_space): Add constructor and
12198         destructor, initialize fields.
12199         (add_program_space): Remove.
12200         * progspace.c (add_program_space): Rename to...
12201         (program_space::program_space): ... this.
12202         (release_program_space): Rename to...
12203         (program_space::~program_space): ... this.
12204         (delete_program_space): Use delete to delete program_space.
12205         (initialize_progspace): Use new to allocate program_space.
12206         * inferior.c (add_inferior_with_spaces): Likewise.
12207         (clone_inferior_command): Likewise.
12208         * infrun.c (follow_fork_inferior): Likewise.
12209         (handle_vfork_child_exec_or_exit): Likewise.
12210
12211 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12212
12213         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12214         (delim_string_to_char_ptr_vec): Return std::vector of
12215         gdb::unique_xmalloc_ptr.
12216         (dirnames_to_char_ptr_vec_append): Take std::vector of
12217         gdb::unique_xmalloc_ptr.
12218         (dirnames_to_char_ptr_vec): Return std::vector of
12219         gdb::unique_xmalloc_ptr.
12220         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12221         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12222         (delim_string_to_char_ptr_vec): Return an std::vector of
12223         gdb::unique_xmalloc_ptr, adjust the code.
12224         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12225         gdb::unique_xmalloc_ptr, adjust the code.
12226         (dirnames_to_char_ptr_vec): Return an std::vector of
12227         gdb::unique_xmalloc_ptr, adjust the code.
12228         * auto-load.c (auto_load_safe_path_vec): Change type to
12229         std::vector of gdb::unique_xmalloc_ptr.
12230         (auto_load_expand_dir_vars): Return an std::vector of
12231         gdb::unique_xmalloc_ptr, adjust the code.
12232         (auto_load_safe_path_vec_update): Adjust.
12233         (filename_is_in_auto_load_safe_path_vec): Adjust.
12234         (auto_load_objfile_script_1): Adjust.
12235         * build-id.c (build_id_to_debug_bfd): Adjust.
12236         * linux-thread-db.c (thread_db_load_search): Adjust.
12237         * source.c (add_path): Adjust.
12238         (openp): Adjust.
12239         * symfile.c (find_separate_debug_file): Adjust.
12240         * utils.c (do_free_char_ptr_vec): Remove.
12241         (make_cleanup_free_char_ptr_vec): Remove.
12242
12243 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12244
12245         PR gdb/22907
12246         * common/pathstuff.c: Conditionally include "<windows.h>".
12247
12248 2018-03-01  Georg Sauthoff  <mail@georg.so>
12249
12250         PR gdb/22888
12251         * gcore.in: Quote variables and switch interpreter to bash.
12252
12253 2018-03-01  Tom Tromey  <tom@tromey.com>
12254
12255         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12256         assertion.  Add assertion for discriminant_index.
12257         (quirk_rust_enum): Use correct base type name in univariant case.
12258
12259 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12260
12261         * record.c (get_call_history_modifiers): Return a
12262         record_print_flags.
12263         (cmd_record_call_history): Adjust.
12264         * record-btrace.c (record_btrace_call_history): Adjust.
12265         (record_btrace_call_history_range): Adjust.
12266         (record_btrace_call_history_from): Adjust.
12267         * target-debug.h (target_debug_print_record_print_flags): New.
12268         * target-delegates.c: Re-generate.
12269         * target.c (target_call_history): Change flags type.
12270         (target_call_history_from): Likewise.
12271         (target_call_history_range): Likewise.
12272         * target.h (struct target_ops) <target_call_history>: Likewise.
12273         (target_call_history_from): Likewise.
12274         (target_call_history_range): Likewise.
12275
12276 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12277             Simon Marchi  <simon.marchi@polymtl.ca>
12278
12279         * common/common-utils.c: Include "sys/stat.h".
12280         (is_regular_file): Move here from "source.c"; change return
12281         type to "bool".
12282         * common/common-utils.h (is_regular_file): New prototype.
12283         * common/pathstuff.c (contains_dir_separator): New function.
12284         * common/pathstuff.h (contains_dir_separator): New prototype.
12285         * source.c: Don't include "sys/stat.h".
12286         (is_regular_file): Move to "common/common-utils.c".
12287
12288 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12289
12290         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12291         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12292         * auto-load.c: Include "common/pathstuff.h".
12293         * common/common-def.h (current_directory): Move here.
12294         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12295         function.
12296         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12297         prototype.
12298         * common/pathstuff.c: New file.
12299         * common/pathstuff.h: New file.
12300         * compile/compile.c: Include "common/pathstuff.h".
12301         * defs.h (current_directory): Move to "common/common-defs.h".
12302         * dwarf2read.c: Include "common/pathstuff.h".
12303         * exec.c: Likewise.
12304         * guile/scm-safe-call.c: Likewise.
12305         * linux-thread-db.c: Likewise.
12306         * main.c: Likewise.
12307         * nto-tdep.c: Likewise.
12308         * objfiles.c: Likewise.
12309         * source.c: Likewise.
12310         * symtab.c: Likewise.
12311         * utils.c: Include "common/pathstuff.h".
12312         (gdb_realpath): Move to "common/pathstuff.c".
12313         (gdb_realpath_keepfile): Likewise.
12314         (gdb_abspath): Likewise.
12315         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12316         (gdb_realpath_keepfile): Likewise.
12317         (gdb_abspath): Likewise.
12318
12319 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12320
12321         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12322         wildcard process pid for super_resume for kernels with a
12323         specific bug.
12324
12325 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12326
12327         * compile/compile.c (get_args): Add additional comments
12328         explaining function.
12329
12330 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12331             Tom Tromey  <tom@tromey.com>
12332
12333         * target.h (memory_write_request_s): Remove typedef.  Don't define
12334         VEC.
12335         (target_write_memory_blocks): Change argument to std::vector.
12336         (struct memory_write_request): Add constructor.
12337         * target-memory.c (compare_block_starting_address): Return bool.
12338         Change argument types.
12339         (claim_memory): Change arguments to use std::vector.
12340         (split_regular_and_flash_blocks, blocks_to_erase)
12341         (compute_garbled_blocks): Likewise.
12342         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12343         (target_write_memory_blocks): Change argument to std::vector.
12344         * symfile.c (struct load_section_data): Add constructor and
12345         destructor.  Use std::vector for "requests".
12346         (struct load_progress_data): Add initializers.
12347         (load_section_callback): Update.  Use "new".
12348         (clear_memory_write_data): Remove.
12349         (generic_load): Update.
12350
12351 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12352
12353         * arch/aarch64.h: Use common/tdesc.h.
12354
12355 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12356
12357         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
12358         architecture with a 64-bit ABI.
12359
12360 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12361
12362         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
12363         ahead of target description loading.
12364
12365 2018-02-26  Tom Tromey  <tom@tromey.com>
12366
12367         * stack.c (backtrace_command_1): Update.
12368         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
12369         of "flags".
12370         * python/py-framefilter.c (py_print_frame)
12371         (gdbpy_apply_frame_filter): Change type of "flags".
12372         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
12373         of "flags".
12374         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
12375         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
12376         * extension.h (enum frame_filter_flag): Rename from
12377         frame_filter_flags.
12378         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
12379         (apply_ext_lang_frame_filter): Change type of "flags".
12380         * extension.c (apply_ext_lang_frame_filter): Change type of
12381         "flags".
12382         * extension-priv.h (struct extension_language_ops)
12383         <apply_frame_filter>: Change type of "flags".
12384
12385 2018-02-26  Tom Tromey  <tom@tromey.com>
12386
12387         PR python/16497:
12388         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
12389         off-by-one in py_end computation.
12390         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
12391         PRINT_MORE_FRAMES.
12392         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
12393         constant.
12394
12395 2018-02-26  Tom Tromey  <tom@tromey.com>
12396
12397         * dwarf2read.c (struct variant_field): New.
12398         (struct nextfield) <variant>: New field.
12399         (dwarf2_add_field): Handle DW_TAG_variant_part.
12400         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
12401         discriminated union.
12402         (read_structure_type): Handle DW_TAG_variant_part.
12403         (handle_struct_member_die): New function, extracted from
12404         process_structure_scope.  Handle DW_TAG_variant.
12405         (process_structure_scope): Handle discriminated unions.  Call
12406         handle_struct_member_die.
12407
12408 2018-02-26  Tom Tromey  <tom@tromey.com>
12409
12410         * rust-lang.h (rust_last_path_segment): Declare.
12411         * rust-lang.c (rust_last_path_segment): Now public.  Change
12412         contract.
12413         (struct disr_info): Remove.
12414         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
12415         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
12416         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
12417         (rust_enum_p, rust_enum_variant): New function.
12418         (rust_underscore_fields): Remove "offset" parameter.
12419         (rust_print_enum): New function.
12420         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
12421         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
12422         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
12423         enums.
12424         (rust_internal_print_type): New function, from rust_print_type.
12425         Remove enum code.
12426         (rust_print_type): Call rust_internal_print_type.
12427         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
12428         Update enum handling.
12429         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
12430         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
12431         (rust_union_quirks): New functions.
12432         (process_full_comp_unit, process_full_type_unit): Call
12433         rust_union_quirks.
12434         (process_structure_scope): Update rust_unions if necessary.
12435
12436 2018-02-26  Tom Tromey  <tom@tromey.com>
12437
12438         * value.h (value_union_variant): Declare.
12439         * valops.c (value_union_variant): New function.
12440         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
12441         (struct discriminant_info): New.
12442         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
12443         enumerator.
12444         (struct main_type) <flag_discriminated_union>: New field.
12445
12446 2018-02-26  Tom Tromey  <tom@tromey.com>
12447
12448         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12449         unittests/unpack-selftests.c.
12450         * unittests/unpack-selftests.c: New file.
12451         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
12452
12453 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12454
12455         * dwarf2read.c (struct partial_die_info) <read>: New method.
12456         (read_partial_die): Remove the declaration.
12457         (load_partial_dies): Update.
12458         (partial_die_info::partial_die_info):
12459         (read_partial_die): Change it to partial_die_info::read.
12460
12461 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12462
12463         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
12464         (fixup_partial_die): Remove declaration.
12465         (scan_partial_symbols): Update.
12466         (partial_die_parent_scope): Likewise.
12467         (partial_die_full_name): Likewise.
12468         (fixup_partial_die): Change it to partial_die_info::fixup.
12469
12470 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12471
12472         * dwarf2read.c (read_partial_die): Update the declaration.
12473         (load_partial_dies): Caller update.
12474         (read_partial_die): Remove one argument abbrev_len.
12475
12476 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12477
12478         * dwarf2read.c (struct partial_die_info): Add ctor, delete
12479         assignment operator.
12480         (load_partial_dies): Use ctor and copy ctor.
12481         (read_partial_die): Update.
12482         (dwarf2_cu::find_partial_die): Use ctor.
12483
12484 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12485
12486         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
12487         (find_partial_die_in_comp_unit): Change it to
12488         dwarf2_cu::find_partial_die.
12489         (find_partial_die): Update.
12490
12491 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12492
12493         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
12494         is NULL.
12495
12496 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12497
12498         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
12499
12500 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
12501
12502         * arch/amd64.h: Use common/tdesc.h.
12503         * arch/i386.c: Likewise.
12504         * arch/i386.h: Likewise.
12505         * arch/tic6x.c: Likewise.
12506         * arch/tdesc.h: Move file from here...
12507         * common/tdesc.h: ...to here.
12508         * features/aarch64-core.c: Regenerate.
12509         * features/aarch64-fpu.c: Regenerate.
12510         * features/i386/32bit-avx.c: Regenerate.
12511         * features/i386/32bit-avx512.c: Regenerate.
12512         * features/i386/32bit-core.c: Regenerate.
12513         * features/i386/32bit-linux.c: Regenerate.
12514         * features/i386/32bit-mpx.c: Regenerate.
12515         * features/i386/32bit-pkeys.c: Regenerate.
12516         * features/i386/32bit-sse.c: Regenerate.
12517         * features/i386/64bit-avx.c: Regenerate.
12518         * features/i386/64bit-avx512.c: Regenerate.
12519         * features/i386/64bit-core.c: Regenerate.
12520         * features/i386/64bit-linux.c: Regenerate.
12521         * features/i386/64bit-mpx.c: Regenerate.
12522         * features/i386/64bit-pkeys.c: Regenerate.
12523         * features/i386/64bit-segments.c: Regenerate.
12524         * features/i386/64bit-sse.c: Regenerate.
12525         * features/i386/x32-core.c: Regenerate.
12526         * features/tic6x-c6xp.c: Regenerate.
12527         * features/tic6x-core.c: Regenerate.
12528         * features/tic6x-gp.c: Regenerate.
12529         * target-descriptions.c: Use common/tdesc.h.
12530         * target-descriptions.h: Likewise.
12531
12532 2018-02-24  Tom Tromey  <tom@tromey.com>
12533
12534         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
12535         (try_thread_db_load_from_dir, thread_db_load_search): Use
12536         std::string.
12537         (info_auto_load_libthread_db_compare): Return bool.  Change
12538         argument types.
12539         (info_auto_load_libthread_db): Use std::vector, std::string.
12540         Remove cleanups.
12541
12542 2018-02-24  Tom Tromey  <tom@tromey.com>
12543
12544         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
12545         std::string.
12546         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
12547         std::string*.
12548         * gdbarch.c: Rebuild.
12549         * gdbarch.h: Rebuild.
12550         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
12551         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
12552         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
12553         std::string*.
12554
12555 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
12556
12557         * gdbtypes.h (sect_offset): Change type to uint64_t.
12558         (sect_offset_str): New function.
12559         * dwarf2read.c (create_addrmap_from_aranges): Use
12560         sect_offset_str.
12561         (error_check_comp_unit_head): Likewise.
12562         (create_debug_type_hash_table): Likewise.
12563         (read_cutu_die_from_dwo): Likewise.
12564         (init_cutu_and_read_dies): Likewise.
12565         (init_cutu_and_read_dies_no_follow): Likewise.
12566         (process_psymtab_comp_unit_reader): Likewise.
12567         (partial_die_parent_scope): Likewise.
12568         (peek_die_abbrev): Likewise.
12569         (process_queue): Likewise.
12570         (dwarf2_physname): Likewise.
12571         (read_namespace_alias): Likewise.
12572         (read_import_statement): Likewise.
12573         (create_dwo_cu_reader): Likewise.
12574         (create_cus_hash_table): Likewise.
12575         (lookup_dwo_cutu): Likewise.
12576         (inherit_abstract_dies): Likewise.
12577         (read_func_scope): Likewise.
12578         (read_call_site_scope): Likewise.
12579         (dwarf2_add_member_fn): Likewise.
12580         (read_common_block): Likewise.
12581         (read_module_type): Likewise.
12582         (read_typedef): Likewise.
12583         (read_subrange_type): Likewise.
12584         (load_partial_dies): Likewise.
12585         (read_partial_die): Likewise.
12586         (find_partial_die): Likewise.
12587         (read_str_index): Likewise.
12588         (dwarf2_string_attr): Likewise.
12589         (build_error_marker_type): Likewise.
12590         (lookup_die_type): Likewise.
12591         (dump_die_shallow): Likewise.
12592         (follow_die_ref): Likewise.
12593         (dwarf2_fetch_die_loc_sect_off): Likewise.
12594         (dwarf2_fetch_constant_bytes): Likewise.
12595         (follow_die_sig): Likewise.
12596         (get_signatured_type): Likewise.
12597         (get_DW_AT_signature_type): Likewise.
12598         (dwarf2_find_containing_comp_unit): Likewise.
12599         (set_die_type): Likewise.
12600
12601 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
12602
12603         * arch/aarch64.c: Include "common-defs.h".
12604         * arch/amd64.c: Likewise.
12605         * arch/i386.c: Likewise.
12606
12607 2018-02-21  Tom Tromey  <tom@tromey.com>
12608
12609         * value.h: (extract_field_op): Update.
12610         * eval.c (extract_field_op): Return a const char *.
12611         * expression.h (parse_expression_for_completion): Update.
12612         * completer.c (complete_expression): Update.
12613         (add_struct_fields): Make fieldname const.
12614         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
12615         (mark_completion_tag, parse_exp_in_context_1): Update.
12616         (parse_expression_for_completion): Change "name" to
12617         unique_xmalloc_ptr*.
12618
12619 2018-02-21  Tom Tromey  <tom@tromey.com>
12620
12621         * infcall.c (call_function_by_hand_dummy): Use std::vector.
12622
12623 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12624
12625         * avr-tdep.c (avr_read_pc): Change parameter type to
12626         readable_regcache.
12627         * gdbarch.sh (read_pc): Likewise.
12628         * gdbarch.c: Re-generated.
12629         * gdbarch.h: Re-generated.
12630         * hppa-tdep.c (hppa_read_pc): Change parameter type to
12631         readable_regcache.
12632         * ia64-tdep.c (ia64_read_pc): Likewise.
12633         * mips-tdep.c (mips_read_pc): Likewise.
12634         * spu-tdep.c (spu_read_pc): Likewise.
12635
12636 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12637
12638         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
12639         * regcache-dump.c: New file.
12640         * regcache.c: Move register_dump to regcache-dump.c.
12641         (maintenance_print_registers): Likewise.
12642         (maintenance_print_raw_registers): Likewise.
12643         (maintenance_print_cooked_registers): Likewise.
12644         (maintenance_print_register_groups): Likewise.
12645         (maintenance_print_remote_registers): Likewise.
12646         (_initialize_regcache): Likewise.
12647         * regcache.h (register_dump): Moved from regcache.c.
12648
12649 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12650
12651         * regcache.c (regcache::regcache): Update.
12652         (regcache::invalidate): Move it to detached_regcache::invalidate.
12653         (get_thread_arch_aspace_regcache): Update.
12654         (regcache::raw_update): Update.
12655         (regcache::cooked_read): Remove some code.
12656         (regcache::cooked_read_value): Likewise.
12657         (regcache::raw_write): Remove assert on m_readonly_p.
12658         (regcache::raw_supply_integer): Move it to
12659         detached_regcache::raw_supply_integer.
12660         (regcache::raw_supply_zeroed): Likewise.
12661         * regcache.h (detached_regcache) <raw_supply_integer>: New
12662         declaration.
12663         <raw_supply_zeroed, invalidate>: Likewise.
12664         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
12665         <invalidate>: Likewise.
12666         <m_readonly_p>: Removed.
12667
12668 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12669
12670         * infcmd.c (get_return_value): Let stop_regs point to
12671         get_current_regcache.
12672         * regcache.c (regcache::regcache): Remove.
12673         (register_dump_reg_buffer): New class.
12674         (regcache_print): Adjust.
12675         * regcache.h (regcache): Remove constructors.
12676
12677 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12678
12679         * regcache.c (class register_dump): New class.
12680         (register_dump_regcache, register_dump_none): New class.
12681         (register_dump_remote, register_dump_groups): New class.
12682         (regcache_print): Update.
12683         * regcache.h (regcache_dump_what): Move it to regcache.c.
12684         (regcache) <dump>: Remove.
12685
12686 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12687
12688         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
12689          reg_buffer_rw *.
12690         (jit_unwind_reg_set_impl): Call raw_supply.
12691         (jit_frame_sniffer): Use reg_buffer_rw.
12692         * record-full.c (record_full_core_regbuf): Change its type.
12693         (record_full_core_open_1): Use reg_buffer_rw.
12694         (record_full_close): Likewise.
12695         (record_full_core_fetch_registers): Use regcache->raw_supply.
12696         (record_full_core_store_registers): Likewise.
12697         * regcache.c (regcache::get_register_status): Move it to
12698         reg_buffer.
12699         (regcache_raw_set_cached_value): Remove.
12700         (regcache::raw_set_cached_value): Remove.
12701         (regcache::raw_write): Call raw_supply.
12702         (regcache::raw_supply): Move it to reg_buffer_rw.
12703         * regcache.h (regcache_raw_set_cached_value): Remove.
12704         (reg_buffer_rw): New class.
12705
12706 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12707
12708         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
12709         readonly_detached_regcache.
12710         (dummy_frame_prev_register): Use regcache->cooked_read.
12711         * frame.c (frame_save_as_regcache): Change return type.
12712         (frame_pop): Update.
12713         * frame.h (frame_save_as_regcache): Update declaration.
12714         * inferior.h (get_infcall_suspend_state_regcache): Update
12715         declaration.
12716         * infrun.c (infcall_suspend_state) <registers>: use
12717         readonly_detached_regcache.
12718         (save_infcall_suspend_state): Don't use regcache_dup.
12719         (get_infcall_suspend_state_regcache): Change return type.
12720         * linux-fork.c (struct fork_info) <savedregs>: Change to
12721         readonly_detached_regcache.
12722         <pc>: New field.
12723         (fork_save_infrun_state): Don't use regcache_dup.
12724         (info_checkpoints_command): Adjust.
12725         * mi/mi-main.c (register_changed_p): Update declaration.
12726         (mi_cmd_data_list_changed_registers): Use
12727         readonly_detached_regcache.
12728         (register_changed_p): Change parameter type to
12729         readonly_detached_regcache.
12730         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
12731         readonly_detached_regcache.
12732         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
12733         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
12734         New.
12735         (regcache::save): Move it to reg_buffer.
12736         (regcache::restore): Change parameter type.
12737         (regcache_dup): Remove.
12738         * regcache.h (reg_buffer) <save>: New method.
12739         (readonly_detached_regcache): New class.
12740         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
12741         readonly_detached_regcache.
12742         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
12743
12744 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12745
12746         * frame.c (frame_save_as_regcache): Use regcache method save.
12747         (frame_pop): Use regcache method restore.
12748         * infrun.c (restore_infcall_suspend_state): Likewise.
12749         * linux-fork.c (fork_load_infrun_state): Likewise.
12750         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
12751         save.
12752         * regcache.c (regcache_save): Remove.
12753         (regcache::restore): More asserts.
12754         (regcache_cpy): Remove.
12755         * regcache.h (regcache_save): Remove the declaration.
12756         (regcache::restore): Move from private to public.
12757         Remove the friend declaration of regcache_cpy.
12758         (regcache_cpy): Remove declaration.
12759
12760 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12761
12762         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
12763         parameter type to 'readable_regcache *'.
12764         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12765         * arm-tdep.c (arm_neon_quad_read): Likewise.
12766         (arm_pseudo_read): Likewise.
12767         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12768         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12769         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12770         * gdbarch.c: Re-generated.
12771         * gdbarch.h: Re-generated.
12772         * gdbarch.sh (pseudo_register_read): Change parameter type to
12773         'readable_regcache *'.
12774         (pseudo_register_read_value): Likewise.
12775         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
12776         (h8300_pseudo_register_read): Likewise.
12777         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
12778         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12779         (i386_pseudo_register_read_into_value): Likewise.
12780         (i386_pseudo_register_read_value): Likewise.
12781         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
12782         declaration.
12783         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
12784         * m32c-tdep.c (m32c_raw_read): Likewise.
12785         (m32c_read_flg): Likewise.
12786         (m32c_banked_register): Likewise.
12787         (m32c_banked_read): Likewise.
12788         (m32c_sb_read): Likewise.
12789         (m32c_part_read): Likewise.
12790         (m32c_cat_read): Likewise.
12791         (m32c_r3r2r1r0_read): Likewise.
12792         (m32c_pseudo_register_read): Likewise.
12793         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12794         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12795         (mep_pseudo_cr64_read): Likewise.
12796         (mep_pseudo_register_read): Likewise.
12797         * mips-tdep.c (mips_pseudo_register_read): Likewise.
12798         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12799         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12800         * regcache.c (regcache::raw_read): Move it to readable_regcache.
12801         (regcache::cooked_read): Likewise.
12802         (regcache::cooked_read_value): Likewise.
12803         (regcache_cooked_read_signed):
12804         (regcache::cooked_read): Likewise.
12805         * regcache.h (readable_regcache): New class.
12806         (regcache): Inherit readable_regcache.  Move some methods to
12807         readable_regcache.
12808         * rl78-tdep.c (rl78_pseudo_register_read): Change
12809         parameter type to 'readable_regcache *'.
12810         * rs6000-tdep.c (do_regcache_raw_read): Remove.
12811         (e500_pseudo_register_read): Change parameter type to
12812         'readable_regcache *'.
12813         (dfp_pseudo_register_read): Likewise.
12814         (vsx_pseudo_register_read): Likewise.
12815         (efpr_pseudo_register_read): Likewise.
12816         * s390-tdep.c (s390_pseudo_register_read): Likewise.
12817         * sh-tdep.c (sh_pseudo_register_read): Likewise.
12818         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
12819         (sh64_pseudo_register_read): Likewise.
12820         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
12821         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12822         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
12823         (spu_pseudo_register_read): Likewise.
12824         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12825         (xtensa_pseudo_register_read): Likewise.
12826
12827 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12828
12829         * regcache.c (regcache::regcache): Call reg_buffer ctor.
12830         (regcache::arch): Move it to reg_buffer::arch.
12831         (regcache::register_buffer): Likewise.
12832         (regcache::assert_regnum): Likewise.
12833         (regcache::num_raw_registers): Likewise.
12834         * regcache.h (reg_buffer): New class.
12835         (regcache): Inherit reg_buffer.
12836
12837 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
12838
12839         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
12840         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
12841
12842 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
12843
12844         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
12845
12846 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
12847
12848         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
12849         (SFILES): Remove common/*.c files.
12850         (COMMON_OBS): Remove some *.o files built from common/*.c files.
12851         * common/common.host: Add common reference.
12852         * configure.ac: Likewise.
12853         * configure: Regenerate.
12854
12855 2018-02-16  Yao Qi  <yao.qi@linaro.org>
12856
12857         * block.c (block_namespace_info): Inherit allocate_on_obstack.
12858         (block_initialize_namespace): Use new.
12859         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
12860         (dwarf2_free_objfile): Use delete.
12861         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
12862         (copy_type_recursive): Use new.
12863         * gdb_obstack.h (allocate_on_obstack): New.
12864
12865 2018-02-15  Yao Qi  <yao.qi@linaro.org>
12866
12867         PR gdb/22849
12868         * inferior.c (exit_inferior_1): Reset inf->control.
12869
12870 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
12871
12872         * ada-lang.c (ada_to_fixed_value_create): Delete advance
12873         declaration.
12874
12875 2018-02-14  Pedro Alves  <palves@redhat.com>
12876
12877         * frame-unwind.c (frame_unwind_try_unwinder): Always call
12878         frame_cleanup_after_sniffer on exception.
12879
12880 2018-02-14  Tom Tromey  <tom@tromey.com>
12881
12882         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
12883         const.
12884         (solib_bfd_open): Make pathname const.
12885         * solib.c (solib_bfd_open): Make pathname const.
12886         * solib-spu.c (spu_bfd_fopen): Make name const.
12887         (spu_bfd_open): Make pathname const.
12888         * solib-darwin.c (darwin_bfd_open): Make pathname const.
12889         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
12890
12891 2018-02-14  Tom Tromey  <tom@tromey.com>
12892
12893         * symfile.c (symfile_bfd_open): Update.
12894         * source.h (openp, source_full_path_of, find_and_open_source):
12895         Change argument type to unique_xmalloc_ptr.
12896         * source.c (openp): Take a unique_xmalloc_ptr.
12897         (source_full_path_of, find_and_open_source): Likewise.
12898         (open_source_file, symtab_to_fullname): Update.
12899         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
12900         unique_xmalloc_ptr.
12901         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
12902         (exec_file_find): Update.
12903         * psymtab.c (psymtab_to_fullname): Update.
12904         * nto-tdep.h (nto_find_and_open_solib): Update.
12905         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
12906         unique_xmalloc_ptr.
12907         * exec.c (exec_file_attach): Update.
12908         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
12909         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
12910
12911 2018-02-14  Tom Tromey  <tom@tromey.com>
12912
12913         * solib.c: Include source.h.
12914         * nto-tdep.c: Include source.h.
12915         * mi/mi-cmd-env.c: Include source.h.
12916         * infcmd.c: Include source.h.
12917         * exec.c: Include source.h.
12918         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
12919         (add_path, directory_switch, source_path, init_source_path): Move
12920         declarations...
12921         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
12922         (add_path, directory_switch, source_path, init_source_path):
12923         ...here.
12924
12925 2018-02-14  Tom Tromey  <tom@tromey.com>
12926
12927         * solist.h (exec_file_find, solib_find): Return
12928         unique_xmalloc_ptr.
12929         (solib_bfd_fopen): Take a const char *.
12930         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
12931         (exec_file_find, solib_find): Likewise.
12932         (solib_bfd_fopen): Do not take ownership of "pathname".
12933         (solib_bfd_open): Use unique_xmalloc_ptr.
12934         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
12935         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
12936         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
12937         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
12938
12939 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
12940
12941         * ada-lang.c (name_match_type_from_name): Remove reference to
12942         ada_name_for_lookup in function's documentation.
12943         * ada-lang.h (ada_name_for_lookup): Delete declaration.
12944
12945 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
12946
12947         * defs.h (enum openp_flags): New enum.
12948         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
12949         Move to enum openp_flags.
12950         (openp_flags): New enum flags.
12951         (openp): Change parameter type to openp_flags.
12952         * source.c (openp): Change parameter type to openp_flags.
12953         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
12954         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
12955
12956 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
12957
12958         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
12959         per-command.
12960
12961 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12962
12963         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
12964         into...
12965         (class dwarf2_queue_guard): ...the destructor of this new class.
12966         (dw2_do_instantiate_symtab): Create instance of the new class
12967         dwarf2_queue_guard, remove cleanup.
12968
12969 2018-02-09  Tom Tromey  <tom@tromey.com>
12970
12971         * source.c (find_source_lines): Don't reference past the end of
12972         the vector.
12973
12974 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12975
12976         * remote.c (remote_btrace_maybe_reopen): Change error message.
12977         * btrace.c (btrace_enable): Likewise.
12978         (parse_xml_btrace): Likewise.
12979         (parse_xml_btrace_conf): Likewise.
12980
12981 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12982
12983         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
12984         (linux_enable_pt, linux_enable_bts): Call
12985         diagnose_perf_event_open_fail.
12986
12987 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12988
12989         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
12990         Remove parameter and change return type.  Update callers.  Move it.
12991         (linux_enable_bts, linux_enable_pt): Improve error message.
12992         (linux_enable_pt): Remove zero buffer size check.
12993         (linux_enable_btrace): Improve error messages.  Remove NULL return
12994         check.
12995
12996 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12997
12998         * btrace.c (btrace_enable): Remove target_supports_btrace call.
12999         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13000         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13001         (linux_supports_pt, linux_supports_btrace): Remove.
13002         (linux_enable_bts): Call cpu_supports_bts.
13003         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13004         * remote.c (remote_supports_btrace): Remove.
13005         (init_remote_ops): Remove remote_supports_btrace.
13006         * target-delegates.c: Regenerated.
13007         * target.c (target_supports_btrace): Remove.
13008         * target.h (target_ops) <to_supports_btrace>: Remove
13009         (target_supports_btrace): Remove.
13010         * x86-linux-nat.c (x86_linux_create_target): Remove
13011         linux_supports_btrace.
13012
13013 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13014
13015         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13016         btrace failed.
13017         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13018         exception and use message in own exception.
13019
13020 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13021
13022         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13023         (perf_event_pt_event_type): Use gdb_file_up.
13024         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13025         scoped_fd, and scoped_mmap.
13026
13027 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13028
13029         * common/scoped_mmap.h: New.
13030         * unittests/scoped_mmap-selftest.c: New.
13031         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13032         unittests/scoped_mmap-selftest.c.
13033
13034 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13035
13036         * common/scoped_fd.h: New.
13037         * unittests/scoped_fd-selftest.c: New.
13038         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13039         unittests/scoped_fd-selftest.c.
13040
13041 2018-02-09  Tom Tromey  <tom@tromey.com>
13042
13043         * auto-load.c (auto_load_section_scripts): Use
13044         gdb::unique_xmalloc_ptr.
13045
13046 2018-02-09  Tom Tromey  <tom@tromey.com>
13047
13048         * auto-load.c (execute_script_contents): Use std::string.
13049
13050 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13051
13052         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13053         Python function, rather than a new command.
13054
13055 2018-02-08  Tom Tromey  <tom@tromey.com>
13056
13057         * solib.c (solib_find_1): Use std::string.
13058         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13059
13060 2018-02-08  Tom Tromey  <tom@tromey.com>
13061
13062         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13063
13064 2018-02-08  Tom Tromey  <tom@tromey.com>
13065
13066         * source.c (find_source_lines): Use gdb::def_vector.
13067
13068 2018-02-08  Tom Tromey  <tom@tromey.com>
13069
13070         * macrocmd.c (struct temporary_macro_definition): New.
13071         (macro_define_command): Use temporary_macro_definition.  Remove
13072         cleanups.
13073         (free_macro_definition_ptr): Remove.
13074
13075 2018-02-08  Tom Tromey  <tom@tromey.com>
13076
13077         * macroexp.c (maybe_expand): Use std::string.
13078
13079 2018-02-08  Tom Tromey  <tom@tromey.com>
13080
13081         * macroexp.c (struct macro_buffer): Add initializers for some
13082         members.
13083         (init_buffer, init_shared_buffer, free_buffer)
13084         (free_buffer_return_text): Remove.
13085         (macro_buffer): New constructors.
13086         (~macro_buffer): New destructor.
13087         (macro_buffer::set_shared): New method.
13088         (macro_buffer::resize_buffer, macro_buffer::appendc)
13089         (macro_buffer::appendmem): Now methods, not free functions.
13090         (set_token, append_tokens_without_splicing, stringify)
13091         (macro_stringify): Update.
13092         (gather_arguments): Change return type.  Remove argc_p argument,
13093         add args_ptr argument.  Use std::vector.
13094         (substitute_args): Remove argc argument.  Accept std::vector.
13095         (expand): Update.  Use std::vector.
13096         (scan, macro_expand, macro_expand_next): Update.
13097
13098 2018-02-08  Tom Tromey  <tom@tromey.com>
13099
13100         * symtab.c (default_collect_symbol_completion_matches_break_on):
13101         Use unique_xmalloc_ptr.
13102         * macroscope.h: (sal_macro_scope, user_macro_scope)
13103         (default_macro_scope): Return unique_xmalloc_ptr.
13104         * macroscope.c (sal_macro_scope, user_macro_scope)
13105         (default_macro_scope): Return unique_xmalloc_ptr.
13106         * macroexp.h (macro_expand, macro_expand_once): Return
13107         unique_xmalloc_ptr.
13108         * macroexp.c (macro_expand, macro_expand_once): Return
13109         unique_xmalloc_ptr.
13110         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13111         (info_macro_command, info_macros_command): Use
13112         unique_xmalloc_ptr.
13113         * compile/compile-c-support.c (write_macro_definitions): Use
13114         unique_xmalloc_ptr.
13115         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13116
13117 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13118
13119         * value.c (value_static_field): Assign field type instead of
13120         containing type when returning an optimized out value.
13121
13122 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13123
13124         * ft32-tdep.c (ft32_read_pc): Remove.
13125         (ft32_write_pc): Remove.
13126         (ft32_gdbarch_init): Update.
13127         * m32r-tdep.c (m32r_read_pc): Remove.
13128         (m32r_gdbarch_init): Update.
13129         * mep-tdep.c (mep_read_pc): Remove.
13130         (mep_gdbarch_init): Update.
13131         * microblaze-tdep.c (microblaze_write_pc): Remove.
13132         (microblaze_gdbarch_init): Update.
13133         * mn10300-tdep.c (mn10300_read_pc): Remove.
13134         (mn10300_write_pc): Remove.
13135         (mn10300_gdbarch_init): Update.
13136         * moxie-tdep.c (moxie_read_pc): Remove.
13137         (moxie_write_pc): Remove.
13138         (moxie_gdbarch_init): Update.
13139
13140 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13141
13142         * expprint.c (print_subexp_standard): Handle
13143         OP_F77_UNDETERMINED_ARGLIST.
13144         (dump_subexp_body_standard): Likewise.
13145
13146 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13147
13148         * target-descriptions.c (tdesc_element_visitor) Add empty
13149         implementations.
13150         (tdesc_type): Move make_gdb_type from here.
13151         (tdesc_type_builtin): Likewise.
13152         (tdesc_type_vector): Likewise.
13153         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13154         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13155         (make_gdb_type_union): Likewise.
13156         (make_gdb_type_flags): Likewise.
13157         (make_gdb_type_enum): Likewise.
13158         (make_gdb_type): New function.
13159         (tdesc_register_type): Use static make_gdb_type.
13160
13161 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13162
13163         * infcmd.c (default_print_one_register_info): Align natural-format
13164         column values consistently one under another.
13165         (pad_to_column): New function.
13166
13167 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13168
13169         * dwarf2read.c (dwarf2_physname): Move commment.
13170
13171 2018-02-01  Leszek Swirski  <leszeks@google.com>
13172
13173         * varobj.c (varobj_formatted_print_options): Allow recursive
13174         pretty printing if pretty printing is enabled.
13175
13176 2018-02-01  Leszek Swirski  <leszeks@google.com>
13177
13178         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13179         names after a structop as a filename.
13180
13181 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13182
13183         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13184         (arm_record_coproc_data_proc): Likewise.
13185
13186 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13187
13188         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13189
13190 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13191
13192         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13193         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13194
13195 2018-01-31  Pedro Alves  <palves@redhat.com>
13196
13197         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13198         * inflow.c (child_terminal_save_inferior): Wrap reference to
13199         tcgetpgrp in HAVE_TERMIOS_H.
13200         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13201         _WIN32.
13202         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13203         always iterate over all inferiors.
13204         (gdbsim_cntrl_c): Adjust.
13205         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13206
13207 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13208
13209         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13210         index type is objfile-owned if the element type is as well.
13211
13212 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13213
13214         GDB 8.1 released.
13215
13216 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13217
13218         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13219         "features/s390x-linux64.c".
13220         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13221         s390_linux32 and s390x_linux64.
13222         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13223         default tdesc.
13224         * s390-tdep.c: Include "features/s390-linux32.c" and
13225         "features/s390x-linux64.c".
13226         (s390_tdesc_valid): Add check for tdesc_has_registers.
13227         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13228         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13229         tdesc_s390x_linux64.
13230         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13231         tdesc_s390x_linux64 to...
13232         * s390-tdep.h: ...here.
13233
13234 2018-01-30  Pedro Alves  <palves@redhat.com>
13235
13236         PR gdb/13211
13237         * config.in, configure: Regenerate.
13238         * configure.ac: Check for getpgid.
13239         * go32-nat.c (go32_pass_ctrlc): New.
13240         (go32_target): Install it.
13241         * inf-child.c (inf_child_target): Install
13242         child_terminal_save_inferior, child_pass_ctrlc and
13243         child_interrupt.
13244         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13245         (inf_ptrace_target): No longer install it.
13246         * infcmd.c (interrupt_target_1): Adjust.
13247         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13248         (child_interrupt): Declare.
13249         (inferior::terminal_state): New.
13250         * inflow.c (struct terminal_info): Update comments.
13251         (inferior_process_group): Delete.
13252         (terminal_is_ours): Delete.
13253         (gdb_tty_state): New.
13254         (child_terminal_init): Adjust.
13255         (is_gdb_terminal, sharing_input_terminal_1)
13256         (sharing_input_terminal): New functions.
13257         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13258         Set the process's actual process group in the foreground if
13259         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13260         mark terminal as the inferior's if not sharing GDB's terminal.
13261         Don't check attach_flag.
13262         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13263         pass down a target_terminal_state.
13264         (child_terminal_save_inferior): New, factored out from ...
13265         (child_terminal_ours_1): ... this.  Handle
13266         target_terminal_state::is_ours_for_output.
13267         (child_interrupt, child_pass_ctrlc): New.
13268         (inflow_inferior_exit): Clear the inferior's terminal_state.
13269         (copy_terminal_info): Copy the inferior's terminal state.
13270         (_initialize_inflow): Remove reference to terminal_is_ours.
13271         * inflow.h (inferior_process_group): Delete.
13272         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13273         * procfs.c (procfs_target): Don't install procfs_interrupt.
13274         (procfs_interrupt): Delete.
13275         * remote.c (remote_serial_quit_handler): Adjust.
13276         (remote_interrupt): Remove ptid parameter.  Adjust.
13277         * target-delegates.c: Regenerate.
13278         * target.c: Include "terminal.h".
13279         (target_terminal::terminal_state): Rename to ...
13280         (target_terminal::m_terminal_state): ... this.
13281         (target_terminal::init): Adjust.
13282         (target_terminal::inferior): Adjust to per-inferior
13283         terminal_state.
13284         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13285         (target_terminal::ours, target_terminal::ours_for_output): Use
13286         target_terminal_is_ours_kind.
13287         (target_interrupt): Remove ptid parameter.  Adjust.
13288         (default_target_pass_ctrlc): Adjust.
13289         * target.h (target_ops::to_terminal_save_inferior): New field.
13290         (target_ops::to_interrupt): Remove ptid_t parameter.
13291         (target_interrupt): Remove ptid_t parameter.  Update comment.
13292         (target_pass_ctrlc): Update comment.
13293         * target/target.h (target_terminal_state): New scoped enum,
13294         factored out of ...
13295         (target_terminal::terminal_state): ... here.
13296         (target_terminal::inferior): Update comments.
13297         (target_terminal::restore_inferior): New.
13298         (target_terminal::is_inferior, target_terminal::is_ours)
13299         (target_terminal::is_ours_for_output): Adjust.
13300         (target_terminal::scoped_restore_terminal_state): Adjust to
13301         rename, and call restore_inferior() instead of inferior().
13302         (target_terminal::scoped_restore_terminal_state::m_state): Change
13303         type.
13304         (target_terminal::terminal_state): Rename to ...
13305         (target_terminal::m_terminal_state): ... this and change type.
13306
13307 2018-01-30  Pedro Alves  <palves@redhat.com>
13308
13309         * linux-nat.c (wait_for_signal): New function.
13310         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13311         directly.
13312         (async_terminal_is_ours)
13313         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13314         (linux_nat_add_target): Don't override
13315         to_terminal_inferior/to_terminal_ours.
13316
13317 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13318
13319         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13320
13321 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13322
13323         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13324         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13325         dwarf2_per_objfile_free here.
13326         (dwarf2_per_objfile_free): Remove.
13327         (_initialize_dwarf2_read): Don't register
13328         dwarf2_per_objfile_free as a registry cleanup.
13329
13330 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13331
13332         Avoid compilation errors in MinGW native builds
13333
13334         The error is triggered by including python-internal.h, and the
13335         error message is:
13336
13337              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13338                       from build-gnulib/import/math.h:27,
13339                       from d:/usr/Python26/include/pyport.h:235,
13340                       from d:/usr/Python26/include/Python.h:58,
13341                       from python/python-internal.h:94,
13342                       from python/py-arch.c:24:
13343              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13344         using ::hypot;
13345                 ^~~~~
13346
13347         This happens because Python headers define 'hypot' to expand t
13348         '_hypot' in the Windows builds.
13349         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13350         'hypoth'.  This avoids a compilation error.
13351
13352 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13353
13354         * MAINTAINERS (Write After Approval): Fix ordering.
13355
13356 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13357
13358         * MAINTAINERS (Write After Approval): Add Alan Hayward.
13359
13360 2018-01-26  Alan Modra  <amodra@gmail.com>
13361
13362         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
13363         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
13364         Remove nop.  Make const.  Comment.
13365         (powerpc32_plt_stub_so_2): New.
13366         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
13367         Correct count.  Update uses.
13368         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
13369         Move common code reading PLT entry word.  Correct
13370         powerpc32_plt_stub PLT address calculation.
13371         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
13372         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
13373         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
13374         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
13375         (ppc64_standard_linkage8): Likewise.
13376         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
13377         Correct insns description.
13378         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
13379
13380 2018-01-24  Pedro Alves  <palves@redhat.com>
13381
13382         GCC PR libstdc++/83906
13383         * gdbtypes.c (operator==(const dynamic_prop &,
13384         const dynamic_prop &)): New.
13385         (operator==(const range_bounds &, const range_bounds &)): New.
13386         (check_types_equal): Use them instead of memcmp.
13387         * gdbtypes.h (operator==(const dynamic_prop &,
13388         const dynamic_prop &)): Declare.
13389         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
13390         (operator==(const range_bounds &, const range_bounds &)): Declare.
13391         (operator!=(const range_bounds &, const range_bounds &)): Declare.
13392
13393 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13394
13395         * s390-linux-tdep.c (s390_record_address_mask)
13396         (s390_record_calc_disp_common, s390_record_calc_disp)
13397         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13398         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13399         (s390_process_record): Move to s390-tdep.c.
13400         (s390_linux_init_abi_any): Adjust.
13401         * s390-tdep.c (s390_record_address_mask)
13402         (s390_record_calc_disp_common, s390_record_calc_disp)
13403         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13404         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13405         (s390_process_record): Moved from s390-linux-tdep.c
13406         (s390_gdbarch_init): Adjust.
13407
13408 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13409
13410         * s390-linux-nat.c (s390-tdep.h): New include.
13411         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
13412         (HFILES_NO_SRCDIR): Add s390-tdep.h.
13413         (ALLDEPFILES): Add s390-tdep.c.
13414         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
13415         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
13416         * s390-tdep.h: ...this.  New file.
13417         * s390-linux-tdep.c (s390-tdep.h): New include.
13418         (_initialize_s390_tdep): Rename to...
13419         (_initialize_s390_linux_tdep): ...this and adjust.
13420         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
13421         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
13422         s390-tdep.h.
13423         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
13424         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
13425         (s390_is_partial_instruction, s390_software_single_step)
13426         (is_non_branch_ril, s390_displaced_step_copy_insn)
13427         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
13428         (s390_prologue_data, s390_addr, s390_store, s390_load)
13429         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
13430         (s390_register_call_saved, s390_guess_tracepoint_registers)
13431         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
13432         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
13433         (s390_pseudo_register_name, s390_pseudo_register_type)
13434         (s390_pseudo_register_read, s390_pseudo_register_write)
13435         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
13436         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
13437         (s390_addr_bits_remove, s390_address_class_type_flags)
13438         (s390_address_class_type_flags_to_name)
13439         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
13440         (s390_function_arg_float, s390_function_arg_vector)
13441         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
13442         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
13443         (s390_frame_align, s390_register_return_value, s390_return_value)
13444         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
13445         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
13446         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
13447         (s390_trad_frame_prev_register, s390_unwind_cache)
13448         (s390_prologue_frame_unwind_cache)
13449         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
13450         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
13451         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
13452         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
13453         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
13454         (s390_frame_base_address, s390_local_base_address)
13455         (s390_frame_base, s390_gcc_target_options)
13456         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
13457         (s390_validate_reg_range, s390_tdesc_valid)
13458         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
13459         * s390-tdep.c: ...this.  New file.
13460
13461 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13462
13463         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
13464         (s390_process_record, s390_gdbarch_tdep_alloc)
13465         (s390_linux_init_abi_any): Use/set new hook.
13466
13467 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13468
13469         * s390-linux-tdep.c (osabi.h): New include.
13470         (s390_linux_init_abi_31, s390_linux_init_abi_64)
13471         (s390_linux_init_abi_any): New functions.
13472         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
13473
13474 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13475
13476         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
13477         tdesc_has_registers check
13478
13479 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13480
13481         * s390-linux-tdep.c (s390_tdesc_valid): New function.
13482         (s390_validate_reg_range): New macro.
13483         (s390_gdbarch_init): Adjust.
13484
13485 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13486
13487         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
13488         (s390_gdbarch_tdep_alloc): Adjust.
13489         (s390_gdbarch_init): Adjust.
13490
13491 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13492
13493         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
13494         <have_tdb>: Change type to bool.
13495         (s390_gdbarch_tdep_alloc): Adjust.
13496         (s390_gdbarch_init): Adjust.
13497
13498 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13499
13500         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
13501         (gdbarch_tdep) <have_upper, have_vx>: New fields.
13502         (s390_gdbarch_tdep_alloc): New function.
13503         (s390_gdbarch_init): Allocate tdep at start and use its fields
13504         instead of separate variables.
13505
13506 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13507
13508         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
13509         when looking for cached gdbarch and add comment for remaining.
13510
13511 2018-01-22  Pedro Alves  <palves@redhat.com>
13512             Sergio Durigan Junior  <sergiodj@redhat.com>
13513
13514         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
13515         case.
13516
13517 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
13518
13519         * MAINTAINERS: Update my company e-mail address.
13520
13521 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13522
13523         * regcache.c (cooked_write_test): New function.
13524         (_initialize_regcache): Register the test.
13525
13526 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13527
13528         * ia64-tdep.c (ia64_pseudo_register_read): Call
13529         regcache->cooked_read instead of regcache_cooked_read_unsigned.
13530         * m32c-tdep.c (m32c_cat_read): Likewise.
13531         (m32c_r3r2r1r0_read): Likewise.
13532         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13533         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13534
13535 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13536
13537         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
13538         method raw_read instead of regcache_raw_read.
13539         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13540         * arm-tdep.c (arm_neon_quad_read): Likewise.
13541         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13542         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13543         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13544         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
13545         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13546         (i386_pseudo_register_read_into_value): Likewise.
13547         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13548         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13549         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13550         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
13551         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
13552         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
13553         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13554         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
13555         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
13556
13557 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13558
13559         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
13560         * configure.tgt: Remove target mt.
13561         * mt-tdep.c: Remove.
13562         * regcache.c (cooked_read_test): Remove the check for mt.
13563
13564 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13565
13566         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
13567         instead of gdbarch_pseudo_register_read_value.
13568
13569 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13570
13571         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
13572         language is Ada.
13573
13574 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13575
13576         * linespec.c (create_sals_line_offset): Remove code that preserved
13577         the symtab_and_line's line number.
13578
13579 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13580
13581         * varobj.c (varobj_create): Don't set valid_block when creating a
13582         floating varobj.
13583
13584 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13585
13586         * varobj.c (varobj_create): Remove out of date comment.
13587
13588 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13589
13590         PR mi/20395
13591         * ada-exp.y (write_var_from_sym): Pass extra parameter when
13592         updating innermost block.
13593         * parse.c (innermost_block_tracker::update): Take extra type
13594         parameter, and check types match before updating innermost block.
13595         (write_dollar_variable): Update innermost block for registers.
13596         * parser-defs.h (enum innermost_block_tracker_type): New enum.
13597         (innermost_block_tracker::innermost_block_tracker): Initialise
13598         m_types member.
13599         (innermost_block_tracker::reset): Take type parameter.
13600         (innermost_block_tracker::update): Take type parameter, and pass
13601         type through as needed.
13602         (innermost_block_tracker::m_types): New member.
13603         * varobj.c (varobj_create): Pass type when reseting innermost
13604         block.
13605
13606 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13607
13608         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
13609         * ada-lang.c (resolve_subexp): Likewise.
13610         * breakpoint.c (set_breakpoint_condition) Likewise.
13611         (watch_command_1) Likewise.
13612         * c-exp.y (variable): Likewise.
13613         * d-exp.y (PrimaryExpression): Likewise.
13614         * f-exp.y (variable): Likewise.
13615         * go-exp.y (variable): Likewise.
13616         * m2-exp.y (variable): Likewise.
13617         * objfiles.c (objfile::~objfile): Likewise.
13618         * p-exp.y (variable): Likewise.
13619         * parse.c (innermost_block): Change type.
13620         * parser-defs.h (class innermost_block_tracker): New.
13621         (innermost_block): Change to innermost_block_tracker.
13622         * printcmd.c (display_command): Switch to innermost_block API.
13623         (do_one_display): Likewise.
13624         * rust-exp.y (do_one_display): Likewise.
13625         * symfile.c (clear_symtab_users): Likewise.
13626         * varobj.c (varobj_create): Switch to innermost_block API, replace
13627         use of innermost_block with block stored on varobj object.
13628
13629 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13630
13631         * expression.h (innermost_block): Remove declaration.
13632         * varobj.c: Add 'parser-defs.h' include.
13633
13634 2018-01-19  Tom Tromey  <tom@tromey.com>
13635
13636         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
13637         symbols in the static and global blocks.
13638
13639 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
13640
13641         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
13642         gdb_ptrace.h, and move including gdb_wait.h ...
13643         * nat/linux-ptrace.h: ... to here.
13644
13645 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13646
13647         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
13648         inf_ptrace_detach_success.
13649         (inf_ptrace_detach_success): Add inferior parameter, use it
13650         instead of inferior_ptid, pass it to detach_inferior.
13651         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
13652         parameter.
13653         * inferior.c (detach_inferior): Add overload that takes an
13654         inferior object.
13655         * inferior.h (detach_inferior): Likewise.
13656         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
13657         use inferior_ptid, adjust call to inf_ptrace_detach_success.
13658         * linux-thread-db.c (thread_db_detach): Use inf parameter.
13659
13660 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13661
13662         * target.h (struct target_ops) <to_detach>: Add inferior
13663         parameter.
13664         (target_detach): Likewise.
13665         * target.c (dispose_inferior): Pass inferior down.
13666         (target_detach): Pass inferior down.  Assert that it is equal to
13667         the current inferior.
13668         * aix-thread.c (aix_thread_detach): Pass inferior down.
13669         * corefile.c (core_file_command): Pass current_inferior() down.
13670         * corelow.c (core_detach): Add inferior parameter.
13671         * darwin-nat.c (darwin_detach): Likewise.
13672         * gnu-nat.c (gnu_detach): Likewise.
13673         * inf-ptrace.c (inf_ptrace_detach): Likewise.
13674         * infcmd.c (detach_command): Pass current_inferior() down to
13675         target_detach.
13676         * infrun.c (follow_fork_inferior): Pass parent_inf to
13677         target_detach.
13678         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
13679         target_detach.
13680         * linux-nat.c (linux_nat_detach): Add inferior parameter.
13681         * linux-thread-db.c (thread_db_detach): Likewise.
13682         * nto-procfs.c (procfs_detach): Likewise.
13683         * procfs.c (procfs_detach): Likewise.
13684         * record.c (record_detach): Likewise.
13685         * record.h (struct inferior): Forward-declare.
13686         (record_detach): Add inferior parameter.
13687         * remote-sim.c (gdbsim_detach): Likewise.
13688         * remote.c (remote_detach_1): Likewise.
13689         (remote_detach): Likewise.
13690         (extended_remote_detach): Likewise.
13691         * sol-thread.c (sol_thread_detach): Likewise.
13692         * target-debug.h (target_debug_print_inferior_p): New macro.
13693         * target-delegates.c: Re-generate.
13694         * top.c (kill_or_detach): Pass inferior down to target_detach.
13695         * windows-nat.c (windows_detach): Add inferior parameter.
13696
13697 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13698
13699         * target.h (struct target_ops) <to_detach>: Remove args
13700         parameter.
13701         (target_detach): Likewise.
13702         * target.c (dispose_inferior): Adjust.
13703         (target_detach): Remove args parameter, adjust.
13704         * aix-thread.c (aix_thread_detach): Adjust.
13705         * corefile.c (core_file_command): Adjust.
13706         * corelow.c (core_detach): Adjust.
13707         * darwin-nat.c (darwin_detach): Adjust.
13708         * gnu-nat.c (gnu_detach): Adjust.
13709         * inf-ptrace.c (inf_ptrace_detach): Adjust.
13710         * infcmd.c (detach_command): Adjust
13711         * infrun.c (follow_fork_inferior): Adjust.
13712         (handle_vfork_child_exec_or_exit): Adjust.
13713         * linux-fork.c (linux_fork_detach): Remove args parameter.
13714         * linux-fork.h (linux_fork_detach): Likewise.
13715         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
13716         * linux-thread-db.c (thread_db_detach): Likewise.
13717         * nto-procfs.c (procfs_detach): Likewise.
13718         * procfs.c (procfs_detach): Likewise.
13719         (do_detach): Remove signo parameter.
13720         * record.c (record_detach): Remove args parameter.
13721         * record.h (record_detach): Likewise.
13722         * remote-sim.c (gdbsim_detach): Likewise.
13723         * remote.c (remote_detach_1): Likewise.
13724         (remote_detach): Likewise.
13725         (extended_remote_detach): Likewise.
13726         * sol-thread.c (sol_thread_detach): Likewise.
13727         * target-delegates.c: Re-generate.
13728         * top.c (struct qt_args) <args>: Remove field.
13729         (kill_or_detach): Don't pass args.
13730         (quit_force): Don't set args.
13731         * windows-nat.c (windows_detach): Remove args parameter.
13732
13733 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13734
13735         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
13736         (arm_linux_init_abi): Install it.
13737
13738 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13739
13740         * osabi.c (gdb_osabi_names): Extend the regexp for
13741         arm-linux-gnueabihf.
13742
13743 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13744
13745         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
13746         m_abbrevs.
13747         (abbrev_table::add_abbrev): Update.
13748         (abbrev_table::lookup_abbrev): Update.
13749
13750 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13751
13752         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
13753
13754 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
13755
13756         * compile/compile.c (compile_to_object): Convert "triplet_rx"
13757         to "std::string".
13758
13759 2018-01-17  Tom Tromey  <tom@tromey.com>
13760
13761         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
13762
13763 2018-01-17  Tom Tromey  <tom@tromey.com>
13764
13765         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
13766         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
13767         (create_array_type_with_stride): Update.
13768         * dwarf2read.c (set_die_type): Update.
13769
13770 2018-01-17  Tom Tromey  <tom@tromey.com>
13771
13772         * dwarf2read.c (delayed_method_info): Remove typedef.
13773         (dwarf2_cu::method_info): Now a std::vector.
13774         (add_to_method_list): Update.
13775         (free_delayed_list): Remove.
13776         (compute_delayed_physnames): Update.
13777         (process_full_comp_unit, process_full_type_unit): Clear the method
13778         list.  Remove cleanups.
13779         (psymtab_include_file_name): Add name_holder parameter.  Use
13780         unique_xmalloc_ptr.
13781         (dwarf_decode_lines): Update.
13782
13783 2018-01-17  Tom Tromey  <tom@tromey.com>
13784             Simon Marchi  <simon.marchi@ericsson.com>
13785
13786         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
13787         (dwarf2_per_objfile::free_cached_comp_units)
13788         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13789         (init_cutu_and_read_dies_no_follow): Update.
13790         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
13791         (dwarf2_cu::~dwarf2_cu): New.
13792         (free_heap_comp_unit, free_stack_comp_unit): Remove.
13793         (age_cached_comp_units, free_one_cached_comp_unit): Update.
13794
13795 2018-01-17  Tom Tromey  <tom@tromey.com>
13796             Simon Marchi  <simon.marchi@ericsson.com>
13797
13798         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
13799         (struct die_reader_specs) <abbrev_table>: New member.
13800         (struct abbrev_table): Add constructor.
13801         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
13802         <abbrev_obstack>: Now an auto_obstack.
13803         (abbrev_table_up): New typedef.
13804         (init_cu_die_reader): Add abbrev_table parameter.
13805         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
13806         Add result_dwo_abbrev_table.
13807         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13808         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
13809         Update.
13810         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
13811         parameter.
13812         (skip_children): Update.
13813         (abbrev_table::alloc_abbrev): Rename from
13814         abbrev_table_alloc_abbrev.
13815         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
13816         (abbrev_table::lookup_abbrev): Rename from
13817         abbrev_table_lookup_abbrev.
13818         (abbrev_table_read_table): Return abbrev_table_up.
13819         (abbrev_table_free, abbrev_table_free_cleanup)
13820         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
13821         (load_partial_dies): Update.
13822
13823 2018-01-17  Tom Tromey  <tom@tromey.com>
13824
13825         * dwarf2read.c (dwarf2_compute_name): Update comment.
13826         (read_func_scope, read_variable): Update.
13827         (new_symbol): Remove.
13828         (new_symbol_full): Rename to new_symbol.
13829
13830 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
13831
13832         PR gdb/16577
13833         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
13834         a warning instead of throwing an error, set section size to 0 and return
13835         NULL.
13836         * gdb_bfd.h (gdb_bfd_map_section): Update description.
13837
13838 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13839
13840         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
13841         std::string.
13842         (linux_ptrace_attach_fail_reason_string): Likewise.
13843         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
13844         Likewise.
13845         (linux_ptrace_attach_fail_reason_string): Likewise.
13846         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
13847
13848 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13849
13850         * linux-nat.c (linux_nat_attach): Remove xstrdup.
13851
13852 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
13853
13854         PR gdb/21559
13855         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
13856         checking for fs_base/gs_base fields in struct user_regs_struct.
13857         * configure: Regenerate.
13858
13859 2018-01-17  Yao Qi  <yao.qi@linaro.org>
13860
13861         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
13862         function.
13863         (aarch64_linux_init_abi): Install it to gdbarch hook
13864         gcc_target_options.
13865
13866 2018-01-15  Pedro Alves  <palves@redhat.com>
13867
13868         * common/signals-state-save-restore.c
13869         (save_original_signals_state): Fix typos.
13870
13871 2017-01-12  Tom Tromey  <tom@tromey.com>
13872             Sergio Durigan Junior  <sergiodj@redhat.com>
13873
13874         * Makefile.in (install-only): Install gdb-add-index.
13875
13876 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
13877
13878         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
13879
13880 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13881
13882         * infrun.c (keep_going_pass_signal): Clear step-over info when
13883         insert_breakpoints fails.
13884
13885 2018-01-11  Pedro Alves  <palves@redhat.com>
13886
13887         PR gdb/22583
13888         * infrun.c (resume): Rename to ...
13889         (resume_1): ... this.
13890         (resume): Reimplement as wrapper around resume_1.
13891
13892 2018-01-11  Pedro Alves  <palves@redhat.com>
13893
13894         PR remote/22597
13895         * remote.c (remote_parse_stop_reply): Default to the last-set
13896         general thread instead of to 'magic_null_ptid'.
13897
13898 2018-01-10  Pedro Alves  <palves@redhat.com>
13899
13900         * language.h (language_get_symbol_name_matcher): Rename ...
13901         (get_symbol_name_matcher): ... this.
13902         * language.c (language_get_symbol_name_matcher): Ditto.
13903         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
13904         callers adjusted.
13905
13906 2018-01-10  Pedro Alves  <palves@redhat.com>
13907
13908         PR gdb/22670
13909         * dwarf2read.c
13910         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
13911         Adjust to use language_get_symbol_name_matcher instead of
13912         language_defn::la_get_symbol_name_matcher.
13913         * language.c (language_get_symbol_name_matcher): If in Ada mode
13914         and the lookup name is a verbatim match, return Ada's matcher.
13915         * language.h (language_get_symbol_name_matcher): Adjust comment.
13916         (ada_lookup_name_info::verbatim_p):: New method.
13917
13918 2018-01-10  Pedro Alves  <palves@redhat.com>
13919
13920         PR gdb/22670
13921         * ada-lang.c (ada_collect_symbol_completion_matches): If the
13922         minsym's language is language_auto or language_cplus, pass down
13923         language_ada instead.
13924         * symtab.c (compare_symbol_name): Don't frob symbol language here.
13925
13926 2018-01-10  Pedro Alves  <palves@redhat.com>
13927
13928         PR gdb/22670
13929         * minsyms.c (linkage_name_str): New function.
13930         (iterate_over_minimal_symbols): Use it.
13931
13932 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13933
13934         * NEWS: Document that 'info proc' now works on FreeBSD.
13935
13936 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13937
13938         * configure.ac: Check for kinfo_getfile in libutil.
13939         * configure: Regenerate.
13940         * config.in: Regenerate.
13941         * fbsd-nat.c: Include "fbsd-tdep.h".
13942         (fbsd_fetch_cmdline): New.
13943         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
13944         rather than calling error.
13945         (fbsd_info_proc): New.
13946         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
13947         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
13948         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
13949
13950 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13951
13952         * fbsd-nat.c (struct free_deleter): Remove.
13953         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
13954
13955 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13956
13957         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
13958         NULL for an empty pathname.
13959
13960 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13961
13962         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
13963         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
13964         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
13965         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
13966         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
13967         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
13968         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
13969         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
13970         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
13971         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
13972         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
13973         (fbsd_core_fetch_timeval, fbsd_print_sigset)
13974         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
13975         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
13976         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
13977
13978 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
13979
13980         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
13981         (gnu_xfer_auxv): New function.
13982         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
13983         TARGET_OBJECT_AUXV.
13984
13985 2018-01-08  Yao Qi  <yao.qi@linaro.org>
13986             Simon Marchi  <simon.marchi@ericsson.com>
13987
13988         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
13989         common/selftest.c.
13990         (COMMON_OBS): Remove selftest.o.
13991         * configure.ac: Append selftest-arch.c and common/selftest.c to
13992         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
13993         * configure: Re-generated.
13994         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
13995         GDB_SELF_TEST.
13996         (maintenance_info_selftests): Likewise.
13997
13998 2018-01-08  Xavier Roirand  <roirand@adacore.com>
13999
14000         * ada-valprint.c (val_print_packed_array_elements): Use
14001         proper number of elements when printing an array indexed
14002         by an enumeration type.
14003
14004 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14005
14006         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14007         (dw2_get_file_names_reader): Adjust.
14008         (lookup_dwo_signatured_type): Adjust.
14009         (lookup_dwp_signatured_type): Adjust.
14010         (lookup_signatured_type): Adjust.
14011         (create_type_unit_group): Adjust.
14012         (get_type_unit_group): Adjust.
14013         (process_psymtab_comp_unit_reader): Adjust.
14014         (build_type_psymtabs_reader): Adjust.
14015         (scan_partial_symbols): Adjust.
14016         (add_partial_symbol): Adjust.
14017         (add_partial_subprogram): Adjust.
14018         (peek_die_abbrev): Adjust.
14019         (fixup_go_packaging): Adjust.
14020         (process_imported_unit_die): Adjust.
14021         (dwarf2_compute_name): Adjust.
14022         (dwarf2_physname): Adjust.
14023         (read_import_statement): Adjust.
14024         (handle_DW_AT_stmt_list): Adjust.
14025         (read_file_scope): Adjust.
14026         (read_func_scope): Adjust.
14027         (read_lexical_block_scope): Adjust.
14028         (read_call_site_scope): Adjust.
14029         (read_variable): Adjust.
14030         (dwarf2_rnglists_process): Adjust.
14031         (dwarf2_ranges_process): Adjust.
14032         (dwarf2_ranges_read): Adjust.
14033         (dwarf2_get_pc_bounds): Adjust.
14034         (dwarf2_record_block_ranges): Adjust.
14035         (dwarf2_add_field): Adjust.
14036         (dwarf2_add_member_fn): Adjust.
14037         (read_structure_type): Adjust.
14038         (process_structure_scope): Adjust.
14039         (read_enumeration_type): Adjust.
14040         (read_array_type): Adjust.
14041         (mark_common_block_symbol_computed): Adjust.
14042         (read_common_block): Adjust.
14043         (read_namespace_type): Adjust.
14044         (read_namespace): Adjust.
14045         (read_module_type): Adjust.
14046         (read_tag_pointer_type): Adjust.
14047         (read_tag_ptr_to_member_type): Adjust.
14048         (read_tag_string_type): Adjust.
14049         (read_subroutine_type): Adjust.
14050         (read_typedef): Adjust.
14051         (read_base_type): Adjust.
14052         (attr_to_dynamic_prop): Adjust.
14053         (read_subrange_type): Adjust.
14054         (read_unspecified_type): Adjust.
14055         (dwarf2_read_abbrevs): Adjust.
14056         (load_partial_dies): Adjust.
14057         (read_partial_die): Adjust.
14058         (find_partial_die): Adjust.
14059         (guess_partial_die_structure_name): Adjust.
14060         (fixup_partial_die): Adjust.
14061         (read_attribute_value): Adjust.
14062         (read_addr_index): Adjust.
14063         (read_addr_index_from_leb128): Adjust.
14064         (read_str_index): Adjust.
14065         (dwarf2_string_attr): Adjust.
14066         (get_debug_line_section): Adjust.
14067         (dwarf_decode_line_header): Adjust.
14068         (lnp_state_machine::check_line_address): Adjust.
14069         (dwarf_decode_lines_1): Adjust.
14070         (dwarf_decode_lines): Adjust.
14071         (dwarf2_start_symtab): Adjust.
14072         (var_decode_location): Adjust.
14073         (new_symbol_full): Adjust.
14074         (dwarf2_const_value_data): Adjust.
14075         (dwarf2_const_value_attr): Adjust.
14076         (dwarf2_const_value): Adjust.
14077         (die_type): Adjust.
14078         (die_containing_type): Adjust.
14079         (build_error_marker_type): Adjust.
14080         (lookup_die_type): Adjust.
14081         (guess_full_die_structure_name): Adjust.
14082         (anonymous_struct_prefix): Adjust.
14083         (determine_prefix): Adjust.
14084         (dwarf2_name): Adjust.
14085         (follow_die_ref_or_sig): Adjust.
14086         (follow_die_offset): Adjust.
14087         (follow_die_ref): Adjust.
14088         (follow_die_sig_1): Adjust.
14089         (follow_die_sig): Adjust.
14090         (get_signatured_type): Adjust.
14091         (get_DW_AT_signature_type): Adjust.
14092         (decode_locdesc): Adjust.
14093         (dwarf_decode_macros): Adjust.
14094         (cu_debug_loc_section): Adjust.
14095         (fill_in_loclist_baton): Adjust.
14096         (dwarf2_symbol_mark_computed): Adjust.
14097         (init_one_comp_unit): Don't assign
14098         dwarf2_cu::dwarf2_per_objfile.
14099         (set_die_type): Adjust.
14100
14101 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14102
14103         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14104         <dwarf2_per_objfile>: New field.
14105         (dwarf2_per_objfile): Remove global.
14106         (get_dwarf2_per_objfile): New function.
14107         (set_dwarf2_per_objfile): New function.
14108         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14109         dwarf2_per_objfile.
14110         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14111         (read_abbrev_offset): Likewise.
14112         (read_indirect_string): Likewise.
14113         (read_indirect_line_string): Likewise.
14114         (read_indirect_string_at_offset): Likewise.
14115         (read_indirect_string_from_dwz): Likewise.
14116         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14117         dwarf2_per_objfile.
14118         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14119         (create_all_comp_units): Change objfile parameter to
14120         dwarf2_per_objfile.
14121         (create_all_type_units): Likewise.
14122         (process_queue): Add dwarf2_per_objfile parameter.
14123         (read_and_check_comp_unit_head): Likewise.
14124         (lookup_dwo_unit_in_dwp): Likewise.
14125         (get_dwp_file): Likewise.
14126         (process_cu_includes): Likewise.
14127         (struct free_dwo_file_cleanup_data): New struct.
14128         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14129         set_dwarf2_per_objfile.
14130         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14131         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14132         context, adjust calls.
14133         (dw2_instantiate_symtab): Likewise.
14134         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14135         (dw2_get_cu): Likewise.
14136         (create_cu_from_index_list): Change objfile parameter to
14137         dwarf2_per_objfile.
14138         (create_cus_from_index_list): Get dwarf2_per_objfile from
14139         context, adjust calls.
14140         (create_cus_from_index): Likewise.
14141         (create_signatured_type_table_from_index): Change objfile
14142         parameter to dwarf2_per_objfile.
14143         (create_signatured_type_table_from_debug_names): Change objfile
14144         parameter to dwarf2_per_objfile.
14145         (create_addrmap_from_index): Likewise.
14146         (create_addrmap_from_aranges): Likewise.
14147         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14148         (dw2_setup): Remove.
14149         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14150         context.
14151         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14152         get_dwarf2_per_objfile.
14153         (dw2_forget_cached_source_info): Likewise.
14154         (dw2_map_symtabs_matching_filename): Likewise.
14155         (struct dw2_symtab_iterator) <index>: Remove.
14156         <dwarf2_per_objfile>: New field.
14157         (dw2_symtab_iter_init): Replace index parameter with
14158         dwarf2_per_objfile.
14159         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14160         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14161         (dw2_print_stats): Likewise.
14162         (dw2_dump): Likewise.
14163         (dw2_expand_symtabs_for_function): Likewise.
14164         (dw2_expand_all_symtabs): Likewise.
14165         (dw2_expand_symtabs_with_fullname): Likewise.
14166         (dw2_expand_marked_cus): Replace index and objfile parameters
14167         with dwarf2_per_objfile.
14168         (dw_expand_symtabs_matching_file_matcher): Add
14169         dwarf2_per_objfile parameter and adjust calls.
14170         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14171         adjust calls.
14172         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14173         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14174         adjust calls.
14175         (create_cus_from_debug_names_list): Replace objfile parameter
14176         with dwarf2_per_objfile and adjust calls.
14177         (create_cus_from_debug_names): Likewise.
14178         (dwarf2_read_debug_names): Likewise.
14179         (mapped_debug_names::namei_to_name): Adjust call.
14180         (dw2_debug_names_iterator::next): Likewise.
14181         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14182         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14183         (dw2_debug_names_dump): Likewise.
14184         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14185         (dw2_debug_names_expand_symtabs_matching): Likewise.
14186         (dwarf2_initialize_objfile): Likewise.
14187         (dwarf2_build_psymtabs): Likewise.
14188         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14189         this_cu.
14190         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14191         (read_and_check_comp_unit_head): Likewise.
14192         (read_abbrev_offset): Likewise.
14193         (create_debug_type_hash_table): Likewise.
14194         (create_debug_types_hash_table): Likewise.
14195         (create_all_type_units): Replace objfile parameter with
14196         dwarf2_per_objfile.
14197         (add_type_unit): Add dwarf2_per_objfile parameter.
14198         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14199         with dwarf2_per_objfile.
14200         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14201         (lookup_dwp_signatured_type): Likewise.
14202         (lookup_signatured_type): Likewise.
14203         (read_cutu_die_from_dwo): Likewise.
14204         (init_tu_and_read_dwo_dies): Likewise.
14205         (init_cutu_and_read_dies): Likewise.
14206         (init_cutu_and_read_dies_no_follow): Likewise.
14207         (allocate_type_unit_groups_table): Add objfile parameter.
14208         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14209         (get_type_unit_group): Likewise.
14210         (process_psymtab_comp_unit): Update call.
14211         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14212         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14213         (print_tu_stats): Likewise.
14214         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14215         in void* parameter.
14216         (build_type_psymtabs): Change objfile parameter to
14217         dwarf2_per_objfile.
14218         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14219         passed in void* parameter.
14220         (process_skeletonless_type_units): Change objfile parameter to
14221         dwarf2_per_objfile.
14222         (set_partial_user): Likewise.
14223         (dwarf2_build_psymtabs_hard): Likewise.
14224         (read_comp_units_from_section): Likewise.
14225         (create_all_comp_units): Likewise.
14226         (scan_partial_symbols): Update calls.
14227         (add_partial_symbol): Likewise.
14228         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14229         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14230         (process_queue): Add dwarf2_per_objfile parameter.
14231         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14232         (compute_compunit_symtab_includes): Likewise.
14233         (process_cu_includes): Add dwarf2_per_objfile parameter.
14234         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14235         (process_full_type_unit): Likewise.
14236         (process_imported_unit_die): Update call.
14237         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14238         (read_file_scope): Likewise.
14239         (allocate_dwo_file_hash_table): Add objfile parameter.
14240         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14241         (create_cus_hash_table): Likewise.
14242         (create_dwp_hash_table): Likewise.
14243         (create_dwo_unit_in_dwp_v1): Likewise.
14244         (create_dwp_v2_section): Likewise.
14245         (create_dwo_unit_in_dwp_v2): Likewise.
14246         (lookup_dwo_unit_in_dwp): Likewise.
14247         (try_open_dwop_file): Likewise.
14248         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14249         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14250         cleanup to include a reference to dwarf2_per_objfile.
14251         (open_dwp_file): Add dwarf2_per_objfile parameter.
14252         (open_and_init_dwp_file): Likewise.
14253         (get_dwp_file): Likewise.
14254         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14255         (queue_and_load_all_dwo_tus): Update call.
14256         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14257         data.
14258         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14259         (dwarf2_ranges_process): Likewise.
14260         (dwarf2_get_pc_bounds): Likewise.
14261         (mark_common_block_symbol_computed): Likewise.
14262         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14263         (dwarf2_read_abbrevs): Update call.
14264         (read_partial_die): Use dwarf2_per_objfile from cu.
14265         (find_partial_die): Likewise.
14266         (fixup_partial_die): Likewise.
14267         (read_attribute_value): Likewise.
14268         (read_indirect_string_at_offset_from): Add objfile parameter.
14269         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14270         parameter.
14271         (read_indirect_string_from_dwz): Add objfile parameter.
14272         (read_indirect_string): Add objfile parameter.
14273         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14274         (read_addr_index): Use dwarf2_per_objfile from cu.
14275         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14276         call dw2_setup.
14277         (read_str_index): Use dwarf2_per_objfile from cu.
14278         (get_debug_line_section): Likewise.
14279         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14280         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14281         (new_symbol_full): Use dwarf2_per_objfile from cu.
14282         (build_error_marker_type): Likewise.
14283         (lookup_die_type): Likewise.
14284         (determine_prefix): Likewise.
14285         (follow_die_offset): Likewise.
14286         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14287         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14288         (dwarf2_fetch_die_type_sect_off): Likewise.
14289         (dwarf2_get_die_type): Likewise.
14290         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14291         (get_signatured_type): Likewise.
14292         (get_DW_AT_signature_type): Likewise.
14293         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14294         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14295         (cu_debug_loc_section): Likewise.
14296         (fill_in_loclist_baton): Likewise.
14297         (dwarf2_symbol_mark_computed): Likewise.
14298         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14299         dwarf2_per_objfile.
14300         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14301         parameter.
14302         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14303         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14304         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14305         (set_die_type): Use dwarf2_free_objfile from cu.
14306         (get_die_type_at_offset): Likewise.
14307         (dwarf2_per_objfile_free): Don't assign global variable.
14308         (debug_names) <constructor>: Add dwarf2_per_objfile
14309         parameter, update m_debugstrlookup construction.
14310         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14311         parameter.
14312         <m_dwarf2_per_objfile>: New field.
14313         <lookup>: Use m_dwarf2_per_objfile.
14314         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14315         (psyms_seen_size): Likewise.
14316         (write_gdbindex): Replace objfile parameter with
14317         dwarf2_per_objfile.
14318         (write_debug_names): Likewise.
14319         (write_psymtabs_to_index): Likewise.
14320         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14321         calls.
14322
14323 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14324
14325         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14326         <dwarf2_per_objfile>: New field.
14327         (struct dwarf2_per_cu_data) <objfile>: Remove.
14328         <dwarf2_per_objfile>: New field.
14329         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14330         of objfile.
14331         (create_signatured_type_table_from_index): Likewise.
14332         (create_debug_type_hash_table): Likewise.
14333         (fill_in_sig_entry_from_dwo_entry): Likewise.
14334         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14335         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14336         objfile.
14337         (create_partial_symtab): Access objfile through
14338         dwarf2_per_objfile.
14339         (process_psymtab_comp_unit_reader): Likewise.
14340         (read_comp_units_from_section): Likewise.
14341         (scan_partial_symbols): Likewise.
14342         (add_partial_symbol): Likewise.
14343         (add_partial_subprogram): Likewise.
14344         (peek_die_abbrev): Likewise.
14345         (fixup_go_packaging): Likewise.
14346         (process_full_comp_unit): Likewise.
14347         (process_full_type_unit): Likewise.
14348         (process_imported_unit_die): Likewise.
14349         (dwarf2_compute_name): Likewise.
14350         (dwarf2_physname): Likewise.
14351         (read_import_statement): Likewise.
14352         (create_cus_hash_table): Assign dwarf2_physname instead of
14353         objfile.
14354         (read_func_scope): Access objfile through dwarf2_per_objfile.
14355         (read_lexical_block_scope): Likewise.
14356         (read_call_site_scope): Likewise.
14357         (read_variable): Likewise.
14358         (dwarf2_rnglists_process): Likewise.
14359         (dwarf2_ranges_process): Likewise.
14360         (dwarf2_ranges_read): Likewise.
14361         (dwarf2_record_block_ranges): Likewise.
14362         (dwarf2_add_field): Likewise.
14363         (dwarf2_add_member_fn): Likewise.
14364         (read_structure_type): Likewise.
14365         (process_structure_scope): Likewise.
14366         (read_enumeration_type): Likewise.
14367         (read_array_type): Likewise.
14368         (read_common_block): Likewise.
14369         (read_namespace_type): Likewise.
14370         (read_namespace): Likewise.
14371         (read_module_type): Likewise.
14372         (read_tag_pointer_type): Likewise.
14373         (read_tag_ptr_to_member_type): Likewise.
14374         (read_tag_string_type): Likewise.
14375         (read_subroutine_type): Likewise.
14376         (read_typedef): Likewise.
14377         (read_base_type): Likewise.
14378         (attr_to_dynamic_prop): Likewise.
14379         (read_subrange_type): Likewise.
14380         (read_unspecified_type): Likewise.
14381         (load_partial_dies): Likewise.
14382         (read_partial_die): Likewise.
14383         (find_partial_die): Likewise.
14384         (guess_partial_die_structure_name): Likewise.
14385         (fixup_partial_die): Likewise.
14386         (read_attribute_value): Likewise.
14387         (read_addr_index_from_leb128): Likewise.
14388         (dwarf2_read_addr_index): Likewise.
14389         (dwarf2_string_attr): Likewise.
14390         (lnp_state_machine::check_line_address): Likewise.
14391         (dwarf_decode_lines_1): Likewise.
14392         (dwarf_decode_lines): Likewise.
14393         (dwarf2_start_symtab): Likewise.
14394         (var_decode_location): Likewise.
14395         (new_symbol_full): Likewise.
14396         (dwarf2_const_value_data): Likewise.
14397         (dwarf2_const_value_attr): Likewise.
14398         (dwarf2_const_value): Likewise.
14399         (die_type): Likewise.
14400         (die_containing_type): Likewise.
14401         (lookup_die_type): Likewise.
14402         (guess_full_die_structure_name): Likewise.
14403         (anonymous_struct_prefix): Likewise.
14404         (dwarf2_name): Likewise.
14405         (follow_die_ref_or_sig): Likewise.
14406         (follow_die_offset): Likewise.
14407         (follow_die_ref): Likewise.
14408         (dwarf2_fetch_die_loc_sect_off): Likewise.
14409         (dwarf2_fetch_constant_bytes): Likewise.
14410         (dwarf2_fetch_die_type_sect_off): Likewise.
14411         (dwarf2_get_die_type): Likewise.
14412         (follow_die_sig): Likewise.
14413         (decode_locdesc): Likewise.
14414         (dwarf2_per_cu_objfile): Likewise.
14415         (dwarf2_per_cu_text_offset): Likewise.
14416         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
14417         objfile.
14418         (set_die_type): Access objfile through
14419         dwarf2_per_objfile.
14420
14421 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14422
14423         * valprint.c (converted_character_d): Remove typedef.
14424         (DEF_VEC_O (converted_character_d)): Remove.
14425         (count_next_character): Use std::vector.
14426         (print_converted_chars_to_obstack): Likewise.
14427         (generic_printstr): Likewise.
14428
14429 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14430
14431         * xml-support.h (struct gdb_xml_value): Add constructor.
14432         <value>: Change type to unique_xmalloc_ptr.
14433         (gdb_xml_value_s): Remove typedef.
14434         (DEF_VEC_O (gdb_xml_value_s)): Remove.
14435         (gdb_xml_element_start_handler): Change parameter type to
14436         std::vector.
14437         (xml_find_attribute): Likewise.
14438         * xml-support.c (xml_find_attribute): Change parameter type to
14439         std::vector and adjust.
14440         (gdb_xml_values_cleanup): Remove.
14441         (gdb_xml_parser::start_element): Adjust to std::vector.
14442         (xinclude_start_include): Change paraeter type to std::vector
14443         and adjust.
14444         * btrace.c (check_xml_btrace_version): Likewise.
14445         (parse_xml_btrace_block): Likewise.
14446         (parse_xml_btrace_pt_config_cpu): Likewise.
14447         (parse_xml_btrace_pt): Likewise.
14448         (parse_xml_btrace_conf_bts): Likewise.
14449         (parse_xml_btrace_conf_pt): Likewise.
14450         * memory-map.c (memory_map_start_memory): Likewise.
14451         (memory_map_start_property): Likewise.
14452         * osdata.c (osdata_start_osdata): Likewise.
14453         (osdata_start_item): Likewise.
14454         (osdata_start_column): Likewise.
14455         * remote.c (start_thread): Likewise.
14456         * solib-aix.c (library_list_start_library): Likewise.
14457         (library_list_start_list): Likewise.
14458         * solib-svr4.c (library_list_start_library): Likewise.
14459         (svr4_library_list_start_list): Likewise.
14460         * solib-target.c (library_list_start_segment): Likewise.
14461         (library_list_start_section): Likewise.
14462         (library_list_start_library): Likewise.
14463         (library_list_start_list): Likewise.
14464         * tracepoint.c (traceframe_info_start_memory): Likewise.
14465         (traceframe_info_start_tvar): Likewise.
14466         * xml-syscall.c (syscall_start_syscall): Likewise.
14467         * xml-tdesc.c (tdesc_start_target): Likewise.
14468         (tdesc_start_feature): Likewise.
14469         (tdesc_start_reg): Likewise.
14470         (tdesc_start_union): Likewise.
14471         (tdesc_start_struct): Likewise.
14472         (tdesc_start_flags): Likewise.
14473         (tdesc_start_enum): Likewise.
14474         (tdesc_start_field): Likewise.
14475         (tdesc_start_enum_value): Likewise.
14476         (tdesc_start_vector): Likewise.
14477
14478 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14479
14480         * extension.h (struct xmethod_worker) <clone>: Remove.
14481         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
14482         Remove.
14483         (python_xmethod_worker::clone): Remove.
14484         * valops.c (find_overload_match): Use std::move instead of
14485         clone.
14486
14487 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14488
14489         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
14490         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
14491         <free_xmethod_worker_data>: Remove.
14492         <get_matching_xmethod_workers>: Chance VEC to std::vector.
14493         <get_xmethod_arg_types>: Remove.
14494         <get_xmethod_result_type>: Remove.
14495         <invoke_xmethod>: Remove.
14496         * extension.c (new_xmethod_worker): Remove.
14497         (clone_xmethod_worker): Remove.
14498         (get_matching_xmethod_workers): Return void, pass std::vector by
14499         pointer.
14500         (get_xmethod_arg_types): Rename to...
14501         (xmethod_worker::get_arg_types): ... this, and adjust.
14502         (get_xmethod_result_type): Rename to...
14503         (xmethod_worker::get_result_type): ... this, and adjust.
14504         (invoke_xmethod): Remove.
14505         (free_xmethod_worker): Remove.
14506         (free_xmethod_worker_vec): Remove.
14507         * extension.h (enum ext_lang_rc): Move here from
14508         extension-priv.h.
14509         (struct xmethod_worker): Add constructor and destructor.
14510         <data>: Remove.
14511         <value>: Remove.
14512         <invoke, clone, do_get_result_type, do_get_arg_types>: New
14513         virtual pure methods.
14514         <get_arg_types, get_result_type>: New methods.
14515         (xmethod_worker_ptr): Remove typedef.
14516         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
14517         (xmethod_worker_vec): Remove typedef.
14518         (xmethod_worker_up): New typedef.
14519         (invoke_xmethod): Remove.
14520         (clone_xmethod_worker): Remove.
14521         (free_xmethod_worker): Remove.
14522         (free_xmethod_worker_vec): Remove.
14523         (get_xmethod_arg_types): Remove.
14524         (get_xmethod_result_type): Remove.
14525         * valops.c (find_method_list): Use std::vector, don't use
14526         intermediate vector.
14527         (value_find_oload_method_list): Use std::vector.
14528         (find_overload_match): Use std::vector.
14529         (find_oload_champ): Use std::vector.
14530         * value.c (value_free): Use operator delete.
14531         (value_of_xmethod): Rename to...
14532         (value_from_xmethod): ... this.  Don't assign
14533         xmethod_worker::value, take rvalue-reference.
14534         (result_type_of_xmethod): Adjust.
14535         (call_xmethod): Adjust.
14536         * value.h: Include extension.h.
14537         (struct xmethod_worker): Don't forward-declare.
14538         (value_of_xmethod): Rename to...
14539         (value_from_xmethod): ... this, take rvalue-reference.
14540         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
14541         (struct python_xmethod_worker): ... this, add constructor and
14542         destructor.
14543         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
14544         (gdbpy_free_xmethod_worker_data): Rename to...
14545         (python_xmethod_worker::~python_xmethod_worker): ... this and
14546         adjust.
14547         (gdbpy_clone_xmethod_worker_data): Rename to...
14548         (python_xmethod_worker::clone): ... this and adjust.
14549         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
14550         temporary vector.
14551         (gdbpy_get_xmethod_arg_types): Rename to...
14552         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
14553         (gdbpy_get_xmethod_result_type): Rename to...
14554         (python_xmethod_worker::do_get_result_type): ... this and
14555         adjust.
14556         (gdbpy_invoke_xmethod): Rename to...
14557         (python_xmethod_worker::invoke): ... this and adjust.
14558         (new_python_xmethod_worker): Rename to...
14559         (python_xmethod_worker::python_xmethod_worker): ... this and
14560         adjust.
14561         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
14562         Remove.
14563         (gdbpy_free_xmethod_worker_data): Remove.
14564         (gdbpy_get_matching_xmethod_workers): Use std::vector.
14565         (gdbpy_get_xmethod_arg_types): Remove.
14566         (gdbpy_get_xmethod_result_type): Remove.
14567         (gdbpy_invoke_xmethod): Remove.
14568         * python/python.c (python_extension_ops): Remove obsolete
14569         callbacks.
14570
14571 2018-01-05  Pedro Alves  <palves@redhat.com>
14572
14573         PR gdb/18653
14574         * common/signals-state-save-restore.c
14575         (save_original_signals_state): New parameter 'quiet'.  Warn if we
14576         find a custom handler preinstalled, instead of internal erroring.
14577         But only warn if !quiet.
14578         * common/signals-state-save-restore.h
14579         (save_original_signals_state): New parameter 'quiet'.
14580         * main.c (captured_main_1): Move save_original_signals_state call
14581         after option handling, and pass QUIET.
14582
14583 2018-01-05  Pedro Alves  <palves@redhat.com>
14584
14585         * spu-tdep.c (spu_catch_start): Pass
14586         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
14587
14588 2018-01-05  Pedro Alves  <palves@redhat.com>
14589
14590         PR gdb/22670
14591         * ada-lang.c (literal_symbol_name_matcher): New function.
14592         (ada_get_symbol_name_matcher): Use it for
14593         symbol_name_match_type::SEARCH_NAME.
14594         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
14595         it down instead of assuming symbol_name_match_type::FULL.
14596         * block.h (block_lookup_symbol): New parameter 'match_type'.
14597         * c-valprint.c (print_unpacked_pointer): Use
14598         lookup_symbol_search_name instead of lookup_symbol.
14599         * compile/compile-object-load.c (get_out_value_type): Pass down
14600         symbol_name_match_type::SEARCH_NAME.
14601         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
14602         symbol_name_match_type::FULL.
14603         * cp-support.c (cp_get_symbol_name_matcher): Handle
14604         symbol_name_match_type::SEARCH_NAME.
14605         * infrun.c (insert_exception_resume_breakpoint): Use
14606         lookup_symbol_search_name.
14607         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
14608         * psymtab.c (maintenance_check_psymtabs): Use
14609         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
14610         * stack.c (print_frame_args): Use lookup_symbol_search_name and
14611         SYMBOL_SEARCH_NAME.
14612         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
14613         if symbol_name_match_type::SEARCH_NAME.
14614         (lookup_symbol_in_language): Pass down
14615         symbol_name_match_type::FULL.
14616         (lookup_symbol_search_name): New.
14617         (lookup_language_this): Pass down
14618         symbol_name_match_type::SEARCH_NAME.
14619         (lookup_symbol_aux, lookup_local_symbol): New parameter
14620         'match_type'.  Pass it down.
14621         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
14622         (lookup_symbol_search_name): New declaration.
14623         (lookup_symbol_in_block): New 'match_type' parameter.
14624
14625 2018-01-05  Pedro Alves  <palves@redhat.com>
14626
14627         PR gdb/22670
14628         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
14629         ada_lookup_symbol.
14630         (ada_lookup_symbol): Reimplement in terms of
14631         ada_lookup_symbol_list, bits factored out from
14632         ada_lookup_encoded_symbol.
14633
14634 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14635
14636         * ada-exp.y (write_object_renaming): When subscripting an array
14637         using a symbol as the index, pass the block in call to
14638         ada_lookup_encoded_symbol when looking that symbol up.
14639
14640 2018-01-05  Jerome Guitton  <guitton@adacore.com>
14641
14642         * ada-lang.c (ada_array_length): Use ada_index_type instead of
14643         TYPE_INDEX_TYPE.
14644
14645 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14646
14647         * ada-lang.c (ada_to_fixed_value_create): Add handling of
14648         the case where VALUE_LVAL (val0) is not lval_memory.
14649
14650 2018-01-05  Xavier Roirand  <roirand@adacore.com>
14651
14652         * ada-valprint.c (print_optional_low_bound): Handle
14653         character-indexed array printing like boolean-indexed array
14654         printing.
14655
14656 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14657
14658         * NEWS: Create a new section for the next release branch.
14659         Rename the section of the current branch, now that it has
14660         been cut.
14661
14662 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14663
14664         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
14665         * version.in: Bump version to 8.1.50.DATE-git.
14666
14667 2018-01-03  Xavier Roirand  <roirand@adacore.com>
14668
14669         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
14670         Add field.
14671         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
14672         Add field.
14673         (default_exception_support_info) <catch_handlers_sym>: Add field.
14674         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
14675         (ada_exception_name_addr_1): Add "catch handlers" handling.
14676         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
14677         Update all callers.
14678         (create_excep_cond_exprs) <ex>: Add parameter.
14679         (re_set_exception): Update create_excep_cond_exprs call.
14680         (print_it_exception, print_one_exception, print_mention_exception)
14681         (print_recreate_exception): Add "catch handler" handling.
14682         (allocate_location_catch_handlers, re_set_catch_handlers)
14683         (check_status_catch_handlers, print_it_catch_handlers)
14684         (print_one_catch_handlers, print_mention_catch_handlers)
14685         (print_recreate_catch_handlers): New function.
14686         (catch_handlers_breakpoint_ops): New variable.
14687         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
14688         Add parameter.  Add "catch handler" handling.
14689         (ada_exception_sym_name, ada_exception_breakpoint_ops):
14690         Add "catch handler" handling.
14691         (ada_exception_catchpoint_cond_string): Add "catch handler"
14692         handling.
14693         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
14694         call.
14695         (catch_ada_handlers_command): New function.
14696         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
14697         operations structure.
14698         (_initialize_ada_language): Add "catch handlers" command entry.
14699         * NEWS: Document "catch handlers" feature.
14700
14701 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14702
14703         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
14704         account when creating the array type of the slice.
14705         (ada_value_slice): Likewise.
14706
14707 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14708
14709         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
14710         New enum value.
14711         (create_array_type_with_stride): Add byte_stride_prop parameter.
14712         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
14713         New parameter.  Update all callers in this file.
14714         (array_type_has_dynamic_stride): New function.
14715         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
14716         of arrays with dynamic byte strides.
14717         * dwarf2read.c (read_array_type): Add support for dynamic
14718         DW_AT_byte_stride attributes.
14719
14720 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14721
14722         * dwarf2read.c (read_unspecified_type): Treat
14723         DW_TAG_enumeration_type DIEs from Ada units as stubs.
14724
14725 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14726
14727         Update copyright year range in all GDB files.
14728
14729 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
14730
14731         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
14732         and gdb/testsuite/gdb.base/step-line.c.
14733
14734 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14735
14736         * copyright.py (main): Dump the contents of
14737         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
14738         even if BY_HAND is empty.
14739
14740 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14741
14742         * top.c (print_gdb_version): Update Copyright year in version
14743         message.
14744
14745 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14746
14747         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
14748
14749 For older changes see ChangeLog-2017.
14750 \f
14751 Local Variables:
14752 mode: change-log
14753 left-margin: 8
14754 fill-column: 74
14755 version-control: never
14756 coding: utf-8
14757 End: