Allocate buffer with proper size in amd64_pseudo_register_{read_value,write}
[external/binutils.git] / gdb / ChangeLog
1 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
2
3         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
4         correctly-sized buffer with raw_read.
5         (amd64_pseudo_register_write): Use correctly-sized buffer for
6         raw_read/raw_write.
7
8 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9
10         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
11         in add_prefix_cmd of set print type.
12
13 2018-10-19  Tom Tromey  <tom@tromey.com>
14
15         PR tui/18388:
16         * NEWS: Mention tabset deprecation.
17         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
18         (update_tab_width): New function.
19         (tui_set_tab_width, tui_show_tab_width): New functions.
20         (tui_set_tab_width_command): Use update_tab_width.
21         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
22         Add new "set tui tab-width" command.
23         * tui/tui-source.c (tui_set_source_content): Update.
24         * tui/tui-disasm.c (tui_set_disassem_content): Update.
25         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
26         Don't declare.
27         (tui_tab_width): Declare.
28         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
29         (tui_set_default_tab_len): Remove.
30
31 2018-10-19  Tom Tromey  <tom@tromey.com>
32
33         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
34         (key_is_backspace, tui_getc): Don't declare.
35         * tui/tui-io.c (key_is_start_sequence): Now static.
36         (key_is_end_sequence, key_is_backspace): Remove.
37         (tui_getc): Now static.
38
39 2018-10-19  Tom Tromey  <tom@tromey.com>
40
41         * symfile.c (reread_symbols): Clear "static_links".
42
43 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
44
45         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
46         define.
47         (aarch64_linux_sigframe_init): Extra boundary checks.
48
49 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
50
51         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
52         the possibly non-existent tdesc type 'vec128', but the type of raw
53         register v16 instead.
54
55 2018-10-19  Gary Benson <gbenson@redhat.com>
56
57         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
58
59 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
60
61         PR cli/23785
62         * cli/cli-dump.c (restore_binary_file): Check if "file" is
63         NULL.
64
65 2018-10-17  Paul Koning  <paul_koning@dell.com>
66
67         * charset.c (convert_between_encodings): Fix unsigned overflow.
68
69 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
70
71         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
72         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
73         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
74         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
75         New functions.
76         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
77         and fbsd_info_proc_mappings_header.
78         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
79         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
80         New.
81
82 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
83
84         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
85         Solaris Maintainer.
86
87 2018-10-15  Tom Tromey  <tom@tromey.com>
88
89         * tui/tui.c (strcat_to_buf): Remove casts.
90         * tui/tui-winsource.c (tui_show_source_line)
91         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
92         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
93         * tui/tui-windata.c (tui_first_data_item_displayed)
94         (tui_delete_data_content_windows, tui_erase_data_content)
95         (tui_display_all_data, tui_display_data_from)
96         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
97         * tui/tui-win.c (tui_set_win_height)
98         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
99         casts.
100         * tui/tui-win.c (tui_resize_all): Remove casts.
101         (tui_scroll_backward_command, tui_set_focus)
102         (tui_set_tab_width_command): Likewise.
103         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
104         * tui/tui-regs.c (tui_show_register_group): Remove cast.
105         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
106         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
107         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
108         Remove casts.
109
110 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
111
112         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
113         AArch64/ARM maintainer.
114
115 2018-10-11  Gary Benson <gbenson@redhat.com>
116
117         * interps.h (interp::m_name): Make private and mutable.
118         * interps.c (interp::~interp): Free m_name.
119
120 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
121             Simon Marchi <simark@simark.ca>
122
123         * README (`configure' options): Add documentation for new
124         "--enable-unit-tests" option.
125         * acinclude.m4: Include "selftest.m4".
126         * configure: Regenerate.
127         * configure.ac: Use "GDB_AC_SELFTEST".
128         * maint.c (maintenance_selftest): Update message informing
129         that selftests have been disabled.
130         (maintenance_info_selftests): Likewise.
131         * selftest.m4: New file.
132
133 2018-10-10  Gary Benson <gbenson@redhat.com>
134
135         * remote.c (remote_target::remote_send_printf): Add
136         missing va_end found by Coverity.
137
138 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
139
140         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
141
142 2018-10-09  Tom Tromey  <tom@tromey.com>
143
144         * configure: Rebuild.
145         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
146         * NEWS: Update --enable-ubsan documentation.
147
148 2018-10-09  Gary Benson <gbenson@redhat.com>
149
150         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
151         found by Coverity.
152
153 2018-10-08  Tom Tromey  <tom@tromey.com>
154
155         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
156         variable.
157         (riscv_fbsd_init_abi): Likewise.
158
159 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
160         * valops.c (value_struct_elt_for_reference): Rename local variable
161         to work around the shadowing a previous local warning.
162
163 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
164
165         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
166         * NEWS: Mention new FreeBSD/riscv native configuration.
167         * configure.host: Add riscv*-*-freebsd*.
168         * configure.nat: Likewise.
169         * riscv-fbsd-nat.c: New file.
170
171 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
172
173         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
174         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
175         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
176         * NEWS: Mention new FreeBSD/riscv target.
177         * configure.tgt: Add riscv*-*-freebsd*.
178         * riscv-fbsd-tdep.c: New file.
179         * riscv-fbsd-tdep.h: New file.
180
181 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
182
183         * regcache.h (struct regcache_map_entry): Note that this type can
184         be used with traditional frame caches.
185         * trad-frame.c (trad_frame_set_reg_regmap): New.
186         * trad-frame.h (trad_frame_set_reg_regmap): New.
187
188 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
189
190         PR c++/16841
191         * valops.c (get_virtual_base_offset): New function.
192         (value_struct_elt_for_reference): Use it to get virtual base offset
193         and add it in calculating class member address.
194
195 2018-10-08   John Darrington <john@darrington.wattle.id.au>
196
197     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
198       (check_producer): Check if the producer is codewarrior.
199       (producer_is_codewarrior): New function.
200       (lnp_state_machine::record_line): Ignore is_stmt flag for records
201        produced by codewarrior.
202       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
203
204 2018-10-06  Tom Tromey  <tom@tromey.com>
205
206         PR python/19399:
207         * python/py-inferior.c: Add "architecture" entry.
208         (infpy_architecture): New function.
209
210 2018-10-06  Tom Tromey  <tom@tromey.com>
211
212         PR python/21765:
213         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
214         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
215         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
216         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
217
218 2018-10-06  Tom Tromey  <tom@tromey.com>
219
220         PR build/17077:
221         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
222         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
223         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
224         #include.
225
226 2018-10-06  Tom Tromey  <tom@tromey.com>
227
228         * python/py-breakpoint.c (bppy_get_location): Handle a
229         bp_breakpoint without a location.
230
231 2018-10-06  Tom Tromey  <tom@tromey.com>
232
233         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
234         (_RegEx): Reformat help text.
235         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
236         (AnyCallerIs, AnyCallerMatches): Reformat help text.
237         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
238         text.
239         * python/lib/gdb/command/xmethods.py (InfoXMethod)
240         (EnableXMethod, DisableXMethod): Remove help indentation.
241         Capitalize meta-syntactic variables.
242         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
243         (EnableUnwinder, DisableUnwinder): Remove help indentation.
244         Capitalize meta-syntactic variables.
245         * python/lib/gdb/command/explore.py (ExploreCommand)
246         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
247         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
248         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
249         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
250         Remove help indentation.
251         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
252         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
253         (DisableFrameFilter, SetFrameFilterPriority)
254         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
255
256 2018-10-06  Tom Tromey  <tom@tromey.com>
257
258         PR tui/28819:
259         * tui/tui-io.c (gdb_wgetch): New function.
260         (tui_mld_getc, tui_getc): Use it.
261
262 2018-10-05  Tom Tromey  <tom@tromey.com>
263
264         * sol-thread.c (sol_thread_target::wait): Rename inner
265         "save_ptid".
266
267 2018-10-04  Tom Tromey  <tom@tromey.com>
268
269         * configure: Rebuild.
270         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
271
272 2018-10-04  Tom Tromey  <tom@tromey.com>
273
274         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
275         declaration of "block".
276
277 2018-10-04  Tom Tromey  <tom@tromey.com>
278
279         * common/filestuff.c (fdwalk): Remove inner declaration of
280         "result".
281
282 2018-10-04  Tom Tromey  <tom@tromey.com>
283
284         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
285         "structs_addr" and hoist declaration.
286
287 2018-10-04  Tom Tromey  <tom@tromey.com>
288
289         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
290         variable "size".
291
292 2018-10-04  Tom Tromey  <tom@tromey.com>
293
294         * mdebugread.c (parse_partial_symbols): Use std::string.
295
296 2018-10-04  Tom Tromey  <tom@tromey.com>
297
298         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
299         * p-valprint.c (pascal_val_print): Split inner "i" variable.
300         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
301         header.
302         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
303         more inner scope.
304         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
305         * varobj.c (varobj_update): Rename inner "newobj",
306         "type_changed".
307         * valprint.c (generic_emit_char): Rename inner "buf".
308         * valops.c (find_overload_match): Rename inner "temp".
309         (value_struct_elt_for_reference): Declare "v" in more inner
310         scope.
311         * v850-tdep.c (v850_push_dummy_call): Rename "len".
312         * unittests/array-view-selftests.c (run_tests): Rename inner
313         "vec".
314         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
315         header.
316         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
317         "tsv" in more inner scope.
318         (print_one_static_tracepoint_marker): Rename inner
319         "tuple_emitter".
320         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
321         (tic6x_push_dummy_call): Don't redeclare "addr".
322         * target-float.c: Declare "dto" lower.
323         * symtab.c (lookup_local_symbol): Rename inner "sym".
324         (find_pc_sect_line): Rename inner "pc".
325         * stack.c (print_frame): Don't redeclare "gdbarch".
326         (return_command): Rename inner "gdbarch".
327         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
328         "sp".
329         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
330         header.
331         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
332         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
333         scope.
334         * remote.c (remote_target::update_thread_list): Don't redeclare
335         "tp".
336         (remote_target::process_initial_stop_replies): Rename inner
337         "thread".
338         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
339         (remote_target::wait_as): Don't redeclare "stop_reply".
340         (remote_target::get_thread_local_address): Rename inner
341         "result".
342         (remote_target::get_tib_address): Likewise.
343
344         * regcache.c (cooked_read_test): Rename "regnum".
345         * record-btrace.c (cmd_record_btrace_start): Rename inner
346         "exception".
347         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
348         loop header.
349         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
350         header.
351         (ppu2spu_sniffer): Rename inner "buf".
352         * parse.c (operator_check_standard): Rename inner "type",
353         "objfile".
354         * p-valprint.c (pascal_val_print): Introduce new scope for
355         "low_bound", "high_bound".
356         * p-exp.y (yylex): Declare "i" in loop header.
357         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
358         Lower declaration of "s".
359         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
360         header.
361         (nios2_push_dummy_call): Rename "len".
362         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
363         "buf".
364         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
365         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
366         (linux_xfer_osdata_modules): Likewise.
367         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
368         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
369         (mips_o64_push_dummy_call): Likewise.
370         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
371         "op".
372         * mi/mi-main.c (list_available_thread_groups): Rename inner
373         "tuple_emitter".
374         (mi_cmd_data_read_memory): Rename inner "opts".
375         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
376         "tuple_emitter".
377         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
378         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
379         more inner scope.
380         (parse_partial_symbols): Rename inner "pst", "p", "name"
381         * main.c (captured_main_1): Rename inner "i"s.
382         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
383         "oso2".
384         * linux-tdep.c (linux_info_proc): Rename inner "filename".
385         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
386         * infrun.c (handle_no_resumed): Don't redeclare "thread".
387         (handle_signal_stop): Rename inner "gdbarch".
388         (handle_command): Declare "signum" in loop header.
389         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
390         "status".
391         (examine_prologue): Rename inner "sol" and "sof".
392         (ia64_extract_return_value): Rename inner "val".  Declare another
393         "val" in a more inner scope.
394         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
395         inner scope.
396         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
397         "except".
398         * findvar.c (default_read_var_value): Don't redeclare "addr".
399         * f-exp.y (yylex): Declare "i" in loop header.
400         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
401         Rename inner "type", "expect_type".
402         (evaluate_subexp_for_sizeof): Rename inner "pc".
403         * elfread.c (elf_symfile_read): Rename inner "abfd".
404         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
405         "bytes_read".
406         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
407         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
408         (dwarf_decode_line_header): Rename inner "lh".
409         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
410         "offset".  Declare "i" in loop header.
411         (disassemble_dwarf_expression): Rename inner "addr_size".
412         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
413         inner "result".
414         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
415         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
416         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
417         "inner_list_emitter".
418         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
419         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
420         declaration in a block.
421         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
422         * cp-valprint.c (cp_print_value_fields): Don't redeclare
423         "obstack_final_size".
424         * cp-support.c (inspect_type): Declare "i" in loop header.
425         * compile/compile.c (compile_instance::insert_symbol_error):
426         Rename inner "e".
427         * common/agent.c (agent_run_command): Remove inner "ret"
428         declaration.
429         * coffread.c (coff_symfile_read): Rename inner "name".
430         (coff_symfile_read): Rename inner "abfd".
431         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
432         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
433         "high".
434         * c-exp.y (lex_one_token): Move "len" declaration lower.
435         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
436         "gdbarch".
437         (create_exception_master_breakpoint): Likewise.  Don't redeclare
438         "b".
439         (watch_command_1): Declare "mark" later.
440         (clear_command): Don't shadow "a" or "b".
441         (delete_command): Rename inner "b".
442         (delete_trace_command): Likewise.
443         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
444         "op".
445         (arm_gdbarch_init): Remove inner "e_flags".
446         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
447         "offset" in inner blocks.
448
449 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
450
451         * dwarf-index-write.c (file_write): Don't write if the vector is
452         empty.
453
454 2018-10-05  Tom de Vries  <tdevries@suse.de>
455
456         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
457         PyArg_ParseTuple call.
458
459 2018-10-05  Tom de Vries  <tdevries@suse.de>
460
461         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
462         PyArg_ParseTuple call.
463
464 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
465
466         * psymtab.c (recursively_search_psymtabs): Reformat parameters
467         to avoid exceeding 80 characters per line limit.
468
469 2018-10-04  Tom Tromey  <tom@tromey.com>
470
471         * symfile.c (syms_from_objfile_1, finish_new_objfile)
472         (reread_symbols): Update.
473         * complaints.h (clear_complaints): Remove argument.
474         * complaints.c (enum complaint_series): Remove.
475         (series): Remove global.
476         (complaint_internal): Update.
477         (clear_complaints): Remove argument.
478
479 2018-10-04  Tom Tromey  <tom@tromey.com>
480
481         * symfile.c (symbol_file_add_with_addrs): Do not print "no
482         debugging symbols" message if there is a separate debug objfile.
483
484 2018-10-04  Tom Tromey  <tom@tromey.com>
485
486         PR cli/19551:
487         * symfile.c (symbol_file_add_with_addrs): Update output.
488         * psymtab.c (require_partial_symbols): Update output.
489
490 2018-10-04  Tom Tromey  <tom@tromey.com>
491
492         PR cli/22234:
493         * complaints.c: Emit \n.
494
495 2018-10-04  Tom Tromey  <tom@tromey.com>
496
497         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
498         (separate_debug_file_exists, find_separate_debug_file)
499         (add_symbol_file_command, reread_symbols, allocate_symtab)
500         (allocate_compunit_symtab): Use filtered printing, not
501         unfiltered.
502         * psymtab.c (require_partial_symbols, dump_psymtab)
503         (allocate_psymtab): Use filtered printing, not unfiltered.
504
505 2018-10-04  Tom Tromey  <tom@tromey.com>
506
507         * complaints.c (complaint_internal): Correctly check complaint
508         count.
509
510 2018-10-04  Tom Tromey  <tom@tromey.com>
511
512         * complaints.h (struct complaints): Remove declaration.
513         * complaints.c (clear_complaints): Remove an unused variable.
514
515 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
516
517         * MAINTAINERS (Write After Approval): Add self.
518
519 2018-10-03  Tom Tromey  <tom@tromey.com>
520
521         * guile/scm-value.c (gdbscm_value_to_string): Initialize
522         "buffer_contents".
523         * coffread.c (coff_symtab_read): Initialize "newobj".
524
525 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
526
527         * dwarf2read.c (read_func_scope): Remove struct keyword in
528         range-based for.
529
530 2018-10-03  Tom Tromey  <tom@tromey.com>
531
532         * README: Mention --enable-ubsan.
533         * NEWS: Mention --enable-ubsan.
534         * acinclude.m4: Include sanitize.m4.
535         * configure: Rebuild.
536         * configure.ac: Call AM_GDB_UBSAN.
537         * sanitize.m4: New file.
538
539 2018-10-03  Tom Tromey  <tom@tromey.com>
540
541         * expression.h (enum exp_opcode): Use uint8_t as base type.
542         * expprint.c (op_name): Handle invalid opcodes.
543
544 2018-10-03  Tom Tromey  <tom@tromey.com>
545
546         * parse.c (prefixify_expression): Add assert.
547         (parse_exp_in_context_1): Throw exception if the expression is
548         empty.
549
550 2018-10-03  Tom Tromey  <tom@tromey.com>
551
552         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
553
554 2018-10-03  Tom Tromey  <tom@tromey.com>
555
556         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
557
558 2018-10-03  Tom Tromey  <tom@tromey.com>
559
560         * dwarf2read.c (read_subrange_type): Make "negative_mask"
561         unsigned.
562
563 2018-10-03  Tom Tromey  <tom@tromey.com>
564
565         * findvar.c (extract_integer): Do work in an unsigned type.
566
567 2018-10-03  Tom Tromey  <tom@tromey.com>
568
569         * common/enum-flags.h (enum_flags::operator~): Add static assert.
570         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
571         base type.
572         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
573         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
574         type.
575         * c-lang.h (enum c_string_type_values): Use unsigned as base
576         type.
577         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
578
579 2018-10-03  Tom Tromey  <tom@tromey.com>
580
581         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
582         <~dwarf2_frame_state_reg_info>: Update.
583         <dwarf2_frame_state_reg_info>: Update.
584         <alloc_regs>: Add assertion.  Update.
585         <reg>: Now a std::vector.
586         <num_regs>: Remove.
587         <swap>: Update.
588         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
589         (execute_cfa_program_test, dwarf2_frame_cache): Update.
590
591 2018-10-03  Tom Tromey  <tom@tromey.com>
592
593         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
594
595 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
596
597         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
598
599 2018-10-02  Tom Tromey  <tom@tromey.com>
600
601         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
602
603 2018-10-02  John Darrington <john@darrington.wattle.id.au>
604
605         * NEWS: Mention changed commands.
606         * ser-uds.c: New file.
607         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
608         * configure: Regenerate.
609         * Makefile.in: Add new file.
610         * serial.c (serial_open): Check if filename is a socket
611           and lookup the appropriate interface accordingly.
612
613 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
614
615         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
616         define.
617         (AARCH64_EXTRA_MAGIC): Likewise.
618         (AARCH64_FPSIMD_MAGIC): Likewise.
619         (AARCH64_SVE_MAGIC): Likewise.
620         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
621         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
622         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
623         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
624         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
625         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
626         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
627         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
628         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
629         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
630         (read_aarch64_ctx): Add function.
631         (aarch64_linux_sigframe_init): Detect FP registers.
632
633 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
634
635         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
636         (AARCH64_D0_REGNUM): Likewise.
637         (AARCH64_S0_REGNUM): Likewise.
638         (AARCH64_H0_REGNUM): Likewise.
639         (AARCH64_B0_REGNUM): Likewise.
640         (AARCH64_SVE_V0_REGNUM): Likewise.
641         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
642         (AARCH64_D0_REGNUM): Likewise.
643         (AARCH64_S0_REGNUM): Likewise.
644         (AARCH64_H0_REGNUM): Likewise.
645         (AARCH64_B0_REGNUM): Likewise.
646         (AARCH64_SVE_V0_REGNUM): Likewise.
647
648 2018-10-01  Gary Benson <gbenson@redhat.com>
649
650         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
651         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
652         prfpregset_t instead of gdb_prfpregset_t.
653         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
654         * configure, config.in: Rebuild.
655
656 2018-10-01  Gary Benson <gbenson@redhat.com>
657
658         * common/gdb_proc_service.h: New file, factored out from...
659         * gdb_proc_service.h: Moved common code to the above file.
660         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
661
662 2018-10-01  Gary Benson <gbenson@redhat.com>
663
664         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
665         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
666
667 2018-10-01  Gary Benson <gbenson@redhat.com>
668
669         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
670         (AC_CHECK_HEADERS): Check for linux/elf.h.
671         * configure, config.in: Rebuild.
672         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
673         doesn't define elf_fpregset_t.
674
675 2018-10-01  Gary Benson <gbenson@redhat.com>
676
677         * gdb_proc_service.h: Whitespace change.
678
679 2018-10-01  Tom Tromey  <tom@tromey.com>
680
681         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
682         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
683         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
684
685 2018-10-01  Tom Tromey  <tom@tromey.com>
686
687         * README: Minor change.
688
689 2018-09-30  Pedro Alves  <palves@redhat.com>
690
691         * darwin-nat-info.c (darwin_debug_regions_recurse)
692         (info_mach_exceptions_command): Remove unused local variables.
693         * darwin-nat.c (darwin_decode_notify_message)
694         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
695         (darwin_stop_inferior, darwin_setup_exceptions)
696         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
697         (darwin_nat_target::attach, darwin_nat_target::detach)
698         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
699         local variables.
700         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
701         variables.
702
703 2018-09-29  Tom Tromey  <tom@tromey.com>
704
705         * README: Remove some leftover text.
706
707 2018-09-29  Tom Tromey  <tom@tromey.com>
708
709         * PROBLEMS: Rewrite.
710         * README: Update.
711
712 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
713
714         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
715         case with explicit breakpoint kind.
716         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
717         'additional_info' and related logic.
718         (riscv_debug_breakpoints): New variable.
719         (riscv_breakpoint_kind_from_pc): Use the length of the existing
720         instruction to determine the breakpoint kind.
721         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
722         flag.  Update description of 'set/show riscv
723         use-compressed-breakpoints' flag.
724
725 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
726
727         (NEWS): Mention changes to frame related commands.
728         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
729         (add_prefix_cmd_suppress_notification): New function.
730         (add_com_suppress_notification): Call
731         add_cmd_suppress_notification.
732         * command.h (add_cmd_suppress_notification): Declare.
733         (add_prefix_cmd_suppress_notification): Declare.
734         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
735         (parse_frame_specification): Moved from stack.c, with
736         simplification to handle a single argument.
737         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
738         switch to the selected frame.  Add a header comment.
739         * stack.c: Remove 'safe-ctype.h' include.
740         (find_frame_for_function): Add declaration.
741         (find_frame_for_address): New function.
742         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
743         (frame_selection_by_function_completer): New function.
744         (info_frame_command): Rename to...
745         (info_frame_command_core): ...this, and update parameter types.
746         (select_frame_command): Rename to...
747         (select_frame_command_core): ...this, and update parameter types.
748         (frame_command): Rename to...
749         (frame_command_core): ...this, and update parameter types.
750         (class frame_command_helper): New class to wrap implementations of
751         frame related sub-commands.
752         (frame_apply_cmd_list): New static global.
753         (frame_cmd_list): Make static.
754         (select_frame_cmd_list): New global for sub-commands.
755         (info_frame_cmd_list): New global for sub-commands.
756         (_initialize_stack): Register sub-commands for 'frame',
757         'select-frame', and 'info frame'.  Update 'frame apply' commands
758         to use frame_apply_cmd_list.  Move function local static
759         frame_apply_list to file static frame_apply_cmd_list for
760         consistency.
761         * stack.h (select_frame_command): Delete declarationn.
762         (select_frame_for_mi): Declare new function.
763
764 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
765
766         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
767         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
768         and NOP.
769
770 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
771
772         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
773
774 2018-09-26  Tom Tromey  <tom@tromey.com>
775
776         * valops.c (auto_abandon): Remove dead code.
777
778 2018-09-26  Tom Tromey  <tom@tromey.com>
779
780         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
781
782 2018-09-24  Tom Tromey  <tom@tromey.com>
783
784         * common/pathstuff.c (get_standard_cache_dir): Make
785         "xdg_cache_home" and "home" const.
786         * top.c (init_history): Make "tmpenv" const.
787         * main.c (get_init_files): Make "homedir" const.
788
789 2018-09-23  Tom Tromey  <tom@tromey.com>
790
791         PR python/18852:
792         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
793
794 2018-09-23  Tom Tromey  <tom@tromey.com>
795
796         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
797         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
798         * python/python-internal.h (gdbpy_handle_exception): Declare.
799         * python/py-utils.c (gdbpy_handle_exception): New function.
800
801 2018-09-23  Tom Tromey  <tom@tromey.com>
802
803         PR python/17284:
804         * python/py-type.c (typy_template_argument): Check for negative
805         argument number.
806
807 2018-09-23  Tom Tromey  <tom@tromey.com>
808
809         PR python/14062:
810         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
811
812 2018-09-23  Tom Tromey  <tom@tromey.com>
813
814         PR python/18170:
815         * python/py-value.c (valpy_int): Allow conversion from pointer
816         type.
817
818 2018-09-23  Tom Tromey  <tom@tromey.com>
819
820         PR python/20126:
821         * python/py-value.c (valpy_int): Respect type sign.
822
823 2018-09-23  Tom Tromey  <tom@tromey.com>
824
825         PR python/18352;
826         * python/py-value.c (valpy_float): Allow conversions from int or
827         char.
828         (valpy_int, valpy_long): Allow conversions from float.
829
830 2018-09-23  Tom Tromey  <tom@tromey.com>
831
832         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
833         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
834
835 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
836
837         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
838         __sighndlr.
839         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
840
841 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
842
843         * windows-nat.c (windows_nat_target::wait): Remove a spurious
844         target_terminal::ours().
845
846 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
847
848         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
849         of vl to ULONGEST.
850
851 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
852
853         * breakpoint.c (update_inserted_breakpoint_locations): Remove
854         redundant condition.
855
856 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
857
858         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
859
860         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
861         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
862         * sol-thread.c (ps_pdmodel): Don't guard definition.
863
864         * procfs.c: Fix formatting.
865
866         * procfs.c (sysset_t_alloc): Remove.
867         (create_procinfo): Use XNEW instead of sysset_t_alloc.
868         (procfs_debug_inferior): Likewise.
869         (procfs_set_exec_trap): Likewise.
870         (proc_set_traced_sysentry): Don't allocate argp dynamically.
871         (proc_set_traced_sysexit): Likewise.
872
873         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
874         (dead_procinfo): Likewise.
875         (proc_warn): Likewise.
876         (proc_error): Likewise.
877         (proc_get_LDT_entry): Likewise.
878         (do_attach): Likewise.
879         (procfs_target::pid_to_str): Likewise.
880         (iterate_over_mappings): Likewise.
881
882         * procfs.c (create_procinfo): Fix ARI warning.
883         (proc_get_status): Likewise.
884         (proc_stop_process): Likewise.
885         (proc_run_process): Likewise.
886         (proc_kill): Likewise.
887         (proc_get_LDT_entry): Likewise.
888         (procfs_find_LDT_entry): Likewise.
889         (proc_update_threads): Likewise.
890         (proc_iterate_over_threads): Likewise.
891         (do_attach): Likewise.
892         (procfs_xfer_memory): Likewise.
893         (invalidate_cache): Likewise.
894         (procfs_target::resume): Likewise.
895         (procfs_init_inferior): Likewise.
896         (procfs_set_exec_trap): Likewise.
897         (procfs_target::thread_alive): Likewise.
898         (procfs_target::pid_to_exec_file): Likewise.
899         (iterate_over_mappings): Likewise.
900         (procfs_target::make_corefile_notes): Likewise.
901         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
902
903         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
904         (procfs_find_LDT_entry): Likewise.
905         * sol-thread.c (ps_lgetLDT): Likewise.
906
907 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
908
909         PR tdep/17903
910         * procfs.c (procfs_target): Declare pid_to_exec_file.
911         (procfs_target::pid_to_exec_file): New.
912
913 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
914
915         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
916         renaming.
917         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
918         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
919
920 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
921
922         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
923         (supply_fpregset, fill_fpregset): Move ...
924         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
925         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
926         Remove references to ioctl-based procfs.
927         Include <sys/reg.h>.
928         Remove PR_MODEL_NATIVE guards.
929         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
930         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
931
932 2018-09-19  Xavier Roirand  <roirand@adacore.com>
933
934         PR gdb/20981:
935         * solib-darwin.c (darwin_get_dyld_bfd): New function.
936         (darwin_solib_get_all_image_info_addr_at_init): Update call.
937         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
938
939 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
940
941         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
942         (fbsd_print_sockaddr_in6): Likewise.
943
944 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
945             Chris January  <chris.january@arm.com>
946
947         * eval.c (skip_undetermined_arglist): Skip argument list helper.
948         (evaluate_subexp_standard): Return a dummy type when
949         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
950         OP_F77_UNDETERMINED_ARGLIST case.
951         * expression.h (enum noside): Update comment.
952
953 2018-09-19  George Vasick <george.vasick@oracle.com>
954
955         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
956
957 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
958             April Chin <april.chin@oracle.com>
959             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
960
961         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
962         uint_t lwpid_t.
963         (create_procinfo): Print pids in /proc without leading zeros.
964
965 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
966
967         * nios2-tdep.c (nios2_gcc_target_options): New.
968         (nios2_gdb_arch_init): Install new hook.
969
970 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
971
972         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
973         New file.
974         * update-gnulib.sh: Apply patch.
975         * configure: Re-generate.
976
977 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
978
979         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
980         description.  Make "info proc" command descriptions more
981         consistent.
982
983 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
984
985         * NEWS: Mention 'info proc files' command.
986
987 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
988
989         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
990         descriptors for IP_FILES and IP_ALL.
991
992 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
993
994         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
995         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
996         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
997         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
998         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
999         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1000         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1001         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1002         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1003         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1004         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1005         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1006         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1007         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1008         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1009         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1010         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1011         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1012         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1013         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1014         (struct fbsd_sockaddr_un): New types.
1015         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1016         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1017         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1018         (fbsd_core_info_proc_files): New functions.
1019         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1020         IP_ALL.
1021         * fbsd-tdep.h (fbsd_info_proc_files_header)
1022         (fbsd_info_proc_files_entry): New.
1023
1024 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1025
1026         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1027         * infcmd.c (info_proc_cmd_files): New function.
1028         (_initialize_infcmd): Register 'info proc files' command.
1029
1030 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1031
1032         * gnulib/aclocal-m4-deps.mk: Re-generate.
1033         * gnulib/aclocal.m4: Re-generate.
1034         * gnulib/config.in: Re-generate.
1035         * gnulib/configure: Re-generate.
1036         * gnulib/import/Makefile.am: Re-generate.
1037         * gnulib/import/Makefile.in: Re-generate.
1038         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1039         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1040         * gnulib/import/arpa_inet.in.h: New file.
1041         * gnulib/import/inet_ntop.c: New file.
1042         * gnulib/import/m4/arpa_inet_h.m4: New file.
1043         * gnulib/import/m4/inet_ntop.m4: New file.
1044         * gnulib/import/m4/netinet_in_h.m4: New file.
1045         * gnulib/import/m4/socklen.m4: New file.
1046         * gnulib/import/m4/sockpfaf.m4: New file.
1047         * gnulib/import/m4/stdalign.m4: New file.
1048         * gnulib/import/m4/sys_uio_h.m4: New file.
1049         * gnulib/import/netinet_in.in.h: New file.
1050         * gnulib/import/stdalign.in.h: New file.
1051         * gnulib/import/sys_socket.c: New file.
1052         * gnulib/import/sys_socket.in.h: New file.
1053         * gnulib/import/sys_uio.in.h: New file.
1054         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1055         module.
1056
1057 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1058
1059         * gnulib/aclocal-m4-deps.mk: New file.
1060         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1061         deterministically.
1062
1063 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1064
1065         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1066         KVE_PATH.
1067
1068 2018-09-18  Tom Tromey  <tom@tromey.com>
1069
1070         * compile/compile-object-load.c (struct
1071         link_hash_table_cleanup_data): Add constructor and destructor.
1072         Use DISABLE_COPY_AND_ASSIGN.
1073         (~link_hash_table_cleanup_data): Rename from
1074         link_hash_table_free.  Now a destructor.
1075         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1076
1077 2018-09-18  Tom Tromey  <tom@tromey.com>
1078
1079         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1080         * compile/compile-object-load.c (struct munmap_list): Move to
1081         header file.
1082         (munmap_list::add): Rename from munmap_list_add; rewrite.
1083         (munmap_list::~munmap_list): Rename from munmap_list_free.
1084         (munmap_listp_free_cleanup): Remove.
1085         (compile_object_load): Update.
1086         * compile/compile-object-load.h (struct munmap_list): Move from
1087         compile-object-load.c.  Rewrite.
1088
1089 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1090
1091         * aarch64-tdep.c (pass_in_v): Use register size.
1092         (aarch64_extract_return_value): Likewise.
1093         (aarch64_store_return_value): Likewise.
1094
1095 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1096
1097         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1098         rlim_t.
1099
1100 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1101
1102         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1103         Fix short help line.
1104
1105 2018-09-17  Tom Tromey  <tom@tromey.com>
1106
1107         PR python/20445:
1108         * configure: Rebuild.
1109         * configure.ac: Conditionally use -DNDEBUG for Python.
1110
1111 2018-09-17  Tom Tromey  <tom@tromey.com>
1112
1113         * configure: Rebuild.
1114         * configure.ac: Use gmp as a library dependency when checking for
1115         mpfr.
1116
1117 2018-09-17  Pedro Alves  <palves@redhat.com>
1118
1119         * python/py-inferior.c (find_inferior_object): Delete.
1120
1121 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1122
1123         * compile/compile-cplus-types.c
1124         (compile_cplus_instance::enter_scope): Don't use new_scope after
1125         std::move.
1126
1127 2018-09-17  Tom Tromey  <tom@tromey.com>
1128
1129         * common/pathstuff.c (get_standard_cache_dir): Use
1130         ~/Library/Caches on macOS.
1131         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1132
1133 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1134
1135         PR python/23669
1136         * breakpoint.c (commands_cmd_element): New.
1137         (_initialize_breakpoint): Assign commands_cmd_element.
1138         * breakpoint.h (commands_cmd_element): New.
1139         * cli/cli-script.c (while_cmd_element, if_command,
1140         define_cmd_element): New.
1141         (command_name_equals): Remove.
1142         (process_next_line): Compare commands by pointer, not by name.
1143         (_initialize_cli_script): Assign the various cmd_list_element
1144         variables.
1145         * compile/compile.c (compile_cmd_element): New.
1146         (_initialize_compile): Assign compile_cmd_element.
1147         * compile/compile.h (compile_cmd_element): New.
1148         * guile/guile.c (guile_cmd_element): New.
1149         (install_gdb_commands): Assign guile_cmd_element.
1150         * guile/guile.h (guile_cmd_element): New.
1151         * python/python.c (python_cmd_element): New.
1152         (_initialize_python): Assign python_cmd_element.
1153         * python/python.h (python_cmd_element): New.
1154         * tracepoint.c (while_stepping_cmd_element): New.
1155         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1156         * tracepoint.h (while_stepping_cmd_element): New.
1157
1158 2018-09-17  Tom Tromey  <tom@tromey.com>
1159
1160         * infrun.c (save_infcall_suspend_state): Return
1161         infcall_suspend_state_up.
1162         (save_infcall_control_state): Return infcall_control_state_up.
1163         * inferior.h (save_infcall_suspend_state)
1164         (save_infcall_control_state): Declare later.  Return unique
1165         pointers.
1166
1167 2018-09-17  Tom Tromey  <tom@tromey.com>
1168
1169         * infrun.c (struct stop_context): Declare constructor,
1170         destructor, "changed" method.
1171         (stop_context::stop_context): Rename from save_stop_context.
1172         (stop_context::~stop_context): Rename from
1173         release_stop_context_cleanup.
1174         (normal_stop): Update.
1175         (stop_context::changed): Rename from stop_context_changed.  Return
1176         bool.
1177
1178 2018-09-17  Tom Tromey  <tom@tromey.com>
1179
1180         * inferior.h (struct infcall_suspend_state_deleter): New.
1181         (infcall_suspend_state_up): New typedef.
1182         (struct infcall_control_state_deleter): New.
1183         (infcall_control_state_up): New typedef.
1184         (make_cleanup_restore_infcall_suspend_state)
1185         (make_cleanup_restore_infcall_control_state): Don't declare.
1186         * infcall.c (call_function_by_hand_dummy): Update.
1187         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1188         (make_cleanup_restore_infcall_suspend_state): Remove.
1189         (do_restore_infcall_control_state_cleanup)
1190         (make_cleanup_restore_infcall_control_state): Remove.
1191
1192 2018-09-17  Tom Tromey  <tom@tromey.com>
1193
1194         * gdbthread.h (struct thread_control_state): Add initializer.
1195         (class thread_info) <control>: Remove initializer.
1196         * inferior.h (struct inferior_control_state): Add initializer.
1197         (class inferior) <control>: Remove initializer.
1198         (exit_inferior_1): Update.
1199         * infrun.c (struct infcall_control_state): Add constructors.
1200         (save_infcall_control_state): Use new.
1201         (restore_infcall_control_state, discard_infcall_control_state):
1202         Use delete.
1203
1204 2018-09-17  Tom Tromey  <tom@tromey.com>
1205
1206         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1207         unique_ptr.
1208         <siginfo_data>: Now a unique_xmalloc_ptr.
1209         (save_infcall_suspend_state, restore_infcall_suspend_state)
1210         (discard_infcall_suspend_state)
1211         (get_infcall_suspend_state_regcache): Update.
1212
1213 2018-09-17  Tom Tromey  <tom@tromey.com>
1214
1215         * gdbthread.h (struct thread_suspend_state): Add initializers.
1216         (class thread_info) <suspend>: Remove initializer.
1217         * infrun.c (struct infcall_suspend_state): Add initializers.
1218         (save_infcall_suspend_state): Use new.
1219         (discard_infcall_suspend_state): Use delete.
1220
1221 2018-09-16  Tom Tromey  <tom@tromey.com>
1222
1223         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1224         Remove.
1225         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1226         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1227         (py_varobj_iter_new): Likewise.
1228         (py_varobj_get_iterator): Use gdbpy_ref.
1229
1230 2018-09-16  Tom Tromey  <tom@tromey.com>
1231
1232         * python/py-threadevent.c (py_get_event_thread): Simplify.
1233         * python/py-inferior.c (infpy_thread_from_thread_handle):
1234         Return immediately after calling thread_to_thread_object.  Use
1235         Py_RETURN_NONE.
1236         (thread_to_thread_object): Set the exception on a NULL return.
1237
1238 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1239
1240         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1241
1242 2018-09-16  Tom Tromey  <tom@tromey.com>
1243
1244         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1245         Remove.
1246
1247 2018-09-16  Tom Tromey  <tom@tromey.com>
1248
1249         * python/python-internal.h (thread_to_thread_object): Change
1250         return type.
1251         * python/py-inferior.c (thread_to_thread_object): Return a new
1252         reference.
1253         (infpy_thread_from_thread_handle): Update.
1254         * python/py-infthread.c (gdbpy_selected_thread): Update.
1255         * python/py-stopevent.c (create_stop_event_object): Update.
1256         * python/py-threadevent.c (py_get_event_thread): Return a new
1257         reference.
1258         (py_get_event_thread): Update.
1259         * python/py-event.h (py_get_event_thread): Change return type.
1260         * python/py-continueevent.c (create_continue_event_object):
1261         Update.
1262
1263 2018-09-16  Tom Tromey  <tom@tromey.com>
1264
1265         * python/py-progspace.c (pspy_get_objfiles): Update.
1266         * python/python-internal.h (objfile_to_objfile_object): Change
1267         return type.
1268         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1269         Update.
1270         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1271         Update.
1272         * python/python.c (gdbpy_get_current_objfile): Update.
1273         (gdbpy_objfiles): Update.
1274         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1275         Update.
1276         (objfile_to_objfile_object): Return a new reference.
1277         * python/py-symtab.c (stpy_get_objfile): Update.
1278         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1279         Update.
1280
1281 2018-09-16  Tom Tromey  <tom@tromey.com>
1282
1283         * python/py-inferior.c (infpy_get_progspace): Update.
1284         * python/python-internal.h (pspace_to_pspace_object): Change
1285         return type.
1286         * python/py-newobjfileevent.c
1287         (create_clear_objfiles_event_object): Update.
1288         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1289         Update.
1290         * python/python.c (gdbpy_get_current_progspace): Update.
1291         (gdbpy_progspaces): Update.
1292         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1293         reference.
1294         * python/py-objfile.c (objfpy_get_progspace): Update.
1295         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1296         Update.
1297
1298 2018-09-16  Tom Tromey  <tom@tromey.com>
1299
1300         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1301         (solib_name, block_for_pc, find_pc_line): New functions.
1302         (execute_unwinders): Update.
1303         * python/py-block.c (gdbpy_block_for_pc): Remove.
1304         * python/py-inferior.c (infpy_get_progspace): New function.
1305         (inferior_object_getset) <progspace>: Add.
1306         * python/py-progspace.c (pspy_objfiles): Rewrite.
1307         (pspy_solib_name, pspy_block_for_pc)
1308         (pspy_find_pc_line, pspy_is_valid): New functions.
1309         (progspace_object_methods): Add entries for solib_name,
1310         block_for_pc, find_pc_line, is_valid.
1311         * python/python-internal.h (gdbpy_block_for_pc)
1312         (build_objfiles_list): Don't declare.
1313         * python/python.c: Don't include solib.h.
1314         (gdbpy_solib_name, gdbpy_find_pc_line)
1315         (gdbpy_get_current_progspace, build_objfiles_list)
1316         (gdbpy_objfiles): Remove.
1317         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1318         solib_name, find_pc_line>: Remove entries.
1319
1320 2018-09-16  Tom Tromey  <tom@tromey.com>
1321
1322         * top.c (new_ui_command): Use GNU style for metasyntactic
1323         variables.
1324         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1325         variables.
1326         * maint.c (maintenance_translate_address): Remove "<>" around
1327         text.
1328         * interps.c (interpreter_exec_cmd): Use GNU style for
1329         metasyntactic variables.
1330         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1331         metasyntactic variables.
1332         * tracepoint.c (tfind_range_command): Use GNU style for
1333         metasyntactic variables.
1334         (tfind_outside_command): Likewise.
1335         (_initialize_tracepoint): Likewise.
1336         * remote.c (extended_remote_target::create_inferior): Use GNU
1337         style for metasyntactic variables.
1338         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1339         metasyntactic variables.
1340         (adi_assign_command): Likewise.
1341
1342 2018-09-16  Tom Tromey  <tom@tromey.com>
1343
1344         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1345         metasyntactic variables.  Print message if no disassembler options
1346         are available.
1347
1348 2018-09-15  Tom Tromey  <tom@tromey.com>
1349
1350         * infcmd.c (get_inferior_args): Return const char *.
1351         * inferior.h (get_inferior_args): Return type now const.
1352         * linux-tdep.c (linux_fill_prpsinfo): Update.
1353         * procfs.c (procfs_target::make_corefile_notes): Update.
1354
1355 2018-09-07  Tom Tromey  <tom@tromey.com>
1356
1357         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1358         inside the TRY.
1359
1360 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1361
1362         * nios2-tdep.c (nios2_type_align): New.
1363         (nios2_gdb_arch_init): Install type_align hook.
1364
1365 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1366
1367         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1368         type that is neither object file owned, nor gdbarch owned.
1369         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1370         gdbarch is non-NULL.
1371         (alloc_type_instance): Allocate non-objfile owned types on the
1372         gdbarch obstack.
1373         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1374         using TYPE_ALLOC to ensure memory is allocated on the correct
1375         obstack.
1376         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1377         obstack, or the gdbarch obstack.
1378         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1379
1380 2018-09-14  Tom Tromey  <tom@tromey.com>
1381
1382         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1383         block.
1384
1385 2018-09-14  Tom Tromey  <tom@tromey.com>
1386
1387         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1388
1389 2018-09-13  Tom Tromey  <tom@tromey.com>
1390
1391         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1392         static.
1393
1394 2018-09-13  Tom Tromey  <tom@tromey.com>
1395
1396         * exec.c (try_open_exec_file): Use std::string.
1397
1398 2018-09-13  Tom Tromey  <tom@tromey.com>
1399
1400         * utils.h (gdb_bfd_errmsg): Return std::string.
1401         * exec.c (exec_file_attach): Update.
1402         * compile/compile-object-load.c (compile_object_load): Update.
1403         * utils.c (gdb_bfd_errmsg): Return std::string.
1404
1405 2018-09-13  Tom Tromey  <tom@tromey.com>
1406
1407         * procfs.c (struct procinfo_deleter): New.
1408         (procinfo_up): New typedef.
1409         (do_destroy_procinfo_cleanup): Remove.
1410         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
1411
1412 2018-09-13  Tom Tromey  <tom@tromey.com>
1413
1414         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
1415
1416 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1417 2018-09-13  Tom Tromey  <tom@tromey.com>
1418
1419         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
1420         (pspy_get_objfiles): New function.
1421         (progspace_object_methods): New.
1422         (pspace_object_type): Add tp_methods callback.
1423         * python/python-internal.h (build_objfiles_list): New
1424         declaration.
1425         * python/python.c (build_objfiles_list): New function.
1426         (gdbpy_objfiles): Implement using build_objfiles_list.
1427         * NEWS: Mention the Progspace.objfiles method.
1428
1429 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1430
1431         * python/py-inferior.c (infpy_get_progspace): New function.
1432         (inferior_object_getset): Add progspace property.
1433         * NEWS: Mention the new property.
1434
1435 2018-09-13  Tom Tromey  <tom@tromey.com>
1436
1437         PR rust/23650:
1438         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
1439
1440 2018-09-13  Tom Tromey  <tom@tromey.com>
1441
1442         PR rust/23626:
1443         * rust-lang.c (rust_enum_variant): Now static.
1444         (rust_empty_enum_p): New function.
1445         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
1446         Handle empty enum.
1447
1448 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1449
1450         * python/py-inferior.c (infpy_repr): New.
1451         (inferior_object_type): Register infpy_repr.
1452         * python/py-objfile.c (objfpy_repr): New.
1453         (objfile_object_type): Register objfpy_repr.
1454
1455 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1456
1457         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
1458
1459 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1460
1461         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
1462         typo.
1463
1464 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
1465
1466         * common/common-utils.c: Don't include '<sys/stat.h>'.
1467         (is_regular_file): Move to...
1468         * common/filestuff.c (is_regular_file): ... here.
1469         * common/common-utils.h (is_regular_file): Move to...
1470         * common/filestuff.h (is_regular_file): ... here.
1471
1472 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
1473
1474         * skip.c (debug_skip): New variable.
1475         (skiplist_entry::do_skip_file_p): Add debug output.
1476         (skiplist_entry::do_skip_gfile_p): Likewise.
1477         (skiplist_entry::skip_function_p): Likewise.
1478         (_initialize_step_skip): Create debug command.
1479         * NEWS: Mention set/show debug skip.
1480
1481 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1482
1483         * darwin-nat.c (should_disable_startup_with_shell):
1484         New function.
1485         (darwin_nat_target::create_inferior): Add call.
1486
1487 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1488
1489         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
1490         inf_port, msg_state>: Initialize.
1491         (struct darwin_thread_info) <signaled, single_step>: Change
1492         type and initialize.
1493         (struct darwin_thread_info) <event>: Initialize.
1494
1495 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1496
1497         PR gdb/23555
1498         PR gdb/23558
1499         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
1500         guesses.
1501
1502 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1503
1504         Revert:
1505         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1506
1507         PR gdb/23555
1508         PR gdb/23558
1509         * gnulib/aclocal.m4: Regenerate.
1510         * gnulib/config.in: Regenerate.
1511         * gnulib/configure: Regenerate.
1512         * gnulib/import/Makefile.am: Update.
1513         * gnulib/import/Makefile.in: Update.
1514         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1515         * gnulib/import/_Noreturn.h: ... this.
1516         * gnulib/import/alloca.in.h: Update.
1517         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
1518         * gnulib/import/arg-nonnull.h: ... this.
1519         * gnulib/import/assure.h: Update.
1520         * gnulib/import/at-func.c: Update.
1521         * gnulib/import/basename-lgpl.c: Update.
1522         * gnulib/import/extra/snippet/c++defs.h: Rename to...
1523         * gnulib/import/c++defs.h: ... this.
1524         * gnulib/import/canonicalize-lgpl.c: Update.
1525         * gnulib/import/cdefs.h: Update.
1526         * gnulib/import/chdir-long.c: Update.
1527         * gnulib/import/chdir-long.h: Update.
1528         * gnulib/import/cloexec.c: Update.
1529         * gnulib/import/cloexec.h: Update.
1530         * gnulib/import/close.c: Update.
1531         * gnulib/import/closedir.c: Update.
1532         * gnulib/import/config.charset: Update.
1533         * gnulib/import/dirent-private.h: Update.
1534         * gnulib/import/dirent.in.h: Update.
1535         * gnulib/import/dirfd.c: Update.
1536         * gnulib/import/dirname-lgpl.c: Update.
1537         * gnulib/import/dirname.h: Update.
1538         * gnulib/import/dosname.h: Update.
1539         * gnulib/import/dup-safer-flag.c: Update.
1540         * gnulib/import/dup-safer.c: Update.
1541         * gnulib/import/dup.c: Update.
1542         * gnulib/import/dup2.c: Update.
1543         * gnulib/import/errno.in.h: Update.
1544         * gnulib/import/error.c: Update.
1545         * gnulib/import/error.h: Update.
1546         * gnulib/import/exitfail.c: Update.
1547         * gnulib/import/exitfail.h: Update.
1548         * gnulib/import/extra/update-copyright: Update.
1549         * gnulib/import/fchdir.c: Update.
1550         * gnulib/import/fcntl.c: Update.
1551         * gnulib/import/fcntl.in.h: Update.
1552         * gnulib/import/fd-hook.c: Update.
1553         * gnulib/import/fd-hook.h: Update.
1554         * gnulib/import/fd-safer-flag.c: Update.
1555         * gnulib/import/fd-safer.c: Update.
1556         * gnulib/import/fdopendir.c: Update.
1557         * gnulib/import/filename.h: Update.
1558         * gnulib/import/filenamecat-lgpl.c: Update.
1559         * gnulib/import/filenamecat.h: Update.
1560         * gnulib/import/flexmember.h: Update.
1561         * gnulib/import/float+.h: Update.
1562         * gnulib/import/float.c: Update.
1563         * gnulib/import/float.in.h: Update.
1564         * gnulib/import/fnmatch.c: Update.
1565         * gnulib/import/fnmatch.in.h: Update.
1566         * gnulib/import/fnmatch_loop.c: Update.
1567         * gnulib/import/fpucw.h: Update.
1568         * gnulib/import/frexp.c: Update.
1569         * gnulib/import/frexpl.c: Update.
1570         * gnulib/import/fstat.c: Update.
1571         * gnulib/import/fstatat.c: Update.
1572         * gnulib/import/getcwd-lgpl.c: Update.
1573         * gnulib/import/getcwd.c: Update.
1574         * gnulib/import/getdtablesize.c: Update.
1575         * gnulib/import/getlogin_r.c: Update.
1576         * gnulib/import/getprogname.c: Update.
1577         * gnulib/import/getprogname.h: Update.
1578         * gnulib/import/gettext.h: Update.
1579         * gnulib/import/gettimeofday.c: Update.
1580         * gnulib/import/glob-libc.h: Update.
1581         * gnulib/import/glob.c: Update.
1582         * gnulib/import/glob.in.h: Update.
1583         * gnulib/import/glob_internal.h: Update.
1584         * gnulib/import/glob_pattern_p.c: Update.
1585         * gnulib/import/globfree.c: Update.
1586         * gnulib/import/hard-locale.c: Update.
1587         * gnulib/import/hard-locale.h: Update.
1588         * gnulib/import/intprops.h: Update.
1589         * gnulib/import/inttypes.in.h: Update.
1590         * gnulib/import/isnan.c: Update.
1591         * gnulib/import/isnand-nolibm.h: Update.
1592         * gnulib/import/isnand.c: Update.
1593         * gnulib/import/isnanl-nolibm.h: Update.
1594         * gnulib/import/isnanl.c: Update.
1595         * gnulib/import/itold.c: Update.
1596         * gnulib/import/libc-config.h: Update.
1597         * gnulib/import/limits.in.h: Update.
1598         * gnulib/import/localcharset.c: Update.
1599         * gnulib/import/localcharset.h: Update.
1600         * gnulib/import/localtime-buffer.c: Update.
1601         * gnulib/import/localtime-buffer.h: Update.
1602         * gnulib/import/lstat.c: Update.
1603         * gnulib/import/m4/00gnulib.m4: Update.
1604         * gnulib/import/m4/__inline.m4: Update.
1605         * gnulib/import/m4/absolute-header.m4: Update.
1606         * gnulib/import/m4/alloca.m4: Update.
1607         * gnulib/import/m4/builtin-expect.m4: Update.
1608         * gnulib/import/m4/canonicalize.m4: Update.
1609         * gnulib/import/m4/chdir-long.m4: Update.
1610         * gnulib/import/m4/close.m4: Update.
1611         * gnulib/import/m4/closedir.m4: Update.
1612         * gnulib/import/m4/configmake.m4: Update.
1613         * gnulib/import/m4/d-ino.m4: Update.
1614         * gnulib/import/m4/d-type.m4: Update.
1615         * gnulib/import/m4/dirent_h.m4: Update.
1616         * gnulib/import/m4/dirfd.m4: Update.
1617         * gnulib/import/m4/dirname.m4: Update.
1618         * gnulib/import/m4/double-slash-root.m4: Update.
1619         * gnulib/import/m4/dup.m4: Update.
1620         * gnulib/import/m4/dup2.m4: Update.
1621         * gnulib/import/m4/eealloc.m4: Update.
1622         * gnulib/import/m4/environ.m4: Update.
1623         * gnulib/import/m4/errno_h.m4: Update.
1624         * gnulib/import/m4/error.m4: Update.
1625         * gnulib/import/m4/exponentd.m4: Update.
1626         * gnulib/import/m4/exponentl.m4: Update.
1627         * gnulib/import/m4/extensions.m4: Update.
1628         * gnulib/import/m4/extern-inline.m4: Update.
1629         * gnulib/import/m4/fchdir.m4: Update.
1630         * gnulib/import/m4/fcntl-o.m4: Update.
1631         * gnulib/import/m4/fcntl.m4: Update.
1632         * gnulib/import/m4/fcntl_h.m4: Update.
1633         * gnulib/import/m4/fdopendir.m4: Update.
1634         * gnulib/import/m4/filenamecat.m4: Update.
1635         * gnulib/import/m4/flexmember.m4: Update.
1636         * gnulib/import/m4/float_h.m4: Update.
1637         * gnulib/import/m4/fnmatch.m4: Update.
1638         * gnulib/import/m4/fnmatch_h.m4: Update.
1639         * gnulib/import/m4/fpieee.m4: Update.
1640         * gnulib/import/m4/frexp.m4: Update.
1641         * gnulib/import/m4/frexpl.m4: Update.
1642         * gnulib/import/m4/fstat.m4: Update.
1643         * gnulib/import/m4/fstatat.m4: Update.
1644         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1645         * gnulib/import/m4/getcwd-path-max.m4: Update.
1646         * gnulib/import/m4/getcwd.m4: Update.
1647         * gnulib/import/m4/getdtablesize.m4: Update.
1648         * gnulib/import/m4/getlogin.m4: Update.
1649         * gnulib/import/m4/getlogin_r.m4: Update.
1650         * gnulib/import/m4/getpagesize.m4: Update.
1651         * gnulib/import/m4/getprogname.m4: Update.
1652         * gnulib/import/m4/gettimeofday.m4: Update.
1653         * gnulib/import/m4/glibc21.m4: Update.
1654         * gnulib/import/m4/glob.m4: Update.
1655         * gnulib/import/m4/glob_h.m4: Update.
1656         * gnulib/import/m4/gnulib-cache.m4: Update.
1657         * gnulib/import/m4/gnulib-common.m4: Update.
1658         * gnulib/import/m4/gnulib-comp.m4: Update.
1659         * gnulib/import/m4/gnulib-tool.m4: Update.
1660         * gnulib/import/m4/hard-locale.m4: Update.
1661         * gnulib/import/m4/include_next.m4: Update.
1662         * gnulib/import/m4/inttypes-pri.m4: Update.
1663         * gnulib/import/m4/inttypes.m4: Update.
1664         * gnulib/import/m4/isnand.m4: Update.
1665         * gnulib/import/m4/isnanl.m4: Update.
1666         * gnulib/import/m4/largefile.m4: Update.
1667         * gnulib/import/m4/limits-h.m4: Update.
1668         * gnulib/import/m4/localcharset.m4: Update.
1669         * gnulib/import/m4/locale-fr.m4: Update.
1670         * gnulib/import/m4/locale-ja.m4: Update.
1671         * gnulib/import/m4/locale-zh.m4: Update.
1672         * gnulib/import/m4/localtime-buffer.m4: Update.
1673         * gnulib/import/m4/longlong.m4: Update.
1674         * gnulib/import/m4/lstat.m4: Update.
1675         * gnulib/import/m4/malloc.m4: Update.
1676         * gnulib/import/m4/malloca.m4: Update.
1677         * gnulib/import/m4/math_h.m4: Update.
1678         * gnulib/import/m4/mbrtowc.m4: Update.
1679         * gnulib/import/m4/mbsinit.m4: Update.
1680         * gnulib/import/m4/mbsrtowcs.m4: Update.
1681         * gnulib/import/m4/mbstate_t.m4: Update.
1682         * gnulib/import/m4/memchr.m4: Update.
1683         * gnulib/import/m4/memmem.m4: Update.
1684         * gnulib/import/m4/mempcpy.m4: Update.
1685         * gnulib/import/m4/memrchr.m4: Update.
1686         * gnulib/import/m4/mkdir.m4: Update.
1687         * gnulib/import/m4/mkstemp.m4: Update.
1688         * gnulib/import/m4/mmap-anon.m4: Update.
1689         * gnulib/import/m4/mode_t.m4: Update.
1690         * gnulib/import/m4/msvc-inval.m4: Update.
1691         * gnulib/import/m4/msvc-nothrow.m4: Update.
1692         * gnulib/import/m4/multiarch.m4: Update.
1693         * gnulib/import/m4/nocrash.m4: Update.
1694         * gnulib/import/m4/off_t.m4: Update.
1695         * gnulib/import/m4/onceonly.m4: Update.
1696         * gnulib/import/m4/open-cloexec.m4: Update.
1697         * gnulib/import/m4/open.m4: Update.
1698         * gnulib/import/m4/openat.m4: Update.
1699         * gnulib/import/m4/opendir.m4: Update.
1700         * gnulib/import/m4/pathmax.m4: Update.
1701         * gnulib/import/m4/rawmemchr.m4: Update.
1702         * gnulib/import/m4/readdir.m4: Update.
1703         * gnulib/import/m4/readlink.m4: Update.
1704         * gnulib/import/m4/realloc.m4: Update.
1705         * gnulib/import/m4/rename.m4: Update.
1706         * gnulib/import/m4/rewinddir.m4: Update.
1707         * gnulib/import/m4/rmdir.m4: Update.
1708         * gnulib/import/m4/save-cwd.m4: Update.
1709         * gnulib/import/m4/secure_getenv.m4: Update.
1710         * gnulib/import/m4/setenv.m4: Update.
1711         * gnulib/import/m4/signal_h.m4: Update.
1712         * gnulib/import/m4/ssize_t.m4: Update.
1713         * gnulib/import/m4/stat-time.m4: Update.
1714         * gnulib/import/m4/stat.m4: Update.
1715         * gnulib/import/m4/std-gnu11.m4: Update.
1716         * gnulib/import/m4/stdbool.m4: Update.
1717         * gnulib/import/m4/stddef_h.m4: Update.
1718         * gnulib/import/m4/stdint.m4: Update.
1719         * gnulib/import/m4/stdio_h.m4: Update.
1720         * gnulib/import/m4/stdlib_h.m4: Update.
1721         * gnulib/import/m4/strchrnul.m4: Update.
1722         * gnulib/import/m4/strdup.m4: Update.
1723         * gnulib/import/m4/strerror.m4: Update.
1724         * gnulib/import/m4/string_h.m4: Update.
1725         * gnulib/import/m4/strstr.m4: Update.
1726         * gnulib/import/m4/strtok_r.m4: Update.
1727         * gnulib/import/m4/sys_socket_h.m4: Update.
1728         * gnulib/import/m4/sys_stat_h.m4: Update.
1729         * gnulib/import/m4/sys_time_h.m4: Update.
1730         * gnulib/import/m4/sys_types_h.m4: Update.
1731         * gnulib/import/m4/tempname.m4: Update.
1732         * gnulib/import/m4/time_h.m4: Update.
1733         * gnulib/import/m4/unistd-safer.m4: Update.
1734         * gnulib/import/m4/unistd_h.m4: Update.
1735         * gnulib/import/m4/warn-on-use.m4: Update.
1736         * gnulib/import/m4/wchar_h.m4: Update.
1737         * gnulib/import/m4/wchar_t.m4: Update.
1738         * gnulib/import/m4/wctype_h.m4: Update.
1739         * gnulib/import/m4/wint_t.m4: Update.
1740         * gnulib/import/malloc.c: Update.
1741         * gnulib/import/malloc/scratch_buffer.h: Update.
1742         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1743         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1744         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1745         * gnulib/import/malloca.c: Update.
1746         * gnulib/import/malloca.h: Update.
1747         * gnulib/import/malloca.valgrind: Update.
1748         * gnulib/import/math.in.h: Update.
1749         * gnulib/import/mbrtowc.c: Update.
1750         * gnulib/import/mbsinit.c: Update.
1751         * gnulib/import/mbsrtowcs-impl.h: Update.
1752         * gnulib/import/mbsrtowcs-state.c: Update.
1753         * gnulib/import/mbsrtowcs.c: Update.
1754         * gnulib/import/memchr.c: Update.
1755         * gnulib/import/memmem.c: Update.
1756         * gnulib/import/mempcpy.c: Update.
1757         * gnulib/import/memrchr.c: Update.
1758         * gnulib/import/mkdir.c: Update.
1759         * gnulib/import/mkstemp.c: Update.
1760         * gnulib/import/msvc-inval.c: Update.
1761         * gnulib/import/msvc-inval.h: Update.
1762         * gnulib/import/msvc-nothrow.c: Update.
1763         * gnulib/import/msvc-nothrow.h: Update.
1764         * gnulib/import/open.c: Update.
1765         * gnulib/import/openat-die.c: Update.
1766         * gnulib/import/openat-priv.h: Update.
1767         * gnulib/import/openat-proc.c: Update.
1768         * gnulib/import/openat.c: Update.
1769         * gnulib/import/openat.h: Update.
1770         * gnulib/import/opendir.c: Update.
1771         * gnulib/import/pathmax.h: Update.
1772         * gnulib/import/pipe-safer.c: Update.
1773         * gnulib/import/rawmemchr.c: Update.
1774         * gnulib/import/readdir.c: Update.
1775         * gnulib/import/readlink.c: Update.
1776         * gnulib/import/realloc.c: Update.
1777         * gnulib/import/ref-add.sin: Update.
1778         * gnulib/import/ref-del.sin: Update.
1779         * gnulib/import/rename.c: Update.
1780         * gnulib/import/rewinddir.c: Update.
1781         * gnulib/import/rmdir.c: Update.
1782         * gnulib/import/same-inode.h: Update.
1783         * gnulib/import/save-cwd.c: Update.
1784         * gnulib/import/save-cwd.h: Update.
1785         * gnulib/import/scratch_buffer.h: Update.
1786         * gnulib/import/secure_getenv.c: Update.
1787         * gnulib/import/setenv.c: Update.
1788         * gnulib/import/signal.in.h: Update.
1789         * gnulib/import/stat-time.c: Update.
1790         * gnulib/import/stat-time.h: Update.
1791         * gnulib/import/stat-w32.c: Update.
1792         * gnulib/import/stat-w32.h: Update.
1793         * gnulib/import/stat.c: Update.
1794         * gnulib/import/stdbool.in.h: Update.
1795         * gnulib/import/stddef.in.h: Update.
1796         * gnulib/import/stdint.in.h: Update.
1797         * gnulib/import/stdio.in.h: Update.
1798         * gnulib/import/stdlib.in.h: Update.
1799         * gnulib/import/str-two-way.h: Update.
1800         * gnulib/import/strchrnul.c: Update.
1801         * gnulib/import/strdup.c: Update.
1802         * gnulib/import/streq.h: Update.
1803         * gnulib/import/strerror-override.c: Update.
1804         * gnulib/import/strerror-override.h: Update.
1805         * gnulib/import/strerror.c: Update.
1806         * gnulib/import/string.in.h: Update.
1807         * gnulib/import/stripslash.c: Update.
1808         * gnulib/import/strnlen1.c: Update.
1809         * gnulib/import/strnlen1.h: Update.
1810         * gnulib/import/strstr.c: Update.
1811         * gnulib/import/strtok_r.c: Update.
1812         * gnulib/import/sys_stat.in.h: Update.
1813         * gnulib/import/sys_time.in.h: Update.
1814         * gnulib/import/sys_types.in.h: Update.
1815         * gnulib/import/tempname.c: Update.
1816         * gnulib/import/tempname.h: Update.
1817         * gnulib/import/time.in.h: Update.
1818         * gnulib/import/unistd--.h: Update.
1819         * gnulib/import/unistd-safer.h: Update.
1820         * gnulib/import/unistd.in.h: Update.
1821         * gnulib/import/unsetenv.c: Update.
1822         * gnulib/import/verify.h: Update.
1823         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1824         * gnulib/import/wchar.in.h: Update.
1825         * gnulib/import/wctype.in.h: Update.
1826         * gnulib/import/xalloc-oversized.h: Update.
1827         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1828         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1829
1830 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
1831
1832         * record-btrace.c (get_thread_current_frame): Remove
1833         old_inferior_ptid.
1834
1835 2018-09-10  Jerome Guitton  <guitton@adacore.com>
1836
1837         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
1838         with check_tag to 1 if and only if the type is tagged and the
1839         component being searched cannot been found in the current
1840         view. Otherwise, always call ada_to_fixed_type with
1841         check_tag to 0.
1842
1843 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1844
1845         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
1846         declaration.
1847         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
1848         * ada-varobj.c (ada_varobj_get_number_of_children,
1849         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
1850
1851 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1852
1853         * ada-valprint.c (ada_value_print): Use type instead of
1854         enclosing type.
1855
1856 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1857
1858         * ada-lang.c (ada_value_subscript): Handle case when parameter is
1859         an array of access to unconstrained array.
1860
1861 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1862
1863         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
1864         (ada_check_typedef): Use it.
1865
1866 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1867
1868         * ada-varobj.c (ada_varobj_describe_struct_child)
1869         (ada_varobj_describe_child): Handle union case like struct one.
1870
1871 2018-09-10  Tom Tromey  <tom@tromey.com>
1872
1873         PR python/18380:
1874         * python/python.c (_initialize_python): Make example in "python"
1875         help work in Python 3.
1876
1877 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
1878
1879         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
1880         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
1881         $(EXEEXT) to the script, as it is not a program.
1882
1883 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
1884
1885         * python/py-prettyprint.c (pretty_print_one_value): Return
1886         gdbpy_ref<>.
1887         (print_string_repr): Adjust.
1888         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
1889         * python/python-internal.h (apply_varobj_pretty_printer): Return
1890         gdbpy_ref<>.
1891         * varobj.c (varobj_value_get_print_value): Adjust.
1892
1893 2018-09-08  Tom Tromey  <tom@tromey.com>
1894
1895         PR python/16047:
1896         * python/py-prettyprint.c (pretty_print_one_value): Check for
1897         to_string method.
1898
1899 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1900
1901         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
1902         replace_operator_with_call.
1903
1904 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1905
1906         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
1907
1908 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1909
1910         * ada-typeprint.c (print_range): Print the bounds using TYPE
1911         rather than its TYPE_TARGET_TYPE.
1912
1913 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1914
1915         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
1916         call to ada_to_fixed_value_create.
1917
1918 2018-09-08  Jerome Guitton  <guitton@adacore.com>
1919
1920         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
1921
1922 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1923
1924         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
1925         by calls to error.
1926
1927 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1928
1929         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
1930         Move update of loop variable "fi".
1931
1932 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1933
1934         * ada-lang.c (value_assign_to_component): In the case of
1935         big-endian targets, extract the bits of the given VAL
1936         using an src_offset of zero if container is not a scalar.
1937
1938 2018-09-06  Simon Ser  <contact@emersion.fr>
1939
1940         PR gdb/23105
1941         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
1942         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
1943         * fbsd-tdep.c (fbsd_make_note_desc): New.
1944         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
1945         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
1946         * target.h (enum target_object) Add FreeBSD-specific
1947         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
1948
1949 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1950
1951         * compile/compile-c.h (generate_c_for_variable_locations):
1952         Change reference to pointer.
1953         * compile/compile-c-support.c (compile_program) <compute>:
1954         Likewise.
1955         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
1956         (generate_c_for_for_one_variable): Likewise
1957         (generate_c_for_variable_locations): Likewise
1958         * compile/compile-c-types.c (compile_c_instance::convert_type):
1959         Likewise
1960         * compile/compile-cplus-symbols.c (convert_one_symbol):
1961         std::move the scope passed to enter_scope.
1962         * compile/compile-cplus-types.c
1963         (compile_cplus_instance::enter_scope): Make parameter
1964         rvalue-reference.
1965         (compile_cplus_instance::new_scope): Change reference to
1966         pointer.
1967         (compile_cplus_instance::convert_type): Likewise
1968         (compile_cplus_convert_typedef): std::move the scope passed to
1969         enter_scope.
1970         (compile_cplus_convert_struct_or_union): Likewise.
1971         (compile_cplus_convert_enum): Likewise.
1972         (compile_cplus_convert_namespace): Likewise.
1973         * compile/compile-cplus.h (compile_cplus_instance)
1974         <enter_scope>: Make parameter rvalue-reference.
1975         * compile/compile-internal.h (compile_instance)
1976         <get_cached_type>: Likewise
1977         * compile/compile-loc2c.c (push): Likewise
1978         (pushf): Likewise
1979         (unary): Likewise
1980         (binary): Likewise
1981         (print_label): Likewise
1982         (pushf_register_address): Likewise
1983         (pushf_register): Likewise
1984         (do_compile_dwarf_expr_to_c): Likewise
1985         (compile_dwarf_expr_to_c): Likewise
1986         (compile_dwarf_bounds_to_c): Likewise
1987         * compile/compile.c (compile_instance::get_cached_type):
1988         Likewise
1989         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
1990         (compile_dwarf_bounds_to_c): Likewise
1991         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
1992         (dwarf2_compile_property_to_c): Likewise
1993         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
1994         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
1995         Likewise
1996
1997 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1998
1999         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2000         * tui/tui-data.c (init_content_element): Don't initialize it.
2001
2002 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2003
2004         * tui/tui-data.h (struct tui_win_info)
2005         <detail::opaque>: Remove.
2006         * tui/tui-data.c (init_win_info): Remove assignment.
2007
2008 2018-09-05  Tom Tromey  <tom@tromey.com>
2009
2010         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2011         -Wformat-nonliteral.
2012         * target-float.c (host_float_ops<T>::to_string)
2013         (host_float_ops<T>::from_string): Use
2014         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2015         * configure: Rebuild.
2016
2017 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2018
2019         * printcmd.c (printf_c_string): Use
2020         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2021         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2022
2023 2018-09-05  Tom Tromey  <tom@tromey.com>
2024
2025         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2026
2027 2018-09-05  Tom de Vries  <tdevries@suse.de>
2028
2029         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2030         with resolve_abstract_p == true.
2031         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2032         defaulting to false. Propagate resolve_abstract_p to
2033         dwarf2_fetch_die_loc_sect_off.
2034         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2035         parameter, defaulting to false.
2036         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2037         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2038         parameter.
2039         * dwarf2read.h (struct die_info): Forward-declare.
2040         (die_info_ptr): New typedef.
2041         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2042
2043 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2044
2045         GDB 8.2 released.
2046
2047 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2048             Pedro Alves  <palves@redhat.com>
2049
2050         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2051         "aclocal-m4-deps.mk".  Include file here.
2052         $(srcdir)/aclocal.m4: Add "configure.ac".
2053         * gnulib/aclocal-m4-deps.mk: New file.
2054         * gnulib/update-gnulib.sh: Automatically update
2055         "aclocal-m4-deps.mk".
2056
2057 2018-09-04  Tom Tromey  <tom@tromey.com>
2058
2059         * configure: Rebuild.
2060         * configure.ac: Remove multi-ice code.
2061
2062 2018-09-04  Tom Tromey  <tom@tromey.com>
2063
2064         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2065         (ada-exp.o): Update.
2066
2067 2018-09-04  Tom Tromey  <tom@tromey.com>
2068
2069         * Makefile.in (printcmd.o, target-float.o): Remove.
2070         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2071
2072 2018-09-04  Tom Tromey  <tom@tromey.com>
2073
2074         * gnulib/Makefile.in: Remove obsolete comment.
2075         * Makefile.in: Remove obsolete comment.
2076
2077 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2078
2079         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2080         line with '+'.
2081
2082 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2083
2084         * riscv-tdep.c: Add 'prologue-value.h' include.
2085         (struct riscv_unwind_cache): New struct.
2086         (riscv_debug_unwinder): New global.
2087         (riscv_scan_prologue): Update arguments, capture register details
2088         from prologue scan.
2089         (riscv_skip_prologue): Reformat arguments line, move end of
2090         prologue calculation into riscv_scan_prologue.
2091         (riscv_frame_cache): Update return type, create
2092         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2093         details.
2094         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2095         (riscv_frame_prev_register): Use the trad_frame within the
2096         riscv_unwind_cache.
2097         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2098         flag.
2099
2100 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2101
2102         * trad-frame.h (trad_frame_set_realreg): Declare.
2103         (trad_frame_set_addr): Declare.
2104         * trad-frame.c (trad_frame_set_realreg): Define new function.
2105         (trad_frame_set_addr): Define new function.
2106         (trad_frame_set_reg_realreg): Use new function.
2107         (trad_frame_set_reg_addr): Use new function.
2108
2109 2018-09-01  Keith Seitz  <keiths@redhat.com>
2110
2111         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2112         pulongest instead of "%lld".
2113         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2114         ATTRIBUTE_UNUSED.
2115
2116 2018-08-31  Tom Tromey  <tom@tromey.com>
2117
2118         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2119         variant part type.
2120
2121 2018-08-31  Pedro Alves  <palves@redhat.com>
2122
2123         * gdbarch.h: Regenerate.
2124
2125 2018-08-31  Pedro Alves  <palves@redhat.com>
2126
2127         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2128         * target.h (Hardware watchpoint interfaces): Describe
2129         continuable/steppable/non-steppable watchpoints.
2130         * gdbarch.h, gdbarch.c: Regenerate.
2131
2132 2018-08-31  Pedro Alves  <palves@redhat.com>
2133
2134         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2135         Delete.
2136         * s390-linux-nat.c
2137         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2138         * target.h (target_ops::have_continuable_watchpoint): Delete.
2139         (target_have_continuable_watchpoint): Delete.
2140         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2141         * target-delegates.c: Regenerate.
2142
2143 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2144
2145         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2146         the files present in "gnulib/import/m4/".
2147
2148 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2149
2150         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2151         c.sw, c.swsp, and c.sdsp.
2152
2153 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2154
2155         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2156         (riscv_read_misa_reg): Don't cache value read into inferior data.
2157         (riscv_new_inferior_data): Delete.
2158         (riscv_inferior_data_cleanup): Delete.
2159         (riscv_inferior_data): Delete.
2160         (riscv_invalidate_inferior_data): Delete.
2161         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2162
2163 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2164
2165         * compile/compile-cplus-types.c
2166         (compile_cplus_instance::leave_scope): Take the address of scope
2167         object.
2168         (compile_cplus_instance::convert_qualified_base): Compare quals
2169         to 0.
2170
2171 2018-08-30  Keith Seitz  <keiths@redhat.com>
2172
2173         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2174         Use "%s" and host_address_to_string instead of "%p" in printf.
2175
2176 2018-08-29  Keith Seitz  <keiths@redhat.com>
2177
2178         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2179         and compile-cplus-types.c.
2180         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2181         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2182         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2183         Declare.
2184         * compile/compile-c-support.c: Include compile-cplus.h.
2185         (load_libcompile): Templatize.
2186         (get_compile_context): "New" function.
2187         (c_get_compile_context): Use get_compile_context.
2188         (cplus_get_compile_context): New function.
2189         (cplus_push_user_expression, cplus_pop_user_expression)
2190         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2191         (cplus_compute_program): Define new structs/functions.
2192         * compile/compile-cplus-symmbols.c: New file.
2193         * compile/compile-cplus-types.c: New file.
2194         * compile/compile-cplus.h: New file.
2195         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2196         Declare.
2197         * compile/compile-object-load.c (get_out_value_type): Use
2198         strncmp_iw when comparing symbol names.
2199         (compile_object_load): Add mst_bss and mst_data.
2200         * compile/compile.c (_initialize_compile): Remove
2201         -Wno-implicit-function-declaration from `compile_args'.
2202         * compile/gcc-cp-plugin.h: New file.
2203         * NEWS: Mention C++ compile support and new debug options.
2204
2205 2018-08-29  Keith Seitz  <keiths@redhat.com>
2206
2207         * linespec.c (collect_info::add_symbol): Make virtual.
2208         (struct symbol_searcher_collect_info): New struct.
2209         (symbol_searcher::find_all_symbols): New method.
2210         * symtab.h (class symbol_searcher): New class.
2211
2212 2018-08-29  Keith Seitz  <keiths@redhat.com>
2213
2214         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2215         Change to vector of block_symbol.  Update all users.
2216         (struct collect_info) <symbols>: Likewise.
2217         (collect_info::add_symbol): Take block_symbol as argument.
2218         Update all callers.
2219         (decode_compound_collector) <m_symbols>: Change type to vector
2220         of block_symbol.  Update all users.
2221         (decode_compound_collector::operator ()): Change parameter type
2222         to block_symbol.
2223         (find_method, find_function_symbols, find_linespec_symbols)
2224         (find_label_symbols_in_block, find_label_symbols): Change symbol
2225         vectors to block_symbol vectors.
2226         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2227         block_symbol.
2228
2229 2018-08-29  Keith Seitz  <keiths@redhat.com>
2230
2231         * linespec.c (symbolp): Remove typedef and VEC definitions.
2232         (bound_minimal_symbol_d): Likewise.
2233
2234 2018-08-29  Keith Seitz  <keiths@redhat.com>
2235
2236         * linespec.c (decode_compound_collector::decode_compound_collector):
2237         Remove initialization for `m_symtabs'.
2238         (decode_compound_collector::release_symbols): Change return type
2239         to std::vector.  Update all callers.
2240         (class decode_compound_collector) <m_symbols>: Change type to
2241         std::vector.
2242         (lookup_prefix_sym): Change return type to std::vector.  Update all
2243         callers.
2244         (compare_symbols): Remove.
2245         (std_compare_symbols): Rename to `compare_symbols'.
2246         (find_method): Change `sym_classes' parameter to std::vector.
2247         Update all callers.  Use std::sort to sort sym_classes.
2248         (find_linespec_symbols): Remove cleanup.
2249
2250 2018-08-29  Keith Seitz  <keiths@redhat.com>
2251
2252         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2253         std::vector.  Update all users.
2254         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2255         (struct collect_info) <minimal_symbols>: Likewise.
2256         (compare_msymbols): Return bool.  Change parameters to const
2257         bound_minimal_symbol references.
2258         (find_method, find_function_symbols, find_linespec_symbols): Change
2259         `minsyms' parameter to std::vector.  Update all callers.
2260
2261 2018-08-29  Keith Seitz  <keiths@redhat.com>
2262
2263         * linespec.c (struct linespec) <label_symbols>: Change type to
2264         std::vector.  Update all users.
2265         (find_label_symbols_in_block): Change `result' parameter to
2266         std::vector.  Update all callers.
2267         (find_label_symbols): Return std::vector.  Update all callers.
2268
2269 2018-08-29  Keith Seitz  <keiths@redhat.com>
2270
2271         * linespec.c (struct linespec) <function_symbols>: Change type to
2272         std::vector.  Update all users.
2273         (struct collect_info) <function_symbols>: Likewise.
2274         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2275         (std_compare_symbols): New function.
2276         (find_method, find_function_symbols, find_linespec_symbols)
2277         (find_label_symbols_in_block): Change `symbols' parameter to
2278         std::vector.  Update all callers.
2279         (find_label_symbols): Likewise for `function_symbols' and
2280         `label_funcs_ret'.
2281
2282 2018-08-29  Keith Seitz  <keiths@redhat.com>
2283
2284         * linespec.c (symtab_vector_up): Define.
2285         (struct linespec) <file_symtabs>: Change type to std::vector *.
2286         Update all uses.
2287         (struct collect_info) <file_symtabs>: Likewise.
2288         (collect_symtabs_from_filename): Return symtab_vector_up.
2289         Update all callers.
2290         (decode_objc): Remove cleanup.
2291         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2292         (symtab_collector::release_symtabs): Return symtab_vector_up.
2293         Update all callers.
2294         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2295         Update all users.
2296         (collect_symtabs_from_filename, symtabs_from_filename): Return
2297         symtab_vector_up.  Update all callers.
2298
2299 2018-08-29  Tom Tromey  <tom@tromey.com>
2300
2301         * csky-tdep.c (csky_analyze_prologue): Use
2302         core_addr_to_string_nz.
2303
2304 2018-08-29  Tom Tromey  <tom@tromey.com>
2305
2306         * windows-nat.c (struct xlate_exception) <them>: Change type to
2307         DWORD.
2308         (xlate): Fix formatting.  Remove last entry.
2309         (struct xlate_exception, xlate): Comment out.
2310         (windows_nat_target::resume): Use ranged for.
2311
2312 2018-08-29  Jim Wilson  <jimw@sifive.com>
2313
2314         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2315         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2316         of NT_PRFPREG.
2317         (riscv_linux_nat_target::store_registers): Likewise.
2318
2319 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2320
2321         PR gdb/23555
2322         PR gdb/23558
2323         * gnulib/aclocal.m4: Regenerate.
2324         * gnulib/config.in: Regenerate.
2325         * gnulib/configure: Regenerate.
2326         * gnulib/import/Makefile.am: Update.
2327         * gnulib/import/Makefile.in: Update.
2328         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2329         * gnulib/import/_Noreturn.h: ... this.
2330         * gnulib/import/alloca.in.h: Update.
2331         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2332         * gnulib/import/arg-nonnull.h: ... this.
2333         * gnulib/import/assure.h: Update.
2334         * gnulib/import/at-func.c: Update.
2335         * gnulib/import/basename-lgpl.c: Update.
2336         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2337         * gnulib/import/c++defs.h: ... this.
2338         * gnulib/import/canonicalize-lgpl.c: Update.
2339         * gnulib/import/cdefs.h: Update.
2340         * gnulib/import/chdir-long.c: Update.
2341         * gnulib/import/chdir-long.h: Update.
2342         * gnulib/import/cloexec.c: Update.
2343         * gnulib/import/cloexec.h: Update.
2344         * gnulib/import/close.c: Update.
2345         * gnulib/import/closedir.c: Update.
2346         * gnulib/import/config.charset: Update.
2347         * gnulib/import/dirent-private.h: Update.
2348         * gnulib/import/dirent.in.h: Update.
2349         * gnulib/import/dirfd.c: Update.
2350         * gnulib/import/dirname-lgpl.c: Update.
2351         * gnulib/import/dirname.h: Update.
2352         * gnulib/import/dosname.h: Update.
2353         * gnulib/import/dup-safer-flag.c: Update.
2354         * gnulib/import/dup-safer.c: Update.
2355         * gnulib/import/dup.c: Update.
2356         * gnulib/import/dup2.c: Update.
2357         * gnulib/import/errno.in.h: Update.
2358         * gnulib/import/error.c: Update.
2359         * gnulib/import/error.h: Update.
2360         * gnulib/import/exitfail.c: Update.
2361         * gnulib/import/exitfail.h: Update.
2362         * gnulib/import/extra/update-copyright: Update.
2363         * gnulib/import/fchdir.c: Update.
2364         * gnulib/import/fcntl.c: Update.
2365         * gnulib/import/fcntl.in.h: Update.
2366         * gnulib/import/fd-hook.c: Update.
2367         * gnulib/import/fd-hook.h: Update.
2368         * gnulib/import/fd-safer-flag.c: Update.
2369         * gnulib/import/fd-safer.c: Update.
2370         * gnulib/import/fdopendir.c: Update.
2371         * gnulib/import/filename.h: Update.
2372         * gnulib/import/filenamecat-lgpl.c: Update.
2373         * gnulib/import/filenamecat.h: Update.
2374         * gnulib/import/flexmember.h: Update.
2375         * gnulib/import/float+.h: Update.
2376         * gnulib/import/float.c: Update.
2377         * gnulib/import/float.in.h: Update.
2378         * gnulib/import/fnmatch.c: Update.
2379         * gnulib/import/fnmatch.in.h: Update.
2380         * gnulib/import/fnmatch_loop.c: Update.
2381         * gnulib/import/fpucw.h: Update.
2382         * gnulib/import/frexp.c: Update.
2383         * gnulib/import/frexpl.c: Update.
2384         * gnulib/import/fstat.c: Update.
2385         * gnulib/import/fstatat.c: Update.
2386         * gnulib/import/getcwd-lgpl.c: Update.
2387         * gnulib/import/getcwd.c: Update.
2388         * gnulib/import/getdtablesize.c: Update.
2389         * gnulib/import/getlogin_r.c: Update.
2390         * gnulib/import/getprogname.c: Update.
2391         * gnulib/import/getprogname.h: Update.
2392         * gnulib/import/gettext.h: Update.
2393         * gnulib/import/gettimeofday.c: Update.
2394         * gnulib/import/glob-libc.h: Update.
2395         * gnulib/import/glob.c: Update.
2396         * gnulib/import/glob.in.h: Update.
2397         * gnulib/import/glob_internal.h: Update.
2398         * gnulib/import/glob_pattern_p.c: Update.
2399         * gnulib/import/globfree.c: Update.
2400         * gnulib/import/hard-locale.c: Update.
2401         * gnulib/import/hard-locale.h: Update.
2402         * gnulib/import/intprops.h: Update.
2403         * gnulib/import/inttypes.in.h: Update.
2404         * gnulib/import/isnan.c: Update.
2405         * gnulib/import/isnand-nolibm.h: Update.
2406         * gnulib/import/isnand.c: Update.
2407         * gnulib/import/isnanl-nolibm.h: Update.
2408         * gnulib/import/isnanl.c: Update.
2409         * gnulib/import/itold.c: Update.
2410         * gnulib/import/libc-config.h: Update.
2411         * gnulib/import/limits.in.h: Update.
2412         * gnulib/import/localcharset.c: Update.
2413         * gnulib/import/localcharset.h: Update.
2414         * gnulib/import/localtime-buffer.c: Update.
2415         * gnulib/import/localtime-buffer.h: Update.
2416         * gnulib/import/lstat.c: Update.
2417         * gnulib/import/m4/00gnulib.m4: Update.
2418         * gnulib/import/m4/__inline.m4: Update.
2419         * gnulib/import/m4/absolute-header.m4: Update.
2420         * gnulib/import/m4/alloca.m4: Update.
2421         * gnulib/import/m4/builtin-expect.m4: Update.
2422         * gnulib/import/m4/canonicalize.m4: Update.
2423         * gnulib/import/m4/chdir-long.m4: Update.
2424         * gnulib/import/m4/close.m4: Update.
2425         * gnulib/import/m4/closedir.m4: Update.
2426         * gnulib/import/m4/configmake.m4: Update.
2427         * gnulib/import/m4/d-ino.m4: Update.
2428         * gnulib/import/m4/d-type.m4: Update.
2429         * gnulib/import/m4/dirent_h.m4: Update.
2430         * gnulib/import/m4/dirfd.m4: Update.
2431         * gnulib/import/m4/dirname.m4: Update.
2432         * gnulib/import/m4/double-slash-root.m4: Update.
2433         * gnulib/import/m4/dup.m4: Update.
2434         * gnulib/import/m4/dup2.m4: Update.
2435         * gnulib/import/m4/eealloc.m4: Update.
2436         * gnulib/import/m4/environ.m4: Update.
2437         * gnulib/import/m4/errno_h.m4: Update.
2438         * gnulib/import/m4/error.m4: Update.
2439         * gnulib/import/m4/exponentd.m4: Update.
2440         * gnulib/import/m4/exponentl.m4: Update.
2441         * gnulib/import/m4/extensions.m4: Update.
2442         * gnulib/import/m4/extern-inline.m4: Update.
2443         * gnulib/import/m4/fchdir.m4: Update.
2444         * gnulib/import/m4/fcntl-o.m4: Update.
2445         * gnulib/import/m4/fcntl.m4: Update.
2446         * gnulib/import/m4/fcntl_h.m4: Update.
2447         * gnulib/import/m4/fdopendir.m4: Update.
2448         * gnulib/import/m4/filenamecat.m4: Update.
2449         * gnulib/import/m4/flexmember.m4: Update.
2450         * gnulib/import/m4/float_h.m4: Update.
2451         * gnulib/import/m4/fnmatch.m4: Update.
2452         * gnulib/import/m4/fnmatch_h.m4: Update.
2453         * gnulib/import/m4/fpieee.m4: Update.
2454         * gnulib/import/m4/frexp.m4: Update.
2455         * gnulib/import/m4/frexpl.m4: Update.
2456         * gnulib/import/m4/fstat.m4: Update.
2457         * gnulib/import/m4/fstatat.m4: Update.
2458         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2459         * gnulib/import/m4/getcwd-path-max.m4: Update.
2460         * gnulib/import/m4/getcwd.m4: Update.
2461         * gnulib/import/m4/getdtablesize.m4: Update.
2462         * gnulib/import/m4/getlogin.m4: Update.
2463         * gnulib/import/m4/getlogin_r.m4: Update.
2464         * gnulib/import/m4/getpagesize.m4: Update.
2465         * gnulib/import/m4/getprogname.m4: Update.
2466         * gnulib/import/m4/gettimeofday.m4: Update.
2467         * gnulib/import/m4/glibc21.m4: Update.
2468         * gnulib/import/m4/glob.m4: Update.
2469         * gnulib/import/m4/glob_h.m4: Update.
2470         * gnulib/import/m4/gnulib-cache.m4: Update.
2471         * gnulib/import/m4/gnulib-common.m4: Update.
2472         * gnulib/import/m4/gnulib-comp.m4: Update.
2473         * gnulib/import/m4/gnulib-tool.m4: Update.
2474         * gnulib/import/m4/hard-locale.m4: Update.
2475         * gnulib/import/m4/include_next.m4: Update.
2476         * gnulib/import/m4/inttypes-pri.m4: Update.
2477         * gnulib/import/m4/inttypes.m4: Update.
2478         * gnulib/import/m4/isnand.m4: Update.
2479         * gnulib/import/m4/isnanl.m4: Update.
2480         * gnulib/import/m4/largefile.m4: Update.
2481         * gnulib/import/m4/limits-h.m4: Update.
2482         * gnulib/import/m4/localcharset.m4: Update.
2483         * gnulib/import/m4/locale-fr.m4: Update.
2484         * gnulib/import/m4/locale-ja.m4: Update.
2485         * gnulib/import/m4/locale-zh.m4: Update.
2486         * gnulib/import/m4/localtime-buffer.m4: Update.
2487         * gnulib/import/m4/longlong.m4: Update.
2488         * gnulib/import/m4/lstat.m4: Update.
2489         * gnulib/import/m4/malloc.m4: Update.
2490         * gnulib/import/m4/malloca.m4: Update.
2491         * gnulib/import/m4/math_h.m4: Update.
2492         * gnulib/import/m4/mbrtowc.m4: Update.
2493         * gnulib/import/m4/mbsinit.m4: Update.
2494         * gnulib/import/m4/mbsrtowcs.m4: Update.
2495         * gnulib/import/m4/mbstate_t.m4: Update.
2496         * gnulib/import/m4/memchr.m4: Update.
2497         * gnulib/import/m4/memmem.m4: Update.
2498         * gnulib/import/m4/mempcpy.m4: Update.
2499         * gnulib/import/m4/memrchr.m4: Update.
2500         * gnulib/import/m4/mkdir.m4: Update.
2501         * gnulib/import/m4/mkstemp.m4: Update.
2502         * gnulib/import/m4/mmap-anon.m4: Update.
2503         * gnulib/import/m4/mode_t.m4: Update.
2504         * gnulib/import/m4/msvc-inval.m4: Update.
2505         * gnulib/import/m4/msvc-nothrow.m4: Update.
2506         * gnulib/import/m4/multiarch.m4: Update.
2507         * gnulib/import/m4/nocrash.m4: Update.
2508         * gnulib/import/m4/off_t.m4: Update.
2509         * gnulib/import/m4/onceonly.m4: Update.
2510         * gnulib/import/m4/open-cloexec.m4: Update.
2511         * gnulib/import/m4/open.m4: Update.
2512         * gnulib/import/m4/openat.m4: Update.
2513         * gnulib/import/m4/opendir.m4: Update.
2514         * gnulib/import/m4/pathmax.m4: Update.
2515         * gnulib/import/m4/rawmemchr.m4: Update.
2516         * gnulib/import/m4/readdir.m4: Update.
2517         * gnulib/import/m4/readlink.m4: Update.
2518         * gnulib/import/m4/realloc.m4: Update.
2519         * gnulib/import/m4/rename.m4: Update.
2520         * gnulib/import/m4/rewinddir.m4: Update.
2521         * gnulib/import/m4/rmdir.m4: Update.
2522         * gnulib/import/m4/save-cwd.m4: Update.
2523         * gnulib/import/m4/secure_getenv.m4: Update.
2524         * gnulib/import/m4/setenv.m4: Update.
2525         * gnulib/import/m4/signal_h.m4: Update.
2526         * gnulib/import/m4/ssize_t.m4: Update.
2527         * gnulib/import/m4/stat-time.m4: Update.
2528         * gnulib/import/m4/stat.m4: Update.
2529         * gnulib/import/m4/std-gnu11.m4: Update.
2530         * gnulib/import/m4/stdbool.m4: Update.
2531         * gnulib/import/m4/stddef_h.m4: Update.
2532         * gnulib/import/m4/stdint.m4: Update.
2533         * gnulib/import/m4/stdio_h.m4: Update.
2534         * gnulib/import/m4/stdlib_h.m4: Update.
2535         * gnulib/import/m4/strchrnul.m4: Update.
2536         * gnulib/import/m4/strdup.m4: Update.
2537         * gnulib/import/m4/strerror.m4: Update.
2538         * gnulib/import/m4/string_h.m4: Update.
2539         * gnulib/import/m4/strstr.m4: Update.
2540         * gnulib/import/m4/strtok_r.m4: Update.
2541         * gnulib/import/m4/sys_socket_h.m4: Update.
2542         * gnulib/import/m4/sys_stat_h.m4: Update.
2543         * gnulib/import/m4/sys_time_h.m4: Update.
2544         * gnulib/import/m4/sys_types_h.m4: Update.
2545         * gnulib/import/m4/tempname.m4: Update.
2546         * gnulib/import/m4/time_h.m4: Update.
2547         * gnulib/import/m4/unistd-safer.m4: Update.
2548         * gnulib/import/m4/unistd_h.m4: Update.
2549         * gnulib/import/m4/warn-on-use.m4: Update.
2550         * gnulib/import/m4/wchar_h.m4: Update.
2551         * gnulib/import/m4/wchar_t.m4: Update.
2552         * gnulib/import/m4/wctype_h.m4: Update.
2553         * gnulib/import/m4/wint_t.m4: Update.
2554         * gnulib/import/malloc.c: Update.
2555         * gnulib/import/malloc/scratch_buffer.h: Update.
2556         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2557         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2558         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2559         * gnulib/import/malloca.c: Update.
2560         * gnulib/import/malloca.h: Update.
2561         * gnulib/import/malloca.valgrind: Update.
2562         * gnulib/import/math.in.h: Update.
2563         * gnulib/import/mbrtowc.c: Update.
2564         * gnulib/import/mbsinit.c: Update.
2565         * gnulib/import/mbsrtowcs-impl.h: Update.
2566         * gnulib/import/mbsrtowcs-state.c: Update.
2567         * gnulib/import/mbsrtowcs.c: Update.
2568         * gnulib/import/memchr.c: Update.
2569         * gnulib/import/memmem.c: Update.
2570         * gnulib/import/mempcpy.c: Update.
2571         * gnulib/import/memrchr.c: Update.
2572         * gnulib/import/mkdir.c: Update.
2573         * gnulib/import/mkstemp.c: Update.
2574         * gnulib/import/msvc-inval.c: Update.
2575         * gnulib/import/msvc-inval.h: Update.
2576         * gnulib/import/msvc-nothrow.c: Update.
2577         * gnulib/import/msvc-nothrow.h: Update.
2578         * gnulib/import/open.c: Update.
2579         * gnulib/import/openat-die.c: Update.
2580         * gnulib/import/openat-priv.h: Update.
2581         * gnulib/import/openat-proc.c: Update.
2582         * gnulib/import/openat.c: Update.
2583         * gnulib/import/openat.h: Update.
2584         * gnulib/import/opendir.c: Update.
2585         * gnulib/import/pathmax.h: Update.
2586         * gnulib/import/pipe-safer.c: Update.
2587         * gnulib/import/rawmemchr.c: Update.
2588         * gnulib/import/readdir.c: Update.
2589         * gnulib/import/readlink.c: Update.
2590         * gnulib/import/realloc.c: Update.
2591         * gnulib/import/ref-add.sin: Update.
2592         * gnulib/import/ref-del.sin: Update.
2593         * gnulib/import/rename.c: Update.
2594         * gnulib/import/rewinddir.c: Update.
2595         * gnulib/import/rmdir.c: Update.
2596         * gnulib/import/same-inode.h: Update.
2597         * gnulib/import/save-cwd.c: Update.
2598         * gnulib/import/save-cwd.h: Update.
2599         * gnulib/import/scratch_buffer.h: Update.
2600         * gnulib/import/secure_getenv.c: Update.
2601         * gnulib/import/setenv.c: Update.
2602         * gnulib/import/signal.in.h: Update.
2603         * gnulib/import/stat-time.c: Update.
2604         * gnulib/import/stat-time.h: Update.
2605         * gnulib/import/stat-w32.c: Update.
2606         * gnulib/import/stat-w32.h: Update.
2607         * gnulib/import/stat.c: Update.
2608         * gnulib/import/stdbool.in.h: Update.
2609         * gnulib/import/stddef.in.h: Update.
2610         * gnulib/import/stdint.in.h: Update.
2611         * gnulib/import/stdio.in.h: Update.
2612         * gnulib/import/stdlib.in.h: Update.
2613         * gnulib/import/str-two-way.h: Update.
2614         * gnulib/import/strchrnul.c: Update.
2615         * gnulib/import/strdup.c: Update.
2616         * gnulib/import/streq.h: Update.
2617         * gnulib/import/strerror-override.c: Update.
2618         * gnulib/import/strerror-override.h: Update.
2619         * gnulib/import/strerror.c: Update.
2620         * gnulib/import/string.in.h: Update.
2621         * gnulib/import/stripslash.c: Update.
2622         * gnulib/import/strnlen1.c: Update.
2623         * gnulib/import/strnlen1.h: Update.
2624         * gnulib/import/strstr.c: Update.
2625         * gnulib/import/strtok_r.c: Update.
2626         * gnulib/import/sys_stat.in.h: Update.
2627         * gnulib/import/sys_time.in.h: Update.
2628         * gnulib/import/sys_types.in.h: Update.
2629         * gnulib/import/tempname.c: Update.
2630         * gnulib/import/tempname.h: Update.
2631         * gnulib/import/time.in.h: Update.
2632         * gnulib/import/unistd--.h: Update.
2633         * gnulib/import/unistd-safer.h: Update.
2634         * gnulib/import/unistd.in.h: Update.
2635         * gnulib/import/unsetenv.c: Update.
2636         * gnulib/import/verify.h: Update.
2637         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2638         * gnulib/import/wchar.in.h: Update.
2639         * gnulib/import/wctype.in.h: Update.
2640         * gnulib/import/xalloc-oversized.h: Update.
2641         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2642         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2643
2644 2018-08-16  Gary Benson <gbenson@redhat.com>
2645
2646         PR gdb/13000:
2647         * gdb/main.c (captured_main_1): Exit with nonzero status
2648         in batch mode if the last command to be executed failed.
2649         * NEWS: Mention the above.
2650
2651 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
2652
2653         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
2654         end of warning message.
2655
2656 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2657
2658         PR gdb/22943:
2659         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
2660         (aarch64_extract_return_value): Use
2661         aapcs_is_vfp_call_or_return_candidate.
2662         (aarch64_return_in_memory): Likewise.
2663         (aarch64_store_return_value): Likewise.
2664
2665 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2666
2667         * aarch64-tdep.c
2668         (aapcs_is_vfp_call_or_return_candidate): Make static
2669         (pass_in_v_or_stack): Remove function.
2670         (pass_in_v_vfp_candidate): New function.
2671         (aarch64_push_dummy_call): Check for float register candidates.
2672
2673 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2674
2675         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
2676         (aapcs_is_vfp_call_or_return_candidate_1): New function.
2677         (aapcs_is_vfp_call_or_return_candidate): Likewise.
2678
2679 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
2680
2681         PR build/23399
2682         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
2683         (struct ipa_sym_addresses): Rename to...
2684         (struct ipa_sym_addresses_common): ... this.
2685         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
2686
2687 2018-08-28  Tom Tromey  <tom@tromey.com>
2688
2689         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2690         (token_fifo): Now a std::vector.
2691         (yylex, c_parse): Update.
2692         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2693         (token_fifo): Now a std::vector.
2694         (yylex, d_parse): Update.
2695         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2696         (token_fifo): Now a std::vector.
2697         (yylex, go_parse): Update.
2698
2699 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
2700
2701         * parser-defs.h (struct type_stack) <elements>: Change type to
2702         std::vector<union type_stack_elt>.
2703         <depth, size>: Remove.
2704         * parse.c (parse_exp_in_context_1): Adjust.
2705         (type_stack_reserve): Remove.
2706         (check_type_stack_depth): Remove.
2707         (insert_into_type_stack): Adjust to std::vector.
2708         (insert_type): Likewise.
2709         (push_type): Likewise.
2710         (push_type_int): Likewise.
2711         (insert_type_address_space): Likewise.
2712         (pop_type): Likewise.
2713         (pop_type_int): Likewise.
2714         (pop_typelist): Likewise.
2715         (pop_type_stack): Likewise.
2716         (append_type_stack): Likewise.
2717         (push_type_stack): Likewise.
2718         (get_type_stack): Likewise.
2719         (type_stack_cleanup): Likewise.
2720         (push_typelist): Likewise.
2721         (follow_types): Likewise.
2722         (_initialize_parse): Likewise.
2723
2724 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2725
2726         * NEWS: Mention csky target.
2727
2728 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
2729             Hafiz Abid Qadeer  <abidh@codesourcery.com>
2730             Don Breazeal  <donb@codesourcery.com>
2731
2732         * csky-linux-tdep.c: New file.
2733         * csky-tdep.c: Likewise.
2734         * csky-tdep.h: Likewise.
2735         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
2736         csky-tdep.o.
2737         (HFILES_NO_SRCDIR): Add csky-tdep.h.
2738         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
2739         * configure.tgt: Add csky support.
2740
2741 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
2742
2743         * python/py-framefilter.c (py_print_frame): Print frame architecture
2744         when printing on an MI output.
2745
2746 2018-08-27  Tom Tromey  <tom@tromey.com>
2747
2748         PR build/23087:
2749         * configure: Rebuild.
2750         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
2751
2752 2018-08-27  Tom Tromey  <tom@tromey.com>
2753
2754         * aarch64-linux-tdep.c
2755         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
2756         casts to int.
2757
2758 2018-08-27  Tom Tromey  <tom@tromey.com>
2759
2760         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
2761         unsigned.
2762         (ppc64_standard_linkage1, ppc64_standard_linkage2)
2763         (ppc64_standard_linkage3, ppc64_standard_linkage4)
2764         (ppc64_standard_linkage5, ppc64_standard_linkage6)
2765         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
2766         unsigned.
2767
2768 2018-08-27  Tom Tromey  <tom@tromey.com>
2769
2770         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
2771         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
2772
2773 2018-08-27  Tom Tromey  <tom@tromey.com>
2774
2775         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
2776         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
2777         ULONGEST_MAX.
2778         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
2779         ULONGEST_MAX.
2780         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
2781         ULONGEST_MAX.
2782         * sparc-linux-tdep.c (sparc32_linux_sigframe)
2783         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
2784         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
2785         ULONGEST_MAX.
2786         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
2787         (ppc64_linux_sigaction_tramp_frame)
2788         (ppc32_linux_sighandler_tramp_frame)
2789         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2790         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
2791         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
2792         * mn10300-linux-tdep.c (am33_linux_sigframe)
2793         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
2794         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
2795         * mips-linux-tdep.c (mips_linux_o32_sigframe)
2796         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
2797         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
2798         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
2799         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
2800         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
2801         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
2802         * microblaze-linux-tdep.c
2803         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2804         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
2805         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
2806         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
2807         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
2808         * common/common-types.h (ULONGEST_MAX): New define.
2809         (CORE_ADDR_MAX): Fix formatting.
2810         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
2811         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
2812         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
2813         (arm_linux_rt_sigreturn_tramp_frame)
2814         (arm_eabi_linux_sigreturn_tramp_frame)
2815         (arm_eabi_linux_rt_sigreturn_tramp_frame)
2816         (thumb2_eabi_linux_sigreturn_tramp_frame)
2817         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
2818         (arm_linux_restart_syscall_tramp_frame)
2819         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
2820         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
2821         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
2822         ULONGEST_MAX.
2823         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
2824
2825 2018-08-27  Tom Tromey  <tom@tromey.com>
2826
2827         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
2828         CORE_ADDR_MAX.
2829         * mips-tdep.c (mips_deal_with_atomic_sequence)
2830         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
2831         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
2832         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
2833         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
2834         CORE_ADDR_MAX.
2835         * aarch64-tdep.c (aarch64_software_single_step): Use
2836         CORE_ADDR_MAX.
2837
2838 2018-08-27  Tom Tromey  <tom@tromey.com>
2839
2840         * linespec.c (complete_linespec_component): Add cast to "char".
2841         * completer.c (completion_tracker::build_completion_result): Add
2842         cast to "char".
2843
2844 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2845
2846         * solist.h (struct solist, struct target_so_ops): Fix
2847         indentation.
2848
2849 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2850
2851         * ada-tasks.c (ada_task_info_s): Remove typedef.
2852         (DEF_VEC_O(ada_task_info_s)): Remove.
2853         (struct ada_tasks_inferior_data): Initialize fields.
2854         <task_list>: Make an std::vector.
2855         (get_ada_tasks_inferior_data): Allocate with new.
2856         (ada_get_task_number): Adjust.
2857         (get_task_number_from_id): Likewise.
2858         (valid_task_id): Likewise.
2859         (ada_get_task_info_from_ptid): Likewise.
2860         (iterate_over_live_ada_tasks): Likewise.
2861         (add_ada_task): Likewise.
2862         (read_known_tasks): Likewise.
2863         (ada_build_task_list): Likewise.
2864         (print_ada_task_info): Likewise.
2865         (info_task): Likewise.
2866         (task_command_1): Likewise.
2867
2868 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2869
2870         * ada-lang.c (add_angle_brackets): Return std::string.
2871
2872 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
2873
2874         * python/py-threadevent.c (py_get_event_thread): Initialize
2875         pythread.
2876
2877 2018-08-24  Pedro Alves  <palves@redhat.com>
2878
2879         * python/py-bpevent.c (create_breakpoint_event_object): Use
2880         copy-initialization.
2881         * python/py-continueevent.c (emit_continue_event): Use
2882         copy-initialization.
2883         * python/py-exitedevent.c (create_exited_event_object): Return a
2884         gdbpy_ref<>.
2885         (emit_exited_event): Use copy-initialization.
2886         * python/py-inferior.c (python_new_inferior)
2887         (python_inferior_deleted, add_thread_object): Use
2888         copy-initialization.
2889         * python/py-infevents.c (create_inferior_call_event_object)
2890         (create_register_changed_event_object)
2891         (create_memory_changed_event_object): Return a gdbpy_ref<>.
2892         (emit_inferior_call_event, emit_memory_changed_event)
2893         (emit_register_changed_event): Use copy-initialization.
2894         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2895         Return a gdbpy_ref<>.
2896         (emit_new_objfile_event): Use copy-initialization.
2897         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
2898         (emit_clear_objfiles_event): Use copy-initialization.
2899         * python/py-signalevent.c (create_signal_event_object): Use
2900         copy-initialization.
2901         * python/py-threadevent.c (create_thread_event_object): Use
2902         copy-initialization.
2903
2904 2018-08-24  Pedro Alves  <palves@redhat.com>
2905             Simon Marchi  <simon.marchi@ericsson.com>
2906
2907         PR gdb/23379
2908         * python/py-continueevent.c: Include "gdbthread.h".
2909         (create_continue_event_object): Add intro comment.  Add 'ptid'
2910         parameter.  Use it to find thread to pass to
2911         create_thread_event_object.
2912         (emit_continue_event): Pass PTID down to
2913         create_continue_event_object.
2914         * python/py-event.h (py_get_event_thread): Declare.
2915         (create_thread_event_object): Remove default from 'thread'
2916         parameter.
2917         * python/py-stopevent.c (create_stop_event_object): Use
2918         py_get_event_thread.
2919         * python/py-threadevent.c (get_event_thread): Rename to ...
2920         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
2921         and use it to find the thread.
2922         (create_thread_event_object): Assert that THREAD isn't null.
2923         Don't find the event thread here.
2924
2925 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
2926
2927         * block.h (blockrange, blockranges): New struct declarations.
2928         (struct block): Add new field named `ranges'.
2929         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
2930         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
2931         macros for accessing ranges in struct block.
2932         (make_blockranges): New declaration.
2933         block.c (make_blockranges): New function.
2934         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
2935         for block.
2936         * symtab.h (find_pc_partial_function): Add new parameter `block'.
2937         * blockframe.c (cache_pc_function_block): New static global.
2938         (clear_pc_function_cache): Clear cache_pc_function_block.
2939         (find_pc_partial_function): Move comment to symtab.h.  Add
2940         support for non-contiguous blocks.
2941         * cli/cli-cmds.c (block.h): Include.
2942         (print_disassembly): Handle printing of non-contiguous blocks.
2943         (disassemble_current_function): Likewise.
2944         (disassemble_command): Likewise.
2945
2946         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
2947         BLOCK_START.
2948         * blockframe.c (get_pc_function_start): Likewise.
2949         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
2950         (gcc_symbol_address): Likewise.
2951         * compile/compile-object-run.c (compile_object_run): Likewise.
2952         * compile/compile.c (get_expr_block_and_pc): Likewise.
2953         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
2954         (func_addr_to_tail_call_list): Likewise.
2955         * findvar.c (default_read_var_value): Likewise.
2956         * inline-frame.c (inline_frame_this_id): Likewise.
2957         (skip-inline_frames): Likewise.
2958         * infcmd.c (until_next_command): Likewise.
2959         * linespec.c (convert_linespec_to_sals): Likewise.
2960         * parse.c (parse_exp_in_context_1): Likewise.
2961         * printcmd.c (build_address_symbolic): likewise.
2962         (info_address_command): Likewise.
2963         symtab.c (find_function_start_sal): Likewise.
2964         (skip_prologue_sal): Likewise.
2965         (find_function_alias_target): Likewise.
2966         (find_gnu_ifunc): Likewise.
2967         * stack.c (find_frame_funname): Likewise.
2968         * symtab.c (fixup_symbol_section): Likewise.
2969         (find_function_start_sal): Likewise.
2970         (skip_prologue_sal): Likewsie.
2971         (find_function_alias_target): Likewise.
2972         (find_gnu_ifunc): Likewise.
2973         * tracepoint.c (info_scope_command): Likewise.
2974         * value.c (value_fn_field): Likewise.
2975
2976         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
2977         in place of find_pc_partial_function.
2978         * blockframe.c (find_function_entry_range_from_pc): New function.
2979         * symtab.h (find_function_entry_range_from_pc): Declare and document.
2980         * objfiles.c (objfile_relocate1): Relocate start and end addresses
2981         for each range in a block.
2982
2983
2984 2018-08-23  Xavier Roirand  <roirand@adacore.com>
2985
2986         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
2987         incrementation.
2988
2989 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2990
2991         * solib-svr4.c (read_program_headers_from_bfd): Return
2992         gdb::optional<gdb::byte_vector>.
2993         (svr4_exec_displacement): Adjust.
2994
2995 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2996
2997         * solib-svr4.c (read_program_header): Return
2998         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
2999         (find_program_interpreter): Return
3000         gdb::optional<gdb::byte_vector>.
3001         (scan_dyntag_auxv): Adjust.
3002         (enable_break): Adjust.
3003         (svr4_exec_displacement): Adjust.
3004
3005 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3006
3007         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3008         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3009
3010 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3011
3012         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3013         string_vprintf.
3014         * guile/scm-utils.c (gdbscm_printf): Likewise.
3015         * serial.c (serial_printf): Likewise.
3016         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3017
3018 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3019
3020         * stack.c (print_frame): Print frame architecture when printing on
3021         an MI output.
3022         * NEWS: Mention new "arch" attribute in frame output.
3023
3024 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3025
3026         * arch/aarch64.h (aarch64_regnum): Update comment.
3027
3028 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3029
3030         * NEWS: Add SVE to 8.2 section.
3031
3032 2018-08-21  Pedro Alves  <palves@redhat.com>
3033
3034         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3035         out from gdbscm_parse_function_args.
3036         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3037         gdbscm_parse_function_args_1.
3038
3039 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3040
3041         PR gdb/17816
3042         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3043         operator.
3044
3045 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3046
3047         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3048
3049 2018-08-19  Michael Spang  <spang@google.com>
3050
3051         PR gdb/11786
3052         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3053         for PT_TLS segments.
3054
3055 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3056
3057         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3058         dwarf_variable_value.
3059         * dwarf2-frame.c (class dwarf_expr_executor):
3060         Add override for dwarf_variable_value.
3061         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3062         (class symbol_needs_eval_context): Likewise.
3063         (indirect_synthetic_pointer): Add forward declaration.
3064         (sect_variable_value): New function.
3065         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3066         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3067         for DW_OP_GNU_variable_value.
3068
3069 2018-08-16  Tom Tromey  <tom@tromey.com>
3070
3071         * top.c (read_command_file): Update.
3072         (command_line_input): Remove "repeat" argument.
3073         * ada-lang.c (get_selections): Update.
3074         * linespec.c (decode_line_2): Update.
3075         * defs.h (command_line_input): Remove argument.
3076         * cli/cli-script.c (read_next_line): Update.
3077         * python/py-gdb-readline.c: Update.
3078
3079 2018-08-17  Tom Tromey  <tom@tromey.com>
3080
3081         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3082         command_line_input.
3083
3084 2018-08-15  Tom Tromey  <tom@tromey.com>
3085
3086         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3087
3088 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3089
3090         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3091         If used, use find_pc_partial_function to find address range
3092         to disassemble.
3093         * mi/mi-main.c (mi_cmd_list_features): Report
3094         "data-disassemble-a-option" feature.
3095         * NEWS: Mention new -data-disassemble option -a.
3096
3097 2018-08-13  Tom Tromey  <tom@tromey.com>
3098
3099         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3100
3101 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3102
3103         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3104         (aarch64_linux_collect_sve_regset): Likewise.
3105         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3106         * regcache.h (regcache_map_entry_size): New function.
3107
3108 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3109
3110         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3111         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3112         (SVE_HEADER_VL_LENGTH): Likewise.
3113         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3114         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3115         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3116         (SVE_HEADER_SIZE_OFFSET): Likewise.
3117         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3118         (SVE_HEADER_VL_OFFSET): Likewise.
3119         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3120         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3121         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3122         (SVE_HEADER_SIZE): Likewise.
3123         (aarch64_linux_core_read_vq): Add function.
3124         (aarch64_linux_core_read_description): Check for SVE section.
3125
3126 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3127
3128         * aarch64-fbsd-tdep.c
3129         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3130         collect_size.
3131         * aarch64-linux-tdep.c
3132         (aarch64_linux_iterate_over_regset_sections): Likewise.
3133         * alpha-linux-tdep.c
3134         (alpha_linux_iterate_over_regset_sections):
3135         * alpha-nbsd-tdep.c
3136         (alphanbsd_iterate_over_regset_sections): Likewise.
3137         * amd64-fbsd-tdep.c
3138         (amd64fbsd_iterate_over_regset_sections): Likewise.
3139         * amd64-linux-tdep.c
3140         (amd64_linux_iterate_over_regset_sections): Likewise.
3141         * arm-bsd-tdep.c
3142         (armbsd_iterate_over_regset_sections): Likewise.
3143         * arm-fbsd-tdep.c
3144         (arm_fbsd_iterate_over_regset_sections): Likewise.
3145         * arm-linux-tdep.c
3146         (arm_linux_iterate_over_regset_sections): Likewise.
3147         * corelow.c (get_core_registers_cb): Likewise.
3148         (core_target::fetch_registers): Likewise.
3149         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3150         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3151         * gdbarch.h (void): Regenerate.
3152         * gdbarch.sh: Add supply_size and collect_size.
3153         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3154         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3155         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3156         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3157         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3158         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3159         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3160         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3161         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3162         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3163         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3164         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3165         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3166         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3167         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3168         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3169         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3170         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3171         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3172         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3173         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3174         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3175         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3176         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3177         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3178         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3179         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3180         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3181         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3182         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3183
3184 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3185
3186         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3187         with string_printf.
3188
3189 2018-08-10  Keith Seitz  <keiths@redhat.com>
3190
3191         * compile/compile-c-support.c (add_code_header, add_code_footer):
3192         Move into policy class.
3193         (c_push_user_expression, pop_user_expression_nop)
3194         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3195         (compile_program): New host class.
3196         (c_compile_program): New typedef.
3197         (c_compute_porgram): Use c_compile_program.
3198
3199 2018-08-10  Keith Seitz  <keiths@redhat.com>
3200
3201         * compile/compile-internal.h (compile_instance::~compile_instance):
3202         Remove calls to htab_delete.
3203         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3204         * compile.c (compile_instance::compile_instance): Initialize
3205         htab unique pointers.
3206         (compile_instance::get_cached_type, compile_instance::insert_type)
3207         (compile_instance::error_symbol_once): Update for unique_ptr.
3208
3209 2018-08-10  Keith Seitz  <keiths@redhat.com>
3210
3211         * compile/compile-c-symbols.c (struct symbol_error)
3212         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3213         (compile_instance::insert_symbol_error)
3214         (compile_instance::error_symbol_once): Move to ...
3215         * compile/compile.c: ... here.
3216
3217 2018-08-10  Keith Seitz  <keiths@redhat.com>
3218
3219         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3220         instead of `new_compile_instance'.
3221         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3222         Update description.
3223         If the symbol error map is not initialized, create it.
3224         (generate_c_for_for_one_symbol): Do not check/initialize
3225         the symbol error map.
3226         * compile/compile-c-types.c (compile_c_instance): Make a class.
3227         Update all callers.
3228         (compile_instance::compile_instance): Initialize the type cache.
3229         (get_cached_type): New function.
3230         (insert_type): Update description.
3231         (compile_c_instance::m_default_cflags): Define.
3232         (convert_type): Update description.  Use get_cached_type.
3233         (delete_instance): Moved to destructor.
3234         (new_compile_instance): Moved to constructor.
3235         * compile/compile-c.h (compile_c_instance): Make class inheriting
3236         from compile_instance.
3237         <base>: Remove field.
3238         <type_map, symbol_err_map>: Move to base class.
3239         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3240         * compile/compile-internal.h (compile_instance): Make class.
3241         <type_map_t, symbol_err_map_t>: Define.
3242         <fe>: Rename to `m_gcc_fe'.
3243         <scope, block, gcc_target_options>: Add `m_' prefix.
3244         <m_type_map, m_symbol_err_map>: New fields, moved from
3245         compile_c_instance.
3246         <destroy>: Remove.
3247         (convert_type, new_compile_instance): Remove.
3248         * compile/compile.c (cleanup_compile_instance): Remove.
3249         (compile_to_object): Use unique_ptr to eliminate cleanups.
3250         (compile_instance::set_print_callback, compile_instance::version)
3251         (compile_instance::set_verbose)
3252         (compile_instance::set_driver_filename)
3253         (compile_instance::set_triplet_regexp)
3254         (compile_instance::set_arguments)
3255         (compile_instance::set_source_file)
3256         (compile_instance::compile): Define.
3257
3258 2018-08-10  Keith Seitz  <keiths@redhat.com>
3259
3260         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3261         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3262         gcc-c-fe.def to define C plugin.
3263         (delete_instance): Delete `c_plugin'.
3264         (new_compile_instance): Initialize `c_plugin'.
3265         * compile/compile-c.h: Include gcc_c_plugin.h.
3266         (struct compile_c_instance) <c_plugin>: New member.
3267         * gcc-c-plugin.h: New file.
3268         Update all callers with API change.
3269
3270 2018-08-10  Keith Seitz  <keiths@redhat.com>
3271
3272         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3273         (HFILES_NO_SRCDIR): ... to here.
3274         Add compile-internal.h and compile-c.h.
3275         * compile/compile-c-support.c: Include compile-c.h.
3276         * compile/compile-c-symbols.c: Include compile-c.h.
3277         (generate_c_for_variable_locations): Update comment.
3278         * compile/compile-c-types.c: Include compile-c.h.
3279         * compile/compile-c.h: New file -- moved C language declarations
3280         from other files here.
3281         * compile/compile-internal.h: Do not include hashtab.h or
3282         common/enum-flags.h.
3283         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3284         (gcc_convert_symbol, gcc_symbol_address)
3285         (generate_c_for_variable_locations, c_get_mode_for_size)
3286         (c_get_range_decl_name): Definitions moved to compile-c.h.
3287         * compile/compile-loc2c.c: Include compile-c.h.
3288
3289 2018-08-10  Keith Seitz  <keiths@redhat.com>
3290
3291         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3292         (c_symbol_substitution_name): ... this.
3293         Update all callers.
3294
3295 2018-08-10  Keith Seitz  <keiths@redhat.com>
3296
3297         * compile/compile-c-support.c (c_compute_program): Use
3298         unique_xmalloc_ptr to eliminate cleanup.
3299         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3300         Return a unique_xmalloc_ptr and eliminate cleanup.
3301         * compile/compile-internal.h (generate_c_for_variable_locations):
3302         Return unique_xmalloc_ptr and update description.
3303
3304 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3305
3306         * corelow.c (core_target::get_core_register_section): Rename
3307         min_size to section_min_size.
3308
3309 2018-08-09  Jim Wilson  <jimw@sifive.com>
3310
3311         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3312         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3313         * NEWS: Mention new GNU/Linux RISC-V target.
3314         * configure.host: Add riscv*-*-linux*.
3315         * configure.nat: Add riscv*.
3316         * configure.tgt: Add riscv*-*-linux*.
3317         * riscv-linux-nat.c: New file.
3318         * riscv-linux-tdep.c: New file.
3319
3320 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3321
3322         * infrun.c (resume): Make static, add forward declaration.
3323         (proceed): Update header comment.
3324         * infrun.h (resume): Delete declaration.
3325
3326 2018-08-09  Tom Tromey  <tom@tromey.com>
3327
3328         * riscv-tdep.h: Minor formatting fixes.
3329
3330 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3331
3332         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3333         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3334         (test_mkdir_recursive): Likewise.
3335         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3336
3337 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3338
3339         * valarith.c (value_subscripted_rvalue): If an array is not in
3340         memory, and we don't know the upper bound, then we can't know that
3341         the requested element exists or not.
3342
3343 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3344
3345         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3346         (target_options_to_string): Add comment.
3347
3348 2018-08-08  Tom Tromey  <tom@tromey.com>
3349
3350         * unittests/scoped_mmap-selftests.c: Check result of "write".
3351
3352 2018-08-08  Jim Wilson  <jimw@sifive.com>
3353
3354         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3355         (decode_register_index_short): New.
3356         (decode_j_type_insn, decode_cj_type_insn): New.
3357         (decode_b_type_insn, decode_cb_type_insn): New.
3358         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3359         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3360         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3361         is_c_sw_insn instead of is_sw_insn.
3362         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3363         (riscv_software_single_step): New.
3364         * riscv-tdep.h (riscv_software_single_step): Declare.
3365
3366         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3367         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3368
3369 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3370
3371         PR gdb/18050:
3372         * target.c (dispose_inferior): Don't dispose of inferiors that are
3373         already killed.
3374
3375 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3376
3377         * remote.c (remote_target::download_tracepoint): Change char* to
3378         const char*.
3379
3380 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3381
3382         * target.h (target_options_to_string): Return an std::string.
3383         * target.c (str_comma_list_concat_elem): Return void, use
3384         std::string.
3385         (do_option): Likewise.
3386         (target_options_to_string): Return an std::string.
3387         * linux-nat.c (linux_nat_target::wait): Adjust.
3388         * target-debug.h (target_debug_print_options): Adjust.
3389
3390 2018-08-07  Tom Tromey  <tom@tromey.com>
3391
3392         * Makefile.in (CPPFLAGS): New variable.
3393         (INTERNAL_CPPFLAGS): Use it.
3394
3395 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3396
3397         * NEWS: Mention the index cache.
3398
3399 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3400
3401         * common/pathstuff.h (get_standard_cache_dir): New.
3402         * common/pathstuff.c (get_standard_cache_dir): New.
3403         * build-id.h (build_id_to_string): New.
3404         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
3405         DEBUG_STR_SUFFIX): Move to here.
3406         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
3407         DEBUG_STR_SUFFIX): Move from there.
3408         (write_psymtabs_to_index): Make non-static, add basename
3409         parameter.  Write to temporary files, rename when done.
3410         (save_gdb_index_command): Adjust call to
3411         write_psymtabs_to_index.
3412         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
3413         field.
3414         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
3415         (get_gdb_index_contents_from_cache): New.
3416         (get_gdb_index_contents_from_cache_dwz): New.
3417         (dwarf2_initialize_objfile): Read index from cache.
3418         (dwarf2_build_psymtabs): Save to index.
3419         * dwarf-index-cache.h: New file.
3420         * dwarf-index-cache.c: New file.
3421         * dwarf-index-write.h: New file.
3422
3423 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3424
3425         * gnulib/aclocal.m4: Re-generate.
3426         * gnulib/config.in: Re-generate.
3427         * gnulib/configure: Re-generate.
3428         * gnulib/import/Makefile.am: Re-generate.
3429         * gnulib/import/Makefile.in: Re-generate.
3430         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3431         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3432         * gnulib/import/m4/mkdir.m4: New file.
3433         * gnulib/import/mkdir.c: New file.
3434         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
3435         module.
3436
3437 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3438
3439         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
3440         * common/scoped_mmap.c: New file.
3441         * common/scoped_mmap.h (destroy): New method.
3442         (~scoped_mmap, reset): Use destroy.
3443         (scoped_mmap): New move constructor.
3444         (mmap_file): New declaration.
3445         * unittests/scoped_mmap-selftests.c (test_normal,
3446         test_invalid_filename, run_tests): New functions.
3447         (_initialize_scoped_mmap_selftests): Register selftest.
3448
3449 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3450
3451         * dwarf2read.c (read_gdb_index_from_section): Rename to...
3452         (read_gdb_index_from_buffer): ... this.  Remove section
3453         parameter, add buffer parameter.
3454         (get_gdb_index_contents_ftype,
3455         get_gdb_index_contents_dwz_ftype): New typedefs.
3456         (dwarf2_read_gdb_index): Add callback parameters to get the
3457         index contents.
3458         (get_gdb_index_contents_from_section): New.
3459         (dwarf2_initialize_objfile): Update call to
3460         dwarf2_read_gdb_index.
3461
3462 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3463
3464         * common/filestuff.h (gdb_fopen_cloexec): New overload.
3465         (gdb_open_cloexec): Likewise.
3466         * nat/linux-osdata.c (command_from_pid): Use string_printf.
3467         (commandline_from_pid): Likewise.
3468         (linux_xfer_osdata_threads): Likewise.
3469         (linux_xfer_osdata_fds): Likewise.
3470         * ada-lang.c (is_package_name): Likewise.
3471         * auxv.c (procfs_xfer_auxv): Likewise.
3472         * breakpoint.c (print_one_breakpoint_location): Use
3473         uiout::field_fmt.
3474         (print_one_catch_solib): Use string_printf.
3475         * coff-pe-read.c (add_pe_exported_sym): Likewise.
3476         (add_pe_forwarded_sym): Likewise.
3477         * dwarf2read.c (create_type_unit_group): Likewise.
3478         (build_error_marker_type): Likewise.
3479         * infcall.c (get_function_name): Likewise.
3480         * valprint.c (print_converted_chars_to_obstack): Likewise.
3481         * xtensa-tdep.c (xtensa_register_type): Likewise.
3482
3483 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
3484
3485         * remote.c (remote_target::download_tracepoint): Fix format
3486         string errors.
3487
3488 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3489
3490         * tracefile.c: Include common/byte-vector.h.
3491         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
3492         with trace_regblock_size if needed.  Update uses of buf.
3493
3494 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3495
3496         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
3497         std::vector<unsigned char>.
3498         * tracepoint.c (collection_list::collection_list): Remove
3499         m_regs_mask initializer from initializer list.  Resize
3500         m_regs_mask using the largest remote register number.
3501         (collection_list::add_remote_register): Remove size check on
3502         m_regs_mask.  Use at to access element.
3503         (collection_list::stringify): Change type of temp_buf to
3504         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
3505         stringify the register mask.  Use pack_hex_byte for the register
3506         mask.
3507
3508 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3509
3510         * tracepoint.h (class collection_list) <add_register>: Remove.
3511         <add_remote_register, add_ax_registers, add_local_register>:
3512         Declare.
3513         <add_memrange>: Add scope parameter.
3514         * tracepoint.c (encode_actions_1): Likewise.
3515         (collection_list::add_register): Rename to ...
3516         (collection_list::add_remote_register): ... this.  Update
3517         comment.
3518         (collection_list::add_ax_registers, add_local_register): New
3519         methods.
3520         (collection_list::add_memrange): Add scope parameter.  Call
3521         add_local_register instead of add_register.
3522         (finalize_tracepoint_aexpr): New function.
3523         (collection_list::collect_symbol): Update calls to add_memrange.
3524         Call add_local_register instead of add_register.  Call
3525         add_ax_registers.  Call finalize_tracepoint_aexpr.
3526         (encode_actions_1): Get remote regnos for $reg action.  Call
3527         add_remote_register, add_ax_registers, and add_local_register.
3528         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
3529         (validate_actionline): Call finalize_tracepoint_aexpr.
3530
3531 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3532
3533         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
3534         Replace array buf with gdb::char_vector buf, of size
3535         get_remote_packet_size ().  Replace references to buf and
3536         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
3537         and xsnprintf with snprintf.  Raise errors if the buffer is too
3538         small.
3539
3540 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3541
3542         * remote.c (remote_target::download_tracepoint): Fix the has_more
3543         predicate in the QTDP action list iteration.
3544
3545 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3546
3547         * remote.c (remote_target::download_tracepoint): Fix indentation
3548         in for block.
3549
3550 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3551
3552         * proc-api.c (_initialize_proc_api): Remove c, unused.
3553         * procfs.c (procfs_init_inferior): Remove signals, unused.
3554         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
3555         unused.
3556
3557 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
3558             Andrew Burgess  <andrew.burgess@embecosm.com>
3559
3560         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
3561         'W_STOPCODE (0)' as this could be ambiguous.
3562
3563 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
3564
3565         * ser-tcp.c (net_open): Fix thinko when deciding whether to
3566         disable TCP's Nagle algorithm (use "ai_protocol" instead of
3567         "ai_socktype").
3568
3569 2018-08-02  Tom Tromey  <tom@tromey.com>
3570
3571         PR symtab/16842.
3572         * dwarf2read.c (read_func_scope): Set symtab on template parameter
3573         symbols.
3574         (process_structure_scope): Likewise.
3575
3576 2018-08-02  Xavier Roirand  <roirand@adacore.com>
3577
3578         PR gdb/22629:
3579         * darwin-nat.c (darwin_kill_inferior): Fix handling of
3580         kill inferior.
3581
3582 2018-08-02  Tom Tromey  <tom@tromey.com>
3583
3584         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
3585         (darwin_suspend_inferior, darwin_resume_inferior)
3586         (darwin_decode_notify_message, darwin_resume_inferior_threads)
3587         (darwin_check_new_threads): Check result of get_darwin_inferior.
3588
3589 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
3590
3591         GDB 8.1.1 released.
3592
3593 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
3594
3595         * varobj.c (varobj_get_path_expr_parent): Report an error if
3596         parent is a dynamic varobj.
3597
3598 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3599
3600         * gnulib/aclocal.m4: Re-generate.
3601         * gnulib/config.in: Re-generate.
3602         * gnulib/configure: Re-generate.
3603         * gnulib/import/Makefile.in: Re-generate.
3604         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3605         * gnulib/import/m4/onceonly.m4: Re-generate.
3606
3607 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3608
3609         * target-descriptions.c (struct xml_test_tdesc): New.
3610         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
3611         (record_xml_tdesc): Update.
3612         (maintenance_check_xml_descriptions): Update.
3613         * target-descriptions.h (record_xml_tdesc): Update comment.
3614
3615 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3616
3617         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
3618         checking array bounds are defined.
3619
3620 2018-07-30  Tom Tromey  <tom@tromey.com>
3621
3622         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
3623         irreflexivity violation.
3624
3625 2018-07-30  Tom Tromey  <tom@tromey.com>
3626
3627         * cli/cli-decode.c (lookup_cmd): Remove lint code.
3628         * value.c (unpack_long): Remove lint code.
3629         * valops.c (value_ind): Remove lint code.
3630         * valarith.c (value_x_binop, value_x_unop, value_equal)
3631         (value_pos): Remove lint code.
3632
3633 2018-07-28  Tom de Vries  <tdevries@suse.de>
3634
3635         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
3636         with undefined upper bound as <optimized out>.
3637
3638 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
3639
3640         * gcore.in: Rename variable "name" to "prefix".  Expand
3641         "usage" text.
3642
3643 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
3644
3645         * windows-nat.c (windows_nat_target::create_inferior): Update to
3646         call close() in global namespace.
3647
3648 2018-07-26  Tom Tromey  <tom@tromey.com>
3649
3650         * dwarf-index-write.c (add_address_entry): Don't add objfile
3651         offsets.
3652         * dbxread.c (find_stab_function): Rename from
3653         find_stab_function_addr.  Return a bound_minimal_symbol.
3654         (read_dbx_symtab): Use raw_text_low, raw_text_high.
3655         Don't add objfile offsets.
3656         (end_psymtab): Use raw_text_low, raw_text_high,
3657         MSYMBOL_VALUE_RAW_ADDRESS.
3658         (read_ofile_symtab): Update.
3659         (process_one_symbol): Update.
3660         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
3661         offsets.
3662         (dw2_relocate): Remove.
3663         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
3664         searching addrmap.
3665         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
3666         Update.
3667         (process_psymtab_comp_unit_reader, add_partial_symbol)
3668         (add_partial_subprogram, dwarf2_ranges_read): Update.
3669         (load_partial_dies): Update.
3670         (add_address_entry): Don't add objfile offsets.
3671         (dwarf2_build_include_psymtabs): Update.
3672         (create_addrmap_from_aranges): Don't add objfile offsets.
3673         (dw2_find_pc_sect_compunit_symtab): Update.
3674         * mdebugread.c (parse_symbol): Don't add objfile offsets.
3675         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
3676         Update.
3677         (parse_partial_symbols): Don't add objfile offsets.  Use
3678         raw_text_low, raw_text_high.  Update.
3679         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
3680         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
3681         or call 'relocate' quick function.  Clear psymbol_map.
3682         * psympriv.h (struct partial_symbol) <address>: Add section
3683         offset.
3684         <set_unrelocated_address>: Rename from set_address.
3685         <raw_text_low, raw_text_high>: New methods.
3686         <text_low, text_high>: Add objfile parameter.
3687         (add_psymbol_to_bcache): Add 'section' parameter.  Call
3688         set_unrelocated_address.
3689         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3690         (find_pc_psymbol): Update.
3691         (fixup_psymbol_section, relocate_psymtabs): Remove.
3692         (dump_psymtab, psym_functions): Update.
3693         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
3694         parameter.
3695         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
3696         (start_psymtab_common): Update.
3697         * symfile-debug.c (debug_qf_relocate): Remove.
3698         (debug_sym_quick_functions): Update.
3699         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
3700         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
3701         Update.
3702
3703 2018-07-26  Tom Tromey  <tromey@redhat.com>
3704
3705         * dbxread.c (end_psymtab): Use text_high_valid and
3706         text_low_valid.
3707         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
3708         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
3709         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3710         Update comment.
3711         <text_low_valid, text_high_valid>: New fields.
3712         <set_text_low, set_text_high>: Update.
3713         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
3714
3715 2018-07-26  Tom Tromey  <tom@tromey.com>
3716
3717         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
3718         Update.
3719         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
3720         textlow and texthigh fields.
3721         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
3722         Update.
3723         * mdebugread.c (parse_lines, parse_partial_symbols)
3724         (psymtab_to_symtab_1): Update.
3725         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3726         Rename fields.  Update comment.  Now private.
3727         <text_low, text_high, set_text_low, set_text_high>: New methods.
3728         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3729         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
3730         (start_psymtab_common, maintenance_info_psymtabs)
3731         (maintenance_check_psymtabs): Update.
3732         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
3733         texthigh fields.
3734         (scan_xcoff_symtab): Update.
3735
3736 2018-07-26  Tom Tromey  <tromey@redhat.com>
3737
3738         * psympriv.h (struct partial_symbol) <unrelocated_address,
3739         address, set_address>: New methods.
3740         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
3741         (fixup_psymbol_section, relocate_psymtabs): Update.
3742         (print_partial_symbols): Add 'objfile' parameter.  Update.
3743         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
3744         Update.
3745
3746 2018-07-26  Tom Tromey  <tom@tromey.com>
3747
3748         * dwarf-index-write.c (write_psymbols, debug_names::insert)
3749         (debug_names::write_psymbols): Update.
3750         * psympriv.h (struct partial_symbol): Derive from
3751         general_symbol_info.
3752         <obj_section>: New method.
3753         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
3754         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3755         (find_pc_sect_psymbol, fixup_psymbol_section)
3756         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
3757         (print_partial_symbols, recursively_search_psymtabs)
3758         (compare_psymbols, psymbol_hash, psymbol_compare)
3759         (add_psymbol_to_bcache, maintenance_check_psymtabs)
3760         (psymbol_name_matches, psym_fill_psymbol_map): Update.
3761
3762 2018-07-26  Tom Tromey  <tromey@redhat.com>
3763
3764         * dbxread.c (end_psymtab): Remove dead code.
3765
3766 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
3767
3768         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
3769         DWARF unwinders are disabled.
3770         * dwarf2-frame.c: Add dwarf2read.h include.
3771         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
3772         disabled.
3773         (dwarf2_frame_unwinders_enabled_p): Define.
3774         (show_dwarf_unwinders_enabled_p): New function.
3775         (_initialize_dwarf2_frame): Register switch to control DWARF
3776         unwinder use.
3777         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
3778         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
3779         (show_dwarf_cmdlist): Remove static keyword.
3780         * dwarf2read.h (set_dwarf_cmdlist): Declare.
3781         (show_dwarf_cmdlist): Declare.
3782         * NEWS: Document new feature.
3783
3784 2018-07-26  Tom de Vries  <tdevries@suse.de>
3785
3786         PR breakpoints/23366
3787         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
3788
3789 2018-07-26  Tom de Vries  <tdevries@suse.de>
3790
3791         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
3792         DW_AT_count can't be translated to a dynamic prop.
3793
3794 2018-07-25  Tom de Vries  <tdevries@suse.de>
3795
3796         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
3797         try/catch.
3798
3799 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
3800
3801         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
3802
3803 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
3804
3805         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
3806
3807 2018-07-24  Keith Seitz  <keiths@redhat.comt
3808
3809         PR symtab/23010
3810         * dwarf2read.c (dw2_add_symbol_to_list): New function.
3811         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
3812         instead of add_symbol_to_list.
3813         (read_file_scope): Call prepare_one_comp_unit before reading
3814         any other DIEs.
3815
3816 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
3817
3818         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
3819
3820 2018-07-24  Tom Tromey  <tom@tromey.com>
3821
3822         * utils.c (malloc, realloc, free): Don't declare.
3823         * configure, config.in: Rebuild.
3824         * configure.ac: Don't check for declarations of free, malloc, or
3825         realloc.
3826
3827 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3828
3829         * aarch64-linux-nat.c
3830         (aarch64_linux_nat_target::stopped_data_address): Remove unused
3831         variable.
3832         * arm-linux-nat.c (fetch_regs): Likewise.
3833         (store_regs): Likewise.
3834         (fetch_vfp_regs): Likewise.
3835         (store_vfp_regs): Likewise.
3836         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
3837         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
3838         (arm_linux_nat_target::insert_watchpoint): Likewise.
3839         (arm_linux_nat_target::remove_watchpoint): Likewise.
3840         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
3841         Likewise.
3842         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
3843         Likewise.
3844         * ppc-linux-nat.c (fetch_register): Likewise.
3845         (fetch_all_gp_regs): Likewise.
3846         (fetch_ppc_registers): Likewise.
3847         (store_all_gp_regs): Likewise.
3848         (store_ppc_registers): Likewise.
3849         (hwdebug_insert_point): Likewise.
3850         (can_use_watchpoint_cond_accel): Likewise.
3851         * remote-sim.c (gdb_os_write_stdout): Likewise.
3852
3853 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3854             Tom Tromey  <tom@tromey.com>
3855
3856         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
3857         test for it.
3858         * configure: Rebuild.
3859
3860 2018-07-22  Tom Tromey  <tom@tromey.com>
3861
3862         * regformats/regdat.sh: Define xmltarget_${name} inside
3863         #ifndef IN_PROCESS_AGENT.
3864
3865 2018-07-22  Tom Tromey  <tom@tromey.com>
3866
3867         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
3868
3869 2018-07-22  Tom Tromey  <tom@tromey.com>
3870
3871         * symfile.c (reread_symbols): Notify iter, not objfile.
3872
3873 2018-07-22  Tom Tromey  <tom@tromey.com>
3874
3875         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
3876         Use arch_ops.
3877         (ravenscar_thread_target::prepare_to_store): Likewise.
3878
3879 2018-07-22  Tom Tromey  <tom@tromey.com>
3880
3881         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
3882         unused variable.  Call value_fetch_lazy when needed.
3883         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
3884         Remove unused variable.  Call value_fetch_lazy when needed.
3885
3886 2018-07-22  Tom Tromey  <tom@tromey.com>
3887
3888         * m32c-tdep.c (mark_dma): Return void.
3889         (make_regs): Remove unused declarations.
3890
3891 2018-07-22  Tom Tromey  <tom@tromey.com>
3892
3893         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
3894         cmdscm_get_valid_command_smob_arg_unsafe for effect.
3895         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
3896         bkscm_get_valid_block_smob_arg_unsafe for effect.
3897
3898 2018-07-22  Tom Tromey  <tom@tromey.com>
3899
3900         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
3901         value_type.
3902
3903 2018-07-22  Tom Tromey  <tom@tromey.com>
3904
3905         * windows-nat.c (saved_context): Conditionally define.
3906         * remote.c (remote_target::remote_btrace_maybe_reopen):
3907         Conditionally declare "warned".
3908         * inflow.c (sigquit_ours): Conditionally define.
3909         (new_tty): Move "tty" declaration inside #if.
3910         * guile/guile.c (guile_datadir): Conditionally define.
3911         * charset.c (set_be_le_names): Move some declarations inside #if.
3912         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
3913         #if.
3914         (parse_xml_btrace_conf): Likewise.
3915
3916 2018-07-22  Tom Tromey  <tom@tromey.com>
3917
3918         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
3919
3920 2018-07-22  Tom Tromey  <tom@tromey.com>
3921
3922         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
3923         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
3924         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
3925         * buildsym-legacy.c (get_macro_table): Remove unused variable.
3926         * stack.c (frame_apply_level_command): Remove unused variable.
3927         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
3928         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
3929         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
3930         unused variable.
3931         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
3932         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
3933         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
3934         variable.
3935         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
3936         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
3937         variable.
3938         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
3939         Remove unused variable.
3940         * cli/cli-script.c (recurse_read_control_structure): Remove unused
3941         variable.
3942         * common/tdesc.c (print_xml_feature::visit): Remove unused
3943         variable.
3944         * compile/compile-object-load.c (store_regs): Remove unused
3945         variables.
3946         * complaints.c (clear_complaints): Remove unused variable.
3947         * corelow.c (core_target_open): Remove unused variable.
3948         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
3949         variable.
3950         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
3951         variable.
3952         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
3953         variable.
3954         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
3955         variable.
3956         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
3957         variable.
3958         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
3959         variable.
3960         * ia64-tdep.c (examine_prologue): Remove unused variable.
3961         * infcall.c (run_inferior_call): Remove unused variable.
3962         * inferior.c (exit_inferior): Remove unused variable.
3963         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
3964         * linespec.c (decode_line_2): Remove unused variable.
3965         * linux-nat.c (super_close): Remove.
3966         * linux-tdep.c (linux_info_proc): Remove unused variable.
3967         * mi/mi-main.c (mi_execute_command): Remove unused variable.
3968         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
3969         Remove unused variable.
3970         * parse.c (find_minsym_type_and_address): Remove unused variable.
3971         * printcmd.c (info_symbol_command, printf_floating): Remove unused
3972         variable.
3973         * python/py-breakpoint.c (bppy_set_commands): Remove unused
3974         variable.
3975         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
3976         variables.
3977         * record-btrace.c (record_btrace_target::store_registers): Remove
3978         unused variable.
3979         (cmd_show_record_btrace_cpu): Remove unused variable.
3980         * riscv-tdep.c (riscv_register_reggroup_p)
3981         (riscv_push_dummy_call, riscv_return_value): Remove unused
3982         variable.
3983         * rust-exp.y (literal): Remove unused variable.
3984         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
3985         unused variable.
3986         <STRUCTOP_ANONYMOUS>: Likewise.
3987         * s390-linux-tdep.c (s390_linux_init_abi_31)
3988         (s390_linux_init_abi_64): Remove unused variable.
3989         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
3990         (file_select_thread, net_windows_open, _initialize_ser_windows):
3991         Remove unused variables.
3992         * symtab.c (find_pc_sect_line): Remove unused variable.
3993         * target-memory.c (compute_garbled_blocks): Remove unused
3994         variable.
3995         (target_write_memory_blocks): Remove unused variable.
3996         * target.c (target_stack::unpush): Remove unused variables.
3997         * tracepoint.c (start_tracing, all_tracepoint_actions)
3998         (merge_uploaded_trace_state_variables)
3999         (print_one_static_tracepoint_marker): Remove unused variable.
4000         * unittests/basic_string_view/element_access/char/1.cc (test01):
4001         Remove unused variable.
4002         * windows-nat.c (windows_continue, windows_add_all_dlls)
4003         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4004         Remove unused variables.
4005
4006 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4007
4008         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4009         attr_profile in HAVE_ELF.
4010         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4011         HAVE_ELF.
4012
4013 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4014
4015         * frame.c (frame_register_unwind): Change parameter name.
4016         (frame_unwind_register): Likewise.
4017         (frame_unwind_register_value): Likewise.
4018         (frame_unwind_register_signed): Likewise.
4019         (frame_unwind_register_unsigned): Likewise.
4020         * frame.h (frame_register_unwind): Likewise.
4021         (frame_unwind_register): Likewise.
4022         (frame_unwind_register_value): Likewise.
4023         (frame_unwind_register_signed): Likewise.
4024         (frame_unwind_register_unsigned): Likewise.
4025         (frame_unwind_arch): Likewise.
4026
4027 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4028
4029         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4030         ISA maintenance.
4031
4032 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4033
4034         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4035         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4036         hand.
4037
4038 2018-07-20  Keith Seitz  <keiths@redhat.com>
4039
4040         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4041         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4042         m_compunit_symtab, m_language>: Add "m_" prefix.
4043         Update all uses.
4044         * buildsym.c: Update all uses.
4045
4046 2018-07-20  Tom Tromey  <tom@tromey.com>
4047
4048         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4049         * buildsym.h (record_line_ftype): Remove typedef.
4050
4051 2018-07-20  Tom Tromey  <tom@tromey.com>
4052
4053         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4054         (end_expandable_symtab): Likewise.
4055         (end_symtab_get_static_block): Likewise.
4056         (end_symtab_from_static_block): Likewise.
4057         * buildsym-legacy.c (augment_type_symtab): Remove.
4058         (end_expandable_symtab): Remove.
4059         (end_symtab_get_static_block): Remove.
4060         (end_symtab_from_static_block): Remove.
4061
4062 2018-07-20  Tom Tromey  <tom@tromey.com>
4063
4064         * dwarf2read.c: Include buildsym.h.
4065         (struct dwarf2_cu) <builder>: New method.
4066         (fixup_go_packaging): Update.
4067         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4068         use scoped_free_pendings.
4069         (using_directives): Add "cu" parameter, remove "language".
4070         (read_import_statement, setup_type_unit_groups, )
4071         (read_func_scope, read_lexical_block_scope)
4072         (dwarf2_record_block_ranges, read_namespace): Update.
4073         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4074         (lnp_state_machine::handle_end_sequence): Update.
4075         (class lnp_state_machine) <m_cu>: New member.
4076         <m_record_line_callback>: Remove.
4077         <m_currently_recording_lines>: New member.
4078         (lnp_state_machine::handle_set_file): Update.
4079         (noop_record_line): Remove.
4080         (dwarf_record_line_p): Add cu parameter.
4081         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4082         (lnp_state_machine::record_line)
4083         (lnp_state_machine::lnp_state_machine)
4084         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4085         (dwarf_decode_lines): Update.
4086         (dwarf2_start_subfile): Add cu parameter.
4087         (dwarf2_start_symtab, new_symbol): Update.
4088         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4089         Remove dwarf2_per_objfile parameter.
4090         (dwarf_decode_macros): Update.
4091
4092 2018-07-20  Tom Tromey  <tom@tromey.com>
4093
4094         * stabsread.c (define_symbol): Update.
4095         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4096         * dwarf2read.c (new_symbol): Update.
4097         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4098         * cp-namespace.c: Include buildsym.h.
4099         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4100         * buildsym-legacy.c (get_buildsym_compunit): New function.
4101
4102 2018-07-20  Tom Tromey  <tom@tromey.com>
4103
4104         * xcoffread.c: Include buildsym-legacy.h.
4105         * windows-nat.c: Include buildsym-legacy.h.
4106         * stabsread.c: Include buildsym-legacy.h.
4107         * mdebugread.c: Include buildsym-legacy.h.
4108         * buildsym-legacy.h: New file.
4109         * buildsym-legacy.c: New file, from buildsym.c.
4110         * go32-nat.c: Include buildsym-legacy.h.
4111         * dwarf2read.c: Include buildsym-legacy.h.
4112         * dbxread.c: Include buildsym-legacy.h.
4113         * cp-namespace.c: Include buildsym-legacy.h.
4114         * coffread.c: Include buildsym-legacy.h.
4115         * buildsym.h: Move some contents to buildsym-legacy.h.
4116         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4117         buildsym-legacy.c.
4118         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4119
4120 2018-07-20  Tom Tromey  <tom@tromey.com>
4121
4122         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4123         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4124         (buildsym_compunit::buildsym_compunit)
4125         (buildsym_compunit::~buildsym_compunit)
4126         (buildsym_compunit::get_macro_table): Define.
4127
4128 2018-07-20  Tom Tromey  <tom@tromey.com>
4129
4130         * buildsym.c (reset_symtab_globals): Remove.
4131         (buildsym_compunit::end_symtab_from_static_block): Update.
4132         (buildsym_compunit::augment_type_symtab): Update.
4133         (end_symtab_from_static_block): Call free_buildsym_compunit.
4134         (augment_type_symtab, end_symtab, end_expandable_symtab):
4135         Likewise.
4136
4137 2018-07-20  Tom Tromey  <tom@tromey.com>
4138
4139         * arch-utils.c: Do not include buildsym.h.
4140         * mipsread.c: Do not include buildsym.h.
4141         * machoread.c: Do not include buildsym.h.
4142         * elfread.c: Do not include buildsym.h.
4143
4144 2018-07-20  Tom Tromey  <tom@tromey.com>
4145
4146         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4147         initialization.
4148         (buildsym_compunit): Add new constructor.
4149         (struct buildsym_compunit) <get_last_source_file, finish_block,
4150         record_block_range, start_subfile, patch_subfile_names,
4151         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4152         set_last_source_start_addr, get_last_source_start_addr,
4153         get_local_using_directives, set_local_using_directives,
4154         get_global_using_directives, outermost_context_p,
4155         get_current_context_stack, get_context_stack_depth,
4156         get_current_subfile, get_local_symbols, get_file_symbols,
4157         get_global_symbols, record_debugformat, record_producer,
4158         push_context, pop_context, end_symtab_get_static_block,
4159         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4160         New public methods.
4161         <record_pending_block, finish_block_internal, make_blockvector,
4162         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4163         private methods.
4164         Update all users.
4165
4166 2018-05-22  Tom Tromey  <tom@tromey.com>
4167
4168         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4169         parameter.
4170         (finish_block_internal): Update.
4171
4172 2018-07-20  Tom Tromey  <tom@tromey.com>
4173
4174         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4175         parameter.
4176         (finish_block_internal): Update.
4177
4178 2018-07-20  Tom Tromey  <tom@tromey.com>
4179
4180         * buildsym.h (EXTERN): Don't define or undef.
4181         * buildsym.c (EXTERN): Don't define.
4182
4183 2018-07-20  Tom Tromey  <tom@tromey.com>
4184
4185         * buildsym.c: Remove TODO comment.
4186
4187 2018-07-20  Tom Tromey  <tom@tromey.com>
4188
4189         * coffread.c (coff_symtab_read): Update.
4190         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4191         (xcoff_new_init): Update.
4192         * mipsread.c (mipscoff_new_init): Update.
4193         * mdebugread.c (mdebug_build_psymtabs): Update.
4194         * elfread.c (elf_new_init): Update.
4195         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4196         Update.
4197         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4198         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4199         (stabsect_build_psymtabs): Update.
4200         * buildsym.h (buildsym_init): Don't declare.
4201         * buildsym.c: Update comment.
4202         (prepare_for_building): Remove.
4203         (start_symtab, restart_symtab): Update.
4204         (reset_symtab_globals): Update comment.
4205         (buildsym_init): Remove.
4206
4207 2018-07-20  Tom Tromey  <tom@tromey.com>
4208
4209         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4210         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4211         (read_enum_type, common_block_start, common_block_end)
4212         (cleanup_undefined_types_1, finish_global_stabs): Update.
4213         * mdebugread.c (psymtab_to_symtab_1): Update.
4214         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4215         (read_lexical_block_scope, new_symbol): Update.
4216         * dbxread.c (process_one_symbol): Update.
4217         * coffread.c (coff_symtab_read, process_coff_symbol)
4218         (coff_read_enum_type): Update.
4219         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4220         declare.
4221         (get_local_symbols, get_file_symbols, get_global_symbols): New
4222         functions.
4223         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4224         m_global_symbols.
4225         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4226         (~scoped_free_pendings): Update.
4227         (finish_block, prepare_for_building, reset_symtab_globals)
4228         (end_symtab_get_static_block, end_symtab_with_blockvector)
4229         (augment_type_symtab, push_context): Update.
4230         (get_local_symbols, get_file_symbols, get_global_symbols): New
4231         functions.
4232         (buildsym_init): Update.
4233
4234 2018-07-20  Tom Tromey  <tom@tromey.com>
4235
4236         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4237         (process_full_type_unit): Likewise.
4238         (dwarf2_start_symtab): Set list_in_scope.
4239
4240 2018-07-20  Tom Tromey  <tom@tromey.com>
4241
4242         * dwarf2read.c (process_psymtab_comp_unit_reader)
4243         (build_type_psymtabs_reader): Do not set list_in_scope.
4244
4245 2018-07-20  Tom Tromey  <tom@tromey.com>
4246
4247         * buildsym.c (free_pendings): Remove.
4248         (add_symbol_to_list, scoped_free_pendings)
4249         (finish_block_internal, buildsym_init): Update.
4250
4251 2018-07-20  Tom Tromey  <tom@tromey.com>
4252
4253         * xcoffread.c (read_xcoff_symtab): Update.
4254         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4255         Update.
4256         * dbxread.c (process_one_symbol): Update.
4257         * coffread.c (coff_symtab_read): Update.
4258         * buildsym.h (finish_block): Update.
4259         * buildsym.c (finish_block): Remove "listhead" argument.
4260         (end_symtab_get_static_block): Update.
4261
4262 2018-07-20  Tom Tromey  <tom@tromey.com>
4263
4264         * buildsym.h (class scoped_free_pendings): Remove constructor.
4265         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4266         method.
4267         <m_pending_block_obstack, m_pending_blocks>: New members.
4268         (pending_block_obstack, pending_blocks): Remove.
4269         (scoped_free_pendings::scoped_free_pendings): Default.
4270         (~scoped_free_pendings): Update.
4271         (free_pending_blocks): Remove.
4272         (finish_block_internal, record_pending_block, make_blockvector)
4273         (end_symtab_get_static_block, augment_type_symtab, push_context)
4274         (buildsym_init): Update.
4275
4276 2018-07-20  Tom Tromey  <tom@tromey.com>
4277
4278         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4279         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4280         members.
4281         (pending_addrmap, pending_addrmap_obstack)
4282         (pending_addrmap_interesting): Remove.
4283         (scoped_free_pendings, record_block_range, make_blockvector)
4284         (prepare_for_building, reset_symtab_globals, buildsym_init):
4285         Update.
4286
4287 2018-07-20  Tom Tromey  <tom@tromey.com>
4288
4289         * xcoffread.c (process_linenos): Update.
4290         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4291         * mdebugread.c (psymtab_to_symtab_1): Update.
4292         * dwarf2read.c (setup_type_unit_groups)
4293         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4294         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4295         * dbxread.c (process_one_symbol): Update.
4296         * coffread.c (coff_symtab_read, enter_linenos)
4297         (process_coff_symbol): Update.
4298         * buildsym.h (current_subfile): Don't declare.
4299         (get_current_subfile): Declare.
4300         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4301         member.
4302         (start_subfile, free_buildsym_compunit, push_subfile)
4303         (prepare_for_building, start_symtab): Update.
4304         (get_current_subfile): New function.
4305
4306 2018-07-20  Tom Tromey  <tom@tromey.com>
4307
4308         * coffread.c (coff_symtab_read): Update.
4309         * xcoffread.c (read_xcoff_symtab): Update.
4310         * dwarf2read.c (new_symbol): Update.
4311         (read_func_scope, read_lexical_block_scope): Update.
4312         * dbxread.c (process_one_symbol): Update.
4313         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4314         (outermost_context_p): Remove macro.
4315         (outermost_context_p, get_current_context_stack)
4316         (get_context_stack_depth): Declare.
4317         (pop_context): Return struct context_stack.
4318         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4319         member.
4320         (context_stack_size): Remove.
4321         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4322         (prepare_for_building, end_symtab_get_static_block)
4323         (augment_type_symtab, push_context): Update.
4324         (pop_context): Return struct context_stack.
4325         (outermost_context_p, get_current_context_stack)
4326         (get_context_stack_depth): New functions.
4327         (buildsym_init): Update.
4328
4329 2018-07-20  Tom Tromey  <tom@tromey.com>
4330
4331         * rust-exp.y: Now a pure parser.  Update all rules.
4332         (%union): Move earlier.
4333         (current_parser, work_obstack): Remove globals.
4334         (rust_parser, ~rust_parser): Update.
4335         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4336         lex_character, lex_number, lex_string, lex_identifier,
4337         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4338         convert_name, convert_params_to_expression,
4339         convert_ast_to_expression, ast_basic_type, ast_operation,
4340         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4341         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4342         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4343         ast_array_type, ast_slice_type, ast_reference_type,
4344         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4345         (rust_parse): Update.
4346         (rustyyerror, rustyylex): Add parser parameter.
4347         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4348         (rust_lex_stringish_test, rust_lex_test_sequence)
4349         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4350         (rust_lex_test_push_back, rust_lex_tests): Update.
4351
4352 2018-07-19  Pedro Alves  <palves@redhat.com>
4353
4354         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4355         gdb::unique_xmalloc_ptr.
4356         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4357         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4358         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4359         copy-initialization.
4360         * guile/scm-pretty-print.c (ppscm_print_children): Use
4361         gdb::unique_xmalloc_ptr instead of cleanups.
4362         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4363         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4364         gdb::unique_xmalloc_ptr.
4365         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4366         Adjust to use gdb::unique_xmalloc_ptr.
4367         * guile/scm-utils.c (extract_arg): Adjust.
4368         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4369         gdb::unique_xmalloc_ptr instead of a cleanup.
4370
4371 2018-07-19  Tom Tromey  <tom@tromey.com>
4372
4373         * utils.c (do_value_free_to_mark)
4374         (make_cleanup_value_free_to_mark): Remove.
4375         * utils.h (make_cleanup_value_free_to_mark): Remove.
4376
4377 2018-07-19  Pedro Alves  <palves@redhat.com>
4378
4379         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4380         forwarding reference.
4381
4382 2018-07-18  Pedro Alves  <palves@redhat.com>
4383
4384         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4385         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4386         cleanup.
4387
4388 2018-07-18  Pedro Alves  <palves@redhat.com>
4389
4390         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4391         exceptions.
4392         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4393         (gdbscm_wrap): New.
4394         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4395         directly instead of a cleanup.
4396         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4397         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
4398         (vlscm_binop_gdbthrow): New, factored out from ...
4399         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
4400         (vlscm_rich_compare): Use gdbscm_wrap.
4401         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
4402         instead of a cleanup.
4403         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
4404         cleanup.
4405         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4406         Use xfree directly instead of a cleanup.
4407         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
4408         Adjust to use gdbscm_wrap and scoped_value_mark.
4409         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
4410         (gdbscm_value_address, gdbscm_value_dereference)
4411         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
4412         scoped_value_mark.
4413         (gdbscm_value_dynamic_type): Use scoped_value_mark.
4414         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
4415         scoped_value_mark.
4416         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
4417         gdbscm_wrap and scoped_value_mark.
4418         (gdbscm_value_to_string): Use xfree directly instead of a
4419         cleanup.  Move 'buffer' unique_ptr to TRY scope.
4420         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
4421         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
4422         scoped_value_mark.
4423         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
4424         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
4425         scoped_value_mark.
4426         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
4427         gdbscm_wrap.
4428
4429 2018-07-18  Tom de Vries  <tdevries@suse.de>
4430
4431         * findvar.c (default_read_var_value): Also resolve dynamic type for
4432         LOC_OPTIMIZED_OUT vars.
4433
4434 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
4435
4436         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
4437         decoding.
4438
4439 2018-07-17  Tom Tromey  <tom@tromey.com>
4440
4441         * guile/scm-param.c (pascm_set_func, pascm_show_func)
4442         (compute_enum_list, pascm_set_param_value_x)
4443         (gdbscm_parameter_value): Update.
4444         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
4445         (gdbscm_scm_to_host_string): Update.
4446         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
4447         Update.
4448         * guile/scm-cmd.c (cmdscm_add_completion): Update.
4449         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
4450         * guile/scm-string.c (gdbscm_scm_to_string): Return
4451         unique_xmalloc_ptr.
4452         (gdbscm_scm_to_host_string): Likewise.
4453
4454 2018-07-17  Tom Tromey  <tom@tromey.com>
4455
4456         * guile/guile.c (gdbscm_eval_from_control_command): Update.
4457         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
4458         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
4459         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
4460         unique_xmalloc_ptr.
4461
4462 2018-07-17  Tom Tromey  <tom@tromey.com>
4463
4464         * guile/scm-param.c (pascm_signal_setshow_error): Update.
4465         * guile/guile-internal.h (gdbscm_exception_message_to_string):
4466         Update.
4467         * guile/scm-cmd.c (cmdscm_function): Update.
4468         * guile/scm-pretty-print.c
4469         (ppscm_print_exception_unless_memory_error): Update.
4470         * guile/scm-exception.c (gdbscm_exception_message_to_string):
4471         Return unique_xmalloc_ptr.
4472
4473 2018-07-17  Tom Tromey  <tom@tromey.com>
4474
4475         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
4476         Use string_printf.
4477
4478 2018-07-17  Jim Wilson  <jimw@sifive.com>
4479
4480         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
4481         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
4482         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
4483         unecessary braces after EF_RISCV_RVC test.  Delete call to
4484         set_gdbarch_decr_pc_after_break.
4485
4486         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
4487         RISCV_LAST_FP_REGNUM + 1.
4488         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
4489
4490 2018-07-17  Tom Tromey  <tom@tromey.com>
4491
4492         * configure.ac: Remove --disable-gdbcli.
4493         * configure: Rebuild.
4494         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
4495         (SUBDIR_CLI_CFLAGS): Remove.
4496         (SFILES): Use SUBDIR_CLI_SRCS.
4497         (COMMON_OBS): Use SUBDIR_CLI_OBS.
4498
4499 2018-07-17  Tom Tromey  <tom@tromey.com>
4500
4501         PR gdb/18624:
4502         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
4503
4504 2018-07-16  Jim Wilson  <jimw@sifive.com>
4505
4506         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
4507
4508 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4509
4510         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
4511         variable.
4512         (libunwind_frame_sniffer): Likewise.
4513         (libunwind_frame_prev_register): Likewise.
4514         (libunwind_sigtramp_frame_sniffer): Likewise.
4515         * ia64-tdep.c (ia64_access_reg): Likewise.
4516         (ia64_access_rse_reg): Likewise.
4517         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
4518         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
4519
4520 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4521
4522         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
4523
4524 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4525
4526         * remote-sim.c (gdbsim_target::close,
4527         gdbsim_target::mourn_inferior): Remove unused variables.
4528
4529 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
4530
4531         * ia64-tdep.c (ktab_buf): New global.
4532         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
4533         (get_kernel_table): Adjust.
4534
4535 2018-07-16  Tom Tromey  <tom@tromey.com>
4536
4537         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
4538         * dwarf2read.c (using_directives, new_symbol): Use
4539         outermost_context_p.
4540         * dbxread.c (process_one_symbol): Use outermost_context_p.
4541         * coffread.c (coff_symtab_read): Use outermost_context_p.
4542
4543 2018-07-16  Tom Tromey  <tom@tromey.com>
4544
4545         * dwarf2read.c (using_directives, read_func_scope)
4546         (read_lexical_block_scope): Update.
4547         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
4548         * buildsym.h (local_using_directives, global_using_directives):
4549         Don't declare.
4550         (get_local_using_directives, set_local_using_directives)
4551         (get_global_using_directives): Declare.
4552         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
4553         m_global_using_directives>: New members.
4554         (finish_block_internal, prepare_for_building)
4555         (reset_symtab_globals, end_symtab_get_static_block)
4556         (push_context): Update.
4557         (get_local_using_directives, set_local_using_directives)
4558         (get_global_using_directives): New functions.
4559         (buildsym_init): Update.
4560
4561 2018-07-16  Tom Tromey  <tom@tromey.com>
4562
4563         * xcoffread.c (xcoff_initial_scan): Don't call
4564         free_pending_blocks.
4565         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
4566         * buildsym.h (class scoped_free_pendings): Add constructor.
4567         (free_pending_blocks): Don't declare.
4568         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
4569         (free_pending_blocks): Now static.
4570
4571 2018-07-16  Tom Tromey  <tom@tromey.com>
4572
4573         * buildsym.h (push_subfile, pop_subfile): Update declarations.
4574         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
4575         member.
4576         (struct subfile_stack): Remove.
4577         (subfile_stack): Remove.
4578         (push_subfile, pop_subfile, buildsym_init): Update.
4579
4580 2018-07-16  Tom Tromey  <tom@tromey.com>
4581
4582         * buildsym.c (push_subfile): Use gdb_assert.
4583         (pop_subfile): Use gdb_assert.
4584
4585 2018-07-16  Tom Tromey  <tom@tromey.com>
4586
4587         * buildsym.h (merge_symbol_lists): Remove.
4588         * buildsym.c (merge_symbol_lists): Remove.
4589
4590 2018-07-16  Tom Tromey  <tom@tromey.com>
4591
4592         * stabsread.c (scan_file_globals): Update comment.
4593         * stabsread.h (scan_file_globals): Move from buildsym.h.
4594         * buildsym.h (scan_file_globals): Move to stabsread.h.
4595
4596 2018-07-16  Tom Tromey  <tom@tromey.com>
4597
4598         * xcoffread.c (xcoff_new_init): Update.
4599         * mipsread.c (mipscoff_new_init): Update.
4600         * mdebugread.c (mdebug_build_psymtabs): Update.
4601         * elfread.c (elf_new_init): Update.
4602         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
4603         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
4604         * buildsym.h (buildsym_new_init): Don't declare.
4605         * buildsym.c (buildsym_new_init): Remove.
4606
4607 2018-07-16  Tom Tromey  <tom@tromey.com>
4608
4609         * stabsread.h (within_function): Move from buildsym.h.
4610         * stabsread.c (start_stabs): Clear within_function.
4611         * coffread.c (coff_start_symtab): Clear within_function.
4612         * buildsym.h (within_function): Move to stabsread.h.
4613         * buildsym.c (prepare_for_building): Update.
4614
4615 2018-07-16  Tom Tromey  <tom@tromey.com>
4616
4617         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
4618         * dwarf2read.c (dwarf2_start_symtab): Don't set
4619         processing_gcc_compilation.
4620         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
4621
4622 2018-07-16  Tom Tromey  <tom@tromey.com>
4623
4624         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
4625         (next_symbol_text_func): Move from buildsym.h.
4626         * stabsread.c (hashname): Move from buildsym.c.
4627         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
4628         (next_symbol_text_func, hashname): Move to stabsread.h.
4629         * buildsym.c: Don't include bcache.h
4630         (hashname): Move to stasbread.c.
4631
4632 2018-07-16  Tom Tromey  <tom@tromey.com>
4633
4634         * buildsym.h (context_stack_size): Don't declare.
4635         * buildsym.c (context_stack_size): New global.
4636
4637 2018-07-16  Tom Tromey  <tom@tromey.com>
4638
4639         * dbxread.c (processing_acc_compilation): New global.
4640         * buildsym.h (processing_acc_compilation): Don't declare.
4641
4642 2018-07-16  Tom Tromey  <tom@tromey.com>
4643
4644         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
4645         * dbxread.c (read_ofile_symtab): Update.
4646         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
4647         * buildsym.h (last_source_start_addr): Remove.
4648         (set_last_source_start_addr, get_last_source_start_addr):
4649         Declare.
4650         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
4651         parameter.
4652         (struct buildsym_compunit) <m_last_source_start_addr>: New
4653         member.
4654         (prepare_for_building): Remove start_addr parameter.
4655         (start_symtab, restart_symtab, end_symtab_get_static_block)
4656         (end_symtab_with_blockvector): Update.
4657         (set_last_source_start_addr, get_last_source_start_addr): New
4658         functions.
4659
4660 2018-07-16  Tom Tromey  <tom@tromey.com>
4661
4662         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
4663         member.
4664         (have_line_numbers): Remove.
4665         (record_line, prepare_for_building, end_symtab_get_static_block)
4666         (augment_type_symtab): Update.
4667
4668 2018-07-16  Tom Tromey  <tom@tromey.com>
4669
4670         * buildsym.c (~buildsym_compunit): Free the macro table.
4671         (struct buildsym_compunit) <get_macro_table, release_macros>: New
4672         methods.
4673         <m_pending_macros>: New member.
4674         (pending_macros): Remove.
4675         (~scoped_free_pendings, get_macro_table, prepare_for_building)
4676         (reset_symtab_globals, end_symtab_get_static_block)
4677         (end_symtab_with_blockvector, augment_type_symtab)
4678         (buildsym_init): Update.
4679
4680 2018-07-16  Tom Tromey  <tom@tromey.com>
4681
4682         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
4683         parameter.
4684         (buildsym_compunit::set_last_source_file): New method.
4685         <m_last_source_file>: New member.
4686         (prepare_for_building): Remove "name" parameter.
4687         (start_symtab, restart_symtab, reset_symtab_globals): Update.
4688         (last_source_file): Remove.
4689         (set_last_source_file, get_last_source_file): Update.
4690
4691 2018-07-16  Tom Tromey  <tom@tromey.com>
4692
4693         * buildsym.c (prepare_for_building): Add assert.
4694
4695 2018-07-16  Tom Tromey  <tom@tromey.com>
4696
4697         * buildsym.c (~buildsym_compunit): Update.
4698         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
4699         (start_subfile, patch_subfile_names)
4700         (end_symtab_with_blockvector): Update.
4701
4702 2018-07-16  Tom Tromey  <tom@tromey.com>
4703
4704         * buildsym.c (struct buildsym_compunit): Add constructor,
4705         destructor, initializers.
4706         (start_buildsym_compunit): Remove.
4707         (free_buildsym_compunit): Use "delete".
4708         (start_symtab, restart_symtab): Use "new".
4709
4710 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
4711
4712         * symfile.c (set_objfile_default_section_offset): Remove struct
4713         keyword.
4714
4715 2018-07-14  Stafford Horne  <shorne@gmail.com>
4716
4717         * (Responsible Maintainers): Add myself as or1k maintainer.
4718
4719 2018-07-13  Tom Tromey  <tom@tromey.com>
4720
4721         * symfile.c (set_objfile_default_section_offset): Use extra braces
4722         around initializer.
4723
4724 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
4725
4726         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
4727         non-branching basr.
4728
4729 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4730
4731         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4732         unittests/cli-utils-selftests.c
4733         * unittests/cli-utils-selftests.c: New file.
4734
4735 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4736
4737         * NEWS: Mention new commands. Mention change to 'thread apply'.
4738
4739 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4740
4741         * thread.c (thr_try_catch_cmd): New function.
4742         (thread_apply_all_command): Handle qcs flags.
4743         (thread_apply_command): Handle qcs flags.
4744         (taas_command): New function.
4745         (tfaas_command): New function.
4746         (_initialize_thread): Update to setup the new commands 'taas
4747         and 'tfaas'. Change doc string for 'thread apply'.
4748
4749 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4750
4751         * stack.c: (trailing_outermost_frame): New function, mostly
4752         extracted from backtrace_command_1.
4753         (leading_innermost_frame): New function.
4754         (backtrace_command_1): Update to call trailing_outermost_frame.
4755         (frame_apply_command_count): New function.
4756         (frame_apply_level_command): New function.
4757         (frame_apply_all_command): New function.
4758         (frame_apply_command): New function.
4759         (faas_command): New function.
4760         (frame_cmd_list): New variable.
4761         (_initialize_stack): Update to setup the new commands 'frame apply'
4762         and 'faas'.
4763
4764 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4765
4766         * cli-utils.c (number_or_range_parser::get_number): Only handle
4767         numbers or convenience var as numbers.
4768         (parse_flags): New function.
4769         (parse_flags_qcs): New function.
4770         (number_or_range_parser::finished): Ensure parsing end is detected
4771         before end of string.
4772         * cli-utils.h (parse_flags): New function.
4773         (parse_flags_qcs): New function.
4774         (number_or_range_parser): Remove m_finished bool.
4775         (number_or_range_parser::skip_range): Set m_in_range to false.
4776
4777 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
4778
4779         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
4780         on Windows.
4781
4782 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4783             Jan Kratochvil  <jan.kratochvil@redhat.com>
4784             Paul Fertser  <fercerpav@gmail.com>
4785             Tsutomu Seki  <sekiriki@gmail.com>
4786             Pedro Alves  <palves@redhat.com>
4787
4788         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4789         'unittests/parse-connection-spec-selftests.c'.
4790         (COMMON_SFILES): Add 'common/netstuff.c'.
4791         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
4792         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
4793         * common/netstuff.c: New file.
4794         * common/netstuff.h: New file.
4795         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
4796         (wait_for_connect): Update comment.  New parameter
4797         'gdb::optional<int> sock' instead of 'struct serial *scb'.
4798         Use 'sock' directly instead of 'scb->fd'.
4799         (try_connect): New function, with code from 'net_open'.
4800         (net_open): Rewrite main loop to deal with multiple
4801         sockets/addresses.  Handle IPv6-style hostnames; implement
4802         support for IPv6 connections.
4803         * unittests/parse-connection-spec-selftests.c: New file.
4804
4805 2018-07-11  Pedro Alves  <palves@redhat.com>
4806
4807         PR gdb/23377
4808         * remote.c (remote_target::remote_detach_pid): Call
4809         set_current_process.
4810
4811 2018-07-11  Pedro Alves  <palves@redhat.com>
4812
4813         * h8300-tdep.c (h8300_gdbarch_init): Remove
4814         set_gdbarch_ecoff_reg_to_regnum calls.
4815
4816 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4817
4818         PR c++/23373
4819         * c-typeprint.c (c_type_print_base_struct_union): Don't print
4820         offsets/sizes for static members of a class/struct.
4821
4822 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
4823
4824         * target-descriptions.c (tdesc_register_bitsize): Rename.
4825         * target-descriptions.h (tdesc_register_bitsize): Likewise.
4826         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
4827         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
4828
4829 2018-07-10  Tom Tromey  <tom@tromey.com>
4830
4831         * breakpoint.c (moribund_locations): Now static and a
4832         std::vector.
4833         (breakpoint_init_inferior, moribund_breakpoint_here_p)
4834         (build_bpstat_chain, update_global_location_list)
4835         (breakpoint_retire_moribund): Update.
4836         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
4837         VEC.
4838
4839 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4840
4841         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
4842         (riscv_register_reggroup_p): Use new function, remove unneeded
4843         parenthesis.
4844         (riscv_push_dummy_call): Extend assert to compare against xlen or
4845         flen based on register type.
4846
4847 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4848
4849         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
4850
4851 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4852
4853         * remote.c (show_hardware_watchpoint_limit): New function.
4854         (show_hardware_watchpoint_length_limit): New function.
4855         (show_hardware_breakpoint_limit): New function.
4856         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
4857         where appropriate, update help text.
4858
4859 2018-07-09  Tom Tromey  <tom@tromey.com>
4860
4861         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
4862         (CLIBS): Don't mention NAT_CLIBS.
4863
4864 2018-07-09  Tom Tromey  <tom@tromey.com>
4865
4866         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
4867         (LIBGDB_OBS, clean mostlyclean): Update.
4868         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
4869
4870 2018-07-09  Tom Tromey  <tom@tromey.com>
4871
4872         * Makefile.in (%.c: %.y): Use ECHO_YACC.
4873         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
4874         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
4875
4876 2018-07-09  Tom Tromey  <tom@tromey.com>
4877
4878         * Makefile.in (ALLDEPFILES): Remove exec.c.
4879         (COMMON_OBS): Remove exec.o.
4880         (COMMON_SFILES): Add exec.c.
4881
4882 2018-07-09  Tom Tromey  <tom@tromey.com>
4883
4884         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
4885
4886 2018-07-09  Tom Tromey  <tom@tromey.com>
4887
4888         * Makefile.in (clean mostlyclean): Remove stamp-version.
4889         (version.c): Depend on stamp-version.
4890         (stamp-version): New rule, from version.c rule.
4891
4892 2018-07-09  Tom Tromey  <tom@tromey.com>
4893
4894         * Makefile.in (init.c): Depend on stamp-init.
4895         (stamp-init): New rule, from init.c rule.
4896         (clean mostlyclean): Remove stamp-init.
4897
4898 2018-07-09  Tom Tromey  <tom@tromey.com>
4899
4900         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
4901         SUBDIR_GCC_COMPILE_SRCS.
4902
4903 2018-07-09  Tom Tromey  <tom@tromey.com>
4904
4905         * Makefile.in (init.c): Remove some unused sed rules.
4906
4907 2018-07-09  Tom Tromey  <tom@tromey.com>
4908
4909         * Makefile.in (TSOBS): Remove.
4910         (INIT_FILES): Update.
4911         (LIBGDB_OBS): Update.
4912         (COMMON_SFILES): Add inflow.c.
4913         (SFILES): Remove inflow.c.
4914
4915 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
4916
4917         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
4918
4919 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
4920
4921         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
4922         get_saveloc_name, is_signal_frame_name, step_name,
4923         init_remote_name, create_addr_space_name,
4924         destroy_addr_space_name, search_unwind_table_name,
4925         find_dyn_list_name): Constify.
4926
4927 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
4928
4929         * darwin-nat.c (darwin_pthread_kill): New function.
4930         (darwin_resume_thread): Use darwin_pthread_kill.
4931
4932 2018-07-05  Tom de Vries  <tdevries@suse.de>
4933
4934         * macroexp.c (macro_buffer) <operator=>: New member function.
4935
4936 2018-07-04  Tom Tromey  <tom@tromey.com>
4937
4938         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
4939
4940 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
4941
4942         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
4943         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
4944         * maint.c: Likewise.
4945         * top.c: Likewise.
4946
4947 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
4948
4949         * NEWS: Create a new section for the next release branch.
4950         Rename the section of the current branch, now that it has
4951         been cut.
4952
4953 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
4954
4955         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
4956         * version.in: Bump version to 8.2.50.DATE-git.
4957
4958 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
4959             Pedro Alves  <palves@redhat.com>
4960
4961         * linux-nat.c (linux_init_ptrace): Rename to ...
4962         (linux_init_ptrace_procfs): ... this.  Call
4963         linux_proc_init_warnings.
4964         (linux_nat_target::post_attach)
4965         (linux_nat_target::post_startup_inferior): Adjust.
4966         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
4967         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
4968
4969 2018-07-04  Tom de Vries  <tdevries@suse.de>
4970
4971         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
4972         check ...
4973         (read_comp_unit_head): ... here.
4974
4975 2018-07-03  Tom Tromey  <tom@tromey.com>
4976
4977         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
4978         (stop_tracing, tstatus_command)
4979         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
4980         (print_one_static_tracepoint_marker): Update.
4981         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
4982         std::vector.
4983         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
4984         VEC.
4985         (all_tracepoints, static_tracepoints_here): Return std::vector.
4986
4987 2018-07-03  Tom Tromey  <tom@tromey.com>
4988
4989         * common/ptid.c (ptid_equal): Remove.
4990         * common/ptid.h (ptid_equal): Don't declare.
4991         * ada-tasks.c: Update.
4992         * breakpoint.c: Update.
4993         * common/agent.c: Update.
4994         * corelow.c: Update.
4995         * darwin-nat-info.c: Update.
4996         * darwin-nat.c: Update.
4997         * dcache.c: Update.
4998         * dtrace-probe.c: Update.
4999         * dummy-frame.c: Update.
5000         * fbsd-nat.c: Update.
5001         * frame.c: Update.
5002         * gdbthread.h: Update.
5003         * gnu-nat.c: Update.
5004         * go32-nat.c: Update.
5005         * inf-loop.c: Update.
5006         * inf-ptrace.c: Update.
5007         * infcall.c: Update.
5008         * infcmd.c: Update.
5009         * inflow.c: Update.
5010         * infrun.c: Update.
5011         * linux-fork.c: Update.
5012         * linux-nat.c: Update.
5013         * linux-thread-db.c: Update.
5014         * mi/mi-cmd-var.c: Update.
5015         * mi/mi-interp.c: Update.
5016         * mi/mi-main.c: Update.
5017         * nto-procfs.c: Update.
5018         * ppc-linux-tdep.c: Update.
5019         * procfs.c: Update.
5020         * python/py-inferior.c: Update.
5021         * python/py-record-btrace.c: Update.
5022         * python/py-record.c: Update.
5023         * ravenscar-thread.c: Update.
5024         * regcache.c: Update.
5025         * remote-sim.c: Update.
5026         * remote.c: Update.
5027         * sol-thread.c: Update.
5028         * solib.c: Update.
5029         * target.c: Update.
5030         * tui/tui-stack.c: Update.
5031         * varobj.c: Update.
5032         * windows-nat.c: Update.
5033         * windows-tdep.c: Update.
5034
5035 2018-07-03  Tom Tromey  <tom@tromey.com>
5036
5037         * common/ptid.c (ptid_match): Remove.
5038         * common/ptid.h (ptid_match): Don't declare.
5039         * fbsd-nat.c: Update.
5040         * infcmd.c: Update.
5041         * infrun.c: Update.
5042         * linux-nat.c: Update.
5043         * record-btrace.c: Update.
5044         * regcache.c: Update.
5045         * remote.c: Update.
5046
5047 2018-07-03  Tom Tromey  <tom@tromey.com>
5048
5049         * common/ptid.c (ptid_tid_p): Remove.
5050         * common/ptid.h (ptid_tid_p): Don't declare.
5051         * sol-thread.c: Update.
5052
5053 2018-07-03  Tom Tromey  <tom@tromey.com>
5054
5055         * common/ptid.c (ptid_lwp_p): Remove.
5056         * common/ptid.h (ptid_lwp_p): Don't declare.
5057         * fbsd-nat.c: Update.
5058         * linux-nat.c: Update.
5059         * nat/linux-procfs.c: Update.
5060         * nat/x86-linux-dregs.c: Update.
5061         * sol-thread.c: Update.
5062
5063 2018-07-03  Tom Tromey  <tom@tromey.com>
5064
5065         * common/ptid.c (ptid_is_pid): Remove.
5066         * common/ptid.h (ptid_is_pid): Don't declare.
5067         * infrun.c: Update.
5068         * linux-nat.c: Update.
5069         * mi/mi-interp.c: Update.
5070         * remote.c: Update.
5071         * thread.c: Update.
5072
5073 2018-07-03  Tom Tromey  <tom@tromey.com>
5074
5075         * common/ptid.c (ptid_get_tid): Remove.
5076         * common/ptid.h (ptid_get_tid): Don't declare.
5077         * ada-tasks.c: Update.
5078         * aix-thread.c: Update.
5079         * bsd-uthread.c: Update.
5080         * darwin-nat.c: Update.
5081         * fbsd-nat.c: Update.
5082         * i386-darwin-nat.c: Update.
5083         * infrun.c: Update.
5084         * linux-tdep.c: Update.
5085         * nto-procfs.c: Update.
5086         * ppc-ravenscar-thread.c: Update.
5087         * python/py-infthread.c: Update.
5088         * ravenscar-thread.c: Update.
5089         * sol-thread.c: Update.
5090         * sparc-ravenscar-thread.c: Update.
5091         * windows-nat.c: Update.
5092
5093 2018-07-03  Tom Tromey  <tom@tromey.com>
5094
5095         * common/ptid.c (ptid_get_lwp): Remove.
5096         * common/ptid.h (ptid_get_lwp): Don't declare.
5097         * aarch64-linux-nat.c: Update.
5098         * ada-tasks.c: Update.
5099         * aix-thread.c: Update.
5100         * amd64-linux-nat.c: Update.
5101         * arm-linux-nat.c: Update.
5102         * corelow.c: Update.
5103         * fbsd-nat.c: Update.
5104         * fbsd-tdep.c: Update.
5105         * gnu-nat.c: Update.
5106         * i386-cygwin-tdep.c: Update.
5107         * i386-gnu-nat.c: Update.
5108         * i386-linux-nat.c: Update.
5109         * ia64-linux-nat.c: Update.
5110         * inf-ptrace.c: Update.
5111         * infrun.c: Update.
5112         * linux-fork.c: Update.
5113         * linux-nat.c: Update.
5114         * linux-tdep.c: Update.
5115         * linux-thread-db.c: Update.
5116         * mips-linux-nat.c: Update.
5117         * nat/aarch64-linux-hw-point.c: Update.
5118         * nat/aarch64-linux.c: Update.
5119         * nat/linux-btrace.c: Update.
5120         * nat/linux-osdata.c: Update.
5121         * nat/linux-procfs.c: Update.
5122         * nat/x86-linux-dregs.c: Update.
5123         * obsd-nat.c: Update.
5124         * ppc-fbsd-nat.c: Update.
5125         * ppc-linux-nat.c: Update.
5126         * procfs.c: Update.
5127         * python/py-infthread.c: Update.
5128         * ravenscar-thread.c: Update.
5129         * remote.c: Update.
5130         * s390-linux-nat.c: Update.
5131         * sol-thread.c: Update.
5132         * sol2-tdep.c: Update.
5133         * spu-linux-nat.c: Update.
5134         * x86-linux-nat.c: Update.
5135         * xtensa-linux-nat.c: Update.
5136
5137 2018-07-03  Tom Tromey  <tom@tromey.com>
5138
5139         * common/ptid.c (ptid_get_pid): Remove.
5140         * common/ptid.h (ptid_get_pid): Don't declare.
5141         * aarch64-linux-nat.c: Update.
5142         * ada-lang.c: Update.
5143         * aix-thread.c: Update.
5144         * alpha-bsd-nat.c: Update.
5145         * amd64-fbsd-nat.c: Update.
5146         * amd64-linux-nat.c: Update.
5147         * arm-linux-nat.c: Update.
5148         * arm-nbsd-nat.c: Update.
5149         * auxv.c: Update.
5150         * break-catch-syscall.c: Update.
5151         * breakpoint.c: Update.
5152         * bsd-uthread.c: Update.
5153         * corelow.c: Update.
5154         * ctf.c: Update.
5155         * darwin-nat.c: Update.
5156         * fbsd-nat.c: Update.
5157         * fbsd-tdep.c: Update.
5158         * gcore.c: Update.
5159         * gnu-nat.c: Update.
5160         * hppa-nbsd-nat.c: Update.
5161         * hppa-obsd-nat.c: Update.
5162         * i386-fbsd-nat.c: Update.
5163         * ia64-linux-nat.c: Update.
5164         * inf-ptrace.c: Update.
5165         * infcmd.c: Update.
5166         * inferior.c: Update.
5167         * inferior.h: Update.
5168         * inflow.c: Update.
5169         * infrun.c: Update.
5170         * linux-fork.c: Update.
5171         * linux-nat.c: Update.
5172         * linux-tdep.c: Update.
5173         * linux-thread-db.c: Update.
5174         * m68k-bsd-nat.c: Update.
5175         * mi/mi-interp.c: Update.
5176         * mi/mi-main.c: Update.
5177         * mips-linux-nat.c: Update.
5178         * mips-nbsd-nat.c: Update.
5179         * mips64-obsd-nat.c: Update.
5180         * nat/aarch64-linux-hw-point.c: Update.
5181         * nat/aarch64-linux.c: Update.
5182         * nat/linux-btrace.c: Update.
5183         * nat/linux-osdata.c: Update.
5184         * nat/linux-procfs.c: Update.
5185         * nat/x86-linux-dregs.c: Update.
5186         * nto-procfs.c: Update.
5187         * obsd-nat.c: Update.
5188         * ppc-linux-nat.c: Update.
5189         * ppc-nbsd-nat.c: Update.
5190         * ppc-obsd-nat.c: Update.
5191         * proc-service.c: Update.
5192         * procfs.c: Update.
5193         * python/py-inferior.c: Update.
5194         * python/py-infthread.c: Update.
5195         * ravenscar-thread.c: Update.
5196         * record.c: Update.
5197         * remote-sim.c: Update.
5198         * remote.c: Update.
5199         * rs6000-nat.c: Update.
5200         * s390-linux-nat.c: Update.
5201         * sh-nbsd-nat.c: Update.
5202         * sol-thread.c: Update.
5203         * sparc-nat.c: Update.
5204         * sparc64-tdep.c: Update.
5205         * spu-linux-nat.c: Update.
5206         * spu-tdep.c: Update.
5207         * target-debug.h: Update.
5208         * target.c: Update.
5209         * thread.c: Update.
5210         * tid-parse.c: Update.
5211         * tracefile-tfile.c: Update.
5212         * vax-bsd-nat.c: Update.
5213         * windows-nat.c: Update.
5214         * x86-linux-nat.c: Update.
5215         * x86-nat.c: Update.
5216
5217 2018-07-03  Tom Tromey  <tom@tromey.com>
5218
5219         * common/ptid.c (pid_to_ptid): Remove.
5220         * common/ptid.h (pid_to_ptid): Don't declare.
5221         * aix-thread.c: Update.
5222         * arm-linux-nat.c: Update.
5223         * common/ptid.c: Update.
5224         * common/ptid.h: Update.
5225         * corelow.c: Update.
5226         * ctf.c: Update.
5227         * darwin-nat.c: Update.
5228         * fbsd-nat.c: Update.
5229         * fork-child.c: Update.
5230         * gnu-nat.c: Update.
5231         * go32-nat.c: Update.
5232         * inf-ptrace.c: Update.
5233         * infcmd.c: Update.
5234         * inferior.c: Update.
5235         * infrun.c: Update.
5236         * linux-fork.c: Update.
5237         * linux-nat.c: Update.
5238         * nat/aarch64-linux-hw-point.c: Update.
5239         * nat/fork-inferior.c: Update.
5240         * nat/x86-linux-dregs.c: Update.
5241         * nto-procfs.c: Update.
5242         * obsd-nat.c: Update.
5243         * procfs.c: Update.
5244         * progspace.c: Update.
5245         * remote.c: Update.
5246         * rs6000-nat.c: Update.
5247         * s390-linux-nat.c: Update.
5248         * sol-thread.c: Update.
5249         * spu-linux-nat.c: Update.
5250         * target.c: Update.
5251         * top.c: Update.
5252         * tracefile-tfile.c: Update.
5253         * windows-nat.c: Update.
5254
5255 2018-07-03  Tom Tromey  <tom@tromey.com>
5256
5257         * common/ptid.h (ptid_build): Don't declare.
5258         * common/ptid.c (ptid_build): Remove.
5259         * aix-thread.c: Update.
5260         * bsd-kvm.c: Update.
5261         * bsd-uthread.c: Update.
5262         * common/agent.c: Update.
5263         * common/ptid.c: Update.
5264         * common/ptid.h: Update.
5265         * corelow.c: Update.
5266         * darwin-nat.c: Update.
5267         * fbsd-nat.c: Update.
5268         * gnu-nat.c: Update.
5269         * linux-fork.c: Update.
5270         * linux-nat.c: Update.
5271         * linux-thread-db.c: Update.
5272         * nat/linux-osdata.c: Update.
5273         * nat/linux-procfs.c: Update.
5274         * nto-procfs.c: Update.
5275         * obsd-nat.c: Update.
5276         * proc-service.c: Update.
5277         * procfs.c: Update.
5278         * ravenscar-thread.c: Update.
5279         * remote-sim.c: Update.
5280         * remote.c: Update.
5281         * sol-thread.c: Update.
5282         * target.c: Update.
5283         * windows-nat.c: Update.
5284
5285 2018-07-03  Tom Tromey  <tom@tromey.com>
5286
5287         * infrun.c (follow_exec): Use exit_inferior_silent.
5288         * inferior.c (exit_inferior_num_silent): Remove.
5289         * inferior.h (exit_inferior_num_silent): Don't declare.
5290
5291 2018-07-03  Tom Tromey  <tom@tromey.com>
5292
5293         PR cli/23340:
5294         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5295         inferior_ptid on error.
5296
5297 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5298             Simon Marchi  <simon.marchi@polymtl.ca>
5299
5300         PR tdep/8282
5301         * disasm.h (gdb_disassembler): Add
5302         `m_disassembler_options_holder'. member
5303         * disasm.c (get_all_disassembler_options): New function.
5304         (gdb_disassembler::gdb_disassembler): Use it.
5305         (gdb_buffered_insn_length_init_dis): Likewise.
5306         (gdb_buffered_insn_length): Adjust accordingly.
5307         (set_disassembler_options): Handle options with arguments.
5308         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5309         line if showing options with descriptions.
5310         (disassembler_options_completer): Adapt to using the
5311         `disasm_options_and_args_t' structure.
5312         * mips-tdep.c (mips_disassembler_options): New variable.
5313         (mips_disassembler_options_o32): Likewise.
5314         (mips_disassembler_options_n32): Likewise.
5315         (mips_disassembler_options_n64): Likewise.
5316         (gdb_print_insn_mips): Don't set `disassembler_options'.
5317         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5318         functions.
5319         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5320         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5321         `gdbarch_disassembler_options_implicit' and
5322         `gdbarch_valid_disassembler_options'.
5323         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5324         `disasm_options_and_args_t' structure.
5325         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5326         method.
5327         (valid_disassembler_options): Switch from `disasm_options_t' to
5328         the `disasm_options_and_args_t' structure.
5329         * NEWS: Document `set disassembler-options' support for the MIPS
5330         target.
5331         * gdbarch.h: Regenerate.
5332         * gdbarch.c: Regenerate.
5333
5334 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5335
5336         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5337
5338 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5339
5340         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5341         parameter in call to amd64_target_description.
5342         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5343         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5344         (amd64fbsd_init_abi): Likewise.
5345         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5346         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5347         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5348         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5349
5350 2018-06-29  Pedro Alves  <palves@redhat.com>
5351
5352         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5353         "segments" parameter.
5354         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5355         (_initialize_amd64_tdep): Update call to
5356         amd64_create_target_description.
5357         (amd64_target_description): Add "segments" parameter.  Adjust
5358         the implementation to use it.
5359         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5360         call to amd64_create_target_description.
5361         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5362         * gdb/arch/amd64.h (amd64_create_target_description): Add
5363         "segments" register.
5364         * gdb/arch/amd64.c (amd64_create_target_description): Add
5365         "segments" parameter.  Call create_feature_i386_64bit_segments
5366         only if SEGMENTS is true.
5367         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5368         call to amd64_create_target_description.
5369
5370 2018-06-29  Pedro Alves  <palves@redhat.com>
5371
5372         * thread.c (thread_target_id_str): New, factored out from ...
5373         (print_thread_info_1): ... here.  Use it to compute the max
5374         "Target Id" column width.
5375
5376 2018-06-29  Pedro Alves  <palves@redhat.com>
5377
5378         * remote.c (remote_target::extra_thread_info): Delete
5379         'display_buf' and 'n' locals.  from the cache, regardless of
5380         packet mechanims is in use.  Use cache for qThreadExtra and qP
5381         methods too.
5382
5383 2018-06-29  Pedro Alves  <palves@redhat.com>
5384
5385         * blockframe.c (find_pc_sect_containing_function): New function.
5386         * breakpoint.c (print_breakpoint_location): Don't call
5387         find_pc_sect_function.
5388         * linespec.c (create_sals_line_offset): Record the location's
5389         symbol in the sal.
5390         * linespec.c (convert_address_location_to_sals): Fill in sal's
5391         symbol with find_pc_sect_containing_function.
5392         * symtab.c (find_function_start_sal): Rename to ...
5393         (find_function_start_sal_1): ... this.
5394         (find_function_start_sal): Reimplement as wrapper around
5395         find_function_start_sal_1, and use
5396         find_pc_sect_containing_function to fill in the sal's symbol.
5397         (find_function_start_sal(symbol*, bool)): Adjust.
5398         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
5399         comments.
5400         (find_pc_sect_containing_function): Declare.
5401
5402 2018-06-29  Pedro Alves  <palves@redhat.com>
5403
5404         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
5405         true if the the location has no symbol.
5406
5407 2018-06-28  Tom Tromey  <tom@tromey.com>
5408
5409         * NEWS: Mention --enable-codesign.
5410         * silent-rules.mk (ECHO_SIGN): New variable.
5411         * configure.ac: Add --enable-codesign.
5412         * configure: Rebuild.
5413         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
5414         (gdb$(EXEEXT)): Optionally invoke codesign.
5415
5416 2018-06-28  Pedro Alves  <palves@redhat.com>
5417
5418         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
5419         comments.
5420         (switch_to_thread_no_regs): Adjust comment.
5421         * infcmd.c (stop_pc): Delete.
5422         (post_create_inferior, info_program_command): Replace references
5423         to stop_pc with references to thread_info->suspend.stop_pc.
5424         * inferior.h (stop_pc): Delete declaration.
5425         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
5426         (handle_inferior_event_1, handle_signal_stop)
5427         (process_event_stop_test, keep_going_stepped_thread)
5428         (handle_step_into_function, handle_step_into_function_backward)
5429         (print_stop_location): Replace references to stop_pc with
5430         references to thread_info->suspend.stop_pc.
5431         (struct infcall_suspend_state) <stop_pc>: Delete field.
5432         (save_infcall_suspend_state, restore_infcall_suspend_state):
5433         Remove references to inf_stat->stop_pc.
5434         * linux-fork.c (fork_load_infrun_state): Likewise.
5435         * record-btrace.c (record_btrace_set_replay): Likewise.
5436         * record-full.c (record_full_goto_entry): Likewise.
5437         * remote.c (print_one_stopped_thread): Likewise.
5438         * target.c (target_resume): Extend comment.
5439         * thread.c (set_executing_thread): New.
5440         (set_executing): Use it.
5441         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
5442         Remove references to stop_pc.
5443
5444 2018-06-28  Pedro Alves  <palves@redhat.com>
5445
5446         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
5447         Moving fetching stop_pc until after ecs->event_thread is refreshed.
5448
5449 2018-06-28  Tom Tromey  <tom@tromey.com>
5450
5451         * coffread.c (coff_symfile_finish): Update.
5452         * xcoffread.c (xcoff_symfile_finish): Update.
5453         * elfread.c (elf_symfile_finish): Update.
5454         * symfile.h (dwarf2_free_objfile): Don't declare.
5455         * dwarf2read.c (_initialize_dwarf2_read): Use
5456         register_objfile_data_with_cleanup.
5457         (dwarf2_free_objfile): Now static.  Change signature.
5458
5459 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5460
5461         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
5462         option "-o" to add-symbol-file-load to add an offset to each
5463         section's load address.
5464         * symfile.c (set_objfile_default_section_offset): New function.
5465
5466 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5467
5468         * symfile.c (add_symbol_file_command): Make sure that sections
5469         with the same name are sorted in the same order.
5470
5471 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5472
5473         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
5474         require the second argument.  If omitted, load sections at the
5475         addresses specified in the file.
5476
5477 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5478
5479         * symfile.c (symbol_file_command, symbol_file_add_main_1)
5480         (_initialize_symfile): Add option "-o" to symbol-file to add an
5481         offset to each section of the symbol file.
5482
5483 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5484
5485         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
5486
5487 2018-06-27  Tom Tromey  <tom@tromey.com>
5488
5489         * stack.c (_initialize_stack): Update "func" help text.
5490
5491 2018-06-27  Tom Tromey  <tom@tromey.com>
5492
5493         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
5494         std::vector.
5495         (unwind_infopy_str, pyuw_create_unwind_info)
5496         (unwind_infopy_add_saved_register, pyuw_sniffer)
5497         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
5498         Update.
5499         (struct saved_reg): Add constructor.
5500         <value>: Now a gdbpy_ref<>.
5501
5502 2018-06-27  Tom Tromey  <tom@tromey.com>
5503
5504         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
5505
5506 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5507
5508         * gdb-gdb.py.in: Format using autopep8.
5509
5510 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5511
5512         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
5513         (type_lookup_function): Recognize CORE_ADDR values.
5514
5515 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5516
5517         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
5518         print tag_name.
5519
5520 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5521
5522         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
5523         <__lt__>: Add.
5524
5525 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5526
5527         * gdb-gdb.py: Move to...
5528         * gdb-gdb.py.in: ... here.
5529         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
5530         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
5531         dependencies.
5532         (distclean): Remove gdb-gdb.py when cleaning.
5533         (gdb-gdb.py, gdb-gdb.gdb): New rules.
5534         * configure: Re-generate.
5535
5536 2018-06-27  Pedro Alves  <palves@redhat.com>
5537
5538         * proc-service.c (get_ps_regcache): New.
5539         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
5540         (ps_lsetfpregs): Use it.
5541
5542 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
5543
5544         PR gdb/21695
5545         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
5546         (dwarf_decode_lines_1): Adjust.
5547
5548 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5549
5550         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
5551         override.
5552         <info_proc>: Likewise.
5553
5554 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
5555
5556         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
5557         to windows_fetch_one_register, and only handle the case of
5558         fetching one register.  Move the code that reloads the context
5559         and iterates over all registers if R is negative to...
5560         (windows_nat_target::fetch_registers): ... here.
5561         (do_windows_store_inferior_registers): Rename to
5562         windows_store_one_register, and only handle the case of storing
5563         one register.  Move the code that handles the case where r is
5564         negative to...
5565         (windows_nat_target::store_registers) ... here.
5566
5567 2018-06-26  Tom Tromey  <tom@tromey.com>
5568
5569         PR rust/22574:
5570         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
5571         * rust-lang.c (rust_print_struct_def): Add podata parameter.
5572         Update.
5573         (rust_internal_print_type): Add podata parameter.
5574         (rust_print_type): Update.
5575
5576 2018-06-26  Tom Tromey  <tom@tromey.com>
5577
5578         * typeprint.h (struct print_offset_data) <update, finish,
5579         maybe_print_hole>: New methods.
5580         <indentation>: New constant.
5581         * typeprint.c (print_offset_data::indentation): Define.
5582         (print_offset_data::maybe_print_hole, print_offset_data::update)
5583         (print_offset_data::finish): Move from c-typeprint.c and rename.
5584         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
5585         (print_spaces_filtered_with_print_options): Update.
5586         (c_print_type_union_field_offset, maybe_print_hole)
5587         (c_print_type_struct_field_offset): Move to typeprint.c and
5588         rename.
5589         (c_type_print_base_struct_union): Update.
5590
5591 2018-06-25  Pedro Alves  <palves@redhat.com>
5592
5593         * gdbthread.h (thread_info_ref, delete_thread)
5594         (delete_thread_silent, first_thread_of_inferior)
5595         (any_thread_of_inferior, switch_to_thread)
5596         (enable_thread_stack_temporaries)
5597         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5598         (get_last_thread_stack_temporary)
5599         (value_in_thread_stack_temporaries, can_access_registers_thread):
5600         Spell out "struct thread_info" instead of just "thread_info".
5601         * inferior.h (notice_new_inferior): Likewise.
5602
5603 2018-06-25  Pedro Alves  <palves@redhat.com>
5604
5605         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5606         pass thread_info pointer to delete_thread.
5607         (windows_nat_target::detach): Pass inferior pointer to
5608         detach_inferior.
5609         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
5610         delete_thread.
5611         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
5612         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
5613         and pass a thread_info pointer to delete_thread.
5614         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
5615         pass thread_info pointer to delete_thread.
5616         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
5617         delete_thread_silent call.
5618         * procfs.c (procfs_target::detach): Pass inferior pointer to
5619         detach_inferior.
5620         (procfs_target::wait): Pass thread_info pointer to delete_thread.
5621         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
5622         delete_thread_silent call.
5623         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5624         pass thread_info pointer to delete_thread.
5625         (windows_nat_target::detach): Pass inferior pointer to
5626         delete_inferior.
5627
5628 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5629
5630         * regcache.c (readable_regcache::read_part): Fix asserts.
5631         (reg_buffer::raw_collect_part): New function.
5632         (regcache::write_part): Fix asserts.
5633         (reg_buffer::raw_supply_part): New function.
5634         (regcache::transfer_regset_register): New helper function.
5635         (regcache::transfer_regset): Call new functions.
5636         (regcache_supply_regset): Use gdb_byte*.
5637         (regcache::supply_regset): Likewise.
5638         (regcache_collect_regset): Likewise.
5639         (regcache::collect_regset): Likewise.
5640         * regcache.h (reg_buffer::raw_collect_part): New declaration.
5641         (reg_buffer::raw_supply_part): Likewise.
5642         (regcache::transfer_regset_register): Likewise.
5643         (regcache::transfer_regset): Use gdb_byte*.
5644
5645 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5646
5647         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
5648
5649 2018-06-21  Pedro Alves  <palves@redhat.com>
5650
5651         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
5652         instead of a ptid_t.  All callers adjusted.
5653         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
5654         adjusted.
5655         (print_ada_task_info, display_current_task_id, task_command_1):
5656         Adjust.
5657         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
5658         inferior_thread.
5659         (breakpoint_kind): Adjust.
5660         (remove_breakpoints_pid): Rename to ...
5661         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
5662         pointer.  All callers adjusted.
5663         (bpstat_clear_actions): Use inferior_thread.
5664         (get_bpstat_thread): New.
5665         (bpstat_do_actions): Use it.
5666         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
5667         to take a thread_info pointer.  All callers adjusted.
5668         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
5669         (breakpoint_re_set_thread): Use inferior_thread.
5670         * breakpoint.h (struct inferior): Forward declare.
5671         (bpstat_stop_status): Update.
5672         (remove_breakpoints_pid): Delete.
5673         (remove_breakpoints_inf): New.
5674         * bsd-uthread.c (bsd_uthread_target::wait)
5675         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
5676         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
5677         (maint_btrace_packet_history_cmd)
5678         (maint_btrace_clear_packet_history_cmd): Adjust.
5679         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
5680         inferior_thread.
5681         * cli/cli-interp.c: Include "inferior.h".
5682         * common/refcounted-object.h (struct
5683         refcounted_object_ref_policy): New.
5684         * compile/compile-object-load.c: Include gdbthread.h.
5685         (store_regs): Use inferior_thread.
5686         * corelow.c (core_target::close): Use current_inferior.
5687         (core_target_open): Adjust to use first_thread_of_inferior and use
5688         the current inferior.
5689         * ctf.c (ctf_target::close): Adjust to use current_inferior.
5690         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
5691         <thread>: ... this new field.  All references adjusted.
5692         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
5693         Take a thread_info pointer instead of a ptid_t.
5694         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
5695         (dummy_frame_discard, register_dummy_frame_dtor): Take a
5696         thread_info pointer instead of a ptid_t.
5697         * elfread.c: Include "inferior.h".
5698         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
5699         Use inferior_thread.
5700         * eval.c (evaluate_subexp): Likewise.
5701         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
5702         inferior_thread.
5703         * gdb_proc_service.h (struct thread_info): Forward declare.
5704         (struct ps_prochandle) <ptid>: Delete, replaced by ...
5705         <thread>: ... this new field.  All references adjusted.
5706         * gdbarch.h, gdbarch.c: Regenerate.
5707         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
5708         'thread' parameter.  All implementations and callers adjusted.
5709         * gdbthread.h (thread_info) <set_running>: New method.
5710         (delete_thread, delete_thread_silent): Take a thread_info pointer
5711         instead of a ptid.
5712         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
5713         (first_thread_of_process): Delete, replaced by ...
5714         (first_thread_of_inferior): ... this new function.  All callers
5715         adjusted.
5716         (any_live_thread_of_process): Delete, replaced by ...
5717         (any_live_thread_of_inferior): ... this new function.  All callers
5718         adjusted.
5719         (switch_to_thread, switch_to_no_thread): Declare.
5720         (is_executing): Delete.
5721         (enable_thread_stack_temporaries): Update comment.
5722         <enable_thread_stack_temporaries>: Take a thread_info pointer
5723         instead of a ptid_t.  Incref the thread.
5724         <~enable_thread_stack_temporaries>: Decref the thread.
5725         <m_ptid>: Delete
5726         <m_thr>: New.
5727         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5728         (get_last_thread_stack_temporary)
5729         (value_in_thread_stack_temporaries, can_access_registers_thread):
5730         Take a thread_info pointer instead of a ptid_t.  All callers
5731         adjusted.
5732         * infcall.c (get_call_return_value): Use inferior_thread.
5733         (run_inferior_call): Work with thread pointers instead of ptid_t.
5734         (call_function_by_hand_dummy): Work with thread pointers instead
5735         of ptid_t.  Use thread_info_ref.
5736         * infcmd.c (proceed_thread_callback): Access thread's state
5737         directly.
5738         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
5739         access thread's state directly.
5740         (continue_command): Use inferior_thread.
5741         (info_program_command): Use find_thread_ptid and access thread
5742         state directly.
5743         (proceed_after_attach_callback): Use thread state directly.
5744         (notice_new_inferior): Take a thread_info pointer instead of a
5745         ptid_t.  All callers adjusted.
5746         (exit_inferior): Take an inferior pointer instead of a pid.  All
5747         callers adjusted.
5748         (exit_inferior_silent): New.
5749         (detach_inferior): Delete.
5750         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
5751         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
5752         (detach_inferior_command, kill_inferior_command): Use
5753         find_inferior_id instead of valid_gdb_inferior_id and
5754         gdb_inferior_id_to_pid.
5755         (inferior_command): Use inferior and thread pointers.
5756         * inferior.h (struct thread_info): Forward declare.
5757         (notice_new_inferior): Take a thread_info pointer instead of a
5758         ptid_t.  All callers adjusted.
5759         (detach_inferior): Delete declaration.
5760         (exit_inferior, exit_inferior_silent): Take an inferior pointer
5761         instead of a pid.  All callers adjusted.
5762         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
5763         (valid_gdb_inferior_id): Delete.
5764         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
5765         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
5766         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
5767         ...
5768         <inf>: ... this new field.
5769         <step_ptid>: Delete, replaced by ...
5770         <step_thread>: ... this new field.
5771         (get_displaced_stepping_state): Take an inferior pointer instead
5772         of a pid.  All callers adjusted.
5773         (displaced_step_in_progress_any_inferior): Adjust.
5774         (displaced_step_in_progress_thread): Take a thread pointer instead
5775         of a ptid_t.  All callers adjusted.
5776         (displaced_step_in_progress, add_displaced_stepping_state): Take
5777         an inferior pointer instead of a pid.  All callers adjusted.
5778         (get_displaced_step_closure_by_addr): Adjust.
5779         (remove_displaced_stepping_state): Take an inferior pointer
5780         instead of a pid.  All callers adjusted.
5781         (displaced_step_prepare_throw, displaced_step_prepare)
5782         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
5783         All callers adjusted.
5784         (start_step_over): Adjust.
5785         (infrun_thread_ptid_changed): Remove bit updating ptids in the
5786         displaced step queue.
5787         (do_target_resume): Adjust.
5788         (fetch_inferior_event): Use inferior_thread.
5789         (context_switch, get_inferior_stop_soon): Take an
5790         execution_control_state pointer instead of a ptid_t.  All callers
5791         adjusted.
5792         (switch_to_thread_cleanup): Delete.
5793         (stop_all_threads): Use scoped_restore_current_thread.
5794         * inline-frame.c: Include "gdbthread.h".
5795         (inline_state) <inline_state>: Take a thread pointer instead of a
5796         ptid_t.  All callers adjusted.
5797         <ptid>: Delete, replaced by ...
5798         <thread>: ... this new field.
5799         (find_inline_frame_state): Take a thread pointer instead of a
5800         ptid_t.  All callers adjusted.
5801         (skip_inline_frames, step_into_inline_frame)
5802         (inline_skipped_frames, inline_skipped_symbol): Take a thread
5803         pointer instead of a ptid_t.  All callers adjusted.
5804         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
5805         (inline_skipped_frames, inline_skipped_symbol): Likewise.
5806         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
5807         pointers directly.
5808         * linux-nat.c (get_detach_signal): Likewise.
5809         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
5810         (thread_db_notice_clone): Adjust.
5811         (thread_db_find_new_threads_silently)
5812         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
5813         a thread pointer instead of a ptid_t.  All callers adjusted.
5814         * mi/mi-cmd-var.c: Include "inferior.h".
5815         (mi_cmd_var_update_iter): Update to use thread pointers.
5816         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
5817         inferior directly.
5818         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
5819         out to ...
5820         (mi_output_running): ... this new function.
5821         (mi_on_resume_1): Adjust to use it.
5822         (mi_user_selected_context_changed): Adjust to use inferior_thread.
5823         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
5824         directly.
5825         (interrupt_thread_callback): : Adjust to use thread and inferior
5826         pointers.
5827         * proc-service.c: Include "gdbthread.h".
5828         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
5829         * progspace-and-thread.c: Include "inferior.h".
5830         * progspace.c: Include "inferior.h".
5831         * python/py-exitedevent.c (create_exited_event_object): Adjust to
5832         hold a reference to an inferior_object.
5833         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
5834         inferior_thread.
5835         * python/py-inferior.c (struct inferior_object): Give the type a
5836         tag name instead of a typedef.
5837         (python_on_normal_stop): No need to check if the current thread is
5838         listed.
5839         (inferior_to_inferior_object): Change return type to
5840         inferior_object.  All callers adjusted.
5841         (find_thread_object): Delete, bits factored out to ...
5842         (thread_to_thread_object): ... this new function.
5843         * python/py-infthread.c (create_thread_object): Use
5844         inferior_to_inferior_object.
5845         (thpy_is_stopped): Use thread pointer directly.
5846         (gdbpy_selected_thread): Use inferior_thread.
5847         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
5848         field, replaced with ...
5849         <thread>: ... this new field.  All users adjusted.
5850         (btpy_insn_or_gap_new): Drop const.
5851         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
5852         callers adjusted.
5853         * python/py-record.c: Include "gdbthread.h".
5854         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5855         a ptid_t.  All callers adjusted.
5856         (gdbpy_current_recording): Use inferior_thread.
5857         * python/py-record.h (recpy_record_object) <ptid>: Delete
5858         field, replaced with ...
5859         <thread>: ... this new field.  All users adjusted.
5860         (recpy_element_object) <ptid>: Delete
5861         field, replaced with ...
5862         <thread>: ... this new field.  All users adjusted.
5863         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5864         a ptid_t.  All callers adjusted.
5865         * python/py-threadevent.c: Include "gdbthread.h".
5866         (get_event_thread): Use thread_to_thread_object.
5867         * python/python-internal.h (struct inferior_object): Forward
5868         declare.
5869         (find_thread_object, find_inferior_object): Delete declarations.
5870         (thread_to_thread_object, inferior_to_inferior_object): New
5871         declarations.
5872         * record-btrace.c: Include "inferior.h".
5873         (require_btrace_thread): Use inferior_thread.
5874         (record_btrace_frame_sniffer)
5875         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
5876         (get_thread_current_frame): Use scoped_restore_current_thread and
5877         switch_to_thread.
5878         (get_thread_current_frame): Use thread pointer directly.
5879         (record_btrace_replay_at_breakpoint): Use thread's inferior
5880         pointer directly.
5881         * record-full.c: Include "inferior.h".
5882         * regcache.c: Include "gdbthread.h".
5883         (get_thread_arch_regcache): Use the inferior's address space
5884         directly.
5885         (get_thread_regcache, registers_changed_thread): New.
5886         * regcache.h (get_thread_regcache(thread_info *thread)): New
5887         overload.
5888         (registers_changed_thread): New.
5889         (remote_target) <remote_detach_1>: Swap order of parameters.
5890         (remote_add_thread): <remote_add_thread>: Return the new thread.
5891         (get_remote_thread_info(ptid_t)): New overload.
5892         (remote_target::remote_notice_new_inferior): Use thread pointers
5893         directly.
5894         (remote_target::process_initial_stop_replies): Use
5895         thread_info::set_running.
5896         (remote_target::remote_detach_1, remote_target::detach)
5897         (extended_remote_target::detach): Adjust.
5898         * stack.c (frame_show_address): Use inferior_thread.
5899         * target-debug.h (target_debug_print_thread_info_pp): New.
5900         * target-delegates.c: Regenerate.
5901         * target.c (default_thread_address_space): Delete.
5902         (memory_xfer_partial_1): Use current_inferior.
5903         (target_detach): Use current_inferior.
5904         (target_thread_address_space): Delete.
5905         (generic_mourn_inferior): Use current_inferior.
5906         * target.h (struct target_ops) <thread_address_space>: Delete.
5907         (target_thread_address_space): Delete.
5908         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
5909         pointers directly.
5910         (delete_thread_1, delete_thread, delete_thread_silent): Take a
5911         thread pointer instead of a ptid_t.  Adjust all callers.
5912         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
5913         (first_thread_of_process): Delete, replaced by ...
5914         (first_thread_of_inferior): ... this new function.  All callers
5915         adjusted.
5916         (any_thread_of_process): Rename to ...
5917         (any_thread_of_inferior): ... this, and take an inferior pointer.
5918         (any_live_thread_of_process): Rename to ...
5919         (any_live_thread_of_inferior): ... this, and take an inferior
5920         pointer.
5921         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5922         (value_in_thread_stack_temporaries)
5923         (get_last_thread_stack_temporary): Take a thread pointer instead
5924         of a ptid_t.  Adjust all callers.
5925         (thread_info::set_running): New.
5926         (validate_registers_access): Use inferior_thread.
5927         (can_access_registers_ptid): Rename to ...
5928         (can_access_registers_thread): ... this, and take a thread
5929         pointer.
5930         (print_thread_info_1): Adjust to compare thread pointers instead
5931         of ptids.
5932         (switch_to_no_thread, switch_to_thread): Make extern.
5933         (scoped_restore_current_thread::~scoped_restore_current_thread):
5934         Use m_thread pointer directly.
5935         (scoped_restore_current_thread::scoped_restore_current_thread):
5936         Use inferior_thread.
5937         (thread_command): Use thread pointer directly.
5938         (thread_num_make_value_helper): Use inferior_thread.
5939         * top.c (execute_command): Use inferior_thread.
5940         * tui/tui-interp.c: Include "inferior.h".
5941         * varobj.c (varobj_create): Use inferior_thread.
5942         (value_of_root_1): Use find_thread_global_id instead of
5943         global_thread_id_to_ptid.
5944
5945 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
5946
5947         * regcache.c (readable_regcache::read_part): Avoid memcpy when
5948         possible.
5949         (regcache::write_part): Likewise.
5950         (readable_regcache::cooked_read_part): Update comment.
5951         (readable_regcache::cooked_write_part): Likewise.
5952         * regcache.h: (readable_regcache::read_part): Likewise.
5953         (regcache::write_part): Likewise.
5954
5955 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
5956             Dirk Schubert  <dirk.schubert@arm.com>
5957
5958         * aarch64-linux-nat.c (post_attach): New.
5959         (aarch64_linux_nat_target::post_attach): Override post_attach to
5960         record the number of hardware debug registers.
5961
5962 2018-06-20  Tom Tromey  <tom@tromey.com>
5963
5964         * python/py-param.c (add_setshow_generic): Make parameters const.
5965         (parmpy_init): Update.
5966
5967 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
5968
5969         * regcache.h (regcache_cooked_read_ftype): Rename to...
5970         (register_read_ftype): ...this, change type to function_view.
5971         (class reg_buffer) <save>: Remove src parameter.
5972         (readonly_detached_regcache) <readonly_detached_regcache>: Make
5973         parameter non-const in first overload.  Remove src parameter in
5974         second overload.
5975         * regcache.c (do_cooked_read): Remove.
5976         (readonly_detached_regcache::readonly_detached_regcache): Make
5977         parameter non-const, adjust call to other constructor.
5978         (reg_buffer::save): Remove src parameter.
5979         * frame.c (do_frame_register_read): Remove.
5980         (frame_save_as_regcache): Use lambda function.
5981         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
5982         parameter to ppu2spu_data *.
5983         (ppu2spu_sniffer): Use lambda function.
5984
5985 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
5986
5987         * record-full.c (record_full_target::insert_breakpoint): Remove
5988         "struct" keyword, add const.
5989
5990 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
5991
5992         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
5993         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
5994         * configure.ac: Remove AC_PREREQ, add missing quoting.
5995         * gnulib/configure.ac: Modernize usage of
5996         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
5997         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
5998         (AUTOMAKE_VERSION): Bump to 1.15.1.
5999         * configure: Re-generate.
6000         * config.in: Re-generate.
6001         * aclocal.m4: Re-generate.
6002         * gnulib/aclocal.m4: Re-generate.
6003         * gnulib/config.in: Re-generate.
6004         * gnulib/configure: Re-generate.
6005         * gnulib/import/Makefile.in: Re-generate.
6006
6007 2018-06-19  Pedro Alves  <palves@redhat.com>
6008
6009         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6010         (lookup_minimal_symbol_by_pc_section): ... here with
6011         gdb_assert_not_reached added.
6012
6013 2018-06-19  Pedro Alves  <palves@redhat.com>
6014
6015         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6016         parameter with a block parameter.  Compare location's block symbol
6017         with the frame's block instead of addresses.
6018         (skip_inline_frames): Pass the current block instead of the
6019         frame's address.  Break out as soon as we determine the frame
6020         should not be skipped.
6021
6022 2018-06-18  Tom Tromey  <tom@tromey.com>
6023
6024         * solib-aix.c (solib_aix_get_section_offsets): Return
6025         unique_xmalloc_ptr.
6026         (solib_aix_solib_create_inferior_hook): Update.
6027
6028 2018-06-18  Tom Tromey  <tom@tromey.com>
6029
6030         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6031
6032 2018-06-18  Tom Tromey  <tom@tromey.com>
6033
6034         * solib-frv.c (frv_relocate_main_executable): Use
6035         unique_xmalloc_ptr.
6036         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6037         unique_xmalloc_ptr.
6038
6039 2018-06-18  Tom Tromey  <tom@tromey.com>
6040
6041         * objfiles.h (inhibit_section_map_updates): Update.
6042         (resume_section_map_updates, resume_section_map_updates_cleanup):
6043         Remove.
6044         * solib-svr4.c (svr4_handle_solib_event): Update.
6045         * objfiles.c (inhibit_section_map_updates): Return
6046         scoped_restore_tmpl<int>.
6047         (resume_section_map_updates, resume_section_map_updates_cleanup):
6048         Remove.
6049
6050 2018-06-18  Tom Tromey  <tom@tromey.com>
6051
6052         * valprint.h (read_string): Update.
6053         * valprint.c (read_string): Change type of "buffer".
6054         (val_print_string): Update.
6055         * python/py-value.c (valpy_string): Update.
6056         * language.h (struct language_defn) <la_get_string>: Change
6057         type of "buffer".
6058         (default_get_string, c_get_string): Update.
6059         * language.c (default_get_string): Change type of "buffer".
6060         * guile/scm-value.c (gdbscm_value_to_string): Update.
6061         * c-lang.c (c_get_string): Change type of "buffer".
6062
6063 2018-06-18  Tom Tromey  <tom@tromey.com>
6064
6065         * ser-mingw.c (struct pipe_state_destroyer): New.
6066         (pipe_state_up): New typedef.
6067         (cleanup_pipe_state): Remove.
6068         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6069
6070 2018-06-18  Tom Tromey  <tom@tromey.com>
6071
6072         * rust-lang.h (rust_yyerror): Don't declare.
6073         * rust-lang.c (rust_language_defn): Update.
6074         * rust-exp.y (yyerror): Now static.
6075         * parse.c (parse_exp_in_context_1): Update.
6076         * p-lang.h (p_yyerror): Don't declare.
6077         * p-lang.c (p_language_defn): Update.
6078         * p-exp.y (yyerror): Now static.
6079         * opencl-lang.c (opencl_language_defn): Update.
6080         * objc-lang.c (objc_language_defn): Update.
6081         * m2-lang.h (m2_yyerror): Don't declare.
6082         * m2-lang.c (m2_language_defn): Update.
6083         * m2-exp.y (yyerror): Now static.
6084         * language.h (struct language_defn) <la_error>: Remove.
6085         * language.c (unk_lang_error): Remove.
6086         (unknown_language_defn, auto_language_defn): Remove.
6087         * go-lang.h (go_yyerror): Don't declare.
6088         * go-lang.c (go_language_defn): Update.
6089         * go-exp.y (yyerror): Now static.
6090         * f-lang.h (f_yyerror): Don't declare.
6091         * f-lang.c (f_language_defn): Update.
6092         * f-exp.y (yyerror): Now static.
6093         * d-lang.h (d_yyerror): Don't declare.
6094         * d-lang.c (d_language_defn): Update.
6095         * d-exp.y (yyerror): Now static.
6096         * c-lang.h (c_yyerror): Don't declare.
6097         * c-lang.c (c_language_defn, cplus_language_defn)
6098         (asm_language_defn, minimal_language_defn): Update.
6099         * c-exp.y (yyerror): Now static.
6100         * ada-lang.h (ada_yyerror): Don't declare.
6101         * ada-lang.c (ada_language_defn): Update.
6102         * ada-exp.y (yyerror): Now static.
6103
6104 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6105
6106         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6107         (store_sveregs_to_thread): Likewise.
6108         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6109         (aarch64_linux_store_inferior_registers): Likewise.
6110         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6111         function.
6112         (aarch64_sve_regs_copy_to_regcache): Likewise.
6113         (aarch64_sve_regs_copy_from_regcache): Likewise.
6114         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6115         declaration.
6116         (aarch64_sve_regs_copy_to_regcache): Likewise.
6117         (aarch64_sve_regs_copy_from_regcache): Likewise.
6118         (sve_context): Structure from Linux headers.
6119         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6120         (SVE_SIG_ZREG_SIZE): Likewise.
6121         (SVE_SIG_PREG_SIZE): Likewise.
6122         (SVE_SIG_FFR_SIZE): Likewise.
6123         (SVE_SIG_REGS_OFFSET): Likewise.
6124         (SVE_SIG_ZREGS_OFFSET): Likewise.
6125         (SVE_SIG_ZREG_OFFSET): Likewise.
6126         (SVE_SIG_ZREGS_SIZE): Likewise.
6127         (SVE_SIG_PREGS_OFFSET): Likewise.
6128         (SVE_SIG_PREG_OFFSET): Likewise.
6129         (SVE_SIG_PREGS_SIZE): Likewise.
6130         (SVE_SIG_FFR_OFFSET): Likewise.
6131         (SVE_SIG_REGS_SIZE): Likewise.
6132         (SVE_SIG_CONTEXT_SIZE): Likewise.
6133         (SVE_PT_REGS_MASK): Likewise.
6134         (SVE_PT_REGS_FPSIMD): Likewise.
6135         (SVE_PT_REGS_SVE): Likewise.
6136         (SVE_PT_VL_INHERIT): Likewise.
6137         (SVE_PT_VL_ONEXEC): Likewise.
6138         (SVE_PT_REGS_OFFSET): Likewise.
6139         (SVE_PT_FPSIMD_OFFSET): Likewise.
6140         (SVE_PT_FPSIMD_SIZE): Likewise.
6141         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6142         (SVE_PT_SVE_PREG_SIZE): Likewise.
6143         (SVE_PT_SVE_FFR_SIZE): Likewise.
6144         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6145         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6146         (__SVE_SIG_TO_PT): Likewise.
6147         (SVE_PT_SVE_OFFSET): Likewise.
6148         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6149         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6150         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6151         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6152         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6153         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6154         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6155         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6156         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6157         (SVE_PT_SVE_SIZE): Likewise.
6158         (SVE_PT_SIZE): Likewise.
6159         (HAS_SVE_STATE): New define.
6160
6161 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6162
6163         * nat/aarch64-sve-linux-sigcontext.h: New file.
6164         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6165         new files.
6166         (SVE_VQ_MIN): Likewise.
6167         (SVE_VQ_MAX): Likewise.
6168         (SVE_VL_MIN): Likewise.
6169         (SVE_VL_MAX): Likewise.
6170         (SVE_NUM_ZREGS): Likewise.
6171         (SVE_NUM_PREGS): Likewise.
6172         (sve_vl_valid): Likewise.
6173         (struct user_sve_header): Likewise.
6174
6175 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6176             Richard Bunt <Richard.Bunt@arm.com>
6177
6178         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6179         was requested by GDB.
6180
6181 2018-06-15  Tom de Vries  <tdevries@suse.de>
6182
6183         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6184
6185 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6186
6187         * gnulib/update-gnulib.sh: Print expected versions of
6188         autoconf/aclocal.
6189
6190 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6191
6192         * arch-utils.c (default_type_align): Use type_length_units.
6193         * gdbtypes.c (type_align): Use type_length_units.
6194
6195 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6196
6197         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6198         of 'define' command.
6199
6200 2018-06-14  Tom de Vries  <tdevries@suse.de>
6201
6202         PR cli/22573
6203         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6204         get_no_prettyformat_print_options.
6205
6206 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6207
6208         * sparc-nat.h: Include target.h.
6209         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6210         <fetch_registers>: Remove this argument in function call.
6211         <store_registers>: Remove this argument in function call, remove
6212         extra semicolon.
6213         <low_forget_process>: Call sparc64_forget_process instead of
6214         sparc_forget_process.
6215
6216 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6217
6218         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6219         (procfs_target::make_corefile_notes): Adjust to new
6220         target_read_alloc return type.
6221
6222 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6223             Stephen Roberts  <stephen.roberts@arm.com>
6224
6225         PR gdb/22882
6226         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6227         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6228         Move should_notify_stop local into more inner scope.
6229
6230 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6231             Stephen Roberts  <stephen.roberts@arm.com>
6232
6233         PR gdb/22882
6234         * infrun.c (resume_1): Add call to mark_async_event_handler.
6235
6236 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6237
6238         * infrun.c (do_target_wait): Change old version of $pc printed.
6239
6240 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6241
6242         * dwarf2read.c (read_index_from_section): Rename to...
6243         (read_gdb_index_from_section): ... this, update all callers.
6244         (dwarf2_read_index): Rename to...
6245         (dwarf2_read_gdb_index): ... this, update all callers.
6246
6247 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6248
6249         * gdb/hppa-linux-nat.c
6250         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6251         hppa_linux_nat_target::fetch_registers.
6252
6253 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6254
6255         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6256         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6257         (AARCH64_DWARF_SVE_FFR): Likewise.
6258         (AARCH64_DWARF_SVE_P0): Likewise.
6259         (AARCH64_DWARF_SVE_Z0): Likewise.
6260
6261 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6262
6263         * common/common-regcache.h (raw_compare): New function.
6264         * regcache.c (regcache::raw_compare): Likewise.
6265         * regcache.h (regcache::raw_compare): New declaration.
6266
6267 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6268
6269         * common/common-regcache.h (reg_buffer_common): New structure.
6270         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6271         (reg_buffer::raw_supply): Likewise.
6272         (reg_buffer::raw_supply_integer): Likewise.
6273         (reg_buffer::raw_supply_zeroed): Likewise.
6274         (reg_buffer::raw_collect): Likewise.
6275         (reg_buffer::raw_collect_integer): Likewise.
6276         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6277         (reg_buffer::raw_supply): Likewise.
6278         (reg_buffer::raw_supply_integer): Likewise.
6279         (reg_buffer::raw_supply_zeroed): Likewise.
6280         (reg_buffer::raw_collect): Likewise.
6281         (reg_buffer::raw_collect_integer): Likewise.
6282
6283 2018-06-10  Tom Tromey  <tom@tromey.com>
6284
6285         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6286         (class remote_state) <stop_reply_queue>: Now std::vector.
6287         (remote_state::~remote_state)
6288         (remote_target::stop_reply_queue_length): Update.
6289         (struct queue_iter_param, remove_child_of_pending_fork)
6290         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6291         (check_pending_event_prevents_wildcard_vcont_callback)
6292         (remove_stop_reply_for_inferior)
6293         (remove_stop_reply_of_remote_state)
6294         (remote_notif_remove_once_on_match)
6295         (stop_reply_match_ptid_and_ws)
6296         (remote_kill_child_of_pending_fork): Remove.
6297         (remote_target::remove_new_fork_children)
6298         (remote_target::check_pending_events_prevent_wildcard_vcont)
6299         (remote_target::discard_pending_stop_replies)
6300         (remote_target::discard_pending_stop_replies_in_queue)
6301         (remote_target::remote_notif_remove_queued_reply)
6302         (remote_target::queued_stop_reply)
6303         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6304         (remote_target::wait, remote_target::kill_new_fork_children)
6305         (remote_target::async): Update.
6306
6307 2018-06-10  Tom Tromey  <tom@tromey.com>
6308
6309         * record-full.c (record_full_arch_list_cleanups): Remove.
6310         (record_full_message): Use try/catch.
6311         (record_full_wait_cleanups): Remove.
6312         (record_full_wait_1): Use try/catch.
6313         (record_full_restore): Likewise.
6314
6315 2018-06-10  Tom Tromey  <tom@tromey.com>
6316
6317         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6318         declare VEC.  Add constructor.
6319         <in_target_beneath>: Now bool.
6320         (record_full_breakpoints): Now a std::vector, static.
6321         (record_full_sync_record_breakpoints)
6322         (record_full_init_record_breakpoints)
6323         (record_full_target::insert_breakpoint)
6324         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6325
6326 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6327
6328         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6329         * serial.c (serial_interface_lookup): Remove struct keyword.
6330
6331 2018-06-10  Tom Tromey  <tom@tromey.com>
6332
6333         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6334         method.
6335         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6336         a method.
6337         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6338         method.
6339         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6340         "beneath" as a method.
6341         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6342         Use "beneath" as a method.
6343
6344 2018-06-10  Tom Tromey  <tom@tromey.com>
6345
6346         * tracefile.c (struct trace_file_writer_deleter): New.
6347         <operator()>: Rename from trace_file_writer_xfree.
6348         (trace_file_writer_up): New typedef.
6349         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6350
6351 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6352
6353         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6354         <m_registers, m_register_status>: Change type to
6355         std::unique_ptr.
6356         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6357         XCNEWVEC.
6358
6359 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6360
6361         * common/common-regcache.h (enum register_status): Add
6362         underlying type "signed char".
6363         * regcache.h (reg_buffer) <m_register_status>: Change type to
6364         register_status *.
6365         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6366         register_status instead of signed char.
6367         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6368         (reg_buffer::get_register_status): Remove cast.
6369         (readable_regcache::raw_read): Remove cast.
6370         (readable_regcache::cooked_read): Remove cast.
6371
6372 2018-06-09  Tom Tromey  <tom@tromey.com>
6373
6374         * source.c (reverse_search_command, forward_search_command): Use
6375         scoped_fd.
6376
6377 2018-06-09  Tom Tromey  <tom@tromey.com>
6378
6379         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6380         (serial_ops_list): Now static, std::vector.
6381         (serial_interface_lookup, serial_add_interface): Update.
6382
6383 2018-06-09  Tom Tromey  <tom@tromey.com>
6384
6385         * dwarf2read.c (process_cu_includes): Update.
6386         (process_full_comp_unit): Update.
6387         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6388         std::vector.
6389
6390 2018-06-08  Paul Koning  <paul_koning@dell.com>
6391
6392         PR gdb/23252
6393
6394         * python/python.c (do_start_initialization):
6395         Avoid call to internal Python API.
6396         (init__gdb_module): New function.
6397
6398 2018-06-08  Gary Benson <gbenson@redhat.com>
6399
6400         * linux-thread-db.c (valprint.h): New include.
6401         (struct check_thread_db_info): New structure.
6402         (check_thread_db_on_load, tdb_testinfo): New static globals.
6403         (check_thread_db, check_thread_db_callback): New functions.
6404         (try_thread_db_load_1): Run integrity checks if requested.
6405         (maintenance_check_libthread_db): New function.
6406         (_initialize_thread_db): Register "maint check libthread-db"
6407         and "maint set/show check-libthread-db".
6408         * NEWS: Mention the above new commands.
6409
6410 2018-06-08  Tom Tromey  <tom@tromey.com>
6411
6412         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
6413         now a method.
6414
6415 2018-06-08  Tom Tromey  <tom@tromey.com>
6416
6417         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
6418
6419 2018-06-08  Tom Tromey  <tom@tromey.com>
6420
6421         * common/btrace-common.h (struct btrace_data): Add constructor,
6422         destructor, move assignment operator.
6423         <empty, clear, fini>: New methods.
6424         <format>: Initialize.
6425         (btrace_data_init, btrace_data_fini, btrace_data_clear)
6426         (btrace_data_empty): Don't declare.
6427         * common/btrace-common.c (btrace_data_init): Remove.
6428         (btrace_data::fini): Rename from btrace_data_fini.
6429         (btrace_data::empty): Rename from btrace_data_empty.
6430         (btrace_data::clear): Rename from btrace_data_clear.  Return
6431         bool.
6432         * btrace.h (make_cleanup_btrace_data): Don't declare.
6433         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
6434         (parse_xml_btrace): Update.
6435         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
6436         (maint_btrace_clear_packet_history_cmd): Update.
6437
6438 2018-06-07  Pedro Alves  <palves@redhat.com>
6439
6440         * target.h (target_ops) <beneath>: Now a method.  All references
6441         updated.
6442         (class target_stack): New.
6443         * target.c (g_target_stack): New.
6444         (g_current_top_target): Delete.
6445         (current_top_target): Get the top target out of g_target_stack.
6446         (target_stack::push, target_stack::unpush): New.
6447         (push_target, unpush_target): Reimplement.
6448         (target_is_pushed): Reimplement in terms of g_target_stack.
6449         (target_ops::beneath, target_stack::find_beneath): New.
6450
6451 2018-06-07  Pedro Alves  <palves@redhat.com>
6452
6453         * target.h (find_target_beneath): Delete declaration.
6454         * target.c (find_target_beneath): Delete definition.
6455         * aix-thread.c: All callers of find_target_beneath adjusted to
6456         call target_ops::beneath instead.
6457         * bsd-uthread.c: Likewise.
6458         * linux-thread-db.c: Likewise.
6459         * ravenscar-thread.c: Likewise.
6460         * sol-thread.c: Likewise.
6461         * spu-multiarch.c: Likewise.
6462
6463 2018-06-07  Pedro Alves  <palves@redhat.com>
6464
6465         * target.h (target_ops) <beneath>: Now a method.  All references
6466         updated.
6467         (target_ops) <m_beneath>: New.
6468         * target.c (target_ops::beneath): New.
6469         * corelow.c: Adjust all references to target_ops::beneath.
6470         * linux-thread-db.c: Likewise.
6471         * make-target-delegates: Likewise.
6472         * record-btrace.c: Likewise.
6473         * record-full.c: Likewise.
6474         * remote.c: Likewise.
6475         * target.c: Likewise.
6476         * target-delegates.c: Regenerate.
6477
6478 2018-06-07  Pedro Alves  <palves@redhat.com>
6479
6480         * target.h (target_stack): Delete.
6481         (current_top_target): Declare function.
6482         * target.c (target_stack): Delete.
6483         (g_current_top_target): New.
6484         (current_top_target): New function.
6485         * auxv.c: Use current_top_target instead of target_stack
6486         throughout.
6487         * avr-tdep.c: Likewise.
6488         * breakpoint.c: Likewise.
6489         * corefile.c: Likewise.
6490         * elfread.c: Likewise.
6491         * eval.c: Likewise.
6492         * exceptions.c: Likewise.
6493         * frame.c: Likewise.
6494         * gdbarch-selftests.c: Likewise.
6495         * gnu-v3-abi.c: Likewise.
6496         * ia64-tdep.c: Likewise.
6497         * ia64-vms-tdep.c: Likewise.
6498         * infcall.c: Likewise.
6499         * infcmd.c: Likewise.
6500         * infrun.c: Likewise.
6501         * linespec.c: Likewise.
6502         * linux-tdep.c: Likewise.
6503         * minsyms.c: Likewise.
6504         * ppc-linux-nat.c: Likewise.
6505         * ppc-linux-tdep.c: Likewise.
6506         * procfs.c: Likewise.
6507         * regcache.c: Likewise.
6508         * remote.c: Likewise.
6509         * rs6000-tdep.c: Likewise.
6510         * s390-linux-nat.c: Likewise.
6511         * s390-tdep.c: Likewise.
6512         * solib-aix.c: Likewise.
6513         * solib-darwin.c: Likewise.
6514         * solib-dsbt.c: Likewise.
6515         * solib-spu.c: Likewise.
6516         * solib-svr4.c: Likewise.
6517         * solib-target.c: Likewise.
6518         * sparc-tdep.c: Likewise.
6519         * sparc64-tdep.c: Likewise.
6520         * spu-tdep.c: Likewise.
6521         * symfile.c: Likewise.
6522         * symtab.c: Likewise.
6523         * target-descriptions.c: Likewise.
6524         * target-memory.c: Likewise.
6525         * target.c: Likewise.
6526         * target.h: Likewise.
6527         * tracefile-tfile.c: Likewise.
6528         * tracepoint.c: Likewise.
6529         * valops.c: Likewise.
6530         * valprint.c: Likewise.
6531         * value.c: Likewise.
6532         * windows-tdep.c: Likewise.
6533         * mi/mi-main.c: Likewise.
6534
6535 2018-06-07  Tom Tromey  <tom@tromey.com>
6536
6537         * valprint.h (build_address_symbolic): Declare.
6538         * printcmd.c (print_address_symbolic): Update.
6539         (build_address_symbolic): Change "name" and "filename" to
6540         std::string.
6541         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
6542         Update.
6543         * defs.h (build_address_symbolic): Remove declaration.
6544
6545 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
6546
6547         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
6548         (aarch64_vnv_type): Add function.
6549         (aarch64_pseudo_register_name): Add V regs for SVE.
6550         (aarch64_pseudo_register_type): Likewise.
6551         (aarch64_pseudo_register_reggroup_p): Likewise.
6552         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
6553         (aarch64_pseudo_read_value): Add V regs for SVE.
6554         (aarch64_pseudo_write_2): Use V0 offset for SVE
6555         (aarch64_pseudo_write): Add V regs for SVE.
6556         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
6557
6558 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
6559
6560         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
6561         (sve_vl_from_vq): Likewise.
6562
6563 2018-06-05  Tom Tromey  <tom@tromey.com>
6564
6565         * cli/cli-cmds.c (show_version): Update.
6566         * top.c (print_gdb_version): Add "interactive" parameter.
6567         Update.
6568         * main.c (captured_main_1): Update.
6569         * top.h (print_gdb_version): Add "interactive" parameter and a
6570         comment.
6571
6572 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
6573
6574         * common/enum-flags.h: Add trailing semicolon to example in
6575         comment.
6576
6577 2018-06-05  Tom Tromey  <tom@tromey.com>
6578
6579         PR cli/12326:
6580         * NEWS: Add entry about pager.
6581         * utils.c (pagination_disabled_for_command): New global.
6582         (prompt_for_continue): Allow "c" response to prompt.
6583         (reinitialize_more_filter): Clear
6584         pagination_disabled_for_command.
6585         (fputs_maybe_filtered): Check pagination_disabled_for_command.
6586
6587 2018-06-04  Tom Tromey  <tom@tromey.com>
6588
6589         * ada-lang.h (ada_lookup_symbol_list): Update.
6590         * ada-lang.c (resolve_subexp): Update.
6591         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
6592         parameter.
6593         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
6594         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
6595         results parameter to std::vector.
6596         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
6597         Update.
6598         * ada-exp.y (block_lookup): Update.
6599         (select_possible_type_sym): Change type of syms.  Remove nsyms
6600         parameter.
6601         (write_var_or_type, write_name_assoc): Update.
6602
6603 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
6604
6605         * windows-nat.c (windows_nat_target::xfer_partial): Return
6606         TARGET_XFER_E_IO if we need to delegate to the target beneath
6607         but BENEATH is NULL.
6608
6609 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
6610
6611         * Makefile.in (config.status): Add configure.nat as a
6612         dependency.
6613
6614 2018-06-04  Tom Tromey  <tom@tromey.com>
6615
6616         * cp-name-parser.y (cpname_state): Add method declarations.
6617         (HANDLE_QUAL): Update.
6618         (cpname_state::d_grab, cpname_state::fill_comp)
6619         (cpname_state::make_operator, cpname_state::make_dtor)
6620         (cpname_state::make_builtin_type, cpname_state::make_name)
6621         (cpname_state::d_qualify, cpname_state::d_int_type)
6622         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
6623         (%union): Move earlier.
6624
6625 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6626
6627         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
6628
6629 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6630
6631         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
6632         (aarch64_pseudo_write_1): Likewise.
6633         (aarch64_pseudo_read_value): Use helper.
6634         (aarch64_pseudo_write): Likewise.
6635
6636 2018-06-04  Pedro Alves  <palves@redhat.com>
6637
6638         * darwin-nat.c (darwin_ops): Delete.
6639         (darwin_attach_pid): Use get_native_target.
6640
6641 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6642
6643         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
6644         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
6645
6646 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6647
6648         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
6649         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
6650         (aarch64_gdbarch_init): Check for SVE.
6651         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
6652
6653 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6654
6655         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
6656         * aarch64-tdep.h (aarch64_read_description): Likewise.
6657         * arch/aarch64.c (aarch64_create_target_description): Likewise.
6658         * arch/aarch64.h (aarch64_create_target_description): Likewise.
6659         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
6660         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
6661         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
6662
6663 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
6664
6665         * value.c (value_fetch_lazy_bitfield): New.
6666         (value_fetch_lazy_memory): New.
6667         (value_fetch_lazy_register): New.
6668         (value_fetch_lazy): Factor out to smaller functions.
6669
6670 2018-06-01  Tom Tromey  <tom@tromey.com>
6671
6672         * cp-name-parser.y (backslashable, represented): Now const.
6673
6674 2018-06-01  Tom Tromey  <tom@tromey.com>
6675
6676         * cp-name-parser.y: Include parser-defs.h.
6677         (parser_fprintf): Remove declaration.
6678
6679 2018-06-01  Tom Tromey  <tom@tromey.com>
6680
6681         * cp-name-parser.y: Use %pure-parser, %lex-param, and
6682         %parse-param.
6683         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
6684         (global_result): Remove globals.
6685         (struct cpname_state): New.
6686         (yyparse): Don't declare.
6687         (yylex, yyerror): Move declarations after %union.
6688         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
6689         (make_name): Add state parameter.
6690         Update all callers.
6691         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
6692         parameter.
6693         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
6694         Update.
6695         (yylex): Add lvalp, state parameters.
6696         (yyerror): Add state parameter.
6697         (cp_demangled_name_to_comp): Update.
6698
6699 2018-06-01  Tom Tromey  <tom@tromey.com>
6700
6701         * cp-name-parser.y (parser_fprintf): Declare.
6702         (GDB_YY_REMAP_PREFIX): Define.
6703         Include yy-remap.h.  Don't redefine yy* identifiers.
6704
6705 2018-06-01  Tom Tromey  <tom@tromey.com>
6706
6707         * python/py-type.c (typy_legacy_template_argument): Update.
6708         * cp-support.h (cp_demangled_name_to_comp): Update.
6709         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
6710         parameter to be a "std::string *".
6711         (main): Update.
6712
6713 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
6714
6715         * ada-lex.l: Include "diagnostics.h" instead of
6716         "common/diagnostics.h".
6717         * unittests/environ-selftests.c: Likewise.
6718         * common/diagnostics.h: Moved to ../include.
6719
6720 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
6721
6722         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
6723         to language_mode_manual while calling breakpoint_re_set_one.
6724
6725 2018-06-01  Tom Tromey  <tom@tromey.com>
6726
6727         * valops.c (value_cast_structs, destructor_name_p): Update.
6728         * symtab.c (gdb_mangle_name): Update.
6729         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
6730         Update.
6731         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
6732         (pascal_object_print_value_fields, pascal_object_print_value):
6733         Update.
6734         * p-typeprint.c (pascal_type_print_derivation_info): Update.
6735         * linespec.c (find_methods): Update.
6736         * gdbtypes.h (type_name_no_tag): Remove.
6737         (type_name_or_error): Rename from type_name_no_tag_or_error.
6738         * gdbtypes.c (type_name_no_tag): Remove.
6739         (type_name_or_error): Rename from type_name_no_tag_or_error.
6740         (lookup_struct_elt_type, check_typedef): Update.
6741         * expprint.c (print_subexp_standard): Update.
6742         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
6743         * d-namespace.c (d_lookup_nested_symbol): Update.
6744         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
6745         (cp_print_class_member): Update.
6746         * cp-namespace.c (cp_lookup_nested_symbol): Update.
6747         * completer.c (add_struct_fields): Update.
6748         * c-typeprint.c (cp_type_print_derivation_info)
6749         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
6750         Update.
6751         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
6752         (ada_prefer_type, ada_is_exception_sym): Update.
6753
6754 2018-06-01  Tom Tromey  <tom@tromey.com>
6755
6756         * valops.c (enum_constant_from_type, value_namespace_elt)
6757         (value_maybe_namespace_elt): Update.
6758         * valarith.c (find_size_for_pointer_math): Update.
6759         * target-descriptions.c (make_gdb_type): Update.
6760         * symmisc.c (print_symbol): Update.
6761         * stabsread.c (define_symbol, read_type)
6762         (complain_about_struct_wipeout, add_undefined_type)
6763         (cleanup_undefined_types_1): Update.
6764         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
6765         (rust_range_type_p, val_print_struct, rust_print_struct_def)
6766         (rust_internal_print_type, rust_composite_type)
6767         (rust_evaluate_funcall, rust_evaluate_subexp)
6768         (rust_inclusive_range_type_p): Update.
6769         * python/py-type.c (typy_get_tag): Update.
6770         * p-typeprint.c (pascal_type_print_base): Update.
6771         * mdebugread.c (parse_symbol, parse_type): Update.
6772         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
6773         Update.
6774         * guile/scm-type.c (gdbscm_type_tag): Update.
6775         * go-lang.c (sixg_string_p): Update.
6776         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
6777         Update.
6778         * gdbtypes.h (struct main_type) <tag_name>: Remove.
6779         (TYPE_TAG_NAME): Remove.
6780         * gdbtypes.c (type_name_no_tag): Simplify.
6781         (check_typedef, check_types_equal, recursive_dump_type)
6782         (copy_type_recursive, arch_composite_type): Update.
6783         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
6784         in summary mode when needed.
6785         * eval.c (evaluate_funcall): Update.
6786         * dwarf2read.c (fixup_go_packaging, read_structure_type)
6787         (process_structure_scope, read_enumeration_type)
6788         (read_namespace_type, read_module_type, determine_prefix): Update.
6789         * cp-support.c (inspect_type): Update.
6790         * coffread.c (process_coff_symbol, decode_base_type): Update.
6791         * c-varobj.c (c_is_path_expr_parent): Update.
6792         * c-typeprint.c (c_type_print_base_struct_union): Update.
6793         (c_type_print_base_1): Update.  Print struct/class/union/enum in
6794         summary when using C language.
6795         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
6796         (gen_maybe_namespace_elt): Update.
6797         * ada-lang.c (ada_type_name): Simplify.
6798         (empty_record, ada_template_to_fixed_record_type_1)
6799         (template_to_static_fixed_type)
6800         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
6801
6802 2018-06-01  Tom Tromey  <tom@tromey.com>
6803
6804         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
6805         c_print_type.
6806         * c-typeprint.c (c_print_type_1): Add "language" parameter.
6807         (c_print_type): Update.
6808         (c_print_type): New overload.
6809         (c_type_print_varspec_prefix, c_type_print_args)
6810         (c_type_print_varspec_suffix, c_print_type_no_offsets)
6811         (c_type_print_base_struct_union, c_type_print_base_1)
6812         (cp_type_print_method_args): Add "language" parameter.
6813         (c_type_print_base): Update.
6814         * c-lang.h (c_print_type): Add new overload.
6815
6816 2018-06-01  Tom Tromey  <tom@tromey.com>
6817
6818         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
6819         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
6820
6821 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
6822
6823         * aarch64-tdep.c (aarch64_sve_register_names): New const
6824         var.
6825         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
6826         (AARCH64_SVE_Z_REGS_NUM): New define.
6827         (AARCH64_SVE_P_REGS_NUM): Likewise.
6828         (AARCH64_SVE_NUM_REGS): Likewise.
6829
6830 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
6831
6832         * nat/linux-ptrace.h [__alpha__]
6833         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
6834         definitions.
6835
6836 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
6837
6838         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
6839         the endianness selected.
6840         * NEWS: Document `set endian auto' mode operation update.
6841
6842 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6843
6844         * Makefile.in: Add new header.
6845         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
6846         (sve_vl_from_vg): Likewise.
6847         (sve_vq_from_vl): Likewise.
6848         (sve_vl_from_vq): Likewise.
6849         (sve_vq_from_vg): Likewise.
6850         (sve_vg_from_vq): Likewise.
6851         * configure.nat: Add new c file.
6852         * nat/aarch64-sve-linux-ptrace.c: New file.
6853         * nat/aarch64-sve-linux-ptrace.h: New file.
6854
6855 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6856
6857         * aarch64-linux-nat.c (aarch64_linux_read_description):
6858         Add parmeter zero.
6859         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
6860         Likewise.
6861         * aarch64-tdep.c (tdesc_aarch64_list): Add.
6862         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
6863         (aarch64_gdbarch_init): Add parmeter zero.
6864         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
6865         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
6866         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
6867         parmeter.
6868         * doc/gdb.texinfo: Describe SVE feature
6869         * features/aarch64-sve.c: New file.
6870
6871 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
6872
6873         PR gdb/23210
6874         * gdbarch.sh (significant_addr_bit): Default to zero when
6875         not set by target architecture.
6876         * gdbarch.c: Re-generated.
6877         * utils.c (address_significant): Update.
6878
6879 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
6880
6881         * stack.c (func_command): Remove trailing newline in call to error.
6882
6883 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6884
6885         * regcache.h (regcache_raw_collect): Remove, update callers to
6886         use regcache::raw_collect.
6887         * regcache.c (regcache_raw_collect): Remove.
6888
6889 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6890
6891         * regcache.h (regcache_raw_supply): Remove, update callers to
6892         use detached_regcache::raw_supply.
6893         * regcache.c (regcache_raw_supply): Remove.
6894
6895 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6896
6897         * regcache.h (regcache_cooked_write_part): Remove, update
6898         callers to use regcache::cooked_write_part.
6899         * regcache.c (regcache_cooked_write_part): Remove.
6900
6901 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6902
6903         * regcache.h (regcache_cooked_read_part): Remove, update callers
6904         to use readable_regcache::cooked_read_part.
6905         * regcache.c (regcache_cooked_read_part): Remove.
6906
6907 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6908
6909         * regcache.h (regcache_cooked_read_value): Remove, update
6910         callers to use readable_regcache::cooked_read_value.
6911         * regcache.c (regcache_cooked_read_value): Remove.
6912
6913 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6914
6915         * regcache.h (regcache_cooked_write): Remove, update callers to
6916         use regcache::cooked_write.
6917         * regcache.c (regcache_cooked_write): Remove.
6918
6919 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6920
6921         * regcache.h (regcache_invalidate): Remove, update callers to
6922         use detached_regcache::invalidate instead.
6923         * regcache.c (regcache_invalidate): Remove.
6924
6925 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6926
6927         * regcache.h (regcache_raw_write_part): Remove, update callers
6928         to use regcache::raw_write_part instead.
6929         * regcache.c (regcache_raw_write_part): Remove.
6930
6931 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6932
6933         * regcache.h (regcache_raw_read_part): Remove, update callers to
6934         use readable_regcache::raw_read_part instead.
6935         * regcache.c (regcache_raw_read_part): Remove.
6936
6937 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6938
6939         * regcache.h (regcache_cooked_read): Remove, update callers to
6940         use readable_regcache::cooked_read instead.
6941         * regcache.c (regcache_cooked_read): Remove.
6942
6943 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6944
6945         * regcache.h (regcache_raw_write): Remove, update callers to use
6946         regcache::raw_write instead.
6947         * regcache.c (regcache_raw_write): Remove.
6948
6949 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6950
6951         * regcache.h (regcache_raw_read): Remove, update callers to use
6952         readable_regcache::raw_read instead.
6953         * regcache.c (regcache_raw_read): Remove.
6954
6955 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6956
6957         * regcache.h (regcache_raw_update): Remove, update callers to
6958         use readable_regcache::raw_update instead.
6959         * regcache.c (regcache_raw_update): Remove.
6960
6961 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6962
6963         * regcache.h (regcache_register_status): Remove, update callers
6964         to use reg_buffer::get_register_status directly instead.
6965         * regcache.c (regcache_register_status): Remove.
6966
6967 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6968
6969         * regcache.h (regcache_get_ptid): Remove, update all callers to
6970         call regcache::ptid instead.
6971         * regcache.c (regcache_get_ptid): Remove.
6972
6973 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6974
6975         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
6976
6977 2018-05-30  Pedro Alves  <palves@redhat.com>
6978
6979         * common/common-exceptions.h (exception_rethrow): Use
6980         ATTRIBUTE_NORETURN.
6981
6982 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
6983
6984         * breakpoint.c (print_solib_event, check_status_catch_solib):
6985         Remove struct keyword in range-based for loops.
6986         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
6987         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
6988         Likewise.
6989         * linespec.c (find_superclass_methods, search_minsyms_for_name):
6990         Likewise.
6991         * symfile.c (addr_info_make_relative): Likewise.
6992         * thread.c (value_in_thread_stack_temporaries): Likewise.
6993
6994 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
6995
6996         PR gdb/16841
6997         * valops.c (value_struct_elt_for_reference): Call check_typedef on
6998         aggregate type to get its real type before accessing it.
6999
7000 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7001
7002         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7003         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7004         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7005         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7006         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7007         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7008         * printcmd.c (info_address_command): Likewise.
7009
7010 2018-05-29  Tom Tromey  <tom@tromey.com>
7011
7012         * windows-nat.c (handle_exception): Update fall-through comment.
7013
7014 2018-05-29  Tom Tromey  <tom@tromey.com>
7015
7016         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7017         (struct program_space) <added_solibs>: Now a std::vector.
7018         * breakpoint.c (print_solib_event): Update.
7019         (check_status_catch_solib): Update.
7020         * progspace.c (clear_program_space_solib_cache): Update.
7021         * solib.c (update_solib_list): Update.
7022
7023 2018-05-29  Tom Tromey  <tom@tromey.com>
7024
7025         * python/py-type.c (typy_richcompare): Update.
7026         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7027         * gdbtypes.h (types_deeply_equal): Return bool.
7028         (types_equal): Likewise.
7029         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7030         declare VEC.
7031         (check_types_equal): Change worklist to std::vector.  Return
7032         bool.
7033         (struct type_equality_entry): Add constructor.
7034         (compare_maybe_null_strings): Return bool.
7035         (check_types_worklist): Return bool.  Change worklist to
7036         std::vector.
7037         (types_deeply_equal): Use std::vector.
7038         (types_equal): Return bool.
7039         (compare_maybe_null_strings): Simplify.
7040
7041 2018-05-29  Tom Tromey  <tom@tromey.com>
7042
7043         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7044
7045 2018-05-29  Tom Tromey  <tom@tromey.com>
7046
7047         * objc-lang.h: Don't include cp-support.h.
7048         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7049         declare VEC.
7050
7051 2018-05-27  Tom Tromey  <tom@tromey.com>
7052
7053         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7054
7055 2018-05-25  Tom Tromey  <tom@tromey.com>
7056
7057         * value.c (value::location): Initialize.
7058
7059 2018-05-25  Tom Tromey  <tom@tromey.com>
7060
7061         * dbxread.c (init_bincl_list): Remove.
7062         (bincl_list): Now a std::vector.
7063         (bincls_allocated, next_bincl): Remove.
7064         (free_bincl_list, do_free_bincl_list_cleanup)
7065         (make_cleanup_free_bincl_list): Remove.
7066         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7067         unique_xmalloc_ptr.
7068         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7069         (struct header_file_location): Add constructor.
7070         (add_bincl_to_list): Remove.
7071
7072 2018-05-25  Tom Tromey  <tom@tromey.com>
7073
7074         * tui/tui.c (tui_enable): Update.
7075         * mi/mi-interp.c (mi_interp::init): Update.
7076         * interps.h (class interp) <name>: New method.
7077         <m_name>: Rename from name.
7078         (~scoped_restore_interp): Update.
7079         * interps.c (interp::interp): Update.
7080         (interp_add, interp_set, interp_lookup_existing)
7081         (current_interp_named_p): Update.
7082
7083 2018-05-25  Tom Tromey  <tom@tromey.com>
7084
7085         * interps.c (interp_name): Remove.
7086         * mi/mi-interp.c (mi_interp::init): Update.
7087         * interps.h (interp_name): Remove.
7088         (~scoped_restore_interp): Update.
7089         * tui/tui.c (tui_enable): Update.
7090
7091 2018-05-25  Tom Tromey  <tom@tromey.com>
7092
7093         * utils.c (fputs_maybe_filtered): Update.
7094         * linespec.c (decode_line_full): Update.
7095         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7096         (mi_print_breakpoint_for_event, mi_solib_loaded)
7097         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7098         (mi_user_selected_context_changed): Update.
7099         * mi/mi-main.c (mi_execute_command): Update.
7100         * cli/cli-script.c (execute_control_command): Update.
7101         * python/python.c (execute_gdb_command): Update.
7102         * solib.c (info_sharedlibrary_command): Update.
7103         * interps.c (interp_ui_out): Remove.
7104         * interps.h (interp_ui_out): Remove.
7105
7106 2018-05-25  Tom Tromey  <tom@tromey.com>
7107
7108         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7109         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7110         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7111
7112 2018-05-25  Tom Tromey  <tom@tromey.com>
7113
7114         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7115         * interps.c (interp_exec): Use scoped_restore.
7116
7117 2018-05-25  Tom Tromey  <tom@tromey.com>
7118
7119         * remote.c (remote_target::remote_file_get): Use
7120         gdb::byte_vector.
7121         (remote_target::remote_file_put): Likewise.
7122
7123 2018-05-25  Tom Tromey  <tom@tromey.com>
7124
7125         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7126         a std::string.
7127         (get_pe_section_index, add_pe_exported_sym): Update.
7128         (read_pe_exported_syms): Use gdb::def_vector.
7129
7130 2018-05-25  Tom Tromey  <tom@tromey.com>
7131
7132         * frame.c (remove_prev_frame): Remove.
7133         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7134
7135 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7136
7137         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7138         Remove prototypes.
7139         * mips-linux-nat.c (supply_fpregset): Always call
7140         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7141         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7142         `mips_fill_fpregset'.
7143         * mips-linux-tdep.c (mips_supply_fpregset)
7144         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7145         (mips_fill_fpregset_wrapper): Remove functions.
7146         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7147         (mips_linux_fpregset): Remove variable.
7148         (mips_linux_iterate_over_regset_sections): Use
7149         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7150         (mips_linux_o32_sigframe_init): Remove comment.
7151
7152 2018-05-25  Pedro Alves  <palves@redhat.com>
7153
7154         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7155         (struct readahead_cache, struct packet_reg, struct
7156         remote_arch_state, class remote_state): Move higher up in the
7157         file.
7158         (remote_target::m_remote_state): Now an object instead of a pointer.
7159         (remote_target::get_remote_state): Adjust.
7160
7161 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7162
7163         * stack.c (select_and_print_frame): Delete.
7164         (struct function_bounds): Move struct within function.
7165         (func_command): Most content moved into new function
7166         find_frame_for_function, use new function, print result, add
7167         function comment.
7168         (find_frame_for_function): New function, now returns a result.
7169
7170 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7171
7172         * stack.c (iterate_over_block_arg_vars): Fix comment.
7173         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7174
7175 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7176
7177         PR gdb/23203
7178         * frame.c
7179         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7180         Define.
7181         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7182         Define.
7183         * frame.h (class scoped_restore_selected_frame): New class.
7184         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7185         of any exception, use scoped_restore_selected_frame to restore the
7186         frame instead.
7187
7188 2018-05-24  Pedro Alves  <palves@redhat.com>
7189
7190         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7191         override.
7192
7193 2018-05-23  Tom Tromey  <tom@tromey.com>
7194
7195         * complaints.c (struct complaints): Remove.
7196         (symfile_complaint_book): Remove.
7197         (series): New global.
7198         (complaint_internal): Update.
7199         (clear_complaints): Update.
7200
7201 2018-05-23  Tom Tromey  <tom@tromey.com>
7202
7203         * complaints.c (counters): New global.
7204         (struct complain): Remove.
7205         (struct complaints) <root>: Remove.
7206         (complaint_sentinel): Remove.
7207         (symfile_complaint_book): Update.
7208         (find_complaint) Remove.
7209         (complaint_internal, clear_complaints): Update.
7210
7211 2018-05-23  Tom Tromey  <tom@tromey.com>
7212
7213         * complaints.c (struct complain) <file, line>: Remove.
7214         (find_complaint): Remove file, line parameters.
7215         (complaint_internal): Update.
7216
7217 2018-05-23  Tom Tromey  <tom@tromey.com>
7218
7219         * complaints.c (vcomplaint): Remove.
7220         (complaint_internal) Merge in contents of vcomplaint.
7221
7222 2018-05-23  Tom Tromey  <tom@tromey.com>
7223
7224         * complaints.c (struct complaints) <explanation>: Remove.
7225         (symfile_explanations): Remove.
7226         (symfile_complaint_book): Update.
7227         (vcomplaint): Update.
7228         (struct explanation): Remove.
7229
7230 2018-05-23  Tom Tromey  <tom@tromey.com>
7231
7232         * complaints.c (symfile_complaints): Remove.
7233         (complaint_internal): Remove "complaints" parameter.
7234         (clear_complaints, vcomplaint): Remove "c" parameter.
7235         (get_complaints): Remove.
7236         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7237         (dwarf2_debug_line_missing_file_complaint)
7238         (dwarf2_debug_line_missing_end_sequence_complaint)
7239         (dwarf2_complex_location_expr_complaint)
7240         (dwarf2_const_value_length_mismatch_complaint)
7241         (dwarf2_section_buffer_overflow_complaint)
7242         (dwarf2_macro_malformed_definition_complaint)
7243         (dwarf2_invalid_attrib_class_complaint)
7244         (create_addrmap_from_index, dw2_symtab_iter_next)
7245         (dw2_expand_marked_cus)
7246         (dw2_debug_names_iterator::find_vec_in_debug_names)
7247         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7248         (create_debug_type_hash_table, init_cutu_and_read_dies)
7249         (partial_die_parent_scope, add_partial_enumeration)
7250         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7251         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7252         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7253         (create_cus_hash_table, create_dwp_hash_table)
7254         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7255         (dwarf2_rnglists_process, dwarf2_ranges_process)
7256         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7257         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7258         (handle_struct_member_die, process_structure_scope)
7259         (read_array_type, read_common_block, read_module_type)
7260         (read_tag_pointer_type, read_typedef, read_base_type)
7261         (read_subrange_type, load_partial_dies, partial_die_info::read)
7262         (partial_die_info::read, partial_die_info::read)
7263         (partial_die_info::read, read_checked_initial_length_and_offset)
7264         (dwarf2_string_attr, read_formatted_entries)
7265         (dwarf_decode_line_header)
7266         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7267         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7268         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7269         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7270         (get_signatured_type, get_DW_AT_signature_type)
7271         (decode_locdesc, file_file_name, consume_improper_spaces)
7272         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7273         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7274         (dwarf2_symbol_mark_computed, set_die_type)
7275         (read_attribute_value): Update.
7276         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7277         Update.
7278         * dbxread.c (unknown_symtype_complaint)
7279         (lbrac_mismatch_complaint, repeated_header_complaint)
7280         (set_namestring, function_outside_compilation_unit_complaint)
7281         (read_dbx_symtab, process_one_symbol): Update.
7282         * gdbtypes.c (stub_noname_complaint): Update.
7283         * windows-nat.c (handle_unload_dll): Update.
7284         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7285         (decode_base_type): Update.
7286         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7287         (eb_complaint, record_include_begin, record_include_end)
7288         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7289         (process_xcoff_symbol, read_symbol)
7290         (function_outside_compilation_unit_complaint)
7291         (scan_xcoff_symtab): Update.
7292         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7293         * buildsym.c (finish_block_internal, make_blockvector)
7294         (end_symtab_get_static_block, augment_type_symtab): Update.
7295         * dtrace-probe.c (dtrace_process_dof)
7296         (dtrace_static_probe_ops::get_probes): Update.
7297         * complaints.h (struct complaint): Don't declare.
7298         (symfile_complaints): Remove.
7299         (complaint_internal): Remove "complaints" parameter.
7300         (complaint): Likewise.
7301         (clear_complaints): Likewise.
7302         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7303         (reread_symbols): Update.
7304         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7305         (dwarf2_frame_cache, decode_frame_entry): Update.
7306         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7307         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7308         (info_selectors_command): Update.
7309         * macrotab.c (macro_include, check_for_redefinition)
7310         (macro_undef): Update.
7311         * objfiles.c (filter_overlapping_sections): Update.
7312         * stabsread.c (invalid_cpp_abbrev_complaint)
7313         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7314         (define_symbol, error_type, read_type, rs6000_builtin_type)
7315         (stabs_method_name_from_physname, read_member_functions)
7316         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7317         (attach_fields_to_type, complain_about_struct_wipeout)
7318         (read_range_type, read_args, common_block_start)
7319         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7320         Update.
7321         * mdebugread.c (index_complaint, unknown_ext_complaint)
7322         (basic_type_complaint, bad_tag_guess_complaint)
7323         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7324         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7325         (parse_procedure, parse_lines)
7326         (function_outside_compilation_unit_complaint)
7327         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7328         (bad_tag_guess_complaint, reg_value_complaint): Update.
7329         * cp-support.c (demangled_name_complaint): Update.
7330         * macroscope.c (sal_macro_scope): Update.
7331         * dwarf-index-write.c (class debug_names): Update.
7332
7333 2018-05-23  Tom Tromey  <tom@tromey.com>
7334
7335         * complaints.c (clear_complaints): Remove "noisy" parameter.
7336         * complaints.h (clear_complaints): Update.
7337         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7338         (reread_symbols): Update.
7339
7340 2018-05-23  Tom Tromey  <tom@tromey.com>
7341
7342         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7343         SUBSEQUENT_MESSAGE.
7344         (vcomplaint, clear_complaints): Update.
7345         (symfile_explanations): Remove some messages.
7346
7347 2018-05-23  Tom Tromey  <tom@tromey.com>
7348
7349         * complaints.c (internal_complaint): Remove.
7350         * complaints.h (internal_complaint): Remove.
7351
7352 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7353
7354         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7355
7356 2018-05-22  Pedro Alves  <palves@redhat.com>
7357
7358         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7359         (remote_fileio_badfd, remote_fileio_return_errno)
7360         (remote_fileio_return_success, remote_fileio_func_open)
7361         (remote_fileio_func_open, remote_fileio_func_close)
7362         (remote_fileio_func_read, remote_fileio_func_write)
7363         (remote_fileio_func_lseek, remote_fileio_func_rename)
7364         (remote_fileio_func_unlink, remote_fileio_func_stat)
7365         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7366         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7367         remote_target parameter.
7368         (remote_fio_func_map) <func>: Add remote_target parameter.
7369         (do_remote_fileio_request, remote_fileio_request):
7370         * remote-fileio.h (remote_fileio_request):
7371         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7372         remote_target parameter.
7373         (remote_notif_process, handle_notification): Adjust to pass down
7374         the remote.
7375         (remote_notif_state_allocate): Add remote_target parameter.  Save
7376         it.
7377         * remote-notif.h (struct remote_target): Forward declare.
7378         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7379         remote_target parameter.
7380         (struct remote_notif_state) <remote>: New field.
7381         (remote_notif_ack, remote_notif_parse): Add remote_target
7382         parameter.
7383         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7384         remote_target parameter.
7385         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7386         (threads_listing_context, rmt_thread_action, protocol_feature)
7387         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7388         (packet_result, struct threads_listing_context, remote_state):
7389         Move definitions and declarations higher up.
7390         (remote_target) <~remote_target>: Declare.
7391         (remote_download_command_source, remote_file_put, remote_file_get)
7392         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7393         (remote_hostio_pread_vFile, remote_hostio_send_command)
7394         (remote_hostio_set_filesystem, remote_hostio_open)
7395         (remote_hostio_close, remote_hostio_unlink, remote_state)
7396         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7397         (get_memory_write_packet_size, get_memory_read_packet_size)
7398         (append_pending_thread_resumptions, remote_detach_1)
7399         (append_resumption, remote_resume_with_vcont)
7400         (add_current_inferior_and_thread, wait_ns, wait_as)
7401         (process_stop_reply, remote_notice_new_inferior)
7402         (process_initial_stop_replies, remote_add_thread)
7403         (btrace_sync_conf, remote_btrace_maybe_reopen)
7404         (remove_new_fork_children, kill_new_fork_children)
7405         (discard_pending_stop_replies, stop_reply_queue_length)
7406         (check_pending_events_prevent_wildcard_vcont)
7407         (discard_pending_stop_replies_in_queue, stop_reply)
7408         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
7409         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
7410         (remote_interrupt_as, remote_interrupt_ns)
7411         (remote_get_noisy_reply, remote_query_attached)
7412         (remote_add_inferior, remote_current_thread, get_current_thread)
7413         (set_thread, set_general_thread, set_continue_thread)
7414         (set_general_process, write_ptid)
7415         (remote_unpack_thread_info_response, remote_get_threadinfo)
7416         (parse_threadlist_response, remote_get_threadlist)
7417         (remote_threadlist_iterator, remote_get_threads_with_ql)
7418         (remote_get_threads_with_qxfer)
7419         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
7420         (get_offsets, remote_check_symbols, remote_supported_packet)
7421         (remote_query_supported, remote_packet_size)
7422         (remote_serial_quit_handler, remote_detach_pid)
7423         (remote_vcont_probe, remote_resume_with_hc)
7424         (send_interrupt_sequence, interrupt_query)
7425         (remote_notif_get_pending_events, fetch_register_using_p)
7426         (send_g_packet, process_g_packet, fetch_registers_using_g)
7427         (store_register_using_P, store_registers_using_G)
7428         (set_remote_traceframe, check_binary_download)
7429         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
7430         (remote_xfer_live_readonly_partial, remote_read_bytes)
7431         (remote_send_printf, remote_flash_write, readchar)
7432         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
7433         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
7434         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
7435         (extended_remote_disable_randomization, extended_remote_run)
7436         (send_environment_packet, extended_remote_environment_support)
7437         (extended_remote_set_inferior_cwd, remote_write_qxfer)
7438         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
7439         (packet_command): Now methods of ...
7440         (remote_target): ... this class.
7441         (m_remote_state) <remote_target>: New field.
7442         (struct remote_state) <stop_reply_queue,
7443         remote_async_inferior_event_token, wait_forever_enabled_p>: New
7444         fields.
7445         (remote_state::remote_state): Allocate stop_reply_queue.
7446         (remote_state): Delete global.
7447         (get_remote_state_raw): Delete.
7448         (remote_target::get_remote_state): Allocate m_remote_state on
7449         demand.
7450         (get_current_remote_target): New.
7451         (remote_ops, extended_remote_ops): Delete.
7452         (wait_forever_enabled_p, remote_async_inferior_event_token):
7453         Delete, moved to struct remote_state.
7454         (remote_target::close): Delete self.  Destruction bits split to
7455         ...
7456         (remote_target::~remote_target): ... this.
7457         (show_memory_packet_size): Adjust to use
7458         get_current_remote_target.
7459         (struct protocol_feature) <func>: Add remote_target parameter.
7460         All callers adjusted.
7461         (curr_quit_handler_target): New.
7462         (remote_serial_quit_handler): Reimplement.
7463         (remote_target::open_1): Adjust to use get_current_remote_target.
7464         Heap-allocate remote_target/extended_remote_target instances.
7465         (vcont_builder::vcont_builder): Add remote_target parameter, and
7466         save it in m_remote.  All callers adjusted.
7467         (vcont_builder::m_remote): New field.
7468         (vcont_builder::restart, vcont_builder::flush)
7469         (vcont_builder::push_action): Use it.
7470         (remote_target::commit_resume): Use it.
7471         (struct queue_iter_param) <remote>: New field.
7472         (remote_target::remove_new_fork_children): Fill in 'remote' field.
7473         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
7474         (check_pending_event_prevents_wildcard_vcont_callback)
7475         (remote_target::check_pending_events_prevent_wildcard_vcont)
7476         (remote_target::discard_pending_stop_replies)
7477         (remote_target::discard_pending_stop_replies_in_queue)
7478         (remote_target::remote_notif_remove_queued_reply): Fill in
7479         'remote' field.
7480         (remote_notif_get_pending_events): New.
7481         (remote_target::readchar, remote_target::remote_serial_write):
7482         Save/restore curr_quit_handler_target.
7483         (putpkt): New.
7484         (kill_new_fork_children): Fill in 'remote' field.
7485         (packet_command): Use get_current_remote_target, defer to
7486         remote_target method of same name.
7487         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
7488         parameter, and save it in m_remote.  All callers adjusted.
7489         (scoped_remote_fd::release): Use m_remote.
7490         (scoped_remote_fd::m_remote): New field.
7491         (remote_file_put, remote_file_get, remote_file_delete): Use
7492         get_current_remote_target, defer to remote_target method of same
7493         name.
7494         (remote_btrace_reset): Add remote_state paremeter.  Update all
7495         callers.
7496         (remote_async_inferior_event_handler). Pass down 'data'.
7497         (remote_new_objfile): Use get_current_remote_target.
7498         (remote_target::vcont_r_supported): New.
7499         (set_range_stepping): Use get_current_remote_target and
7500         remote_target::vcont_r_supported.
7501         (_initialize_remote): Don't allocate 'remote_state' and
7502         'stop_reply_queue' globals.
7503         * remote.h (struct remote_target): Forward declare.
7504         (getpkt, putpkt, remote_notif_get_pending_events): Add
7505         'remote_target' parameter.
7506
7507 2018-05-22  Pedro Alves  <palves@redhat.com>
7508
7509         * remote.c (vcont_builder): Now a class.  Make all data members
7510         private.
7511         (vcont_builder) <vcont_builder, restart, flush, push_action>:
7512         Declare methods.
7513         (vcont_builder_restart): Rename to ...
7514         (vcont_builder::restart): ... this.
7515         (vcont_builder_flush): Rename to ...
7516         (vcont_builder::flush): ... this.
7517         (vcont_builder_push_action): Rename to ...
7518         (vcont_builder::push_action): ... this.
7519         (remote_target::commit_resume): Adjust.
7520
7521 2018-05-22  Pedro Alves  <palves@redhat.com>
7522
7523         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
7524         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
7525         (get_fixed_memory_packet_size): New.
7526         (get_memory_packet_size): Use it.
7527         (set_memory_packet_size): Don't override the config size with
7528         DEFAULT_MAX_MEMORY_PACKET_SIZE.
7529         (show_memory_packet_size): Use get_fixed_memory_packet_size.
7530         Don't refer to get_memory_packet_size if not connected to a remote
7531         target.  Show "(default)" if configured size is 0.
7532
7533 2018-05-22  Pedro Alves  <palves@redhat.com>
7534
7535         * remote.c (remote_target::mourn_inferior): Move
7536         discard_pending_stop_replies call here from ...
7537         (_initialize_remote): ... here.
7538
7539 2018-05-22  Pedro Alves  <palves@redhat.com>
7540
7541         * remote.c (compare_section_command): Remove set_general_process
7542         call.
7543
7544 2018-05-22  Pedro Alves  <palves@redhat.com>
7545
7546         * remote.c (struct packet_reg, struct remote_arch_state):
7547         Move higher up in the file.
7548         (remote_state) <m_arch_states>: Store remote_arch_state values
7549         instead of remote_arch_state pointers.
7550         (remote_state::get_remote_arch_state): Adjust.
7551
7552 2018-05-22  Pedro Alves  <palves@redhat.com>
7553
7554         * remote.c: Include <unordered_map>.
7555         (remote_state): Now a class.
7556         (remote_state) <get_remote_arch_state>: Declare method.
7557         <get_remote_arch_state>: New field.
7558         (remote_arch_state) <remote_arch_state>: Declare ctor.
7559         <regs>: Now a unique_ptr.
7560         (remote_gdbarch_data_handle): Delete.
7561         (get_remote_arch_state): Delete.
7562         (remote_state::get_remote_arch_state): New.
7563         (get_remote_state): Adjust to call remote_state's
7564         get_remote_arch_state method.
7565         (init_remote_state): Delete, bits factored out to ...
7566         (remote_arch_state::remote_arch_state): ... this new method.
7567         (get_remote_packet_size, get_memory_packet_size)
7568         (process_g_packet, remote_target::fetch_registers)
7569         (remote_target::prepare_to_store, store_registers_using_G)
7570         (remote_target::store_registers, remote_target::get_trace_status):
7571         Adjust to call remote_state's method.
7572         (_initialize_remote): Remove reference to
7573         remote_gdbarch_data_handle.
7574
7575 2018-05-22  Pedro Alves  <palves@redhat.com>
7576
7577         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
7578         pread>: New method declarations.
7579         (remote_target::open_1): Adjust.
7580         (readahead_cache_invalidate): Rename to ...
7581         (readahead_cache::invalidate): ... this, and adjust to be a class
7582         method.
7583         (readahead_cache_invalidate_fd): Rename to ...
7584         (readahead_cache::invalidate_fd): ... this, and adjust to be a
7585         class method.
7586         (remote_hostio_pwrite): Adjust.
7587         (remote_hostio_pread_from_cache): Rename to ...
7588         (readahead_cache::pread): ... this, and adjust to be a class
7589         method.
7590         (remote_hostio_close): Adjust.
7591
7592 2018-05-22  Pedro Alves  <palves@redhat.com>
7593
7594         * remote.c (remote_hostio_close_cleanup): Delete.
7595         (class scoped_remote_fd): New.
7596         (remote_file_put, remote_file_get): Use it.
7597
7598 2018-05-22  Pedro Alves  <palves@redhat.com>
7599
7600         (struct vCont_action_support): Use bool and initialize all fields.
7601         (struct readahead_cache): Initialize all fields.
7602         (remote_state): Use bool and initialize all fields.
7603         (remote_state::remote_state, remote_state::~remote_state): New.
7604         (new_remote_state): Delete.
7605         (_initialize_remote): Use new to allocate remote_state.
7606
7607 2018-05-22  Pedro Alves  <palves@redhat.com>
7608             張俊芝  <zjz@zjz.name>
7609
7610         PR gdb/22973
7611         * c-exp.y: Include "c-support.h".
7612         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
7613         of tolower.  Use c_ident_is_alpha to scan names.
7614         * c-lang.c: Include "c-support.h".
7615         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
7616         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
7617         * c-support.h: New file, with bits factored out from ...
7618         * cp-name-parser.y: ... this file.
7619         Include "c-support.h".
7620         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
7621         c-support.h and renamed.
7622         (symbol_end, yylex): Adjust.
7623
7624 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7625
7626         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
7627         parameter type to CORE_ADDR.
7628         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
7629         parameter type in declaration to CORE_ADDR.
7630         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
7631         target_auxv_search to get AT_HWCAP and use the result to get the
7632         target description.
7633         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
7634         to CORE_ADDR. Remove the cast of the return value to unsigned
7635         long. Fix error predicate of target_auxv_search.
7636         (ppc_linux_nat_target::read_description): Change the type of the
7637         hwcap variable to CORE_ADDR.
7638
7639 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7640
7641         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
7642         if the size of fpscr is larger than 32 bits.
7643
7644 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7645
7646         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
7647         (ppc32_linux_vsxregmap): New global.
7648         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
7649         regcache_supply_regset, and regcache_collect_regset.
7650         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
7651         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
7652         (fetch_vsx_register, store_vsx_register): Remove.
7653         (fetch_vsx_registers): Add regno parameter. Get regset using
7654         ppc_linux_vsxregset. Use regset to supply registers.
7655         (store_vsx_registers): Add regno parameter. Get regset using
7656         ppc_linux_vsxregset. Use regset to collect registers.
7657         (fetch_register): Call fetch_vsx_registers instead of
7658         fetch_vsx_register.
7659         (store_register): Call store_vsx_registers instead of
7660         store_vsx_register.
7661         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
7662         new regno parameter.
7663         (store_ppc_registers): Call store_vsx_registers with -1 for the
7664         new regno parameter.
7665         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
7666         (ppc_collect_vsxregset): Remove.
7667
7668 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7669
7670         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
7671         offset fields.
7672         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
7673         for vector register offset fields.
7674         (ppc64_fbsd_reg_offsets): Likewise.
7675         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7676         to vector register offset fields.
7677         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7678         to vector register offset fields.
7679         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
7680         vector register offset fields.
7681         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
7682         initializers for vector register offset fields.
7683         (rs6000_aix64_reg_offsets): Likewise.
7684         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
7685         (ppc_supply_vrregset): Remove.
7686         (ppc_collect_vrregset): Remove.
7687         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
7688         (ppc_linux_vrregset) : New function.
7689         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
7690         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
7691         (ppc32_linux_vrregset): Remove.
7692         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
7693         and use result instead of ppc32_linux_vrregset.
7694         (ppc32_linux_reg_offsets): Remove initializers for vector register
7695         offset fields.
7696         (ppc64_linux_reg_offsets): Likewise.
7697         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
7698         * ppc-linux-nat.c: Include regset.h.
7699         (gdb_vrregset_t): Adjust comment to account for little-endian
7700         mode.
7701         (supply_vrregset, fill_vrregset): Remove.
7702         (fetch_altivec_register, store_altivec_register): Remove.
7703         (fetch_altivec_registers): Add regno parameter. Get regset using
7704         ppc_linux_vrregset. Use regset to supply registers.
7705         (store_altivec_registers): Add regno parameter. Get regset using
7706         ppc_linux_vrregset. Use regset to collect registers.
7707         (fetch_register): Call fetch_altivec_registers instead of
7708         fetch_altivec_register.
7709         (store_register): Call store_altivec_registers instead of
7710         store_altivec_register.
7711         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
7712         the new regno parameter.
7713         (store_ppc_registers): Call store_altivec_registers with -1 for
7714         the new regno parameter.
7715
7716 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7717
7718         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
7719         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
7720         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
7721         (gdb_vrregset_t): Change array type size to
7722         PPC_LINUX_SIZEOF_VRREGSET.
7723         (gdb_vsxregset_t): Change array type size to
7724         PPC_LINUX_SIZEOF_VSXREGSET.
7725         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
7726         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
7727         PPC_LINUX_SIZEOF_VSXREGSET.
7728
7729 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7730
7731         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
7732         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
7733         nat/ppc-linux.c.
7734         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
7735         ppc_linux_target_wordsize with tid.
7736         (ppc_linux_nat_target::read_description): Call ppc_linux_target
7737         wordsize with tid.
7738         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
7739         (ppc64_64bit_inferior_p): Add static and inline specifiers.
7740         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
7741         tid parameter. Remove static specifier.
7742         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
7743         (ppc_linux_target_wordsize): New declaration.
7744
7745 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7746
7747         * arch/ppc-linux-common.c: New file.
7748         * arch/ppc-linux-common.h: New file.
7749         * arch/ppc-linux-tdesc.h: New file.
7750         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
7751         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
7752         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
7753         arch/ppc-linux-tdesc.h.
7754         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
7755         arch/ppc-linux-tdesc.h.
7756         (ppc_linux_nat_target::read_description): Remove target
7757         description matching code. Fill a ppc_linux_features struct and
7758         call ppc_linux_match_description with it. Move comment about ISA
7759         2.05 to ppc-linux-common.c.
7760         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
7761         arch/ppc-linux-tdesc.h.
7762         (ppc_linux_core_read_description): Remove target description
7763         matching code. Fill a ppc_linux_features struct and call
7764         ppc_linux_match_description with it.
7765         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
7766         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
7767         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
7768         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
7769         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
7770         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
7771         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
7772         (tdesc_powerpc_e500l): Remove.
7773
7774 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
7775
7776         * ada-lang.c (catch_assert_command): Pass empty string instead
7777         of NULL for excep_string argument.
7778
7779 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7780
7781         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
7782         the width of the requested register exceeds the width of the
7783         `ptrace' data type.
7784
7785 2018-05-21  Tom Tromey  <tom@tromey.com>
7786
7787         * printcmd.c (output_command): Remove.
7788         (output_command_const): Rename to output_command.
7789         * valprint.h (output_command): Rename from output_command_const.
7790         * tracepoint.c (trace_dump_actions): Call output_command.
7791
7792 2018-05-21  Tom Tromey  <tom@tromey.com>
7793
7794         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
7795         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
7796         * ada-lang.h (create_ada_exception_catchpoint): Update.
7797         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
7798         std::string.
7799         (create_excep_cond_exprs, ~ada_catchpoint)
7800         (should_stop_exception, print_one_exception)
7801         (print_mention_exception, print_recreate_exception): Update.
7802         (ada_get_next_arg): Remove.
7803         (catch_ada_exception_command_split): Use std::string.  Change type
7804         of "excep_string", "cond_string".
7805         (catch_ada_exception_command): Update.
7806         (create_ada_exception_catchpoint): Change type of excep_string.
7807         (ada_exception_sal): Remove excep_string parameter.
7808         (~ada_catchpoint): Remove.
7809
7810 2018-05-21  Tom Tromey  <tom@tromey.com>
7811
7812         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
7813         cleanup.
7814
7815 2018-05-21  Tom Tromey  <tom@tromey.com>
7816
7817         * ada-lang.c (ada_exception_message_1, ada_exception_message):
7818         Return unique_xmalloc_ptr.
7819         (print_it_exception): Update.
7820
7821 2018-05-21  Tom Tromey  <tom@tromey.com>
7822
7823         * tracepoint.c (trace_dump_actions): Use std::string.
7824
7825 2018-05-21  Tom Tromey  <tom@tromey.com>
7826
7827         * symfile.c (reread_symbols): Use std::string for original_name.
7828
7829 2018-05-21  Tom Tromey  <tom@tromey.com>
7830
7831         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
7832         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
7833         constructor.
7834
7835 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
7836
7837         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
7838         instance to...
7839         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
7840         * objfiles.c (get_objfile_bfd_data): Allocate
7841         objfile_per_bfd_storage with obstack_new when allocating on
7842         obstack.
7843
7844 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7845
7846         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
7847         OBSTACK_ZALLOC.
7848         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
7849         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
7850         * mdebugread.c (mdebug_build_psymtabs): Likewise.
7851         (add_pending): Likewise.
7852         (parse_symbol): Likewise.
7853         (parse_partial_symbols): Likewise.
7854         (psymtab_to_symtab_1): Likewise.
7855         (new_psymtab): Likewise.
7856         (elfmdebug_build_psymtabs): Likewise.
7857         * minsyms.c (terminate_minimal_symbol_table): Likewise.
7858         * objfiles.c (get_objfile_bfd_data): Likewise.
7859         (objfile_register_static_link): Likewise.
7860         * psymtab.c (allocate_psymtab): Likewise.
7861         * stabsread.c (read_member_functions): Likewise.
7862         * xcoffread.c (xcoff_end_psymtab): Likewise.
7863
7864 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7865
7866         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
7867         compiler supports std::is_trivially_constructible.
7868         * common/poison.h: Include obstack.h.
7869         (IsMallocable): Define to is_trivially_constructible if the
7870         compiler supports it, define to true_type otherwise.
7871         (xobnew): New.
7872         (XOBNEW): Redefine.
7873         (xobnewvec): New.
7874         (XOBNEWVEC): Redefine.
7875         * gdb_obstack.h (obstack_zalloc): New.
7876         (OBSTACK_ZALLOC): Redefine.
7877         (obstack_calloc): New.
7878         (OBSTACK_CALLOC): Redefine.
7879         (obstack_new): New.
7880         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
7881         (gdbarch_obstack): New declaration in gdbarch.h, definition in
7882         gdbarch.c.
7883         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
7884         obstack_calloc/obstack_zalloc.
7885         (gdbarch_obstack_zalloc): Remove.
7886         * target-descriptions.c (tdesc_data_init): Use obstack_new.
7887
7888 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7889
7890         * stack.c (backtrace_command_1): Remove useless variable int i.
7891
7892 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7893
7894         * stack.c (print_frame_info): Fix comment.
7895
7896 2018-05-18  Tom Tromey  <tom@tromey.com>
7897
7898         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
7899         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
7900         (~dwarf2_per_objfile): Update
7901         (dwarf2_get_dwz_file): Use new.
7902         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
7903         unique_ptr.
7904
7905 2018-05-18  Tom Tromey  <tom@tromey.com>
7906
7907         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
7908         unique_ptr.
7909         * dwarf2read.c (struct dwp_file): Add constructor and
7910         initializers.
7911         (open_and_init_dwp_file): Return a unique_ptr.
7912         (dwarf2_per_objfile, create_dwp_hash_table)
7913         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
7914         (lookup_dwo_unit_in_dwp): Update.
7915         (open_and_init_dwp_file, get_dwp_file): Update.
7916
7917 2018-05-18  Tom Tromey  <tom@tromey.com>
7918
7919         * dwarf2read.c (dwarf2_per_objfile): Update.
7920         (struct mapped_index): Add initializers.
7921         (dwarf2_read_index): Use new.
7922         (dw2_symtab_iter_init): Update.
7923         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
7924         unique_ptr.
7925
7926 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
7927
7928         * dwarf2read.c (mapped_index) <total_size>: Remove.
7929
7930 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
7931
7932         * unittests/format_pieces-selftests.c (test_format_specifier):
7933         Add ARI comments.
7934
7935 2018-05-18  Tom Tromey  <tom@tromey.com>
7936
7937         * c-typeprint.c (maybe_print_hole): New function.
7938         (c_print_type_struct_field_offset): Update.
7939         (c_type_print_base_struct_union): Call maybe_print_hole.
7940
7941 2018-05-17  Keith Seitz  <keiths@redhat.com>
7942
7943         * breakpoint.c (build_bpstat_chain): New function, moved from
7944         bpstat_stop_status.
7945         (bpstat_stop_status): Add optional parameter, `stop_chain'.
7946         If no stop chain is passed, call build_bpstat_chain to build it.
7947         * breakpoint.h (build_bpstat_chain): Declare.
7948         (bpstat_stop_status): Move documentation here from breakpoint.c.
7949         * infrun.c (handle_signal_stop): Before eliding inlined frames,
7950         build the stop chain and pass it to skip_inline_frames.
7951         Pass this stop chain to bpstat_stop_status.
7952         * inline-frame.c: Include breakpoint.h.
7953         (stopped_by_user_bp_inline_frame): New function.
7954         (skip_inline_frames): Add parameter `stop_chain'.
7955         Move documention to inline-frame.h.
7956         If non-NULL, use stopped_by_user_bp_inline_frame to determine
7957         whether the frame should be elided.
7958         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
7959         Add moved documentation and update for new parameter.
7960
7961 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
7962
7963         PR cli/14975
7964         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
7965         unittests/format_pieces-selftests.c.
7966         * common/format.h (format_piece) <operator==>: New.
7967         (format_pieces) <operator[]>: Remove.
7968         * common/format.c (format_pieces::format_pieces): Handle \e.
7969         * unittests/format_pieces-selftests.c: New.
7970
7971 2018-05-17  Tom Tromey  <tom@tromey.com>
7972
7973         PR symtab/23010:
7974         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
7975         (dw2_instantiate_symtab): Add skip_partial parameter.
7976         (dw2_find_last_source_symtab, dw2_map_expand_apply)
7977         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
7978         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
7979         (dw2_expand_symtabs_matching_one)
7980         (dw2_find_pc_sect_compunit_symtab)
7981         (dw2_debug_names_lookup_symbol)
7982         (dw2_debug_names_expand_symtabs_for_function): Update.
7983         (init_cutu_and_read_dies): Add skip_partial parameter.
7984         (process_psymtab_comp_unit, build_type_psymtabs_1)
7985         (process_skeletonless_type_unit, load_partial_comp_unit)
7986         (psymtab_to_symtab_1): Update.
7987         (load_full_comp_unit): Add skip_partial parameter.
7988         (process_imported_unit_die, dwarf2_read_addr_index)
7989         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
7990         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
7991         (read_signatured_type): Update.
7992
7993 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
7994
7995         * value.c (release_value): Remove unused variable.
7996         (record_latest_value): Likewise.
7997         (access_value_history): Likewise.
7998         (preserve_values): Likewise.
7999
8000 2018-05-17  Tom Tromey  <tom@tromey.com>
8001
8002         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8003         Initialize.
8004
8005 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8006
8007         PR gdb/22286
8008         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8009         Also handle registers whose width is not a multiple of
8010         PTRACE_TYPE_RET.
8011         (linux_nat_trad_target::store_register): Likewise.
8012
8013 2018-05-16  Tom Tromey  <tom@tromey.com>
8014
8015         * gdbcore.h (core_bfd): Redefine.
8016         * corelow.c (core_target::close): Update.
8017         (core_target_open): Update.
8018         * progspace.h (struct program_space) <cbfd>: Now a
8019         gdb_bfd_ref_ptr.
8020
8021 2018-05-16  Tom Tromey  <tom@tromey.com>
8022
8023         PR cli/19551:
8024         * symfile-add-flags.h (enum symfile_add_flags)
8025         <SYMFILE_NOT_FILENAME>: New constant.
8026         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8027         objfile name from BFD.
8028         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8029         * minidebug.c (find_separate_debug_file_in_section): Put
8030         ".gnu_debugdata" into BFD's file name.
8031
8032 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8033
8034         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8035         Remove.
8036
8037 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8038
8039         PR binutils/21446
8040         * aarch64-tdep.c (aarch64_analyze_prologue,
8041         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8042         Indicate not interested in errors.
8043
8044 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8045
8046         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8047         Supply the MIPS_ZERO_REGNUM register.
8048
8049 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8050
8051         * mips-tdep.c (mask_address_var): Make variable static.
8052
8053 2018-05-14  Tom Tromey  <tom@tromey.com>
8054
8055         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8056
8057 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8058
8059         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8060         FXSAVE_ADDR for the mxcsr register.
8061
8062 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8063
8064         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8065
8066 2018-05-11  Pedro Alves  <palves@redhat.com>
8067
8068         * corelow.c (core_target) <core_target>: No longer inline.
8069         Initialize m_core_gdbarch, m_core_vec and build the section table
8070         here.
8071         <~core_target>: New.
8072         <core_gdbarch, get_core_register_section>: New methods.
8073         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8074         factored out from ...
8075         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8076         (core_ops): Delete.
8077         (sniff_core_bfd): Add gdbarch parameter.
8078         (core_close): Delete, merged into ...
8079         (core_target::close): ... here.  Delete self.
8080         (core_close_cleanup): Delete.
8081         (core_target_open): Allocate a core_target on the heap.  Use a
8082         unique_ptr instead of a cleanup.  Bits moved into the core_target
8083         ctor.  Adjust to use core_target methods instead of globals.
8084         (get_core_register_section): Rename to ...
8085         (core_target::get_core_register_section): ... this and adjust.
8086         (struct get_core_registers_cb_data): New.
8087         (get_core_registers_cb): Use it.  Use bool.
8088         (core_target::fetch_registers, core_target::files_info)
8089         (core_target::xfer_partial, core_target::read_description)
8090         (core_target::pid_to, core_target::thread_name): Adjust to
8091         reference class fields instead of globals.
8092         * target.h (struct target_ops_deleter, target_ops_up): New.
8093
8094 2018-05-11  Pedro Alves  <palves@redhat.com>
8095
8096         * corefile.c (core_file_command): Move to corelow.c.
8097         * corelow.c (the_core_target): Delete.
8098         (core_file_command): Moved from corefile.c.  Check exec_bfd
8099         instead of the_core_target.  Use target_detach instead of calling
8100         into the_core_target directly.
8101         (maybe_say_no_core_file_now): New.
8102         (core_target::detach): Use it.
8103         (_initialize_corelow): Remove references to the_core_target.
8104         * gdbcore.h (the_core_target): Delete.
8105
8106 2018-05-11  Tom Tromey  <tromey@redhat.com>
8107             Pedro Alves  <palves@redhat.com>
8108
8109         * corefile.c (core_bfd): Remove.
8110         * gdbcore.h (core_bfd): Now a macro.
8111         * progspace.h (struct program_space) <cbfd>: New field.
8112
8113 2018-05-11  Tom Tromey  <tom@tromey.com>
8114
8115         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8116         gdb::def_vector.
8117
8118 2018-05-10  Tom Tromey  <tom@tromey.com>
8119
8120         * configure: Rebuild.
8121         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8122
8123 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8124
8125         PR server/23158:
8126         * regformats/regdat.sh: Adjust script, following the addition
8127         of the new expedite_regs parameter to init_target_desc.
8128
8129 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8130     
8131         PR gdb/23127
8132         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8133         set_gdbarch_significant_addr_bit.
8134         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8135         set_gdbarch_significant_addr_bit.
8136         * utils.c (address_significant): Update to sign extend addr.
8137
8138 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8139
8140         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8141         (xtensa_linux_init_abi): Limit tdep->num_regs by
8142         tdep->num_nopriv_regs.
8143         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8144         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8145         not initialized.
8146
8147 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8148
8149         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8150
8151 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8152
8153         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8154         (I387_MXCSR_INIT_VAL): New constant.
8155         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8156         buffer if it was supplied by the inferior.
8157         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8158         (i387_xsave_get_clear_bv): New function.
8159         (i387_supply_xsave): Only read x87 control registers from the
8160         xsave buffer if the feature is enabled, and the state will have
8161         been written, otherwise, provide a suitable default.
8162         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8163         including x87 control registers.  Update control registers if they
8164         have changed from the default value, and mark features as enabled
8165         as required.
8166         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8167
8168 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8169
8170         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8171
8172 2018-05-07  Tom Tromey  <tom@tromey.com>
8173
8174         * configure: Rebuild.
8175         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8176
8177 2018-05-07  Tom Tromey  <tom@tromey.com>
8178
8179         PR tdep/20362:
8180         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8181         bit.  Use correct value for VDIV.
8182
8183 2018-05-04  Tom Tromey  <tom@tromey.com>
8184
8185         * configure: Rebuild.
8186         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8187
8188 2018-05-04  Tom Tromey  <tom@tromey.com>
8189
8190         * linux-record.c (record_linux_system_call) <case
8191         RECORD_SYS_RECVFROM>: Add "break".
8192
8193 2018-05-04  Tom Tromey  <tom@tromey.com>
8194
8195         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8196         Add missing "break".
8197         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8198         Add missing "break".
8199
8200 2018-05-04  Tom Tromey  <tom@tromey.com>
8201
8202         * rs6000-tdep.c (ppc_process_record_op4)
8203         (ppc_process_record_op63): Add fall-through comment.
8204
8205 2018-05-04  Tom Tromey  <tom@tromey.com>
8206
8207         * i386-tdep.c (i386_process_record): Add fall-through comment.
8208
8209 2018-05-04  Tom Tromey  <tom@tromey.com>
8210
8211         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8212         comment.
8213
8214 2018-05-04  Tom Tromey  <tom@tromey.com>
8215
8216         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8217         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8218         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8219         comment.
8220         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8221         comment.
8222         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8223         comment.
8224
8225 2018-05-04  Tom Tromey  <tom@tromey.com>
8226
8227         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8228
8229 2018-05-04  Tom Tromey  <tom@tromey.com>
8230
8231         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8232         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8233         * symfile.c (section_is_mapped): Fix fall-through comment.
8234         * stabsread.c (define_symbol, read_member_functions): Fix
8235         fall-through comment.
8236         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8237         comment.
8238         * remote.c (remote_wait_as): Fix fall-through comment.
8239         * p-exp.y (yylex): Fix fall-through comment.
8240         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8241         comment.
8242         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8243         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8244         * jv-exp.y (yylex): Fix fall-through comment.
8245         * go-exp.y (lex_one_token): Fix fall-through comment.
8246         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8247         fall-through comment.
8248         * f-exp.y (yylex): Fix fall-through comment.
8249         * dwarf2read.c (process_die): Fix fall-through comments.
8250         * dbxread.c (process_one_symbol): Fix fall-through comment.
8251         * d-exp.y (lex_one_token): Fix fall-through comment.
8252         * cp-name-parser.y (yylex): Fix fall-through comment.
8253         * coffread.c (coff_symtab_read): Fix fall-through comment.
8254         * c-exp.y (lex_one_token): Fix fall-through comment.
8255         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8256         comment.
8257         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8258         comment.
8259
8260 2018-05-04  Tom Tromey  <tom@tromey.com>
8261
8262         PR python/22730:
8263         * NEWS: Mention gdb.execute change.
8264         * gdbcmd.h (execute_control_command): Don't declare.
8265         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8266         execute_control_commands, execute_control_commands_to_string.
8267         * cli/cli-script.h (execute_control_commands)
8268         (execute_control_commands_to_string): Declare.
8269         (execute_control_command): Add from_tty parameter.
8270         * cli/cli-script.c (execute_control_commands)
8271         (execute_control_commands_to_string): New functions.
8272         (execute_user_command): Use execute_control_commands.
8273         (execute_control_command_1): Add "from_tty" parameter.  Update.
8274         (execute_control_command): Likewise.
8275
8276 2018-05-04  Tom Tromey  <tom@tromey.com>
8277
8278         PR python/22731:
8279         * NEWS: Mention that breakpoint commands are writable.
8280         * python/py-breakpoint.c (bppy_set_commands): New function.
8281         (breakpoint_object_getset) <"commands">: Use it.
8282
8283 2018-05-04  Tom Tromey  <tom@tromey.com>
8284
8285         * tracepoint.c (actions_command): Update.
8286         * mi/mi-cmd-break.c (mi_command_line_array)
8287         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8288         (mi_read_next_line): Remove.
8289         (mi_cmd_break_commands): Update.
8290         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8291         function_view.
8292         * cli/cli-script.c (get_command_line): Update.
8293         (process_next_line): Use function_view.  Constify.
8294         (recurse_read_control_structure, read_command_lines)
8295         (read_command_lines_1): Change argument types to function_view.
8296         (do_define_command, document_command): Update.
8297         * breakpoint.h (check_tracepoint_command): Don't declare.
8298         * breakpoint.c (check_tracepoint_command): Remove.
8299         (commands_command_1, create_tracepoint_from_upload): Update.
8300
8301 2018-05-04  Tom Tromey  <tom@tromey.com>
8302
8303         PR gdb/11750:
8304         * cli/cli-script.h (enum command_control_type) <define_control>:
8305         New constant.
8306         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8307         (build_command_line, execute_control_command_1)
8308         (process_next_line): Likewise.
8309         (do_define_command): New function, extracted from define_command.
8310         (define_command): Use it.
8311
8312 2018-05-04  Tom Tromey  <tom@tromey.com>
8313
8314         * tracepoint.c (actions_command): Update.
8315         * cli/cli-script.h (read_command_lines): Update.
8316         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8317         (MAX_TMPBUF): Remove define.
8318         (define_command): Use string_printf.
8319         (document_command): Likewise.
8320         * breakpoint.c (commands_command_1): Update.
8321
8322 2018-05-04  Tom Tromey  <tom@tromey.com>
8323
8324         * top.c (execute_command): Update.
8325         * cli/cli-script.h (print_command_lines): Now varargs.
8326         * cli/cli-script.c (print_command_lines): Now varargs.
8327         (execute_control_command_1) <case while_control, case if_control>:
8328         Update.
8329
8330 2018-05-04  Tom Tromey  <tom@tromey.com>
8331
8332         * tracepoint.c (all_tracepoint_actions): Rename from
8333         all_tracepoint_actions_and_cleanup.  Change return type.
8334         (actions_command, encode_actions_1, encode_actions)
8335         (trace_dump_actions, tdump_command): Update.
8336         * remote.c (remote_download_command_source): Update.
8337         * python/python.c (gdbpy_eval_from_control_command)
8338         (python_command, python_interactive_command): Update.
8339         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8340         * guile/guile.c (guile_command)
8341         (gdbscm_eval_from_control_command, guile_command): Update.
8342         * compile/compile.c (compile_code_command)
8343         (compile_print_command, compile_to_object): Update.
8344         * cli/cli-script.h (struct command_lines_deleter): New.
8345         (counted_command_line): New typedef.
8346         (struct command_line): Add constructor, destructor.
8347         <body_list>: Remove.
8348         <body_list_0, body_list_1>: New members.
8349         (command_line_up): Remove typedef.
8350         (read_command_lines, read_command_lines_1, get_command_line):
8351         Update.
8352         (copy_command_lines): Don't declare.
8353         * cli/cli-script.c (build_command_line): Use "new".
8354         (get_command_line): Return counted_command_line.
8355         (print_command_lines, execute_user_command)
8356         (execute_control_command_1, while_command, if_command): Update.
8357         (realloc_body_list): Remove.
8358         (process_next_line, recurse_read_control_structure): Update.
8359         (read_command_lines, read_command_lines_1): Return counted_command_line.
8360         (free_command_lines): Use "delete".
8361         (copy_command_lines): Remove.
8362         (define_command, document_command, show_user_1): Update.
8363         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8364         a counted_command_line.
8365         * breakpoint.h (counted_command_line): Remove typedef.
8366         (breakpoint_set_commands): Update.
8367         * breakpoint.c (check_no_tracepoint_commands)
8368         (validate_commands_for_breakpoint): Update.
8369         (breakpoint_set_commands): Change commands to be a
8370         counted_command_line.
8371         (commands_command_1, update_dprintf_command_list)
8372         (create_tracepoint_from_upload): Update.
8373
8374 2018-05-04  Tom Tromey  <tom@tromey.com>
8375
8376         * cli/cli-decode.h (cmd_list_element): New constructor.
8377         (~cmd_list_element): New destructor.
8378         (struct cmd_list_element): Add initializers.
8379         * cli/cli-decode.c (do_add_cmd): Use "new".
8380         (delete_cmd): Use "delete".
8381
8382 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8383             Pedro Alves <palves@redhat.com>
8384
8385         PR breakpoints/19806 and support for PR external/20207.
8386         * NEWS: Mention Aarch64 watchpoint improvements.
8387         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8388         watchpoints and PR external/20207 watchpoints.
8389         * nat/aarch64-linux-hw-point.c
8390         (kernel_supports_any_contiguous_range): New.
8391         (aarch64_watchpoint_offset): New.
8392         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8393         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8394         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8395         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8396         next_addr_orig_p.  Support PR external/20207 watchpoints.
8397         (aarch64_downgrade_regs): New.
8398         (aarch64_dr_state_insert_one_point): New parameters offset and
8399         addr_orig.
8400         (aarch64_dr_state_remove_one_point): Likewise.
8401         (aarch64_handle_breakpoint): Update caller.
8402         (aarch64_handle_aligned_watchpoint): Likewise.
8403         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
8404         aligned_offset.
8405         (aarch64_linux_set_debug_regs): Remove const from state.  Call
8406         aarch64_downgrade_regs.
8407         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
8408         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
8409         (DR_CONTROL_MASK): ... this.
8410         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
8411         (unsigned int aarch64_watchpoint_offset): New prototype.
8412         (aarch64_linux_set_debug_regs): Remove const from state.
8413         * utils.c (align_up, align_down): Move to ...
8414         * common/common-utils.c (align_up, align_down): ... here.
8415         * utils.h (align_up, align_down): Move to ...
8416         * common/common-utils.h (align_up, align_down): ... here.
8417
8418 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
8419
8420         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
8421         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
8422         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
8423         Re-implement to match the ABI as summarized in GCC's
8424         gcc/config/sparc/sparc.c.  All callers updated.
8425         (sparc32_store_arguments): Remove assertion.
8426
8427 2018-05-04  Tom Tromey  <tom@tromey.com>
8428
8429         * printcmd.c: Don't include tui.h.
8430         (decode_format): Use skip_spaces.
8431
8432 2018-05-04  Tom Tromey  <tom@tromey.com>
8433
8434         PR gdb/22619:
8435         * printcmd.c (last_count): New global.
8436         (x_command): Use saved count when repeating.
8437
8438 2018-05-04  Tom Tromey  <tom@tromey.com>
8439
8440         * nto-procfs.c (do_closedir_cleanup): Remove.
8441         (procfs_pidlist): Use gdb_dir_up.
8442         * procfs.c (do_closedir_cleanup): Remove.
8443         (proc_update_threads): Use gdb_dir_up.
8444         * common/filestuff.h (struct gdb_dir_deleter): New.
8445         (gdb_dir_up): New typedef.
8446
8447 2018-05-04  Tom Tromey  <tom@tromey.com>
8448
8449         * ada-lang.c (print_mention_exception): Use std::string.
8450
8451 2018-05-04  Tom Tromey  <tom@tromey.com>
8452
8453         * ada-lang.c (create_excep_cond_exprs): Update.
8454         (ada_exception_catchpoint_cond_string): Use std::string.
8455
8456 2018-05-04  Tom Tromey  <tom@tromey.com>
8457
8458         * ada-lang.c (xget_renaming_scope): Return std::string.
8459         (old_renaming_is_invisible): Update.
8460
8461 2018-05-04  Tom Tromey  <tom@tromey.com>
8462
8463         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
8464         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
8465
8466 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
8467
8468         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
8469
8470 2018-05-04  Tom Tromey  <tom@tromey.com>
8471
8472         * remote.c (remote_query_supported_append): Change type.
8473         (remote_check_symbols): Update.
8474
8475 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
8476
8477         PR gdb/11420
8478         * configure.ac: Prepend libpython.
8479         * python/python-config.py: Likewise.
8480         * configure: Regenerate.
8481
8482 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
8483
8484         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
8485
8486 2018-05-03  Pedro Alves  <palves@redhat.com>
8487
8488         * s390-linux-nat.c
8489         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
8490         override.  Write 'true' instead of '1'.
8491         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
8492         declaration.
8493
8494 2018-05-02  Pedro Alves  <palves@redhat.com>
8495
8496         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
8497         add_inf_child_target.
8498         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
8499         add_inf_child_target.
8500         * aix-thread.c (aix_thread_target_info): New.
8501         (aix_thread_target) <shortname, longname, doc>: Delete.
8502         <info>: New.
8503         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
8504         add_inf_child_target.
8505         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
8506         add_inf_child_target.
8507         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
8508         add_inf_child_target.
8509         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
8510         add_inf_child_target.
8511         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
8512         add_inf_child_target.
8513         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
8514         add_inf_child_target.
8515         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
8516         add_inf_child_target.
8517         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
8518         add_inf_child_target.
8519         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
8520         add_inf_child_target.
8521         * bfd-target.c (target_bfd_target_info): New.
8522         (target_bfd) <shortname, longname, doc>: Delete.
8523         <info>: New.
8524         * bsd-kvm.c (bsd_kvm_target_info): New.
8525         (bsd_kvm_target) <shortname, longname, doc>: Delete.
8526         <info>: New.
8527         (bsd_kvm_target::open): Rename to ...
8528         (bsd_kvm_target_open): ... this.  Adjust.
8529         * bsd-uthread.c (bsd_uthread_target_info): New.
8530         (bsd_uthread_target) <shortname, longname, doc>: Delete.
8531         <info>: New.
8532         * corefile.c (core_file_command): Adjust.
8533         * corelow.c (core_target_info): New.
8534         (core_target) <shortname, longname, doc>: Delete.
8535         <info>: New.
8536         (core_target::open): Rename to ...
8537         (core_target_open): ... this.  Adjust.
8538         * ctf.c (ctf_target_info): New.
8539         (ctf_target) <shortname, longname, doc>: Delete.
8540         <info>: New.
8541         (ctf_target::open): Rename to ...
8542         (ctf_target_open): ... this.
8543         (_initialize_ctf): Adjust.
8544         * exec.c (exec_target_info): New.
8545         (exec_target) <shortname, longname, doc>: Delete.
8546         <info>: New.
8547         (exec_target::open): Rename to ...
8548         (exec_target_open): ... this.
8549         * gdbcore.h (core_target_open): Declare.
8550         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
8551         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
8552         add_inf_child_target.
8553         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
8554         add_inf_child_target.
8555         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
8556         add_inf_child_target.
8557         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
8558         add_inf_child_target.
8559         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
8560         add_inf_child_target.
8561         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
8562         add_inf_child_target.
8563         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
8564         add_inf_child_target.
8565         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
8566         add_inf_child_target.
8567         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
8568         add_inf_child_target.
8569         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
8570         add_inf_child_target.
8571         * inf-child.c (inf_child_target_info): New.
8572         (inf_child_target::info): New.
8573         (inf_child_open_target): Remove 'target' parameter.  Use
8574         get_native_target instead.
8575         (inf_child_target::open): Delete.
8576         (add_inf_child_target): New.
8577         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
8578         Delete.
8579         <info>: New.
8580         (add_inf_child_target): Declare.
8581         (inf_child_open_target): Declare.
8582         * linux-thread-db.c (thread_db_target_info): New.
8583         (thread_db_target) <shortname, longname, doc>: Delete.
8584         <info>: New.
8585         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
8586         add_inf_child_target.
8587         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
8588         add_inf_child_target.
8589         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
8590         add_inf_child_target.
8591         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
8592         add_inf_child_target.
8593         * make-target-delegates (print_class): Adjust.
8594         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
8595         add_inf_child_target.
8596         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
8597         add_inf_child_target.
8598         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
8599         add_inf_child_target.
8600         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
8601         add_inf_child_target.
8602         * nto-procfs.c (nto_native_target_info): New.
8603         (nto_procfs_target_native) <shortname, longname, doc>:
8604         Delete.
8605         <info>: New.
8606         (nto_procfs_target_info): New.
8607         (nto_procfs_target_procfs) <shortname, longname, doc>:
8608         Delete.
8609         <info>: New.
8610         (init_procfs_targets): Adjust.
8611         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
8612         add_inf_child_target.
8613         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
8614         add_inf_child_target.
8615         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
8616         add_inf_child_target.
8617         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
8618         add_inf_child_target.
8619         * ravenscar-thread.c (ravenscar_target_info): New.
8620         (ravenscar_thread_target) <shortname, longname, doc>:
8621         Delete.
8622         <info>: New.
8623         * record-btrace.c (record_btrace_target_info):
8624         (record_btrace_target) <shortname, longname, doc>: Delete.
8625         <info>: New.
8626         (record_btrace_target::open): Rename to ...
8627         (record_btrace_target_open): ... this.  Adjust.
8628         * record-full.c (record_longname, record_doc): New.
8629         (record_full_base_target) <shortname, longname, doc>: Delete.
8630         <info>: New.
8631         (record_full_target_info): New.
8632         (record_full_target): <shortname>: Delete.
8633         <info>: New.
8634         (record_full_core_open_1, record_full_open_1): Update comments.
8635         (record_full_base_target::open): Rename to ...
8636         (record_full_open): ... this.
8637         (cmd_record_full_restore): Update.
8638         (_initialize_record_full): Update.
8639         * remote-sim.c (remote_sim_target_info): New.
8640         (gdbsim_target) <shortname, longname, doc>: Delete.
8641         <info>: New.
8642         (gdbsim_target::open): Rename to ...
8643         (gdbsim_target_open): ... this.
8644         (_initialize_remote_sim): Adjust.
8645         * remote.c (remote_doc): New.
8646         (remote_target_info): New.
8647         (remote_target) <shortname, longname, doc>: Delete.
8648         <info>: New.
8649         (extended_remote_target_info): New.
8650         (extended_remote_target) <shortname, longname, doc>: Delete.
8651         <info>: New.
8652         (remote_target::open_1): Make static.  Adjust.
8653         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
8654         * s390-linux-nat.c (_initialize_s390_nat): Use
8655         add_inf_child_target.
8656         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
8657         add_inf_child_target.
8658         * sol-thread.c (thread_db_target_info): New.
8659         (sol_thread_target) <shortname, longname, doc>: Delete.
8660         <info>: New.
8661         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
8662         add_inf_child_target.
8663         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
8664         add_inf_child_target.
8665         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
8666         add_inf_child_target.
8667         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
8668         add_inf_child_target.
8669         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
8670         add_inf_child_target.
8671         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
8672         add_inf_child_target.
8673         * spu-linux-nat.c (_initialize_spu_nat): Use
8674         add_inf_child_target.
8675         * spu-multiarch.c (spu_multiarch_target_info): New.
8676         (spu_multiarch_target) <shortname, longname, doc>: Delete.
8677         <info>: New.
8678         * target-delegates.c: Regenerate.
8679         * target.c: Include <unordered_map>.
8680         (target_ops_p): Delete.
8681         (DEF_VEC_P(target_ops_p)): Delete.
8682         (target_factories): New.
8683         (test_target_info): New.
8684         (test_target_ops::info): New.
8685         (open_target): Adjust to use target_factories.
8686         (add_target_with_completer): Rename to ...
8687         (add_target): ... this.  Change prototype.  Register target_info
8688         and open callback in target_factories.  Register target_info in
8689         command context instead of target_ops.
8690         (add_target): Delete old implementation.
8691         (add_deprecated_target_alias): Change prototype.  Adjust.
8692         (the_native_target): New.
8693         (set_native_target, get_native_target): New.
8694         (find_default_run_target): Use the_native_target.
8695         (find_attach_target, find_run_target): Simplify.
8696         (target_ops::open): Delete.
8697         (dummy_target_info): New.
8698         (dummy_target::shortname, dummy_target::longname)
8699         (dummy_target::doc): Delete.
8700         (dummy_target::info): New.
8701         (debug_target::shortname, debug_target::longname)
8702         (debug_target::doc): Delete.
8703         (debug_target::info): New.
8704         * target.h (struct target_info): New.
8705         (target_ops::~target_ops): Add comment.
8706         (target_ops::info): New.
8707         (target_ops::shortname, target_ops::longname, target_ops::doc): No
8708         longer virtual.  Implement in terms of target_info.
8709         (set_native_target, get_native_target): Declare.
8710         (target_open_ftype): New.
8711         (add_target, add_target_with_completer)
8712         (add_deprecated_target_alias): Change prototype.
8713         (test_target) <shortname, longname, doc>: Delete.
8714         <info>: New.
8715         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
8716         add_inf_child_target.
8717         * tracefile-tfile.c (tfile_target_info): New.
8718         (tfile_target) <shortname, longname, doc>: Delete.
8719         <info>: New.
8720         (tfile_target::open): Rename to ...
8721         (tfile_target_open): ... this.
8722         (_initialize_tracefile_tfile): Adjust.
8723         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
8724         add_inf_child_target.
8725         * windows-nat.c (_initialize_windows_nat): Use
8726         add_inf_child_target.
8727         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
8728         add_inf_child_target.
8729
8730 2018-05-02  Pedro Alves  <palves@redhat.com>
8731
8732         * linux-nat.h (linux_nat_target) <low_new_thread,
8733         low_delete_thread, low_new_fork, low_forget_process,
8734         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
8735         New virtual methods.
8736         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8737         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
8738         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
8739         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8740         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
8741         Delete.
8742         * linux-fork.c (delete_fork): Adjust to call low method.
8743         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
8744         (linux_nat_new_fork, linux_nat_forget_process_hook)
8745         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
8746         (linux_nat_status_is_event):
8747         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
8748         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
8749         to call low method.
8750         (sigtrap_is_event): Rename to ...
8751         (linux_nat_target::low_status_is_event): ... this.
8752         (linux_nat_set_status_is_event): Delete.
8753         (save_stop_reason, linux_nat_wait_1)
8754         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
8755         low methods.
8756         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8757         (linux_nat_set_new_fork, linux_nat_set_forget_process)
8758         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8759         (linux_nat_set_prepare_to_resume): Delete.
8760         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
8761         low virtual methods.
8762         * amd64-linux-nat.c: Likewise.
8763         * arm-linux-nat.c: Likewise.
8764         * i386-linux-nat.c: Likewise.
8765         * ia64-linux-nat.c: Likewise.
8766         * mips-linux-nat.c: Likewise.
8767         * ppc-linux-nat.c: Likewise.
8768         * s390-linux-nat.c: Likewise.
8769         * sparc64-linux-nat.c: Likewise.
8770         * x86-linux-nat.c: Likewise.
8771         * x86-linux-nat.h: Include "nat/x86-linux.h".
8772         (x86_linux_nat_target) <low_new_fork, low_forget_process,
8773         low_prepare_to_resume, low_new_thread, low_delete_thread>:
8774         Override methods.
8775
8776 2018-05-02  Pedro Alves  <palves@redhat.com>
8777
8778         * target.h (target_ops)
8779         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
8780         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
8781         stopped_by_watchpoint, have_continuable_watchpoint,
8782         stopped_data_address, watchpoint_addr_within_range,
8783         can_accel_watchpoint_condition, can_run, thread_alive,
8784         has_all_memory, has_memory, has_stack, has_registers,
8785         has_execution, can_async_p, is_async_p, supports_non_stop,
8786         always_non_stop_p, can_execute_reverse, supports_multi_process,
8787         supports_enable_disable_tracepoint,
8788         supports_disable_randomization, supports_string_tracing,
8789         supports_evaluation_of_breakpoint_conditions,
8790         can_run_breakpoint_commands, filesystem_is_local,
8791         can_download_tracepoint, get_trace_state_variable_value,
8792         set_trace_notes, get_tib_address, use_agent, can_use_agent,
8793         record_is_replaying, record_will_replay,
8794         augmented_libraries_svr4_read>: Adjust to return bool.
8795         * aarch64-linux-nat.c: All implementations adjusted.
8796         * aix-thread.c: All implementations adjusted.
8797         * arm-linux-nat.c: All implementations adjusted.
8798         * breakpoint.c: All implementations adjusted.
8799         * bsd-kvm.c: All implementations adjusted.
8800         * bsd-uthread.c: All implementations adjusted.
8801         * corelow.c: All implementations adjusted.
8802         * ctf.c: All implementations adjusted.
8803         * darwin-nat.c: All implementations adjusted.
8804         * darwin-nat.h: All implementations adjusted.
8805         * exec.c: All implementations adjusted.
8806         * fbsd-nat.c: All implementations adjusted.
8807         * fbsd-nat.h: All implementations adjusted.
8808         * gnu-nat.c: All implementations adjusted.
8809         * gnu-nat.h: All implementations adjusted.
8810         * go32-nat.c: All implementations adjusted.
8811         * ia64-linux-nat.c: All implementations adjusted.
8812         * inf-child.c: All implementations adjusted.
8813         * inf-child.h: All implementations adjusted.
8814         * inf-ptrace.c: All implementations adjusted.
8815         * inf-ptrace.h: All implementations adjusted.
8816         * linux-nat.c: All implementations adjusted.
8817         * linux-nat.h: All implementations adjusted.
8818         * mips-linux-nat.c: All implementations adjusted.
8819         * nto-procfs.c: All implementations adjusted.
8820         * ppc-linux-nat.c: All implementations adjusted.
8821         * procfs.c: All implementations adjusted.
8822         * ravenscar-thread.c: All implementations adjusted.
8823         * record-btrace.c: All implementations adjusted.
8824         * record-full.c: All implementations adjusted.
8825         * remote-sim.c: All implementations adjusted.
8826         * remote.c: All implementations adjusted.
8827         * s390-linux-nat.c: All implementations adjusted.
8828         * sol-thread.c: All implementations adjusted.
8829         * spu-multiarch.c: All implementations adjusted.
8830         * target-delegates.c: All implementations adjusted.
8831         * target.c: All implementations adjusted.
8832         * target.h: All implementations adjusted.
8833         * tracefile-tfile.c: All implementations adjusted.
8834         * tracefile.c: All implementations adjusted.
8835         * tracefile.h: All implementations adjusted.
8836         * windows-nat.c: All implementations adjusted.
8837         * x86-linux-nat.h: All implementations adjusted.
8838         * x86-nat.h: All implementations adjusted.
8839
8840 2018-05-02  Pedro Alves  <palves@redhat.com>
8841
8842         * make-target-delegates (scan_target_h): Don't trim lines here.
8843         Replace sequences of tabs and/or whitespace with a single
8844         whitespace.
8845         (top level, parsing methods): Trim each line before processing it
8846         here.
8847
8848 2018-05-02  Pedro Alves  <palves@redhat.com>
8849             John Baldwin  <jhb@freebsd.org>
8850
8851         * target.h (enum strata) <debug_stratum>: New.
8852         (struct target_ops) <all delegation methods>: Replace by C++
8853         virtual methods, and drop "to_" prefix.  All references updated
8854         throughout.
8855         <to_shortname, to_longname, to_doc, to_data,
8856         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
8857         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
8858         virtual methods.  All references updated throughout.
8859         <can_attach, supports_terminal_ours, can_create_inferior,
8860         get_thread_control_capabilities, attach_no_wait>: New
8861         virtual methods.
8862         <insert_breakpoint, remove_breakpoint>: Now
8863         TARGET_DEFAULT_NORETURN methods.
8864         <info_proc>: Now returns bool.
8865         <to_magic>: Delete.
8866         (OPS_MAGIC): Delete.
8867         (current_target): Delete.  All references replaced by references
8868         to ...
8869         (target_stack): ... this.  New.
8870         (target_shortname, target_longname): Adjust.
8871         (target_can_run): Now a function declaration.
8872         (default_child_has_all_memory, default_child_has_memory)
8873         (default_child_has_stack, default_child_has_registers)
8874         (default_child_has_execution): Remove target_ops parameter.
8875         (complete_target_initialization): Delete.
8876         (memory_breakpoint_target): New template class.
8877         (test_target_ops): Refactor as a C++ class with virtual methods.
8878         * make-target-delegates (NAME_PART): Tighten.
8879         (POINTER_PART, CP_SYMBOL): New.
8880         (SIMPLE_RETURN_PART): Reimplement.
8881         (VEC_RETURN_PART): Expect less.
8882         (RETURN_PART, VIRTUAL_PART): New.
8883         (METHOD): Adjust to C++ virtual methods.
8884         (scan_target_h): Remove reference to C99.
8885         (dname): Output "target_ops::" prefix.
8886         (write_function_header): Adjust to output a C++ class method.
8887         (write_declaration): New.
8888         (write_delegator): Adjust to output a C++ class method.
8889         (tdname): Output "dummy_target::" prefix.
8890         (write_tdefault, write_debugmethod): Adjust to output a C++ class
8891         method.
8892         (tdefault_names, debug_names): Delete.
8893         (return_types, tdefaults, styles, argtypes_array): New.
8894         (top level): All methods are delegators.
8895         (print_class): New.
8896         (top level): Print dummy_target and debug_target classes.
8897         * target-delegates.c: Regenerate.
8898         * target-debug.h (target_debug_print_enum_info_proc_what)
8899         (target_debug_print_thread_control_capabilities)
8900         (target_debug_print_thread_info_p): New.
8901         * target.c (dummy_target): Delete.
8902         (the_dummy_target, the_debug_target): New.
8903         (target_stack): Now extern.
8904         (set_targetdebug): Push/unpush debug target.
8905         (default_child_has_all_memory, default_child_has_memory)
8906         (default_child_has_stack, default_child_has_registers)
8907         (default_child_has_execution): Remove target_ops parameter.
8908         (complete_target_initialization): Delete.
8909         (add_target_with_completer): No longer call
8910         complete_target_initialization.
8911         (target_supports_terminal_ours): Use regular delegation.
8912         (update_current_target): Delete.
8913         (push_target): No longer check magic number.  Don't call
8914         update_current_target.
8915         (unpush_target): Don't call update_current_target.
8916         (target_is_pushed): No longer check magic number.
8917         (target_require_runnable): Skip for all stratums over
8918         process_stratum.
8919         (target_ops::info_proc): New.
8920         (target_info_proc): Use find_target_at and
8921         find_default_run_target.
8922         (target_supports_disable_randomization): Use regular delegation.
8923         (target_get_osdata): Use find_target_at.
8924         (target_ops::open, target_ops::close, target_ops::can_attach)
8925         (target_ops::attach, target_ops::can_create_inferior)
8926         (target_ops::create_inferior, target_ops::can_run)
8927         (target_can_run): New.
8928         (default_fileio_target): Use regular delegation.
8929         (target_ops::fileio_open, target_ops::fileio_pwrite)
8930         (target_ops::fileio_pread, target_ops::fileio_fstat)
8931         (target_ops::fileio_close, target_ops::fileio_unlink)
8932         (target_ops::fileio_readlink): New.
8933         (target_fileio_open_1, target_fileio_unlink)
8934         (target_fileio_readlink): Always call the target method.  Handle
8935         FILEIO_ENOSYS.
8936         (return_zero, return_zero_has_execution): Delete.
8937         (init_dummy_target): Delete.
8938         (dummy_target::dummy_target, dummy_target::shortname)
8939         (dummy_target::longname, dummy_target::doc)
8940         (debug_target::debug_target, debug_target::shortname)
8941         (debug_target::longname, debug_target::doc): New.
8942         (target_supports_delete_record): Use regular delegation.
8943         (setup_target_debug): Delete.
8944         (maintenance_print_target_stack): Skip debug_stratum.
8945         (initialize_targets): Instantiate the_dummy_target and
8946         the_debug_target.
8947         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
8948         use target_stack.
8949         (target_auxv_search, fprint_target_auxv): Adjust.
8950         (info_auxv_command): Adjust to use target_stack.
8951         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
8952         * exceptions.c (print_flush): Handle a NULL target_stack.
8953         * regcache.c (target_ops_no_register): Refactor as class with
8954         virtual methods.
8955
8956         * exec.c (exec_target): New class.
8957         (exec_ops): Now an exec_target.
8958         (exec_open, exec_close_1, exec_get_section_table)
8959         (exec_xfer_partial, exec_files_info, exec_has_memory)
8960         (exec_make_note_section): Refactor as exec_target methods.
8961         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
8962         Delete.
8963         (exec_target::find_memory_regions): New.
8964         (_initialize_exec): Don't call init_exec_ops.
8965         * gdbcore.h (exec_file_clear): Delete.
8966
8967         * corefile.c (core_target): Delete.
8968         (core_file_command): Adjust.
8969         * corelow.c (core_target): New class.
8970         (the_core_target): New.
8971         (core_close): Remove target_ops parameter.
8972         (core_close_cleanup): Adjust.
8973         (core_target::close): New.
8974         (core_open, core_detach, get_core_registers, core_files_info)
8975         (core_xfer_partial, core_thread_alive, core_read_description)
8976         (core_pid_to_str, core_thread_name, core_has_memory)
8977         (core_has_stack, core_has_registers, core_info_proc): Rework as
8978         core_target methods.
8979         (ignore, core_remove_breakpoint, init_core_ops): Delete.
8980         (_initialize_corelow): Initialize the_core_target.
8981         * gdbcore.h (core_target): Delete.
8982         (the_core_target): New.
8983
8984         * ctf.c: (ctf_target): New class.
8985         (ctf_ops): Now a ctf_target.
8986         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
8987         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
8988         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
8989         methods.
8990         (init_ctf_ops): Delete.
8991         (_initialize_ctf): Don't call it.
8992         * tracefile-tfile.c (tfile_target): New class.
8993         (tfile_ops): Now a tfile_target.
8994         (tfile_open, tfile_close, tfile_files_info)
8995         (tfile_get_tracepoint_status, tfile_trace_find)
8996         (tfile_fetch_registers, tfile_xfer_partial)
8997         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
8998         Refactor as tfile_target methods.
8999         (tfile_xfer_partial_features): Remove target_ops parameter.
9000         (init_tfile_ops): Delete.
9001         (_initialize_tracefile_tfile): Don't call it.
9002         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9003         (tracefile_has_stack, tracefile_has_registers)
9004         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9005         tracefile_target methods.
9006         (init_tracefile_ops): Delete.
9007         (tracefile_target::tracefile_target): New.
9008         * tracefile.h: Include "target.h".
9009         (tracefile_target): New class.
9010         (init_tracefile_ops): Delete.
9011
9012         * spu-multiarch.c (spu_multiarch_target): New class.
9013         (spu_ops): Now a spu_multiarch_target.
9014         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9015         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9016         (spu_search_memory, spu_mourn_inferior): Refactor as
9017         spu_multiarch_target methods.
9018         (init_spu_ops): Delete.
9019         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9020         complete_target_initialization.
9021
9022         * ravenscar-thread.c (ravenscar_thread_target): New class.
9023         (ravenscar_ops): Now a ravenscar_thread_target.
9024         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9025         (ravenscar_thread_alive, ravenscar_pid_to_str)
9026         (ravenscar_fetch_registers, ravenscar_store_registers)
9027         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9028         (ravenscar_stopped_by_hw_breakpoint)
9029         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9030         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9031         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9032         methods.
9033         (init_ravenscar_thread_ops): Delete.
9034         (_initialize_ravenscar): Remove references to
9035         init_ravenscar_thread_ops and complete_target_initialization.
9036
9037         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9038         (bsd_uthread_target): New class.
9039         (bsd_uthread_ops): Now a bsd_uthread_target.
9040         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9041         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9042         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9043         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9044         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9045         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9046         (bsd_uthread_target): Delete function.
9047         (_initialize_bsd_uthread): Remove reference to
9048         complete_target_initialization.
9049
9050         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9051         (target_bfd): ... this new class.
9052         (target_bfd_xfer_partial, target_bfd_get_section_table)
9053         (target_bfd_close): Refactor as target_bfd methods.
9054         (target_bfd::~target_bfd): New.
9055         (target_bfd_reopen): Adjust.
9056         (target_bfd::close): New.
9057
9058         * record-btrace.c (record_btrace_target): New class.
9059         (record_btrace_ops): Now a record_btrace_target.
9060         (record_btrace_open, record_btrace_stop_recording)
9061         (record_btrace_disconnect, record_btrace_close)
9062         (record_btrace_async, record_btrace_info)
9063         (record_btrace_insn_history, record_btrace_insn_history_range)
9064         (record_btrace_insn_history_from, record_btrace_call_history)
9065         (record_btrace_call_history_range)
9066         (record_btrace_call_history_from, record_btrace_record_method)
9067         (record_btrace_is_replaying, record_btrace_will_replay)
9068         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9069         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9070         (record_btrace_store_registers, record_btrace_prepare_to_store)
9071         (record_btrace_to_get_unwinder)
9072         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9073         (record_btrace_commit_resume, record_btrace_wait)
9074         (record_btrace_stop, record_btrace_can_execute_reverse)
9075         (record_btrace_stopped_by_sw_breakpoint)
9076         (record_btrace_supports_stopped_by_sw_breakpoint)
9077         (record_btrace_stopped_by_hw_breakpoint)
9078         (record_btrace_supports_stopped_by_hw_breakpoint)
9079         (record_btrace_update_thread_list, record_btrace_thread_alive)
9080         (record_btrace_goto_begin, record_btrace_goto_end)
9081         (record_btrace_goto, record_btrace_stop_replaying_all)
9082         (record_btrace_execution_direction)
9083         (record_btrace_prepare_to_generate_core)
9084         (record_btrace_done_generating_core): Refactor as
9085         record_btrace_target methods.
9086         (init_record_btrace_ops): Delete.
9087         (_initialize_record_btrace): Remove reference to
9088         init_record_btrace_ops.
9089         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9090         the execution_direction global.
9091         (record_full_base_target, record_full_target)
9092         (record_full_core_target): New classes.
9093         (record_full_ops): Now a record_full_target.
9094         (record_full_core_ops): Now a record_full_core_target.
9095         (record_full_target::detach, record_full_target::disconnect)
9096         (record_full_core_target::disconnect)
9097         (record_full_target::mourn_inferior, record_full_target::kill):
9098         New.
9099         (record_full_open, record_full_close, record_full_async): Refactor
9100         as methods of the record_full_base_target class.
9101         (record_full_resume, record_full_commit_resume): Refactor
9102         as methods of the record_full_target class.
9103         (record_full_wait, record_full_stopped_by_watchpoint)
9104         (record_full_stopped_data_address)
9105         (record_full_stopped_by_sw_breakpoint)
9106         (record_full_supports_stopped_by_sw_breakpoint)
9107         (record_full_stopped_by_hw_breakpoint)
9108         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9109         methods of the record_full_base_target class.
9110         (record_full_store_registers, record_full_xfer_partial)
9111         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9112         Refactor as methods of the record_full_target class.
9113         (record_full_can_execute_reverse, record_full_get_bookmark)
9114         (record_full_goto_bookmark, record_full_execution_direction)
9115         (record_full_record_method, record_full_info, record_full_delete)
9116         (record_full_is_replaying, record_full_will_replay)
9117         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9118         (record_full_stop_replaying): Refactor as methods of the
9119         record_full_base_target class.
9120         (record_full_core_resume, record_full_core_kill)
9121         (record_full_core_fetch_registers)
9122         (record_full_core_prepare_to_store)
9123         (record_full_core_store_registers, record_full_core_xfer_partial)
9124         (record_full_core_insert_breakpoint)
9125         (record_full_core_remove_breakpoint)
9126         (record_full_core_has_execution): Refactor
9127         as methods of the record_full_core_target class.
9128         (record_full_base_target::supports_delete_record): New.
9129         (init_record_full_ops): Delete.
9130         (init_record_full_core_ops): Delete.
9131         (record_full_save): Refactor as method of the
9132         record_full_base_target class.
9133         (_initialize_record_full): Remove references to
9134         init_record_full_ops and init_record_full_core_ops.
9135
9136         * remote.c (remote_target, extended_remote_target): New classes.
9137         (remote_ops): Now a remote_target.
9138         (extended_remote_ops): Now an extended_remote_target.
9139         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9140         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9141         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9142         (remote_pass_signals, remote_set_syscall_catchpoint)
9143         (remote_program_signals, )
9144         (remote_thread_always_alive): Remove target_ops parameter.
9145         (remote_thread_alive, remote_thread_name)
9146         (remote_update_thread_list, remote_threads_extra_info)
9147         (remote_static_tracepoint_marker_at)
9148         (remote_static_tracepoint_markers_by_strid)
9149         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9150         (remote_open): Refactor as methods of remote_target.
9151         (extended_remote_open, extended_remote_detach)
9152         (extended_remote_attach, extended_remote_post_attach):
9153         (extended_remote_supports_disable_randomization)
9154         (extended_remote_create_inferior): : Refactor as method of
9155         extended_remote_target.
9156         (remote_set_permissions, remote_open_1, remote_detach)
9157         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9158         (remote_resume, remote_commit_resume, remote_stop)
9159         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9160         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9161         (remote_prepare_to_store, remote_store_registers)
9162         (remote_flash_erase, remote_flash_done, remote_files_info)
9163         (remote_kill, remote_mourn, remote_insert_breakpoint)
9164         (remote_remove_breakpoint, remote_insert_watchpoint)
9165         (remote_watchpoint_addr_within_range)
9166         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9167         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9168         (remote_supports_stopped_by_sw_breakpoint)
9169         (remote_stopped_by_hw_breakpoint)
9170         (remote_supports_stopped_by_hw_breakpoint)
9171         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9172         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9173         (remote_verify_memory): Refactor as methods of remote_target.
9174         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9175         parameter.
9176         (remote_xfer_partial, remote_get_memory_xfer_limit)
9177         (remote_search_memory, remote_rcmd, remote_memory_map)
9178         (remote_pid_to_str, remote_get_thread_local_address)
9179         (remote_get_tib_address, remote_read_description): Refactor as
9180         methods of remote_target.
9181         (remote_target::fileio_open, remote_target::fileio_pwrite)
9182         (remote_target::fileio_pread, remote_target::fileio_close): New.
9183         (remote_hostio_readlink, remote_hostio_fstat)
9184         (remote_filesystem_is_local, remote_can_execute_reverse)
9185         (remote_supports_non_stop, remote_supports_disable_randomization)
9186         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9187         (remote_supports_enable_disable_tracepoint)
9188         (remote_supports_string_tracing)
9189         (remote_can_run_breakpoint_commands, remote_trace_init)
9190         (remote_download_tracepoint, remote_can_download_tracepoint)
9191         (remote_download_trace_state_variable, remote_enable_tracepoint)
9192         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9193         (remote_trace_start, remote_get_trace_status)
9194         (remote_get_tracepoint_status, remote_trace_stop)
9195         (remote_trace_find, remote_get_trace_state_variable_value)
9196         (remote_save_trace_data, remote_get_raw_trace_data)
9197         (remote_set_disconnected_tracing, remote_core_of_thread)
9198         (remote_set_circular_trace_buffer, remote_traceframe_info)
9199         (remote_get_min_fast_tracepoint_insn_len)
9200         (remote_set_trace_buffer_size, remote_set_trace_notes)
9201         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9202         (remote_disable_btrace, remote_teardown_btrace)
9203         (remote_read_btrace, remote_btrace_conf)
9204         (remote_augmented_libraries_svr4_read, remote_load)
9205         (remote_pid_to_exec_file, remote_can_do_single_step)
9206         (remote_execution_direction, remote_thread_handle_to_thread_info):
9207         Refactor as methods of remote_target.
9208         (init_remote_ops, init_extended_remote_ops): Delete.
9209         (remote_can_async_p, remote_is_async_p, remote_async)
9210         (remote_thread_events, remote_upload_tracepoints)
9211         (remote_upload_trace_state_variables): Refactor as methods of
9212         remote_target.
9213         (_initialize_remote): Remove references to init_remote_ops and
9214         init_extended_remote_ops.
9215
9216         * remote-sim.c (gdbsim_target): New class.
9217         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9218         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9219         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9220         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9221         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9222         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9223         Refactor as methods of gdbsim_target.
9224         (gdbsim_ops): Now a gdbsim_target.
9225         (init_gdbsim_ops): Delete.
9226         (gdbsim_cntrl_c): Adjust.
9227         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9228
9229         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9230         (the_amd64_linux_nat_target): New.
9231         (amd64_linux_fetch_inferior_registers)
9232         (amd64_linux_store_inferior_registers): Refactor as methods of
9233         amd64_linux_nat_target.
9234         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9235         * i386-linux-nat.c: Don't include "linux-nat.h".
9236         (i386_linux_nat_target): New class.
9237         (the_i386_linux_nat_target): New.
9238         (i386_linux_fetch_inferior_registers)
9239         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9240         as methods of i386_linux_nat_target.
9241         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9242         * inf-child.c (inf_child_ops): Delete.
9243         (inf_child_fetch_inferior_registers)
9244         (inf_child_store_inferior_registers): Delete.
9245         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9246         methods of inf_child_target.
9247         (inf_child_target::supports_terminal_ours)
9248         (inf_child_target::terminal_init)
9249         (inf_child_target::terminal_inferior)
9250         (inf_child_target::terminal_ours_for_output)
9251         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9252         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9253         New.
9254         (inf_child_open, inf_child_disconnect, inf_child_close)
9255         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9256         (inf_child_post_startup_inferior, inf_child_can_run)
9257         (inf_child_pid_to_exec_file): Refactor as methods of
9258         inf_child_target.
9259         (inf_child_follow_fork): Delete.
9260         (inf_child_target::can_create_inferior)
9261         (inf_child_target::can_attach): New.
9262         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9263         (inf_child_target::has_stack, inf_child_target::has_registers)
9264         (inf_child_target::has_execution): New.
9265         (inf_child_fileio_open, inf_child_fileio_pwrite)
9266         (inf_child_fileio_pread, inf_child_fileio_fstat)
9267         (inf_child_fileio_close, inf_child_fileio_unlink)
9268         (inf_child_fileio_readlink, inf_child_use_agent)
9269         (inf_child_can_use_agent): Refactor as methods of
9270         inf_child_target.
9271         (return_zero, inf_child_target): Delete.
9272         (inf_child_target::inf_child_target): New.
9273         * inf-child.h: Include "target.h".
9274         (inf_child_target): Delete function prototype.
9275         (inf_child_target): New class.
9276         (inf_child_open_target, inf_child_mourn_inferior)
9277         (inf_child_maybe_unpush_target): Delete.
9278         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9279         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9280         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9281         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9282         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9283         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9284         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9285         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9286         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9287         methods of inf_ptrace_target.
9288         (inf_ptrace_target): Delete function.
9289         * inf-ptrace.h: Include "inf-child.h".
9290         (inf_ptrace_target): Delete function declaration.
9291         (inf_ptrace_target): New class.
9292         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9293         * linux-nat.c (linux_target): New.
9294         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9295         (linux_nat_target::~linux_nat_target): New.
9296         (linux_child_post_attach, linux_child_post_startup_inferior)
9297         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9298         (linux_child_remove_fork_catchpoint)
9299         (linux_child_insert_vfork_catchpoint)
9300         (linux_child_remove_vfork_catchpoint)
9301         (linux_child_insert_exec_catchpoint)
9302         (linux_child_remove_exec_catchpoint)
9303         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9304         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9305         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9306         (linux_nat_stopped_data_address)
9307         (linux_nat_stopped_by_sw_breakpoint)
9308         (linux_nat_supports_stopped_by_sw_breakpoint)
9309         (linux_nat_stopped_by_hw_breakpoint)
9310         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9311         (linux_nat_kill, linux_nat_mourn_inferior)
9312         (linux_nat_xfer_partial, linux_nat_thread_alive)
9313         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9314         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9315         (linux_child_static_tracepoint_markers_by_strid)
9316         (linux_nat_is_async_p, linux_nat_can_async_p)
9317         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9318         (linux_nat_supports_multi_process)
9319         (linux_nat_supports_disable_randomization, linux_nat_async)
9320         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9321         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9322         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9323         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9324         methods of linux_nat_target.
9325         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9326         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9327         parameter.
9328         (check_stopped_by_watchpoint): Adjust.
9329         (linux_xfer_partial): Delete.
9330         (linux_target_install_ops, linux_target, linux_nat_add_target):
9331         Delete.
9332         (linux_nat_target::linux_nat_target): New.
9333         * linux-nat.h: Include "inf-ptrace.h".
9334         (linux_nat_target): New.
9335         (linux_target, linux_target_install_ops, linux_nat_add_target):
9336         Delete function declarations.
9337         (linux_target): Declare global.
9338         * linux-thread-db.c (thread_db_target): New.
9339         (thread_db_target::thread_db_target): New.
9340         (thread_db_ops): Delete.
9341         (the_thread_db_target): New.
9342         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9343         (thread_db_update_thread_list, thread_db_pid_to_str)
9344         (thread_db_extra_thread_info)
9345         (thread_db_thread_handle_to_thread_info)
9346         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9347         (thread_db_resume): Refactor as methods of thread_db_target.
9348         (init_thread_db_ops): Delete.
9349         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9350         * x86-linux-nat.c: Don't include "linux-nat.h".
9351         (super_post_startup_inferior): Delete.
9352         (x86_linux_nat_target::~x86_linux_nat_target): New.
9353         (x86_linux_child_post_startup_inferior)
9354         (x86_linux_read_description, x86_linux_enable_btrace)
9355         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9356         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9357         methods of x86_linux_nat_target.
9358         (x86_linux_create_target): Delete.  Bits folded ...
9359         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9360         pointer.
9361         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9362         (x86_linux_nat_target): New class.
9363         (x86_linux_create_target): Delete.
9364         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9365         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9366         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9367         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9368         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9369         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9370         make extern.
9371         (x86_use_watchpoints): Delete.
9372         * x86-nat.h: Include "breakpoint.h" and "target.h".
9373         (x86_use_watchpoints): Delete.
9374         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9375         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9376         (x86_insert_watchpoint, x86_remove_watchpoint)
9377         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9378         (x86_stopped_by_hw_breakpoint): New declarations.
9379         (x86_nat_target): New template class.
9380
9381         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9382         (the_ppc_linux_nat_target): New.
9383         (ppc_linux_fetch_inferior_registers)
9384         (ppc_linux_can_use_hw_breakpoint)
9385         (ppc_linux_region_ok_for_hw_watchpoint)
9386         (ppc_linux_ranged_break_num_registers)
9387         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9388         (ppc_linux_insert_mask_watchpoint)
9389         (ppc_linux_remove_mask_watchpoint)
9390         (ppc_linux_can_accel_watchpoint_condition)
9391         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9392         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9393         (ppc_linux_watchpoint_addr_within_range)
9394         (ppc_linux_masked_watch_num_registers)
9395         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9396         (ppc_linux_read_description): Refactor as methods of
9397         ppc_linux_nat_target.
9398         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
9399
9400         * procfs.c (procfs_xfer_partial): Delete forward declaration.
9401         (procfs_target): New class.
9402         (the_procfs_target): New.
9403         (procfs_target): Delete function.
9404         (procfs_auxv_parse, procfs_attach, procfs_detach)
9405         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
9406         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
9407         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
9408         (procfs_create_inferior, procfs_update_thread_list)
9409         (procfs_thread_alive, procfs_pid_to_str)
9410         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
9411         (procfs_stopped_data_address, procfs_insert_watchpoint)
9412         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
9413         (proc_find_memory_regions, procfs_info_proc)
9414         (procfs_make_note_section): Refactor as methods of procfs_target.
9415         (_initialize_procfs): Adjust.
9416         * sol-thread.c (sol_thread_target): New class.
9417         (sol_thread_ops): Now a sol_thread_target.
9418         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
9419         (sol_thread_fetch_registers, sol_thread_store_registers)
9420         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
9421         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
9422         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
9423         (init_sol_thread_ops): Delete.
9424         (_initialize_sol_thread): Adjust.  Remove references to
9425         init_sol_thread_ops and complete_target_initialization.
9426
9427         * windows-nat.c (windows_nat_target): New class.
9428         (windows_fetch_inferior_registers)
9429         (windows_store_inferior_registers, windows_resume, windows_wait)
9430         (windows_attach, windows_detach, windows_pid_to_exec_file)
9431         (windows_files_info, windows_create_inferior)
9432         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
9433         (windows_close, windows_pid_to_str, windows_xfer_partial)
9434         (windows_get_tib_address, windows_get_ada_task_ptid)
9435         (windows_thread_name, windows_thread_alive): Refactor as
9436         windows_nat_target methods.
9437         (do_initial_windows_stuff): Adjust.
9438         (windows_target): Delete function.
9439         (_initialize_windows_nat): Adjust.
9440
9441         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
9442         (darwin_mourn_inferior, darwin_kill_inferior)
9443         (darwin_create_inferior, darwin_attach, darwin_detach)
9444         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
9445         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
9446         (darwin_supports_multi_process): Refactor as darwin_nat_target
9447         methods.
9448         (darwin_resume_to, darwin_files_info): Delete.
9449         (_initialize_darwin_inferior): Rename to ...
9450         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
9451         * darwin-nat.h: Include "inf-child.h".
9452         (darwin_nat_target): New class.
9453         (darwin_complete_target): Delete.
9454         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
9455         (darwin_target): New.
9456         (i386_darwin_fetch_inferior_registers)
9457         (i386_darwin_store_inferior_registers): Refactor as methods of
9458         darwin_nat_target.
9459         (darwin_complete_target): Delete, with ...
9460         (_initialize_i386_darwin_nat): ... bits factored out here.
9461
9462         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
9463         (the_alpha_linux_nat_target): New.
9464         (alpha_linux_register_u_offset): Refactor as
9465         alpha_linux_nat_target method.
9466         (_initialize_alpha_linux_nat): Adjust.
9467         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
9468         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9469         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
9470         methods of linux_nat_trad_target.
9471         (linux_trad_target): Delete.
9472         * linux-nat-trad.h (linux_trad_target): Delete function.
9473         (linux_nat_trad_target): New class.
9474         * mips-linux-nat.c (mips_linux_nat_target): New class.
9475         (super_fetch_registers, super_store_registers, super_close):
9476         Delete.
9477         (the_mips_linux_nat_target): New.
9478         (mips64_linux_regsets_fetch_registers)
9479         (mips64_linux_regsets_store_registers)
9480         (mips64_linux_fetch_registers, mips64_linux_store_registers)
9481         (mips_linux_register_u_offset, mips_linux_read_description)
9482         (mips_linux_can_use_hw_breakpoint)
9483         (mips_linux_stopped_by_watchpoint)
9484         (mips_linux_stopped_data_address)
9485         (mips_linux_region_ok_for_hw_watchpoint)
9486         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
9487         (mips_linux_close): Refactor as methods of mips_linux_nat.
9488         (_initialize_mips_linux_nat): Adjust to C++ification.
9489
9490         * aix-thread.c (aix_thread_target): New class.
9491         (aix_thread_ops): Now an aix_thread_target.
9492         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
9493         (aix_thread_fetch_registers, aix_thread_store_registers)
9494         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
9495         (aix_thread_thread_alive, aix_thread_pid_to_str)
9496         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
9497         Refactor as methods of aix_thread_target.
9498         (init_aix_thread_ops): Delete.
9499         (_initialize_aix_thread): Remove references to init_aix_thread_ops
9500         and complete_target_initialization.
9501         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
9502         (rs6000_nat_target): New class.
9503         (the_rs6000_nat_target): New.
9504         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
9505         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
9506         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
9507         (super_create_inferior): Delete.
9508         (_initialize_rs6000_nat): Adjust to C++ification.
9509
9510         * arm-linux-nat.c (arm_linux_nat_target): New class.
9511         (the_arm_linux_nat_target): New.
9512         (arm_linux_fetch_inferior_registers)
9513         (arm_linux_store_inferior_registers, arm_linux_read_description)
9514         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
9515         (arm_linux_remove_hw_breakpoint)
9516         (arm_linux_region_ok_for_hw_watchpoint)
9517         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
9518         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
9519         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
9520         arm_linux_nat_target.
9521         (_initialize_arm_linux_nat): Adjust to C++ification.
9522
9523         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
9524         (the_aarch64_linux_nat_target): New.
9525         (aarch64_linux_fetch_inferior_registers)
9526         (aarch64_linux_store_inferior_registers)
9527         (aarch64_linux_child_post_startup_inferior)
9528         (aarch64_linux_read_description)
9529         (aarch64_linux_can_use_hw_breakpoint)
9530         (aarch64_linux_insert_hw_breakpoint)
9531         (aarch64_linux_remove_hw_breakpoint)
9532         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
9533         (aarch64_linux_region_ok_for_hw_watchpoint)
9534         (aarch64_linux_stopped_data_address)
9535         (aarch64_linux_stopped_by_watchpoint)
9536         (aarch64_linux_watchpoint_addr_within_range)
9537         (aarch64_linux_can_do_single_step): Refactor as methods of
9538         aarch64_linux_nat_target.
9539         (super_post_startup_inferior): Delete.
9540         (_initialize_aarch64_linux_nat): Adjust to C++ification.
9541
9542         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
9543         (the_hppa_linux_nat_target): New.
9544         (hppa_linux_fetch_inferior_registers)
9545         (hppa_linux_store_inferior_registers): Refactor as methods of
9546         hppa_linux_nat_target.
9547         (_initialize_hppa_linux_nat): Adjust to C++ification.
9548
9549         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
9550         (the_ia64_linux_nat_target): New.
9551         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
9552         (ia64_linux_stopped_data_address)
9553         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
9554         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
9555         ia64_linux_nat_target methods.
9556         (super_xfer_partial): Delete.
9557         (_initialize_ia64_linux_nat): Adjust to C++ification.
9558
9559         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
9560         (the_m32r_linux_nat_target): New.
9561         (m32r_linux_fetch_inferior_registers)
9562         (m32r_linux_store_inferior_registers): Refactor as
9563         m32r_linux_nat_target methods.
9564         (_initialize_m32r_linux_nat): Adjust to C++ification.
9565
9566         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
9567         (the_m68k_linux_nat_target): New.
9568         (m68k_linux_fetch_inferior_registers)
9569         (m68k_linux_store_inferior_registers): Refactor as
9570         m68k_linux_nat_target methods.
9571         (_initialize_m68k_linux_nat): Adjust to C++ification.
9572
9573         * s390-linux-nat.c (s390_linux_nat_target): New class.
9574         (the_s390_linux_nat_target): New.
9575         (s390_linux_fetch_inferior_registers)
9576         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
9577         (s390_insert_watchpoint, s390_remove_watchpoint)
9578         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
9579         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
9580         (s390_auxv_parse, s390_read_description): Refactor as methods of
9581         s390_linux_nat_target.
9582         (_initialize_s390_nat): Adjust to C++ification.
9583
9584         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
9585         (the_sparc_linux_nat_target): New.
9586         (_initialize_sparc_linux_nat): Adjust to C++ification.
9587         * sparc-nat.c (sparc_fetch_inferior_registers)
9588         (sparc_store_inferior_registers): Remove target_ops parameter.
9589         * sparc-nat.h (sparc_fetch_inferior_registers)
9590         (sparc_store_inferior_registers): Remove target_ops parameter.
9591         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
9592         (the_sparc64_linux_nat_target): New.
9593         (_initialize_sparc64_linux_nat): Adjust to C++ification.
9594
9595         * spu-linux-nat.c (spu_linux_nat_target): New class.
9596         (the_spu_linux_nat_target): New.
9597         (spu_child_post_startup_inferior, spu_child_post_attach)
9598         (spu_child_wait, spu_fetch_inferior_registers)
9599         (spu_store_inferior_registers, spu_xfer_partial)
9600         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
9601         methods.
9602         (_initialize_spu_nat): Adjust to C++ification.
9603
9604         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
9605         (the_tilegx_linux_nat_target): New.
9606         (fetch_inferior_registers, store_inferior_registers):
9607         Refactor as methods.
9608         (_initialize_tile_linux_nat): Adjust to C++ification.
9609
9610         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
9611         (the_xtensa_linux_nat_target): New.
9612         (xtensa_linux_fetch_inferior_registers)
9613         (xtensa_linux_store_inferior_registers): Refactor as
9614         xtensa_linux_nat_target methods.
9615         (_initialize_xtensa_linux_nat): Adjust to C++ification.
9616
9617         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
9618         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
9619         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
9620         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
9621         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
9622         (fbsd_stopped_by_sw_breakpoint)
9623         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
9624         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
9625         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
9626         (fbsd_post_startup_inferior, fbsd_post_attach)
9627         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
9628         (fbsd_set_syscall_catchpoint)
9629         (super_xfer_partial, super_resume, super_wait)
9630         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
9631         (fbsd_handle_debug_trap): Remove target_ops parameter.
9632         (fbsd_nat_add_target): Delete.
9633         * fbsd-nat.h: Include "inf-ptrace.h".
9634         (fbsd_nat_add_target): Delete.
9635         (USE_SIGTRAP_SIGINFO): Define.
9636         (fbsd_nat_target): New class.
9637
9638         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
9639         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
9640         (amd64bsd_target): Delete.
9641         * amd64-bsd-nat.h: New file.
9642         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
9643         "x86-bsd-nat.h".
9644         (amd64_fbsd_nat_target): New class.
9645         (the_amd64_fbsd_nat_target): New.
9646         (amd64fbsd_read_description): Refactor as method of
9647         amd64_fbsd_nat_target.
9648         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9649         (_initialize_amd64fbsd_nat): Adjust to C++ification.
9650         * amd64-nat.h (amd64bsd_target): Delete function declaration.
9651         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
9652         (i386bsd_store_inferior_registers): Remove target_ops parameter.
9653         (i386bsd_target): Delete.
9654         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
9655         (i386bsd_fetch_inferior_registers)
9656         (i386bsd_store_inferior_registers): Declare.
9657         (i386_bsd_nat_target): New class.
9658         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
9659         (the_i386_fbsd_nat_target): New.
9660         (i386fbsd_resume, i386fbsd_read_description): Refactor as
9661         i386_fbsd_nat_target methods.
9662         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9663         (_initialize_i386fbsd_nat): Adjust to C++ification.
9664         * x86-bsd-nat.c (super_mourn_inferior): Delete.
9665         (x86bsd_mourn_inferior, x86bsd_target): Delete.
9666         (_initialize_x86_bsd_nat): Adjust to C++ification.
9667         * x86-bsd-nat.h: Include "x86-nat.h".
9668         (x86bsd_target): Delete declaration.
9669         (x86bsd_nat_target): New class.
9670
9671         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
9672         (the_aarch64_fbsd_nat_target): New.
9673         (aarch64_fbsd_fetch_inferior_registers)
9674         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
9675         aarch64_fbsd_nat_target.
9676         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
9677         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
9678         (the_alpha_bsd_nat_target): New.
9679         (alphabsd_fetch_inferior_registers)
9680         (alphabsd_store_inferior_registers): Refactor as
9681         alpha_bsd_nat_target methods.
9682         (_initialize_alphabsd_nat): Refactor as methods of
9683         alpha_bsd_nat_target.
9684         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
9685         (the_amd64_nbsd_nat_target): New.
9686         (_initialize_amd64nbsd_nat): Adjust to C++ification.
9687         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
9688         (the_amd64_obsd_nat_target): New.
9689         (_initialize_amd64obsd_nat): Adjust to C++ification.
9690         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
9691         (the_arm_fbsd_nat_target): New.
9692         (arm_fbsd_fetch_inferior_registers)
9693         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
9694         (_initialize_arm_fbsd_nat): Refactor as methods of
9695         arm_fbsd_nat_target.
9696         (_initialize_arm_fbsd_nat): Adjust to C++ification.
9697         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
9698         (the_arm_netbsd_nat_target): New.
9699         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
9700         arm_netbsd_nat_target.
9701         (_initialize_arm_netbsd_nat): Adjust to C++ification.
9702         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
9703         (the_hppa_nbsd_nat_target): New.
9704         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
9705         hppa_nbsd_nat_target methods.
9706         (_initialize_hppanbsd_nat): Adjust to C++ification.
9707         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
9708         (the_hppa_obsd_nat_target): New.
9709         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
9710         methods of hppa_obsd_nat_target.
9711         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
9712         add_target.
9713         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
9714         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
9715         add_target.
9716         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
9717         (_initialize_i386obsd_nat): Use add_target.
9718         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
9719         (the_m68k_bsd_nat_target): New.
9720         (m68kbsd_fetch_inferior_registers)
9721         (m68kbsd_store_inferior_registers): Refactor as methods of
9722         m68k_bsd_nat_target.
9723         (_initialize_m68kbsd_nat): Adjust to C++ification.
9724         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
9725         (the_mips_fbsd_nat_target): New.
9726         (mips_fbsd_fetch_inferior_registers)
9727         (mips_fbsd_store_inferior_registers): Refactor as methods of
9728         mips_fbsd_nat_target.
9729         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
9730         add_target.
9731         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
9732         (the_mips_nbsd_nat_target): New.
9733         (mipsnbsd_fetch_inferior_registers)
9734         (mipsnbsd_store_inferior_registers): Refactor as methods of
9735         mips_nbsd_nat_target.
9736         (_initialize_mipsnbsd_nat): Adjust to C++ification.
9737         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
9738         (the_mips64_obsd_nat_target): New.
9739         (mips64obsd_fetch_inferior_registers)
9740         (mips64obsd_store_inferior_registers): Refactor as methods of
9741         mips64_obsd_nat_target.
9742         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
9743         add_target.
9744         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
9745         nbsd_nat_target.
9746         * nbsd-nat.h: Include "inf-ptrace.h".
9747         (nbsd_nat_target): New class.
9748         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
9749         (obsd_wait): Refactor as methods of obsd_nat_target.
9750         (obsd_add_target): Delete.
9751         * obsd-nat.h: Include "inf-ptrace.h".
9752         (obsd_nat_target): New class.
9753         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
9754         (the_ppc_fbsd_nat_target): New.
9755         (ppcfbsd_fetch_inferior_registers)
9756         (ppcfbsd_store_inferior_registers): Refactor as methods of
9757         ppc_fbsd_nat_target.
9758         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
9759         add_target.
9760         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
9761         (the_ppc_nbsd_nat_target): New.
9762         (ppcnbsd_fetch_inferior_registers)
9763         (ppcnbsd_store_inferior_registers): Refactor as methods of
9764         ppc_nbsd_nat_target.
9765         (_initialize_ppcnbsd_nat): Adjust to C++ification.
9766         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
9767         (the_ppc_obsd_nat_target): New.
9768         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
9769         methods of ppc_obsd_nat_target.
9770         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
9771         add_target.
9772         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
9773         (the_sh_nbsd_nat_target): New.
9774         (shnbsd_fetch_inferior_registers)
9775         (shnbsd_store_inferior_registers): Refactor as methods of
9776         sh_nbsd_nat_target.
9777         (_initialize_shnbsd_nat): Adjust to C++ification.
9778         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
9779         (inf_ptrace_xfer_partial): Delete.
9780         (sparc_xfer_partial, sparc_target): Delete.
9781         * sparc-nat.h (sparc_fetch_inferior_registers)
9782         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
9783         (sparc_target): Delete function declaration.
9784         (sparc_target): New template class.
9785         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
9786         (_initialize_sparcnbsd_nat): Adjust to C++ification.
9787         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
9788         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
9789         add_target.
9790         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
9791         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
9792         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
9793         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
9794         add_target.
9795         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
9796         (the_vax_bsd_nat_target): New.
9797         (vaxbsd_fetch_inferior_registers)
9798         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
9799         methods.
9800         (_initialize_vaxbsd_nat): Adjust to C++ification.
9801
9802         * bsd-kvm.c (bsd_kvm_target): New class.
9803         (bsd_kvm_ops): Now a bsd_kvm_target.
9804         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
9805         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
9806         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
9807         bsd_kvm_target.
9808         (bsd_kvm_return_one): Delete.
9809         (bsd_kvm_add_target): Adjust to C++ification.
9810
9811         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
9812         (nto_procfs_target_procfs): New classes.
9813         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
9814         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
9815         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
9816         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
9817         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
9818         (procfs_remove_hw_breakpoint, procfs_resume)
9819         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
9820         (procfs_kill_inferior, procfs_store_registers)
9821         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
9822         as methods of nto_procfs_target.
9823         (nto_procfs_ops): Now an nto_procfs_target_procfs.
9824         (nto_native_ops): Delete.
9825         (procfs_open, procfs_native_open): Delete.
9826         (nto_native_ops): Now an nto_procfs_target_native.
9827         (init_procfs_targets): Adjust to C++ification.
9828         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
9829         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
9830         Refactor as methods of nto_procfs_target.
9831
9832         * go32-nat.c (go32_nat_target): New class.
9833         (the_go32_nat_target): New.
9834         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
9835         (go32_store_registers, go32_xfer_partial, go32_files_info)
9836         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
9837         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
9838         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
9839         (go32_pid_to_str): Refactor as methods of go32_nat_target.
9840         (go32_target): Delete.
9841         (_initialize_go32_nat): Adjust to C++ification.
9842
9843         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
9844         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
9845         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
9846         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
9847         gnu_nat_target.
9848         (gnu_target): Delete.
9849         * gnu-nat.h (gnu_target): Delete.
9850         (gnu_nat_target): New class.
9851         * i386-gnu-nat.c (gnu_base_target): New.
9852         (i386_gnu_nat_target): New class.
9853         (the_i386_gnu_nat_target): New.
9854         (_initialize_i386gnu_nat): Adjust to C++ification.
9855
9856 2018-05-02  Pedro Alves  <palves@redhat.com>
9857
9858         * bfd-target.c (target_bfd_xclose): Rename to ...
9859         (target_bfd_close): ... this.
9860         (target_bfd_reopen): Adjust.
9861         * target.c (target_close): Remove references to to_xclose.
9862         * target.h (target_ops::to_xclose): Delete.
9863         (target_ops::to_close): Update comments.
9864
9865 2018-05-02  Pedro Alves  <palves@redhat.com>
9866
9867         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
9868         "linux-nat.h".
9869         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
9870         * inf-ptrace.c (inf_ptrace_register_u_offset)
9871         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9872         (inf_ptrace_store_register, inf_ptrace_store_registers)
9873         (inf_ptrace_trad_target): Move to ...
9874         * linux-nat-trad.c: ... this new file.
9875         * linux-nat-trad.h: New file.
9876         * linux-nat.c (linux_target_install_ops): Make extern.
9877         (linux_trad_target): Delete.
9878         * linux-nat.h (linux_trad_target): Delete declaration.
9879         (linux_target_install_ops): Declare.
9880         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
9881         "linux-nat.h".
9882
9883 2018-05-02  Pedro Alves  <palves@redhat.com>
9884
9885         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9886         procfs_target/add_target here.
9887         * procfs.c (procfs_target): Make static.
9888         (_initialize_procfs): Call add_target here.
9889         * procfs.h (struct target_ops): Remove forward declaration.
9890         (procfs_target): Remove declaration.
9891         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
9892
9893 2018-05-02  Pedro Alves  <palves@redhat.com>
9894
9895         * procfs.c (procfs_stopped_by_watchpoint)
9896         (procfs_insert_watchpoint, procfs_remove_watchpoint)
9897         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
9898         Forward declare.
9899         (procfs_use_watchpoints): Delete, move contents...
9900         (procfs_target): ... here.
9901         * procfs.h (procfs_use_watchpoints): Delete declaration.
9902         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9903         procfs_use_watchpoints.
9904         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
9905         procfs_use_watchpoints.
9906
9907 2018-05-02  Tom Tromey  <tom@tromey.com>
9908
9909         PR python/20084:
9910         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
9911         and var_zuinteger_unlimited.
9912         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
9913         and PARAM_ZUINTEGER_UNLIMITED.
9914         (set_parameter_value): Handle var_zuinteger and
9915         var_zuinteger_unlimited.
9916         (add_setshow_generic): Likewise.
9917         (parmpy_init): Likewise.
9918
9919 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
9920
9921         PR rust/23124
9922         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
9923         pointer is not null before dereferencing it.
9924
9925 2018-04-30  Tom Tromey  <tom@tromey.com>
9926
9927         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
9928         is_mi_like_p.
9929
9930 2018-04-30  Tom Tromey  <tom@tromey.com>
9931
9932         * breakpoint.c (mention): Remove use of is_mi_like_p.
9933         (print_mention_ranged_breakpoint): Likewise.
9934         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
9935         of is_mi_like_p.
9936
9937 2018-04-30  Tom Tromey  <tom@tromey.com>
9938
9939         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
9940
9941 2018-04-30  Tom Tromey  <tom@tromey.com>
9942
9943         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
9944         (info_spu_event_command): Remove some uses of is_mi_like_p.
9945
9946 2018-04-30  Tom Tromey  <tom@tromey.com>
9947
9948         * python/py-framefilter.c (py_print_single_arg)
9949         (enumerate_locals, py_print_args, py_print_frame): Remove some
9950         uses of is_mi_like_p.
9951
9952 2018-04-30  Tom Tromey  <tom@tromey.com>
9953
9954         * ui-out.c: Update.
9955         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
9956         * ui-out.h (ui_out::is_mi_like_p): Now const.
9957         (ui_out::do_is_mi_like_p): Now const.
9958         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
9959
9960 2018-04-30  Tom Tromey  <tom@tromey.com>
9961
9962         * varobj.c (varobj_set_visualizer): Use new_reference.
9963         * python/python.c (gdbpy_decode_line): Use new_reference.
9964         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
9965         new_reference.
9966
9967 2018-04-30  Tom Tromey  <tom@tromey.com>
9968
9969         * varobj.c (install_new_value): Use new_reference.
9970         * value.h (value_incref): Return void.  Swap intro comment with
9971         value_decref.
9972         * value.c (set_value_parent): Use new_reference.
9973         (value_incref): Return void.  Update intro comment.
9974         (release_value): Use new_reference.
9975         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
9976
9977 2018-04-30  Tom Tromey  <tom@tromey.com>
9978
9979         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
9980         * gdb_bfd.h (new_bfd_ref): Remove.
9981         (gdb_bfd_open): Update comment.
9982         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
9983         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
9984         (gdb_bfd_fdopenr): Use new_reference.
9985         * exec.c (exec_file_attach): Use new_reference.
9986
9987 2018-04-30  Tom Tromey  <tom@tromey.com>
9988
9989         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
9990         method.
9991
9992 2018-04-30  Tom Tromey  <tom@tromey.com>
9993
9994         * jit.c (jit_read_code_entry): Use type_align.
9995         * i386-tdep.c (i386_gdbarch_init): Don't call
9996         set_gdbarch_long_long_align_bit.
9997         * gdbarch.sh: Remove long_long_align_bit.
9998         * gdbarch.c, gdbarch.h: Rebuild.
9999         * arc-tdep.c (arc_type_align): New function.
10000         (arc_gdbarch_init): Use arc_type_align.  Don't call
10001         set_gdbarch_long_long_align_bit.
10002
10003 2018-04-30  Tom Tromey  <tom@tromey.com>
10004
10005         * rust-lang.c (rust_type_alignment): Remove.
10006         (rust_composite_type): Use type_align.
10007
10008 2018-04-30  Tom Tromey  <tom@tromey.com>
10009
10010         * NEWS: Mention Type.align.
10011         * python/py-type.c (typy_get_alignof): New function.
10012         (type_object_getset): Add "alignof".
10013
10014 2018-04-30  Tom Tromey  <tom@tromey.com>
10015
10016         PR exp/17095:
10017         * NEWS: Update.
10018         * std-operator.def (UNOP_ALIGNOF): New operator.
10019         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10020         New.
10021         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10022         * c-lang.c (c_op_print_tab): Add alignof.
10023         * c-exp.y (ALIGNOF): New token.
10024         (exp): Add "ALIGNOF" production.
10025         (ident_tokens): Add _Alignof and alignof.
10026
10027 2018-04-30  Tom Tromey  <tom@tromey.com>
10028
10029         * i386-tdep.c (i386_type_align): New function.
10030         (i386_gdbarch_init): Update.
10031         * gdbarch.sh (type_align): New method.
10032         * gdbarch.c, gdbarch.h: Rebuild.
10033         * arch-utils.h (default_type_align): Declare.
10034         * arch-utils.c (default_type_align): New function.
10035         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10036         (struct type) <align_log2>: New field.
10037         <instance_flags>: Now a bitfield.
10038         (TYPE_RAW_ALIGN): New macro.
10039         (type_align, type_raw_align, set_type_align): Declare.
10040         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10041         functions.
10042         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10043         (get_alignment, maybe_set_alignment): New functions.
10044         (read_structure_type, read_enumeration_type, read_array_type)
10045         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10046         (read_subrange_type, read_base_type): Set type alignment.
10047
10048 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10049
10050         * dwarf2read.c (read_index_from_section): Use bool.
10051
10052 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10053
10054         PR gdb/22950
10055         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10056         with #ifdef.
10057
10058 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10059
10060         PR build/22873
10061         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10062         last step, and do it atomically.
10063
10064 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10065
10066         * compile/compile-c-types.c (convert_int, convert_float):
10067         Update for C FE v1.
10068
10069 2018-04-27  Tom Tromey  <tom@tromey.com>
10070
10071         PR rust/22545:
10072         * rust-lang.c (rust_inclusive_range_type_p): New function.
10073         (rust_range): Handle inclusive ranges.
10074         (rust_compute_range): Likewise.
10075         * rust-exp.y (struct rust_op) <inclusive>: New field.
10076         (DOTDOTEQ): New constant.
10077         (range_expr): Add "..=" productions.
10078         (operator_tokens): Add "..=" token.
10079         (ast_range): Add "inclusive" parameter.
10080         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10081         ranges.
10082         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10083         bounds values.
10084         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10085         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10086         Update comments.
10087         * expprint.c (print_subexp_standard): Handle new bounds values.
10088         (dump_subexp_body_standard): Likewise.
10089
10090 2018-04-27  Tom Tromey  <tom@tromey.com>
10091
10092         * configure: Rebuild.
10093         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10094         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10095         "OVERRIDE".
10096         (class symbol_needs_eval_context): Likewise.
10097         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10098         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10099         "virtual".
10100         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10101         "override".
10102         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10103         * aarch64-tdep.c (instruction_reader::read): Use "override".
10104         (instruction_reader_test::read): Likewise.
10105         * arm-tdep.c (instruction_reader::read): Use "override".
10106         (instruction_reader_thumb::read): Likewise.
10107
10108 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10109
10110         PR remote/9665
10111         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10112         instead of remote_send.
10113         (remote_send): Remove.
10114
10115 2018-04-26  Pedro Alves  <palves@redhat.com>
10116
10117         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10118         find_function_start_sal instead of find_pc_line.
10119
10120 2018-04-26  Pedro Alves  <palves@redhat.com>
10121
10122         * breakpoint.c (set_breakpoint_location_function): Handle
10123         mst_data_gnu_ifunc.
10124         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10125         * elfread.c (elf_symtab_read): Give data symbols with
10126         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10127         (elf_rel_plt_read): Update comment.
10128         * linespec.c (convert_linespec_to_sals): Handle
10129         mst_data_gnu_ifunc.
10130         (minsym_found): Handle mst_data_gnu_ifunc.
10131         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10132         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10133         * parse.c (find_minsym_type_and_address): Handle
10134         mst_data_gnu_ifunc.
10135         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10136         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10137         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10138         comment.
10139         <mst_data_gnu_ifunc>: New enumerator.
10140
10141 2018-04-26  Pedro Alves  <palves@redhat.com>
10142
10143         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10144         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10145         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10146         Handle it.
10147         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10148         (lookup_minimal_symbol_by_pc): Adjust.
10149         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10150         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10151         * minsyms.h (lookup_msym_prefer): New enum.
10152         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10153         parameter by a lookup_msym_prefer parameter.
10154
10155 2018-04-26  Pedro Alves  <palves@redhat.com>
10156
10157         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10158         ends in "@plt" instead of looking at the symbol's section.
10159
10160 2018-04-26  Pedro Alves  <palves@redhat.com>
10161
10162         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10163         all references.
10164         (find_pc_partial_function_gnu_ifunc): Rename to ...
10165         (find_pc_partial_function): ... this, and remove references to
10166         'is_gnu_ifunc_p'.
10167         (find_pc_partial_function): Delete old implementation.
10168         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10169
10170 2018-04-26  Pedro Alves  <palves@redhat.com>
10171
10172         * linespec.c (struct bound_minimal_symbol_search_key): New.
10173         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10174         skip first line if we found a GNU ifunc minimal symbol by name.
10175         (compare_msymbols): Change parameters to work with a destructured
10176         lhs minsym.
10177         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10178         functions.
10179
10180 2018-04-26  Pedro Alves  <palves@redhat.com>
10181
10182         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10183         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10184         address/name.
10185         (add_location_to_breakpoint): Store the minsym and the objfile in
10186         the breakpoint location.
10187         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10188         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10189         Record the minsym in the sal.
10190         * symtab.h (symtab_and_line) <msymbol>: New field.
10191
10192 2018-04-26  Pedro Alves  <palves@redhat.com>
10193
10194         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10195         unless we actually resolved the ifunc.
10196
10197 2018-04-26  Pedro Alves  <palves@redhat.com>
10198
10199         * c-exp.y (variable production): Prefer ifunc minsyms over
10200         regular function symbols.
10201         * symtab.c (find_gnu_ifunc): New function.
10202         * minsyms.h (lookup_msym_prefer): New enum.
10203         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10204         parameter by a lookup_msym_prefer parameter.
10205         * symtab.h (find_gnu_ifunc): New declaration.
10206
10207 2018-04-26  Pedro Alves  <palves@redhat.com>
10208
10209         * blockframe.c (find_gnu_ifunc_target_type): New function.
10210         (find_function_type): New.
10211         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10212         return a value with a memory address.
10213         (eval_call): For calls to GNU ifunc functions, try to find the
10214         type of the target function from the type that the resolver
10215         returns.
10216         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10217         symbols.
10218         * infcall.c (find_function_return_type): Delete.
10219         (find_function_addr): Add 'function_type' parameter.  For calls to
10220         GNU ifunc functions, try to find the type of the target function
10221         from the type that the resolver returns, and return it via
10222         FUNCTION_TYPE.
10223         (call_function_by_hand_dummy): Adjust to use the function type
10224         returned by find_function_addr.
10225         (find_function_addr): Add 'function_type' parameter and move
10226         description here.
10227         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10228         declarations.
10229
10230 2018-04-26  Pedro Alves  <palves@redhat.com>
10231
10232         * c-exp.y (variable production): Skip finding an alias for ifunc
10233         symbols.
10234
10235 2018-04-26  Pedro Alves  <palves@redhat.com>
10236
10237         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10238
10239 2018-04-25  Pedro Alves  <palves@redhat.com>
10240
10241         * infcmd.c (kill_command): Print the pid as string, not the whole
10242         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10243         message.
10244         * remote.c (remote_detach_1): Print the pid as string, not the
10245         whole thread's ptid.
10246
10247 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10248             Sergio Durigan Junior  <sergiodj@redhat.com>
10249             Pedro Alves  <palves@redhat.com>
10250
10251         * infcmd.c (kill_command): Print message when inferior has
10252         been killed.
10253         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10254         '1'.
10255         (add_inferior): Improve message printed when
10256         'print_inferior_events' is on.
10257         (exit_inferior): Remove message printed when
10258         'print_inferior_events' is on.
10259         (detach_inferior): Improve message printed when
10260         'print_inferior_events' is on.
10261         (initialize_inferiors): Use 'add_inferior_silent' to set
10262         'current_inferior_'.
10263         * inferior.h (print_inferior_events): Declare here as
10264         'extern'.
10265         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10266         '[Detaching...]' messages when 'print_inferior_events' is on.
10267         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10268         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10269         'Detaching after fork from child...', replace it by '... from
10270         parent...'.
10271         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10272         prefix/suffix when printing 'Detaching...' messages.  Print
10273         them when 'print_inferior_events' is on.
10274         * remote.c (remote_detach_1): Print message when detaching
10275         from inferior and '!is_fork_parent'.
10276
10277 2018-04-24  Tom Tromey  <tom@tromey.com>
10278
10279         * cli-out.h: Reindent.
10280
10281 2018-04-24  Tom Tromey  <tom@tromey.com>
10282
10283         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10284         (cli_ui_out::do_field_string): Use fputs_filtered.
10285         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10286
10287 2018-04-23  Tom Tromey  <tom@tromey.com>
10288
10289         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10290         gdb::unique_xmalloc_ptr.
10291
10292 2018-04-23  Tom Tromey  <tom@tromey.com>
10293
10294         * configure: Rebuild.
10295
10296 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10297
10298         PR gdb/23095
10299         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10300         prepare_for_testing.  Set normal_bp to r_debug_state if target
10301         is bsd.
10302
10303 2018-04-21  Pedro Alves  <palves@redhat.com>
10304             Rajendra SY  <rajendra.sy@gmail.com>
10305
10306         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10307         * remote.c (extended_remote_attach): In all-stop mode, mark the
10308         thread as executing.
10309
10310 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10311
10312         * thread.c (thread_apply_all_command): Fix comment.
10313         (thread_command): Fix comment.
10314
10315 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10316
10317         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10318         parameter.
10319         * features/aarch64-core.c (create_feature_aarch64_core):
10320         Regenerate.
10321         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10322         Likewise.
10323         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10324         Likewise.
10325         * features/i386/32bit-avx512.c
10326         (create_feature_i386_32bit_avx512): Likewise.
10327         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10328         Likewise.
10329         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10330         Likewise.
10331         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10332         Likewise.
10333         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10334         Likewise.
10335         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10336         Likewise.
10337         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10338         Likewise.
10339         * features/i386/64bit-avx512.c
10340         (create_feature_i386_64bit_avx512): Likewise.
10341         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10342         Likewise.
10343         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10344         Likewise.
10345         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10346         Likewise.
10347         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10348         Likewise.
10349         * features/i386/64bit-segments.c
10350         (create_feature_i386_64bit_segments): Likewise.
10351         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10352         Likewise.
10353         * features/i386/x32-core.c
10354         (create_feature_i386_x32_core): Likewise.
10355         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10356         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10357         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10358         * target-descriptions.c: In generated code, don't pass xml
10359         filename.
10360
10361 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10362
10363         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10364         (print_xml_feature::visit_post): Likewise.
10365         (print_xml_feature::visit): Likewise.
10366         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10367         (print_xml_feature): Add new class.
10368         * regformats/regdat.sh: Null xmltarget on feature targets.
10369         * target-descriptions.c (struct target_desc): Add xmltarget.
10370         (maintenance_check_tdesc_xml_convert): Add unittest function.
10371         (tdesc_get_features_xml): Add function to get xml.
10372         (maintenance_check_xml_descriptions): Test xml generation.
10373         * xml-tdesc.c (string_read_description_xml): Add function.
10374         * xml-tdesc.h (string_read_description_xml): Add declaration.
10375
10376 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10377
10378         * features/Makefile: Add feature marker to targets with new style
10379         target descriptions.
10380         * regformats/aarch64.dat: Regenerate.
10381         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10382         * regformats/i386/amd64-avx-linux.dat: Likewise.
10383         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10384         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10385         * regformats/i386/amd64-linux.dat: Likewise.
10386         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10387         * regformats/i386/amd64.dat: Likewise.
10388         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10389         * regformats/i386/i386-avx-linux.dat: Likewise.
10390         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10391         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10392         * regformats/i386/i386-linux.dat: Likewise.
10393         * regformats/i386/i386-mmx-linux.dat: Likewise.
10394         * regformats/i386/i386-mpx-linux.dat: Likewise.
10395         * regformats/i386/i386.dat: Likewise.
10396         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10397         * regformats/i386/x32-avx-linux.dat: Likewise.
10398         * regformats/i386/x32-linux.dat: Likewise.
10399         * regformats/tic6x-c62x-linux.dat: Likewise.
10400         * regformats/tic6x-c64x-linux.dat: Likewise.
10401         * regformats/tic6x-c64xp-linux.dat: Likewise.
10402         * regformats/regdat.sh: Parse feature marker.
10403
10404 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10405
10406         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
10407         (tdesc_osabi_name): Likewise.
10408         * target-descriptions.c (tdesc_architecture_name): Add new
10409         function.
10410         (tdesc_osabi_name): Likewise.
10411
10412 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10413
10414         * common/tdesc.c (tdesc_predefined_type): Move to here.
10415         (tdesc_named_type): Likewise.
10416         (tdesc_create_vector): Likewise.
10417         (tdesc_create_struct): Likewise.
10418         (tdesc_set_struct_size): Likewise.
10419         (tdesc_create_union): Likewise.
10420         (tdesc_create_flags): Likewise.
10421         (tdesc_create_enum): Likewise.
10422         (tdesc_add_field): Likewise.
10423         (tdesc_add_typed_bitfield): Likewise.
10424         (tdesc_add_bitfield): Likewise.
10425         (tdesc_add_flag): Likewise.
10426         (tdesc_add_enum_value): Likewise.
10427         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
10428         (struct tdesc_type_vector): Likewise.
10429         (struct tdesc_type_field): Likewise.
10430         (struct tdesc_type_with_fields): Likewise.
10431         (tdesc_create_enum): Add declaration.
10432         (tdesc_add_typed_bitfield): Likewise.
10433         (tdesc_add_enum_value): Likewise.
10434         * target-descriptions.c (tdesc_type_field): Move from here.
10435         (tdesc_type_builtin): Likewise.
10436         (tdesc_type_vector): Likewise.
10437         (tdesc_type_with_fields): Likewise.
10438         (tdesc_predefined_types): Likewise.
10439         (tdesc_named_type): Likewise.
10440         (tdesc_create_vector): Likewise.
10441         (tdesc_create_struct): Likewise.
10442         (tdesc_set_struct_size): Likewise.
10443         (tdesc_create_union): Likewise.
10444         (tdesc_create_flags): Likewise.
10445         (tdesc_create_enum): Likewise.
10446         (tdesc_add_field): Likewise.
10447         (tdesc_add_typed_bitfield): Likewise.
10448         (tdesc_add_bitfield): Likewise.
10449         (tdesc_add_flag): Likewise.
10450         (tdesc_add_enum_value): Likewise.
10451         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
10452         (tdesc_add_typed_bitfield): Likewise.
10453         (tdesc_add_enum_value): Likewise.
10454
10455 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10456
10457         * common/tdesc.c (tdesc_feature::accept): Move to here.
10458         (tdesc_feature::operator==): Likewise.
10459         (tdesc_create_reg): Likewise.
10460         * common/tdesc.h (tdesc_type_kind): Likewise.
10461         (struct tdesc_type): Likewise.
10462         (struct tdesc_feature): Likewise.
10463         * regformats/regdat.sh: Create a feature.
10464         * target-descriptions.c (tdesc_type_kind): Move from here.
10465         (tdesc_type): Likewise.
10466         (tdesc_type_up): Likewise.
10467         (tdesc_feature): Likewise.
10468         (tdesc_create_reg): Likewise.
10469
10470 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10471
10472         * Makefile.in: Add arch/tdesc.c
10473         * common/tdesc.c: New file.
10474         * common/tdesc.h (tdesc_element_visitor): Move to here.
10475         (tdesc_element): Likewise.
10476         (tdesc_reg): Likewise.
10477         (tdesc_reg_up): Likewise.
10478         * regformats/regdef.h (reg): Add offset to constructors.
10479         * target-descriptions.c (tdesc_element_visitor): Move from here.
10480         (tdesc_element): Likewise.
10481         (tdesc_reg): Likewise.
10482         (tdesc_reg_up): Likewise.
10483
10484 2018-04-17  Tom Tromey  <tom@tromey.com>
10485
10486         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
10487         discriminant field.
10488
10489 2018-04-17  Tom Tromey  <tom@tromey.com>
10490
10491         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
10492
10493 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10494
10495         * symtab.c (print_symbol_info): Skip printing filename and line
10496         number when `last' is NULL.
10497         (symtab_symbol_info): Use empty string instead of NULL for first
10498         invocation of print_symbol_info.
10499         (rbreak_command): Pass NULL to `last' parameter of
10500         print_symbol_info.
10501
10502 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
10503
10504         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
10505         instead of nullptr.
10506
10507 2018-04-16  Pedro Alves  <palves@redhat.com>
10508
10509         * MAINTAINERS (sh): Remove.
10510         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
10511         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
10512         (ALLDEPFILES): Remove sh64-tdep.c.
10513         * NEWS: Mentions that support for SH-5/SH64 is removed.
10514         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
10515         (sh*-*-openbsd*): Ditto.
10516         (sh64-*-elf*): Remove.
10517         (sh*): Remove.
10518         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
10519         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
10520         * sh-tdep.c: No longer include "sh64-tdep.h".
10521         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
10522         * sh64-tdep.c, sh64-tdep.h: Remove files.
10523
10524 2018-04-16  Pedro Alves  <palves@redhat.com>
10525
10526         * MAINTAINERS: Remove m88k.
10527         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
10528         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
10529         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
10530         * NEWS: Mention that support for m88k was removed.
10531         * configure.host (m88*-*-*): Remove support.
10532         * configure.nat (m88k-*-*): Remove support.
10533         * configure.tgt (m88*-*-openbsd*): Remove.
10534         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
10535
10536 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
10537
10538         * configure.tgt (x86_tobjs): New variable.
10539         (amd64_tobjs, i386_tobjs): Use it.
10540
10541 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10542
10543         * symtab.c (print_symbol_info): Precede the symbol definition by
10544         the line number when available.
10545         * NEWS: Advertise this enhancement.
10546
10547 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10548
10549         * NEWS (New options): announce set/show record btrace cpu.
10550         * btrace.c: Include record-btrace.h.
10551         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
10552         the vendor is unknown.
10553         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
10554         Maybe overwrite the btrace configuration's cpu.
10555         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
10556         (btrace_fetch): Add cpu parameter.  Update callers.
10557         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
10558         Maybe overwrite the btrace configuration's cpu.  Skip enabling
10559         errata workarounds if the vendor is unknown.
10560         * python/py-record-btrace.c: Include record-btrace.h.
10561         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
10562         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
10563         * record-btrace.c (record_btrace_cpu_state_kind): New.
10564         (record_btrace_cpu): New.
10565         (set_record_btrace_cpu_cmdlist): New.
10566         (record_btrace_get_cpu): New.
10567         (require_btrace_thread, record_btrace_info)
10568         (record_btrace_resume_thread): Call record_btrace_get_cpu.
10569         (cmd_set_record_btrace_cpu_none): New.
10570         (cmd_set_record_btrace_cpu_auto): New.
10571         (cmd_set_record_btrace_cpu): New.
10572         (cmd_show_record_btrace_cpu): New.
10573         (_initialize_record_btrace): Initialize set/show record btrace cpu
10574         commands.
10575         * record-btrace.h (record_btrace_get_cpu): New.
10576
10577 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10578
10579         * record.c (set_record_command): Fix typo in message.
10580
10581 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10582
10583         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
10584
10585 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10586
10587         * infrun.c (process_event_stop_test): Call
10588         gdbarch_in_indirect_branch_thunk.
10589         * gdbarch.sh (in_indirect_branch_thunk): New.
10590         * gdbarch.c: Regenerated.
10591         * gdbarch.h: Regenerated.
10592         * x86-tdep.h: New.
10593         * x86-tdep.c: New.
10594         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
10595         (HFILES_NO_SRCDIR): Add x86-tdep.h.
10596         (ALLDEPFILES): Add x86-tdep.c.
10597         * arch-utils.h (default_in_indirect_branch_thunk): New.
10598         * arch-utils.c (default_in_indirect_branch_thunk): New.
10599         * i386-tdep: Include x86-tdep.h.
10600         (i386_in_indirect_branch_thunk): New.
10601         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
10602         function.
10603         * amd64-tdep: Include x86-tdep.h.
10604         (amd64_in_indirect_branch_thunk): New.
10605         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
10606
10607 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
10608
10609         PR gdb/23053
10610         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
10611         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
10612         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
10613         regression.
10614
10615 2018-04-12  Tom Tromey  <tom@tromey.com>
10616
10617         * rust-lang.c (rust_print_struct_def): Remove univariant code.
10618         (rust_evaluate_subexp): Likewise.
10619
10620 2018-04-12  Pedro Alves  <palves@redhat.com>
10621
10622         * procfs.c (procfs_detach): Make forward declaration's prototype
10623         match definition's protototype.
10624         (proc_get_LDT_entry): Remove stale do_cleanups call.
10625
10626 2018-04-12  Pedro Alves  <palves@redhat.com>
10627
10628         * target.h (target_ops::to_has_exited): Delete.
10629         (target_has_exited): Delete.
10630         * target-delegates.c: Regenerate.
10631
10632 2018-04-11  Pedro Alves  <palves@redhat.com>
10633
10634         * target.c (fileio_fh_t::t): Add comment.
10635         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10636         (target_fileio_close): Handle a NULL target.
10637         (invalidate_fileio_fh): New.
10638         (target_close): Call it.
10639         * remote.c (remote_hostio_send_command): No longer check whether
10640         remote_desc is open.
10641
10642 2018-04-11  Pedro Alves  <palves@redhat.com>
10643
10644         * target.c (fileio_fh_t): Make it a named struct instead of a
10645         typedef.
10646         (fileio_fh_t::is_closed): New method.
10647         (DEF_VEC_O (fileio_fh_t)): Remove.
10648         (fileio_fhandles): Now a std::vector.
10649         (is_closed_fileio_fh): Delete.
10650         (acquire_fileio_fd): Adjust.  Rename parameters.
10651         (release_fileio_fd): Adjust.
10652         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
10653         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10654         (target_fileio_close): Adjust.
10655
10656 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
10657
10658         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
10659         index.
10660
10661 2018-04-10  Pedro Alves  <palves@redhat.com>
10662
10663         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
10664         (scoped_finish_thread_state): New class.
10665         * infcmd.c (run_command_1): Use it instead of finish_thread_state
10666         cleanup.
10667         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
10668         (fetch_inferior_event, normal_stop): Likewise.
10669         * thread.c (finish_thread_state_cleanup): Delete.
10670
10671 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10672             Pedro Alves  <palves@redhat.com>
10673
10674         * value.c: Include "selftest.h" and "common/array-view.h".
10675         (struct range) <operator ==>: New.
10676         (test_ranges_contain): New.
10677         (check_ranges_vector): New.
10678         (test_insert_into_bit_range_vector): New.
10679         (_initialize_values): Register selftests.
10680         * common/array-view.h (operator==, operator!=): New.
10681
10682 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10683
10684         * common/gdb_vecs.h (unordered_remove): Add overload that takes
10685         an iterator.
10686         * inline-frame.c: Include <algorithm>.
10687         (struct inline_state): Add constructor.
10688         (inline_state_s): Remove.
10689         (DEF_VEC_O(inline_state_s)): Remove.
10690         (inline_states): Change type to std::vector.
10691         (find_inline_frame_state): Adjust to std::vector.
10692         (allocate_inline_frame_state): Remove.
10693         (clear_inline_frame_state): Adjust to std::vector.
10694         (skip_inline_frames): Adjust to std::vector.
10695
10696 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10697
10698         * tracepoint.h (struct trace_state_variable): Add constructor.
10699         <name>: Change type to std::string.
10700         * tracepoint.c (tsv_s): Remove.
10701         (DEF_VEC_O(tsv_s)): Remove.
10702         (tvariables): Change to std::vector.
10703         (create_trace_state_variable): Adjust to std::vector.
10704         (find_trace_state_variable): Likewise.
10705         (find_trace_state_variable_by_number): Likewise.
10706         (delete_trace_state_variable): Likewise.
10707         (trace_variable_command): Adjust to std::string.
10708         (delete_trace_variable_command): Likewise.
10709         (tvariables_info_1): Adjust to std::vector.
10710         (save_trace_state_variables): Likewise.
10711         (start_tracing): Likewise.
10712         (merge_uploaded_trace_state_variables): Adjust to std::vector
10713         and std::string.
10714         * target.h (struct target_ops)
10715         <to_download_trace_state_variable>: Pass reference to
10716         trace_state_variable.
10717         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
10718         * target-delegates.c: Re-generate.
10719         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
10720         (mi_tsv_deleted): Likewise.
10721         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
10722         * remote.c (remote_download_trace_state_variable): Change
10723         pointer to reference and adjust.
10724         * make-target-delegates (parse_argtypes): Handle references.
10725         (write_function_header): Likewise.
10726         (munge_type): Likewise.
10727
10728 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10729
10730         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10731         string_view-selftests.c.
10732         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
10733         testsuite.
10734         * unittests/basic_string_view/cons/char/1.cc: Likewise.
10735         * unittests/basic_string_view/cons/char/2.cc: Likewise.
10736         * unittests/basic_string_view/cons/char/3.cc: Likewise.
10737         * unittests/basic_string_view/element_access/char/1.cc:
10738         Likewise.
10739         * unittests/basic_string_view/element_access/char/empty.cc:
10740         Likewise.
10741         * unittests/basic_string_view/element_access/char/front_back.cc:
10742         Likewise.
10743         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
10744         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
10745         Likewise.
10746         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
10747         Likewise.
10748         * unittests/basic_string_view/modifiers/swap/char/1.cc:
10749         Likewise.
10750         * unittests/basic_string_view/operations/compare/char/1.cc:
10751         Likewise.
10752         * unittests/basic_string_view/operations/compare/char/13650.cc:
10753         Likewise.
10754         * unittests/basic_string_view/operations/copy/char/1.cc:
10755         Likewise.
10756         * unittests/basic_string_view/operations/data/char/1.cc:
10757         Likewise.
10758         * unittests/basic_string_view/operations/find/char/1.cc:
10759         Likewise.
10760         * unittests/basic_string_view/operations/find/char/2.cc:
10761         Likewise.
10762         * unittests/basic_string_view/operations/find/char/3.cc:
10763         Likewise.
10764         * unittests/basic_string_view/operations/find/char/4.cc:
10765         Likewise.
10766         * unittests/basic_string_view/operations/rfind/char/1.cc:
10767         Likewise.
10768         * unittests/basic_string_view/operations/rfind/char/2.cc:
10769         Likewise.
10770         * unittests/basic_string_view/operations/rfind/char/3.cc:
10771         Likewise.
10772         * unittests/basic_string_view/operations/substr/char/1.cc:
10773         Likewise.
10774         * unittests/basic_string_view/operators/char/2.cc: Likewise.
10775         * unittests/string_view-selftests.c: New file.
10776
10777 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10778
10779         * unittests/basic_string_view/capacity/1.cc: New file.
10780         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
10781         * unittests/basic_string_view/cons/char/1.cc: New file.
10782         * unittests/basic_string_view/cons/char/2.cc: New file.
10783         * unittests/basic_string_view/cons/char/3.cc: New file.
10784         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
10785         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
10786         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
10787         * unittests/basic_string_view/element_access/char/1.cc: New file.
10788         * unittests/basic_string_view/element_access/char/2.cc: New file.
10789         * unittests/basic_string_view/element_access/char/empty.cc: New file.
10790         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
10791         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
10792         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
10793         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
10794         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
10795         * unittests/basic_string_view/include.cc: New file.
10796         * unittests/basic_string_view/inserters/char/1.cc: New file.
10797         * unittests/basic_string_view/inserters/char/2.cc: New file.
10798         * unittests/basic_string_view/inserters/char/3.cc: New file.
10799         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
10800         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
10801         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
10802         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
10803         * unittests/basic_string_view/literals/types.cc: New file.
10804         * unittests/basic_string_view/literals/values.cc: New file.
10805         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
10806         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
10807         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
10808         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
10809         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
10810         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
10811         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
10812         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
10813         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
10814         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
10815         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
10816         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
10817         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
10818         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
10819         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
10820         * unittests/basic_string_view/operations/data/char/1.cc: New file.
10821         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
10822         * unittests/basic_string_view/operations/find/char/1.cc: New file.
10823         * unittests/basic_string_view/operations/find/char/2.cc: New file.
10824         * unittests/basic_string_view/operations/find/char/3.cc: New file.
10825         * unittests/basic_string_view/operations/find/char/4.cc: New file.
10826         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
10827         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
10828         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
10829         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
10830         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
10831         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
10832         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
10833         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
10834         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
10835         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
10836         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
10837         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
10838         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
10839         * unittests/basic_string_view/operators/char/2.cc: New file.
10840         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
10841         * unittests/basic_string_view/range_access/char/1.cc: New file.
10842         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
10843         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
10844         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
10845         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
10846         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
10847         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
10848         * unittests/basic_string_view/requirements/typedefs.cc: New file.
10849         * unittests/basic_string_view/typedefs.cc: New file.
10850         * unittests/basic_string_view/types/1.cc: New file.
10851
10852 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10853
10854         * common/gdb_string_view.h: Remove libstdc++ implementation
10855         details, adjust to gdb reality.
10856         * common/gdb_string_view.tcc: Likewise.
10857         * cli/cli-script.c (struct string_view): Remove.
10858         (user_args) <m_args>: Change element type to gdb::string_view.
10859         (user_args::insert_args): Adjust.
10860
10861 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10862
10863         * common/gdb_string_view.h: New file.
10864         * common/gdb_string_view.tcc: New file.
10865
10866 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10867
10868         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
10869         * configure: Re-generate.
10870
10871 2018-04-09  Pedro Alves  <palves@redhat.com>
10872
10873         * gdbarch.sh: Include "observable.h" instead of "observer.h".
10874         (set_target_gdbarch): Call
10875         gdb::observers::architecture_changed.notify instead of
10876         observer_notify_architecture_changed.
10877
10878 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10879
10880         * tracepoint.c (struct current_traceframe_cleanup): Remove.
10881         (do_restore_current_traceframe_cleanup): Remove.
10882         (restore_current_traceframe_cleanup_dtor): Remove.
10883         (make_cleanup_restore_current_traceframe): Remove.
10884         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
10885         New.
10886         * tracepoint.h (struct scoped_restore_current_traceframe): New.
10887         * infrun.c (fetch_inferior_event): Use
10888         scoped_restore_current_traceframe.
10889
10890 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10891
10892         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
10893         Remove.
10894         <n_allocated_type_units>: Remove.
10895         <all_type_units>: Change to std::vector.
10896         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10897         to std::vector change.
10898         (dwarf2_per_objfile::get_cutu): Likewise.
10899         (dwarf2_per_objfile::get_tu): Likewise.
10900         (create_signatured_type_table_from_index): Likewise.
10901         (create_signatured_type_table_from_debug_names): Likewise.
10902         (dw2_symtab_iter_next): Likewise.
10903         (dw2_print_stats): Likewise.
10904         (dw2_expand_all_symtabs): Likewise.
10905         (dw2_expand_marked_cus): Likewise.
10906         (dw2_debug_names_iterator::next): Likewise.
10907         (dwarf2_initialize_objfile): Likewise.
10908         (add_signatured_type_cu_to_table): Likewise.
10909         (create_all_type_units): Likewise.
10910         (add_type_unit): Likewise.
10911         (struct tu_abbrev_offset): Add constructor.
10912         (build_type_psymtabs_1): Adjust to std::vector change.
10913         (print_tu_stats): Likewise.
10914         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10915         (write_debug_names): Likewise.
10916
10917 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10918
10919         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
10920         Make an std::vector.
10921         <n_comp_units>: Remove.
10922         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10923         to std::vector change.
10924         (dwarf2_per_objfile::get_cutu): Likewise.
10925         (dwarf2_per_objfile::get_cu): Likewise.
10926         (create_cus_from_index): Likewise.
10927         (create_addrmap_from_index): Likewise.
10928         (create_addrmap_from_aranges): Likewise.
10929         (dwarf2_read_index): Likewise.
10930         (dw2_find_last_source_symtab): Likewise.
10931         (dw2_map_symtabs_matching_filename): Likewise.
10932         (dw2_symtab_iter_next): Likewise.
10933         (dw2_print_stats): Likewise.
10934         (dw2_expand_all_symtabs): Likewise.
10935         (dw2_expand_symtabs_with_fullname): Likewise.
10936         (dw2_expand_marked_cus): Likewise.
10937         (dw2_map_symbol_filenames): Likewise.
10938         (create_cus_from_debug_names): Likewise.
10939         (dwarf2_read_debug_names): Likewise.
10940         (dw2_debug_names_iterator::next): Likewise.
10941         (dwarf2_initialize_objfile): Likewise.
10942         (set_partial_user): Likewise.
10943         (dwarf2_build_psymtabs_hard): Likewise.
10944         (read_comp_units_from_section): Remove arguments, adjust to
10945         std::vector change.
10946         (create_all_comp_units): Adjust to std::vector and
10947         read_comp_units_from_section changes.
10948         (dwarf2_find_containing_comp_unit): Adjust to std::vector
10949         change.
10950         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10951         (psyms_seen_size): Likewise.
10952         (write_gdbindex): Likewise.
10953         (write_debug_names): Likewise.
10954
10955 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10956
10957         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
10958         with dwarf2_per_objfile.
10959         (create_cus_from_index): Likewise.
10960         (create_signatured_type_table_from_index): Likewise.
10961         (dwarf2_read_index): Likewise.
10962         (dwarf2_initialize_objfile): Likewise.
10963         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
10964         per_cu rather than get_dwarf2_per_objfile.
10965
10966 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10967
10968         * dwarf2read.h (struct signatured_type): Forward declare.
10969         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
10970         New methods.
10971         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
10972         (dw2_get_cutu): ...this.
10973         (dwarf2_per_objfile::get_cu): Rename from...
10974         (dw2_get_cu): ...this.
10975         (dwarf2_per_objfile::get_tu): New.
10976         (create_addrmap_from_index): Adjust.
10977         (create_addrmap_from_aranges): Adjust.
10978         (dw2_find_last_source_symtab): Adjust.
10979         (dw2_map_symtabs_matching_filename): Adjust.
10980         (dw2_symtab_iter_next): Adjust.
10981         (dw2_print_stats): Adjust.
10982         (dw2_expand_all_symtabs): Adjust.
10983         (dw2_expand_symtabs_with_fullname): Adjust.
10984         (dw2_expand_marked_cus): Adjust.
10985         (dw_expand_symtabs_matching_file_matcher): Adjust.
10986         (dw2_map_symbol_filenames): Adjust.
10987         (dw2_debug_names_iterator::next): Adjust.
10988         (dwarf2_initialize_objfile): Adjust.
10989         (set_partial_user): Adjust.
10990         (dwarf2_build_psymtabs_hard): Adjust.
10991
10992 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10993
10994         * dwarf2read.c (create_signatured_type_table_from_debug_names):
10995         Remove unused variables.
10996         (dw2_map_symtabs_matching_filename): Likewise.
10997         (dwarf2_record_block_ranges): Likewise.
10998         (dwarf2_read_addr_index): Likewise.
10999         (follow_die_offset): Likewise.
11000
11001 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11002
11003         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11004         to symbol_file_add_main.
11005
11006 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11007
11008         PR mi/22299
11009         * mi/mi-console.c (do_fputc_async_safe): New.
11010         (mi_console_file::write_async_safe): New.
11011         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11012         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11013         New.
11014         * ui-file.c (ui_file::putstrn): Adjust call to
11015         fputstrn_unfiltered.
11016         * utils.c (printchar): Replace do_fputs and do_fprintf
11017         parameters by do_fputc.
11018         (fputstr_filtered): Adjust call to printchar.
11019         (fputstr_unfiltered): Likewise.
11020         (fputstrn_filtered): Likewise.
11021         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11022         printchar.
11023         * utils.h (do_fputc_ftype): New typedef.
11024         (fputstrn_unfiltered): Add do_fputc parameter.
11025
11026 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11027
11028         * regformats/i386/i386-avx.dat: Remove.
11029
11030 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11031
11032         PR gdb/22979
11033         * amd64-tdep.c (amd64_none_init_abi): New function.
11034         (amd64_x32_none_init_abi): New function.
11035         (_initialize_amd64_tdep): Register handlers for x86-64 and
11036         x64_32 with GDB_OSABI_NONE.
11037         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11038         GDB_OSABI_NONE osabi.
11039
11040 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11041
11042         PR gdb/22980
11043         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11044         GDB_OSABI_NONE.
11045         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11046         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11047
11048 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11049
11050         * common/byte-vector.h (char_vector): New type.
11051         * target.h (target_read_alloc): Return
11052         gdb::optional<byte_vector>.
11053         (target_read_stralloc): Return gdb::optional<char_vector>.
11054         (target_get_osdata): Return gdb::optional<char_vector>.
11055         * target.c (target_read_alloc_1): Templatize.  Replacement
11056         manual memory management with vector.
11057         (target_read_alloc): Change return type, adjust.
11058         (target_read_stralloc): Change return type, adjust.
11059         (target_get_osdata): Change return type, adjust.
11060         * auxv.c (struct auxv_info) <length>: Remove.
11061         <data>: Change type to gdb::optional<byte_vector>.
11062         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11063         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11064         (target_auxv_search): Adjust.
11065         (fprint_target_auxv): Adjust.
11066         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11067         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11068         (linux_make_corefile_notes): Adjust.
11069         * osdata.c (get_osdata): Adjust.
11070         * remote.c (remote_get_threads_with_qxfer): Adjust.
11071         (remote_memory_map): Adjust.
11072         (remote_traceframe_info): Adjust.
11073         (btrace_read_config): Adjust.
11074         (remote_read_btrace): Adjust.
11075         (remote_pid_to_exec_file): Adjust.
11076         * solib-aix.c (solib_aix_get_library_list): Adjust.
11077         * solib-dsbt.c (decode_loadmap): Don't free buf.
11078         (dsbt_get_initial_loadmaps): Adjust.
11079         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11080         * solib-target.c (solib_target_current_sos): Adjust.
11081         * tracepoint.c (sdata_make_value): Adjust.
11082         * xml-support.c (xinclude_start_include): Adjust.
11083         (xml_fetch_content_from_file): Adjust.
11084         * xml-support.h (xml_fetch_another): Change return type.
11085         (xml_fetch_content_from_file): Change return type.
11086         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11087         * xml-tdesc.c (file_read_description_xml): Adjust.
11088         (fetch_available_features_from_target): Change return type.
11089         (target_fetch_description_xml): Adjust.
11090         (target_read_description_xml): Adjust.
11091
11092 2018-04-06  Tom Tromey  <tom@tromey.com>
11093
11094         * value.c (~value): Update.
11095         (struct value) <contents>: Now unique_xmalloc_ptr.
11096         (value_contents_bits_eq, allocate_value_contents)
11097         (value_contents_raw, value_contents_all_raw)
11098         (value_contents_for_printing, value_contents_for_printing_const)
11099         (set_value_enclosing_type): Update.
11100
11101 2018-04-06  Tom Tromey  <tom@tromey.com>
11102
11103         * value.c (range_s): Remove typedef, VEC.
11104         (struct range): Add operator<.
11105         (range_lessthan): Remove.
11106         (ranges_contain): Change type.
11107         (~value): Update.
11108         (struct value) <unavailable, optimized_out>: Now std::vector.
11109         (value_entirely_available)
11110         (value_entirely_covered_by_range_vector)
11111         (value_entirely_unavailable, value_entirely_optimized_out):
11112         Update.
11113         (insert_into_bit_range_vector): Change argument type.
11114         (find_first_range_overlap): Likewise.
11115         (struct ranges_and_idx, value_contents_bits_eq)
11116         (require_not_optimized_out, require_available): Update.
11117         (ranges_copy_adjusted): Change argument types.
11118         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11119
11120 2018-04-06  Tom Tromey  <tom@tromey.com>
11121
11122         * value.c (~value): Update.
11123         (struct value) <parent>: Now a value_ref_ptr.
11124         (value_parent, set_value_parent, value_address, value_copy):
11125         Update.
11126
11127 2018-04-06  Tom Tromey  <tom@tromey.com>
11128
11129         * value.c (struct value): Add constructor, destructor, and member
11130         initializers.
11131         (allocate_value_lazy, value_decref): Update.
11132
11133 2018-04-06  Tom Tromey  <tom@tromey.com>
11134
11135         * value.c (struct value) <released, next>: Remove.
11136         (all_values): Now a std::vector.
11137         (allocate_value_lazy): Update.
11138         (value_next): Remove.
11139         (value_mark, value_free_to_mark, release_value)
11140         (value_release_to_mark): Update.
11141
11142 2018-04-06  Tom Tromey  <tom@tromey.com>
11143
11144         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11145         (free_value_chain): Remove.
11146         * value.c (free_value_chain): Remove.
11147         (value_release_to_mark): Return a std::vector.
11148         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11149         std::vector.
11150         (check_condition): Update.
11151         * eval.c (fetch_subexp_value): Change "val_chain" to a
11152         std::vector.
11153         * breakpoint.c (update_watchpoint): Update.
11154         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11155
11156 2018-04-06  Tom Tromey  <tom@tromey.com>
11157
11158         * value.h (free_all_values): Remove.
11159         * value.c (free_all_values): Remove.
11160
11161 2018-04-06  Tom Tromey  <tom@tromey.com>
11162
11163         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11164         (value_history_chain, value_history_count): Remove.
11165         (value_history): New global.
11166         (record_latest_value, access_value_history, show_values)
11167         (preserve_values): Update.
11168
11169 2018-04-06  Tom Tromey  <tom@tromey.com>
11170
11171         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11172         * varobj.c (varobj_set_display_format, varobj_set_value)
11173         (install_default_visualizer, construct_visualizer)
11174         (install_new_value, ~varobj, varobj_get_value_type)
11175         (my_value_of_variable, varobj_editable_p): Update.
11176         * c-varobj.c (c_describe_child, c_value_of_variable)
11177         (cplus_number_of_children, cplus_describe_child): Update.
11178         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11179         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11180         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11181
11182 2018-04-06  Tom Tromey  <tom@tromey.com>
11183
11184         * printcmd.c (last_examine_address): Change type to
11185         value_ref_ptr.
11186         (do_examine, x_command): Update.
11187
11188 2018-04-06  Tom Tromey  <tom@tromey.com>
11189
11190         * value.c (release_value): Update.
11191         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11192         (struct bpstats) <val>: Now a value_ref_ptr.
11193         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11194         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11195         (~watchpoint, print_it_watchpoint, watch_command_1)
11196         (invalidate_bp_value_on_memory_change): Update.
11197
11198 2018-04-06  Tom Tromey  <tom@tromey.com>
11199
11200         * varobj.c (varobj_clear_saved_item)
11201         (update_dynamic_varobj_children, install_new_value, ~varobj):
11202         Update.
11203         * value.h (value_incref): Move declaration earlier.
11204         (value_decref): Rename from value_free.
11205         (struct value_ref_policy): New.
11206         (value_ref_ptr): New typedef.
11207         (struct value_deleter): Remove.
11208         (gdb_value_up): Remove typedef.
11209         (release_value): Change return type.
11210         (release_value_or_incref): Remove.
11211         * value.c (set_value_parent): Update.
11212         (value_incref): Change return type.
11213         (value_decref): Rename from value_free.
11214         (value_free_to_mark, free_all_values, free_value_chain): Update.
11215         (release_value): Return value_ref_ptr.
11216         (release_value_or_incref): Remove.
11217         (record_latest_value, set_internalvar, clear_internalvar):
11218         Update.
11219         * stack.c (info_frame_command): Don't call value_free.
11220         * python/py-value.c (valpy_dealloc, valpy_new)
11221         (value_to_value_object): Update.
11222         * printcmd.c (do_examine): Update.
11223         * opencl-lang.c (lval_func_free_closure): Update.
11224         * mi/mi-main.c (register_changed_p): Don't call value_free.
11225         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11226         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11227         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11228         value_free.
11229         * guile/scm-value.c (vlscm_free_value_smob)
11230         (vlscm_scm_from_value): Update.
11231         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11232         (frame_unwind_register_unsigned, get_frame_register_bytes)
11233         (put_frame_register_bytes): Don't call value_free.
11234         * findvar.c (address_from_register): Don't call value_free.
11235         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11236         * dwarf2loc.c (entry_data_value_free_closure)
11237         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11238         (dwarf2_evaluate_loc_desc_full): Update.
11239         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11240         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11241         (~watchpoint, watch_command_1)
11242         (invalidate_bp_value_on_memory_change): Update.
11243         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11244
11245 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11246
11247         PR gdb/23022
11248         * warning.m4: Add -Wno-error=deprecated-register.
11249         * configure: Re-generate.
11250
11251 2018-04-05  Tom Tromey  <tom@tromey.com>
11252
11253         * linespec.h: Remove include of "vec.h".
11254
11255 2018-04-05  Tom Tromey  <tom@tromey.com>
11256
11257         * linespec.c (typep): Remove typedef.
11258         (find_methods, find_superclass_methods): Take a std::vector.
11259         (find_method): Use std::vector.
11260
11261 2018-04-05  Tom Tromey  <tom@tromey.com>
11262
11263         * utils.c (compare_strings): Remove.
11264         * utils.h (compare_strings): Remove.
11265         * objc-lang.h (find_imps): Update.
11266         * objc-lang.c (find_methods): Take a std::vector.
11267         (uniquify_strings, find_imps): Likewise.
11268         * linespec.c (find_methods): Take a std::vector.
11269         (decode_objc): Use std::vector.
11270         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11271         a std::vector.
11272         (find_method, find_function_symbols): Use std::vector.
11273
11274 2018-04-05  Tom Tromey  <tom@tromey.com>
11275
11276         * completer.c (completion_tracker::completion_tracker): Remove
11277         cast.
11278         (completion_tracker::discard_completions): Likewise.
11279         * breakpoint.c (ambiguous_names_p): Remove cast.
11280         * ada-lang.c (_initialize_ada_language): Remove cast.
11281         * utils.h (streq): Update.
11282         (streq_hash): Add new declaration.
11283         * utils.c (streq): Return bool.
11284         (streq_hash): New function.
11285
11286 2018-04-05  Tom Tromey  <tom@tromey.com>
11287
11288         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11289         Remove a string copy.
11290
11291 2018-04-05  Tom Tromey  <tom@tromey.com>
11292
11293         * linespec.c (filter_results): Use std::vector.
11294         (decode_line_2, decode_line_full): Update.
11295
11296 2018-04-05  Tom Tromey  <tom@tromey.com>
11297
11298         * linespec.c (canonical_to_fullform): Return std::string.
11299         (filter_results): Update.
11300         (struct decode_line_2_item): Add constructor.
11301         <fullform, displayform>: Now std::string.
11302         (decode_line_2_compare_items): Now a std::sort comparator.
11303         (decode_line_2): Update.
11304
11305 2018-04-05  Tom Tromey  <tom@tromey.com>
11306
11307         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11308         (unexpected_linespec_error): Update.
11309         (linespec_parse_basic, parse_linespec): Update.
11310
11311 2018-04-05  Tom Tromey  <tom@tromey.com>
11312
11313         * linespec.c (linespec_parse_basic): Reindent.
11314
11315 2018-04-05  Tom Tromey  <tom@tromey.com>
11316
11317         * minsyms.h (iterate_over_minimal_symbols): Update.
11318         * minsyms.c (iterate_over_minimal_symbols): Take a
11319         gdb::function_view.
11320         * linespec.c (struct collect_minsyms): Remove.
11321         (compare_msyms): Now a std::sort comparator.
11322         (add_minsym): Add parameters.
11323         (search_minsyms_for_name): Update.  Use std::vector.
11324
11325 2018-04-03  Tom Tromey  <tom@tromey.com>
11326
11327         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11328         gdb::byte_vector.
11329
11330 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11331
11332         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11333
11334 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11335
11336         PR gdb/16959
11337         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11338         printing static type.
11339
11340 2018-04-01  Tom Tromey  <tom@tromey.com>
11341
11342         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11343         (rs6000_xfer_shared_libraries): Update.
11344
11345 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11346
11347         * common/gdb_vecs.h (char_ptr): Remove.
11348         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11349
11350 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11351
11352         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11353         with std::vector.
11354         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11355
11356 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11357
11358         * tracepoint.h (struct uploaded_tp): Initialize fields.
11359         <actions, step_actions, cmd_strings>: Change type to
11360         std::vector<char *>.
11361         * tracepoint.c (get_uploaded_tp): Allocate with new.
11362         (free_uploaded_tps): Free with delete.
11363         (parse_tracepoint_definition): Adjust to std::vector change.
11364         * breakpoint.c (read_uploaded_action): Likewise.
11365         (create_tracepoint_from_upload): Likewise.
11366         * ctf.c (ctf_write_uploaded_tp): Likewise.
11367         (SET_ARRAY_FIELD): Likewise.
11368         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11369
11370 2018-03-30  Tom Tromey  <tom@tromey.com>
11371
11372         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11373         std::unique_ptr.
11374         (svr4_keep_data_in_core): Update.
11375         (svr4_read_so_list): Update.
11376
11377 2018-03-30  Tom Tromey  <tom@tromey.com>
11378
11379         * windows-nat.c (handle_output_debug_string, handle_exception):
11380         Update.
11381         * target.h (target_read_string): Update.
11382         * target.c (target_read_string): Change "string" to
11383         unique_xmalloc_ptr.
11384         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11385         Update.
11386         * solib-frv.c (frv_current_sos): Update.
11387         * solib-dsbt.c (dsbt_current_sos): Update.
11388         * solib-darwin.c (darwin_current_sos): Update.
11389         * linux-thread-db.c (inferior_has_bug): Update.
11390         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11391         Update.  Remove alloca.
11392         * ada-lang.c (ada_main_name): Update.
11393
11394 2018-03-30  Tom Tromey  <tom@tromey.com>
11395
11396         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11397         (struct dwo_file_deleter): New.
11398         (dwo_file_up): New typedef.
11399         (open_and_init_dwo_file): Use dwo_file_up.
11400         (free_dwo_file_cleanup): Remove.
11401
11402 2018-03-30  Tom Tromey  <tom@tromey.com>
11403
11404         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
11405         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
11406
11407 2018-03-30  Tom Tromey  <tom@tromey.com>
11408
11409         * dwarf2read.c (class free_cached_comp_units): New class.
11410         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
11411         (free_cached_comp_units): Remove function.
11412
11413 2018-03-30  Tom Tromey  <tom@tromey.com>
11414
11415         * utils.h (make_cleanup_unpush_target): Remove.
11416         * inf-ptrace.c (struct target_unpusher): New.
11417         (target_unpush_up) New typedef.
11418         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
11419         target_unpush_up.
11420         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
11421
11422 2018-03-27  Tom Tromey  <tom@tromey.com>
11423
11424         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
11425
11426 2018-03-27  Pedro Alves  <palves@redhat.com>
11427             Tom Tromey  <tom@tromey.com>
11428
11429         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
11430         destructor.  Now a class.
11431         (gdb_readline_wrapper_cleanup): Remove function.
11432         (gdb_readline_wrapper): Remove cleanups.
11433
11434 2018-03-27  Tom Tromey  <tom@tromey.com>
11435
11436         * typeprint.h (struct type_print_options) <local_typedefs,
11437         global_typedefs>: Remove "struct" keyword.
11438         (class typedef_hash_table): New class.
11439         (recursively_update_typedef_hash, add_template_parameters)
11440         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
11441         (find_typedef_in_hash): Don't declare.
11442         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
11443         (typedef_hash_table::recursively_update): Rename from
11444         recursively_update_typedef_hash.  Now a member.
11445         (typedef_hash_table::add_template_parameters): Rename from
11446         add_template_parameters.  Now a member.
11447         (typedef_hash_table::typedef_hash_table): Now a constructor;
11448         rename from create_typedef_hash.
11449         (typedef_hash_table::~typedef_hash_table): Now a destructor;
11450         rename from free_typedef_hash.
11451         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
11452         (do_free_global_table): Remove.
11453         (typedef_hash_table::typedef_hash_table): New constructor; renamed
11454         from copy_type_recursive.
11455         (create_global_typedef_table): Remove.
11456         (typedef_hash_table::find_global_typedef): Now a member of
11457         typedef_hash_table.
11458         (typedef_hash_table::find_typedef): Rename from
11459         find_typedef_in_hash; now a member.
11460         (whatis_exp): Update.
11461         * extension.h (struct ext_lang_type_printers): Add constructor and
11462         destructor.
11463         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
11464         declare.
11465         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
11466         Now a constructor; rename from start_ext_lang_type_printers.
11467         (ext_lang_type_printers): Now a destructor; rename from
11468         free_ext_lang_type_printers.
11469         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
11470         Update.
11471         (c_type_print_base_struct_union): Update.  Remove cleanups.
11472
11473 2018-03-27  Tom Tromey  <tom@tromey.com>
11474
11475         * dwarf-index-write.c: Include <cmath>.
11476
11477 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11478
11479         * NEWS: Add entry describing new "set|show varsize-limit" command.
11480         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
11481         command.
11482         * printcmd.c (_initialize_printcmd): Add "set var" alias of
11483         "set variable".
11484
11485 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
11486
11487         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
11488         dwarf-index-write.c
11489         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
11490         * dwarf-index-common.c: New file.
11491         * dwarf-index-common.h: New file.
11492         * dwarf-index-write.c: New file.
11493         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
11494         (struct dwarf2_section_info): Move from here.
11495         (dwarf2_section_info_def): Likewise.
11496         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
11497         (offset_type): Likewise.
11498         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
11499         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
11500         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
11501         (byte_swap): Likewise.
11502         (MAYBE_SWAP): Likewise.
11503         (dwarf2_per_cu_ptr): Likewise.
11504         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
11505         (struct tu_stats): Likewise.
11506         (struct dwarf2_per_objfile): Likewise.
11507         (struct dwarf2_per_cu_data): Likewise.
11508         (struct signatured_type): Likewise.
11509         (sig_type_ptr): Likewise.
11510         (DEF_VEC_P (sig_type_ptr)): Likewise.
11511         (INDEX4_SUFFIX): Likewise.
11512         (INDEX5_SUFFIX): Likewise.
11513         (DEBUG_STR_SUFFIX): Likewise.
11514         (dwarf2_read_section): Make non-static.
11515         (mapped_index_string_hash): Move from here.
11516         (dwarf5_djb_hash): Likewise.
11517         (file_write): Likewise.
11518         (class data_buf): Likewise.
11519         (struct symtab_index_entry): Likewise.
11520         (struct mapped_symtab): Likewise.
11521         (find_slot): Likewise.
11522         (hash_expand): Likewise.
11523         (add_index_entry): Likewise.
11524         (uniquify_cu_indices): Likewise.
11525         (class c_str_view): Likewise.
11526         (class c_str_view_hasher): Likewise.
11527         (class vector_hasher): Likewise.
11528         (write_hash_table): Likewise.
11529         (psym_index_map): Likewise.
11530         (struct addrmap_index_data): Likewise.
11531         (add_address_entry): Likewise.
11532         (add_address_entry_worker): Likewise.
11533         (write_address_map): Likewise.
11534         (symbol_kind): Likewise.
11535         (write_psymbols): Likewise.
11536         (struct signatured_type_index_data): Likewise.
11537         (write_one_signatured_type): Likewise.
11538         (recursively_count_psymbols): Likewise.
11539         (recursively_write_psymbols): Likewise.
11540         (class debug_names): Likewise.
11541         (check_dwarf64_offsets): Likewise.
11542         (psyms_seen_size): Likewise.
11543         (write_gdbindex): Likewise.
11544         (write_debug_names): Likewise.
11545         (assert_file_size): Likewise.
11546         (write_psymtabs_to_index): Likewise.
11547         (save_gdb_index_command): Likewise.
11548         (_initialize_dwarf2_read): Don't register the "save gdb-index"
11549         command.
11550         * dwarf2read.h: New file.
11551
11552 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11553
11554         PR gdb/22670
11555         * dwarf2read.c (dwarf2_physname): Do not return the demangled
11556         symbol name if the CU's language stores symbol names in linkage
11557         format.
11558         * language.h (struct language_defn)
11559         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
11560         all instances of this struct.
11561
11562 2018-03-26  Tom Tromey  <tom@tromey.com>
11563
11564         * stack.c (backtrace_command_1): Remove verbose code.
11565
11566 2018-03-26  Tom Tromey  <tom@tromey.com>
11567
11568         * python/py-framefilter.c (py_print_type): Don't catch
11569         exceptions.  Return void.
11570         (py_print_value): Likewise.
11571         (py_print_single_arg): Likewise.
11572         (enumerate_args): Don't catch exceptions.
11573         (py_print_args): Likewise.
11574         (py_print_frame): Likewise.
11575         (gdbpy_apply_frame_filter): Catch exceptions here.
11576
11577 2018-03-26  Tom Tromey  <tom@tromey.com>
11578
11579         * stack.c (_initialize_stack): Remove trailing newlines from help
11580         text.  Add "Usage" line to "backtrace" help.
11581
11582 2018-03-26  Tom Tromey  <tom@tromey.com>
11583
11584         PR python/16486:
11585         * python/py-framefilter.c (py_print_args): Call wrap_hint.
11586
11587 2018-03-26  Tom Tromey  <tom@tromey.com>
11588
11589         * python/py-framefilter.c (py_print_single_arg): Return
11590         EXT_LANG_BT_ERROR from catch.
11591
11592 2018-03-26  Tom Tromey  <tom@tromey.com>
11593
11594         PR backtrace/15584:
11595         * stack.c (backtrace_command_1): Move some code into no-filters
11596         "if".
11597
11598 2018-03-26  Tom Tromey  <tom@tromey.com>
11599
11600         * python/py-framefilter.c (throw_quit_or_print_exception): New
11601         function.
11602         (gdbpy_apply_frame_filter): Use it.
11603
11604 2018-03-26  Tom Tromey  <tom@tromey.com>
11605
11606         PR cli/17716:
11607         * python/py-framefilter.c (py_print_type, py_print_value)
11608         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
11609         RETURN_MASK_ERROR.
11610
11611 2018-03-26  Tom Tromey  <tom@tromey.com>
11612
11613         * python/py-framefilter.c (enumerate_args): Use
11614         gdb::unique_xmalloc_ptr.
11615
11616 2018-03-26  Tom Tromey  <tom@tromey.com>
11617
11618         * python/py-framefilter.c (py_print_frame): Return
11619         EXT_LANG_BT_OK.
11620         (gdbpy_apply_frame_filter): Update comment.
11621         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
11622         Remove.
11623         <EXT_LANG_BT_NO_FILTERS>: Change value.
11624
11625 2018-03-26  Tom Tromey  <tom@tromey.com>
11626
11627         PR backtrace/15582:
11628         * stack.c (backtrace_command): Parse "hide" argument.
11629         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
11630         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
11631         constant.
11632
11633 2018-03-26  Tom Tromey  <tom@tromey.com>
11634
11635         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
11636         add "flags".
11637         (backtrace_command): Remove "fulltrace", add "flags".
11638
11639 2018-03-26  Tom Tromey  <tom@tromey.com>
11640
11641         * stack.c (backtrace_command): Rewrite command line parsing.
11642
11643 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11644
11645         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
11646
11647 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11648
11649         * filename-seen-cache.h: Add include guard.
11650
11651 2018-03-26  Keith Seitz  <keiths@redhat.com>
11652
11653         * symfile.c (place_section): Remove "struct" from section_addr_info
11654         in comment.
11655         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
11656         "struct" keyword from section_addr_info.
11657
11658 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
11659
11660         * regformats/regdef.h (reg): Add constructors.
11661
11662 2018-03-25  Pedro Alves  <palves@redhat.com>
11663
11664         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
11665         if then/else bodies in var_func_name extraction.
11666
11667 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
11668
11669         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
11670         lookup_minimal_symbol() to find symbol entry.
11671         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
11672
11673 2018-03-23  Keith Seitz  <keiths@redhat.com>
11674
11675         PR c++/22968
11676         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
11677         nested type definitions for C++, too.
11678
11679 2018-03-23  Tom Tromey  <tom@tromey.com>
11680
11681         * machoread.c (struct oso_el): Add a constructor.  Don't define as
11682         a typedef.
11683         (macho_register_oso): Remove.
11684         (macho_symtab_read): Take a std::vector.
11685         (oso_el_compare_name): Now a std::sort comparator.
11686         (macho_symfile_read_all_oso): Take a std::vector.
11687         (macho_symfile_read): Use std::vector.  Remove cleanups.
11688
11689 2018-03-22  Tom Tromey  <tom@tromey.com>
11690
11691         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
11692         (record_full_goto_bookmark): Use std::string.
11693
11694 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11695
11696         PR tdep/18295
11697         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
11698         a single mask.
11699
11700 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11701
11702         * rs6000-tdep.c (store_insn_p): New function.
11703         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
11704         and cr_reg to their unshifted values. Use store_insn_p to
11705         match LR saves using either R1 or fdata->alloca_reg. Use
11706         store_insn_p to match CR saves. Set alloca_reg_offset
11707         when alloca_reg and framep are set. Remove lr_reg shift
11708         when assigning to fdata->lr_register.
11709
11710 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11711
11712         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
11713         command line args instead of emitting a warning.
11714
11715 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11716
11717         * tracepoint.h (struct static_tracepoint_marker): Initialize
11718         fields, define default constructor, move constructor and move
11719         assignment, disable the rest.
11720         <str_id, extra>: Make std::string.
11721         (release_static_tracepoint_marker): Remove.
11722         (free_current_marker): Remove.
11723         * tracepoint.c (free_current_marker): Remove.
11724         (parse_static_tracepoint_marker_definition): Adjust to
11725         std::string, use new hex2str overload.
11726         (release_static_tracepoint_marker): Remove.
11727         (print_one_static_tracepoint_marker): Get marker by reference
11728         and adjust to std::string.
11729         (info_static_tracepoint_markers_command): Adjust to std::vector
11730         changes
11731         * target.h (static_tracepoint_marker_p): Remove typedef.
11732         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
11733         (struct target_ops) <to_static_tracepoint_marker_at>: Return
11734         bool.
11735         <to_static_tracepoint_markers_by_strid>: Return std::vector.
11736         * target-debug.h
11737         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
11738         (target_debug_print_std_vector_static_tracepoint_marker): New.
11739         (target_debug_print_struct_static_tracepoint_marker_p): Rename
11740         to...
11741         (target_debug_print_static_tracepoint_marker_p): ... this.
11742         * target-delegates.c: Re-generate.
11743         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
11744         Make std::string.
11745         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
11746         (decode_static_tracepoint_spec): Adjust to std::vector.
11747         (tracepoint_print_one_detail): Adjust to std::string.
11748         (strace_marker_decode_location): Adjust to std::string.
11749         (update_static_tracepoint): Adjust to std::string, remove call
11750         to release_static_tracepoint_marker.
11751         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
11752         Adjust to std::vector.
11753         * remote.c (remote_static_tracepoint_marker_at): Return bool.
11754         (remote_static_tracepoint_markers_by_strid): Adjust to
11755         std::vector.
11756         * common/rsp-low.h (hex2str): New overload with explicit count
11757         of bytes.
11758         * common/rsp-low.c (hex2str): New overload with explicit count
11759         of bytes.
11760         * unittests/rsp-low-selftests.c (test_hex2str): New function.
11761         (_initialize_rsp_low_selftests): Add test_hex2str test.
11762         * unittests/tracepoint-selftests.c
11763         (test_parse_static_tracepoint_marker_definition): Adjust to
11764         std::string.
11765
11766 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11767
11768         * tracepoint.c (parse_static_tracepoint_marker_definition):
11769         Consider case where the definition is followed by more
11770         definitions.
11771         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11772         tracepoint-selftests.c.
11773         * unittests/tracepoint-selftests.c: New.
11774
11775 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11776
11777         * MAINTAINERS (Write After Approval): Add Pedro Franco de
11778         Carvalho.
11779
11780 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11781
11782         * symtab.c (find_pc_sect_line): fixed indentation.
11783
11784 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11785
11786         * symtab.c (find_pc_sect_line): now uses binary search.
11787
11788 2018-03-19  Tom Tromey  <tom@tromey.com>
11789
11790         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
11791         "IDENT" production.
11792
11793 2018-03-19  Pedro Alves  <palves@redhat.com>
11794             Tom Tromey  <tom@tromey.com>
11795
11796         * unittests/observable-selftests.c: New file.
11797         * common/observable.h: New file.
11798         * observable.h: New file.
11799         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
11800         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
11801         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
11802         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
11803         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
11804         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
11805         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
11806         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
11807         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
11808         python/py-breakpoint.c, python/py-finishbreakpoint.c,
11809         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
11810         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
11811         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
11812         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
11813         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
11814         tui/tui-interp.c, valops.c: Update all users.
11815         * tui/tui-hooks.c (tui_bp_created_observer)
11816         (tui_bp_deleted_observer, tui_bp_modified_observer)
11817         (tui_inferior_exit_observer, tui_before_prompt_observer)
11818         (tui_normal_stop_observer, tui_register_changed_observer):
11819         Remove.
11820         (tui_observers_token): New global.
11821         (attach_or_detach, tui_attach_detach_observers): New functions.
11822         (tui_install_hooks, tui_remove_hooks): Use
11823         tui_attach_detach_observers.
11824         * record-btrace.c (record_btrace_thread_observer): Remove.
11825         (record_btrace_thread_observer_token): New global.
11826         * observer.sh: Remove.
11827         * observer.c: Rename to observable.c.
11828         * observable.c (namespace gdb_observers): Define new objects.
11829         (observer_debug): Move into gdb_observers namespace.
11830         (struct observer, struct observer_list, xalloc_observer_list_node)
11831         (xfree_observer_list_node, generic_observer_attach)
11832         (generic_observer_detach, generic_observer_notify): Remove.
11833         (_initialize_observer): Update.
11834         Don't include observer.inc.
11835         * Makefile.in (generated_files): Remove observer.h, observer.inc.
11836         (clean mostlyclean): Likewise.
11837         (observer.h, observer.inc): Remove targets.
11838         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
11839         (COMMON_SFILES): Use observable.c, not observer.c.
11840         * .gitignore: Remove observer.h.
11841
11842 2018-03-18  Tom Tromey  <tom@tromey.com>
11843
11844         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
11845         gdb::def_vector.
11846         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
11847
11848 2018-03-17  Tom Tromey  <tom@tromey.com>
11849
11850         * auto-load.c (auto_load_objfile_script_1): Use std::string.
11851
11852 2018-03-17  Tom Tromey  <tom@tromey.com>
11853
11854         * target.c (class scoped_target_fd): New.
11855         (target_fileio_close_cleanup): Remove.
11856         (target_fileio_read_alloc_1): Use scoped_target_fd.
11857
11858 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
11859
11860         * silent-rules.mk: New.
11861         * Makefile.in: Include silent-rules.mk
11862         (srcdir, VPATH, top_srcdir): Move up.
11863         (COMPILE): Add ECHO_CXX.
11864         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
11865         (init.c): Add ECHO_INIT_C.
11866         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
11867         (version.c): Add ECHO_GEN.
11868         (printcmd.o): Add ECHO_CXX.
11869         (target-float.o): Add ECHO_CXX.
11870         (ada-exp.o): Add ECHO_CXX.
11871         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
11872         (insight$(EXEEXT)): Add ECHO_CXXLD.
11873         * gnulib/configure.ac: Add AM_SILENT_RULES.
11874         * gnulib/aclocal.m4: Re-generate.
11875         * gnulib/configure: Re-generate.
11876         * gnulib/import/Makefile.in: Re-generate.
11877
11878 2018-03-16  Tom Tromey  <tom@tromey.com>
11879
11880         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
11881         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
11882         * utils.c (do_free_section_addr_info)
11883         (make_cleanup_free_section_addr_info): Remove.
11884         * symfile.h (struct other_sections): Add constructor.
11885         (struct section_addr_info): Remove.
11886         (section_addr_info): New typedef.
11887         (struct sym_fns) <sym_offsets>: Change type of parameter.
11888         (build_section_addr_info_from_objfile)
11889         (relative_addr_info_to_section_offsets, addr_info_make_relative)
11890         (default_symfile_offsets, symbol_file_add)
11891         (symbol_file_add_from_bfd)
11892         (build_section_addr_info_from_section_table): Update.
11893         (alloc_section_addr_info, free_section_addr_info): Don't declare.
11894         * symfile.c (alloc_section_addr_info): Remove.
11895         (build_section_addr_info_from_section_table): Change return type.
11896         Update.
11897         (build_section_addr_info_from_bfd)
11898         (build_section_addr_info_from_objfile): Likewise.
11899         (free_section_addr_info): Remove.
11900         (relative_addr_info_to_section_offsets): Change type of "addrs".
11901         (addrs_section_compar): Now a std::sort comparator.
11902         (addrs_section_sort): Change return type.
11903         (addr_info_make_relative): Change type of "addrs".  Update.
11904         (default_symfile_offsets, syms_from_objfile_1)
11905         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
11906         (symbol_file_add_separate): Update.
11907         (symbol_file_add): Change type of "addrs".  Update.
11908         (add_symbol_file_command): Update.  Remove cleanups.
11909         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
11910         cleanups.
11911         * symfile-debug.c (debug_sym_offsets): Change type of "info".
11912         * solib.c (solib_read_symbols): Update.
11913         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
11914         * machoread.c (macho_symfile_offsets): Update.
11915         * jit.c (jit_bfd_try_read_symtab): Update.
11916
11917 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
11918
11919         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11920         unittests/utils-selftests.c.
11921         * unittests/utils-selftests.c: New file.
11922
11923 2018-03-14  Tom Tromey  <tom@tromey.com>
11924
11925         PR cli/14977:
11926         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
11927         for NULL.
11928
11929 2018-03-14  Tom Tromey  <tom@tromey.com>
11930
11931         PR cli/19918:
11932         * printcmd.c (printf_pointer): Allow "-" in format.
11933
11934 2018-03-14  Tom Tromey  <tom@tromey.com>
11935
11936         * printcmd.c (_initialize_printcmd): Add usage to printf.
11937
11938 2018-03-14  Yao Qi  <qiyao@sourceware.org>
11939
11940         * MAINTAINERS: Update my email address.
11941
11942 2018-03-13  Tom Tromey  <tom@tromey.com>
11943
11944         * machoread.c (macho_check_dsym): Change filenamep to a
11945         std::string*.
11946         (macho_symfile_read): Update.
11947         * symfile.c (load_command): Use std::string.
11948
11949 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
11950
11951         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
11952         to error message string.
11953         (riscv_register_name): Use xsnprintf instead of sprintf.
11954         (riscv_insn::fetch_instruction): Use gdb_assert instead of
11955         internal_error.
11956         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
11957         error.
11958         (riscv_push_dummy_call): Likewise.
11959
11960 2018-03-12  Tom Tromey  <tom@tromey.com>
11961
11962         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
11963         Use gdb::byte_vector.
11964         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
11965
11966 2018-03-12  Yao Qi  <yao.qi@linaro.org>
11967
11968         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
11969         parameter type to readable_regcache.
11970         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
11971         the declaration.
11972
11973 2018-03-11  Tom Tromey  <tom@tromey.com>
11974
11975         * dwarf2read.c (struct nextfield): Add initializers.
11976         (struct nextfnfield): Remove.
11977         (struct fnfieldlist): Add initializers.  Remove "length" and
11978         "head", use std::vector.
11979         (struct decl_field_list): Remove.
11980         (struct field_info): Add initializers.
11981         <fields, baseclasses>: Now std::vector.
11982         <nbaseclasses, nfnfields, typedef_field_list_count,
11983         nested_types_list_count>: Remove.
11984         (dwarf2_add_field, dwarf2_add_type_defn)
11985         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
11986         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
11987         (process_structure_scope): Update.
11988
11989 2018-03-11  Tom Tromey  <tom@tromey.com>
11990
11991         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
11992         for use by std::sort.
11993         (build_type_psymtabs_1): Use std::vector.
11994
11995 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
11996
11997         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
11998         and LIBMPFR in the printed configuration.
11999
12000 2018-03-08  Tom Tromey  <tom@tromey.com>
12001
12002         * source.c (get_filename_and_charpos): Use scoped_fd.
12003         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12004         (procfs_pidlist): Likewise.
12005         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12006         (iterate_over_mappings): Likewise.
12007
12008 2018-03-08  Tom Tromey  <tom@tromey.com>
12009
12010         * infcall.c (struct call_return_meta_info)
12011         <stack_temporaries_enabled>: Remove.
12012         (get_call_return_value, call_function_by_hand_dummy): Update.
12013         * thread.c (disable_thread_stack_temporaries): Remove.
12014         (enable_thread_stack_temporaries): Remove.
12015         (thread_stack_temporaries_enabled_p): Return bool.
12016         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12017         (get_last_thread_stack_temporary): Update.
12018         * eval.c (evaluate_subexp): Update.
12019         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12020         class, not a function.
12021         (value_ptr, value_vec): Remove typedefs.
12022         (class thread_info) <stack_temporaries_enabled>: Now bool.
12023         <stack_temporaries>: Now a std::vector.
12024         (thread_stack_temporaries_enabled_p)
12025         (value_in_thread_stack_temporaries): Return bool.
12026
12027 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12028
12029         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12030         (getpkt_or_notif_sane_1): Likewise.
12031
12032 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12033
12034         * build-id.c (build_id_to_debug_bfd): Use std::string.
12035
12036 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12037
12038         * build-id.c (find_separate_debug_file_by_buildid): Return
12039         std::string.
12040         * build-id.h (find_separate_debug_file_by_buildid): Return
12041         std::string.
12042         * coffread.c (coff_symfile_read): Adjust to std::string.
12043         * elfread.c (elf_symfile_read): Adjust to std::string.
12044         * symfile.c (separate_debug_file_exists): Change parameter to
12045         std::string.
12046         (find_separate_debug_file): Return std::string.
12047         (find_separate_debug_file_by_debuglink): Return std::string.
12048         * symfile.h (find_separate_debug_file_by_debuglink): Return
12049         std::string.
12050
12051 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12052
12053         * common/xml-utils.c (xml_escape_text): Move code to...
12054         (xml_escape_text_append): ... this new function.
12055         * common/xml-utils.h (xml_escape_text_append): New declaration.
12056         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12057         New function.
12058         (_initialize_xml_utils): register test_xml_escape_text_append as
12059         a selftest.
12060
12061 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12062
12063         * defs.h: Remove MAX_REGISTER_SIZE.
12064         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12065         asserts.
12066         * python/py-unwind.c (pyuw_sniffer): Likewise.
12067
12068 2018-03-07  Tom Tromey  <tom@tromey.com>
12069
12070         * linux-tdep.c (linux_info_proc): Update.
12071         * target.h (struct target_ops) <to_fileio_readlink>: Return
12072         optional<string>.
12073         (target_fileio_readlink): Return optional<string>.
12074         * remote.c (remote_hostio_readlink): Return optional<string>.
12075         * inf-child.c (inf_child_fileio_readlink): Return
12076         optional<string>.
12077         * target.c (target_fileio_readlink): Return optional<string>.
12078
12079 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12080
12081         * regcache.c (cooked_read_test): Add riscv to the list of
12082         architectures that have a save_reggroup.
12083
12084 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12085
12086         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12087         value is not a dynamic class object.
12088
12089 2018-03-06  Tom Tromey  <tom@tromey.com>
12090
12091         * rust-exp.y: Formatting fixes.
12092
12093 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12094
12095         * riscv-tdep.c (riscv_register_name): Remove target description
12096         support.
12097         (riscv_gdbarch_init): Remove target description check.
12098
12099 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12100
12101         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12102         comment.
12103         * riscv-tdep.h: Likewise.
12104
12105 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12106
12107         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12108         (riscv_pseudo_register_write): Delete.
12109         (riscv_gdbarch_init): Remove all use of pseudo registers.
12110
12111 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12112
12113         * record-btrace.c (btrace_print_lines): Replace cleanup
12114         parameter with RAII equivalents.
12115         (btrace_insn_history): Replace cleanup with RAII equivalents.
12116         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12117         make_cleanup_ui_out_tuple_begin_end): Remove.
12118         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12119         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12120         make_cleanup_ui_out_list_begin_end): Remove.
12121
12122 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12123
12124         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12125         parameter types to std::vector.  Use bool.
12126         (record_btrace_wait): Replace VEC(tp_t) with
12127         std::vector<thread_info *>.
12128         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12129
12130 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12131
12132         * record-btrace.c (record_btrace_disable_callback): Remove.
12133         (struct scoped_btrace_disable): New.
12134         (record_btrace_open): Use scoped_btrace_disable.
12135
12136 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12137
12138         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12139         reading values from registers.
12140
12141 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12142
12143         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12144         where appropriate.
12145
12146 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12147
12148         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12149         change parameter type.  Use GDB's print functions, and use
12150         core_addr_to_string where appropriate.
12151         (riscv_push_dummy_call): Use core_addr_to_string where
12152         appropriate, update call to riscv_print_arg_location, and reindent
12153         a few lines.
12154         (riscv_return_value): Update call to riscv_print_arg_location.
12155
12156 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12157             Tim Newsome <tim@sifive.com>
12158             Albert Ou <a0u@eecs.berkeley.edu>
12159             Darius Rad <darius@bluespec.com>
12160
12161         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12162         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12163         (ALLDEPFILES): Add riscv-tdep.c
12164         * configure.tgt: Add riscv support.
12165         * riscv-tdep.c: New file.
12166         * riscv-tdep.h: New file.
12167         * NEWS: Mention new target.
12168         * MAINTAINERS: Add entry for riscv.
12169
12170 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12171
12172         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12173         fields within aggregates.
12174
12175 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12176
12177         * record-btrace.c (btrace_print_lines): Change type of flags to
12178         gdb_disassembly_flags.
12179
12180 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12181
12182         * fbsd-nat.c: Include "inf-ptrace.h".
12183         (USE_SIGTRAP_SIGINFO): Conditionally define.
12184         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12185         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12186         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12187         function.
12188         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12189         Likewise.
12190         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12191         Likewise.
12192         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12193         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12194         "supports_stopped_by_hw_breakpoint" target methods.
12195
12196 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12197
12198         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12199         * fbsd-nat.c (debug_fbsd_nat): New variable.
12200         (show_fbsd_nat_debug): New function.
12201         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12202         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12203
12204 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12205
12206         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12207         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12208         prototype.
12209         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12210         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12211         method.
12212
12213 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12214
12215         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12216         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12217
12218 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12219
12220         * charset.c (struct charset_vector): New.
12221         (charsets): Change type to charset_vector.
12222         (find_charset_names): Adjust.
12223         (add_one): Adjust.
12224         (_initialize_charset): Adjust.
12225
12226 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12227
12228         * progspace.h (struct program_space) <deleted_solibs>: Change
12229         type to std::vector<std::string>.
12230         * progspace.c (clear_program_space_solib_cache): Adjust.
12231         * breakpoint.c (print_solib_event): Adjust.
12232         (check_status_catch_solib): Adjust.
12233         * solib.c (update_solib_list): Adjust.
12234         * ui-out.h (class ui_out) <field_string>: New overload.
12235         * ui-out.c (ui_out::field_string): New overload.
12236
12237 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12238
12239         * progspace.h (struct program_space): Add constructor and
12240         destructor, initialize fields.
12241         (add_program_space): Remove.
12242         * progspace.c (add_program_space): Rename to...
12243         (program_space::program_space): ... this.
12244         (release_program_space): Rename to...
12245         (program_space::~program_space): ... this.
12246         (delete_program_space): Use delete to delete program_space.
12247         (initialize_progspace): Use new to allocate program_space.
12248         * inferior.c (add_inferior_with_spaces): Likewise.
12249         (clone_inferior_command): Likewise.
12250         * infrun.c (follow_fork_inferior): Likewise.
12251         (handle_vfork_child_exec_or_exit): Likewise.
12252
12253 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12254
12255         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12256         (delim_string_to_char_ptr_vec): Return std::vector of
12257         gdb::unique_xmalloc_ptr.
12258         (dirnames_to_char_ptr_vec_append): Take std::vector of
12259         gdb::unique_xmalloc_ptr.
12260         (dirnames_to_char_ptr_vec): Return std::vector of
12261         gdb::unique_xmalloc_ptr.
12262         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12263         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12264         (delim_string_to_char_ptr_vec): Return an std::vector of
12265         gdb::unique_xmalloc_ptr, adjust the code.
12266         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12267         gdb::unique_xmalloc_ptr, adjust the code.
12268         (dirnames_to_char_ptr_vec): Return an std::vector of
12269         gdb::unique_xmalloc_ptr, adjust the code.
12270         * auto-load.c (auto_load_safe_path_vec): Change type to
12271         std::vector of gdb::unique_xmalloc_ptr.
12272         (auto_load_expand_dir_vars): Return an std::vector of
12273         gdb::unique_xmalloc_ptr, adjust the code.
12274         (auto_load_safe_path_vec_update): Adjust.
12275         (filename_is_in_auto_load_safe_path_vec): Adjust.
12276         (auto_load_objfile_script_1): Adjust.
12277         * build-id.c (build_id_to_debug_bfd): Adjust.
12278         * linux-thread-db.c (thread_db_load_search): Adjust.
12279         * source.c (add_path): Adjust.
12280         (openp): Adjust.
12281         * symfile.c (find_separate_debug_file): Adjust.
12282         * utils.c (do_free_char_ptr_vec): Remove.
12283         (make_cleanup_free_char_ptr_vec): Remove.
12284
12285 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12286
12287         PR gdb/22907
12288         * common/pathstuff.c: Conditionally include "<windows.h>".
12289
12290 2018-03-01  Georg Sauthoff  <mail@georg.so>
12291
12292         PR gdb/22888
12293         * gcore.in: Quote variables and switch interpreter to bash.
12294
12295 2018-03-01  Tom Tromey  <tom@tromey.com>
12296
12297         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12298         assertion.  Add assertion for discriminant_index.
12299         (quirk_rust_enum): Use correct base type name in univariant case.
12300
12301 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12302
12303         * record.c (get_call_history_modifiers): Return a
12304         record_print_flags.
12305         (cmd_record_call_history): Adjust.
12306         * record-btrace.c (record_btrace_call_history): Adjust.
12307         (record_btrace_call_history_range): Adjust.
12308         (record_btrace_call_history_from): Adjust.
12309         * target-debug.h (target_debug_print_record_print_flags): New.
12310         * target-delegates.c: Re-generate.
12311         * target.c (target_call_history): Change flags type.
12312         (target_call_history_from): Likewise.
12313         (target_call_history_range): Likewise.
12314         * target.h (struct target_ops) <target_call_history>: Likewise.
12315         (target_call_history_from): Likewise.
12316         (target_call_history_range): Likewise.
12317
12318 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12319             Simon Marchi  <simon.marchi@polymtl.ca>
12320
12321         * common/common-utils.c: Include "sys/stat.h".
12322         (is_regular_file): Move here from "source.c"; change return
12323         type to "bool".
12324         * common/common-utils.h (is_regular_file): New prototype.
12325         * common/pathstuff.c (contains_dir_separator): New function.
12326         * common/pathstuff.h (contains_dir_separator): New prototype.
12327         * source.c: Don't include "sys/stat.h".
12328         (is_regular_file): Move to "common/common-utils.c".
12329
12330 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12331
12332         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12333         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12334         * auto-load.c: Include "common/pathstuff.h".
12335         * common/common-def.h (current_directory): Move here.
12336         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12337         function.
12338         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12339         prototype.
12340         * common/pathstuff.c: New file.
12341         * common/pathstuff.h: New file.
12342         * compile/compile.c: Include "common/pathstuff.h".
12343         * defs.h (current_directory): Move to "common/common-defs.h".
12344         * dwarf2read.c: Include "common/pathstuff.h".
12345         * exec.c: Likewise.
12346         * guile/scm-safe-call.c: Likewise.
12347         * linux-thread-db.c: Likewise.
12348         * main.c: Likewise.
12349         * nto-tdep.c: Likewise.
12350         * objfiles.c: Likewise.
12351         * source.c: Likewise.
12352         * symtab.c: Likewise.
12353         * utils.c: Include "common/pathstuff.h".
12354         (gdb_realpath): Move to "common/pathstuff.c".
12355         (gdb_realpath_keepfile): Likewise.
12356         (gdb_abspath): Likewise.
12357         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12358         (gdb_realpath_keepfile): Likewise.
12359         (gdb_abspath): Likewise.
12360
12361 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12362
12363         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12364         wildcard process pid for super_resume for kernels with a
12365         specific bug.
12366
12367 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12368
12369         * compile/compile.c (get_args): Add additional comments
12370         explaining function.
12371
12372 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12373             Tom Tromey  <tom@tromey.com>
12374
12375         * target.h (memory_write_request_s): Remove typedef.  Don't define
12376         VEC.
12377         (target_write_memory_blocks): Change argument to std::vector.
12378         (struct memory_write_request): Add constructor.
12379         * target-memory.c (compare_block_starting_address): Return bool.
12380         Change argument types.
12381         (claim_memory): Change arguments to use std::vector.
12382         (split_regular_and_flash_blocks, blocks_to_erase)
12383         (compute_garbled_blocks): Likewise.
12384         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12385         (target_write_memory_blocks): Change argument to std::vector.
12386         * symfile.c (struct load_section_data): Add constructor and
12387         destructor.  Use std::vector for "requests".
12388         (struct load_progress_data): Add initializers.
12389         (load_section_callback): Update.  Use "new".
12390         (clear_memory_write_data): Remove.
12391         (generic_load): Update.
12392
12393 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12394
12395         * arch/aarch64.h: Use common/tdesc.h.
12396
12397 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12398
12399         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
12400         architecture with a 64-bit ABI.
12401
12402 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12403
12404         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
12405         ahead of target description loading.
12406
12407 2018-02-26  Tom Tromey  <tom@tromey.com>
12408
12409         * stack.c (backtrace_command_1): Update.
12410         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
12411         of "flags".
12412         * python/py-framefilter.c (py_print_frame)
12413         (gdbpy_apply_frame_filter): Change type of "flags".
12414         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
12415         of "flags".
12416         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
12417         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
12418         * extension.h (enum frame_filter_flag): Rename from
12419         frame_filter_flags.
12420         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
12421         (apply_ext_lang_frame_filter): Change type of "flags".
12422         * extension.c (apply_ext_lang_frame_filter): Change type of
12423         "flags".
12424         * extension-priv.h (struct extension_language_ops)
12425         <apply_frame_filter>: Change type of "flags".
12426
12427 2018-02-26  Tom Tromey  <tom@tromey.com>
12428
12429         PR python/16497:
12430         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
12431         off-by-one in py_end computation.
12432         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
12433         PRINT_MORE_FRAMES.
12434         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
12435         constant.
12436
12437 2018-02-26  Tom Tromey  <tom@tromey.com>
12438
12439         * dwarf2read.c (struct variant_field): New.
12440         (struct nextfield) <variant>: New field.
12441         (dwarf2_add_field): Handle DW_TAG_variant_part.
12442         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
12443         discriminated union.
12444         (read_structure_type): Handle DW_TAG_variant_part.
12445         (handle_struct_member_die): New function, extracted from
12446         process_structure_scope.  Handle DW_TAG_variant.
12447         (process_structure_scope): Handle discriminated unions.  Call
12448         handle_struct_member_die.
12449
12450 2018-02-26  Tom Tromey  <tom@tromey.com>
12451
12452         * rust-lang.h (rust_last_path_segment): Declare.
12453         * rust-lang.c (rust_last_path_segment): Now public.  Change
12454         contract.
12455         (struct disr_info): Remove.
12456         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
12457         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
12458         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
12459         (rust_enum_p, rust_enum_variant): New function.
12460         (rust_underscore_fields): Remove "offset" parameter.
12461         (rust_print_enum): New function.
12462         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
12463         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
12464         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
12465         enums.
12466         (rust_internal_print_type): New function, from rust_print_type.
12467         Remove enum code.
12468         (rust_print_type): Call rust_internal_print_type.
12469         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
12470         Update enum handling.
12471         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
12472         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
12473         (rust_union_quirks): New functions.
12474         (process_full_comp_unit, process_full_type_unit): Call
12475         rust_union_quirks.
12476         (process_structure_scope): Update rust_unions if necessary.
12477
12478 2018-02-26  Tom Tromey  <tom@tromey.com>
12479
12480         * value.h (value_union_variant): Declare.
12481         * valops.c (value_union_variant): New function.
12482         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
12483         (struct discriminant_info): New.
12484         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
12485         enumerator.
12486         (struct main_type) <flag_discriminated_union>: New field.
12487
12488 2018-02-26  Tom Tromey  <tom@tromey.com>
12489
12490         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12491         unittests/unpack-selftests.c.
12492         * unittests/unpack-selftests.c: New file.
12493         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
12494
12495 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12496
12497         * dwarf2read.c (struct partial_die_info) <read>: New method.
12498         (read_partial_die): Remove the declaration.
12499         (load_partial_dies): Update.
12500         (partial_die_info::partial_die_info):
12501         (read_partial_die): Change it to partial_die_info::read.
12502
12503 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12504
12505         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
12506         (fixup_partial_die): Remove declaration.
12507         (scan_partial_symbols): Update.
12508         (partial_die_parent_scope): Likewise.
12509         (partial_die_full_name): Likewise.
12510         (fixup_partial_die): Change it to partial_die_info::fixup.
12511
12512 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12513
12514         * dwarf2read.c (read_partial_die): Update the declaration.
12515         (load_partial_dies): Caller update.
12516         (read_partial_die): Remove one argument abbrev_len.
12517
12518 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12519
12520         * dwarf2read.c (struct partial_die_info): Add ctor, delete
12521         assignment operator.
12522         (load_partial_dies): Use ctor and copy ctor.
12523         (read_partial_die): Update.
12524         (dwarf2_cu::find_partial_die): Use ctor.
12525
12526 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12527
12528         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
12529         (find_partial_die_in_comp_unit): Change it to
12530         dwarf2_cu::find_partial_die.
12531         (find_partial_die): Update.
12532
12533 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12534
12535         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
12536         is NULL.
12537
12538 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12539
12540         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
12541
12542 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
12543
12544         * arch/amd64.h: Use common/tdesc.h.
12545         * arch/i386.c: Likewise.
12546         * arch/i386.h: Likewise.
12547         * arch/tic6x.c: Likewise.
12548         * arch/tdesc.h: Move file from here...
12549         * common/tdesc.h: ...to here.
12550         * features/aarch64-core.c: Regenerate.
12551         * features/aarch64-fpu.c: Regenerate.
12552         * features/i386/32bit-avx.c: Regenerate.
12553         * features/i386/32bit-avx512.c: Regenerate.
12554         * features/i386/32bit-core.c: Regenerate.
12555         * features/i386/32bit-linux.c: Regenerate.
12556         * features/i386/32bit-mpx.c: Regenerate.
12557         * features/i386/32bit-pkeys.c: Regenerate.
12558         * features/i386/32bit-sse.c: Regenerate.
12559         * features/i386/64bit-avx.c: Regenerate.
12560         * features/i386/64bit-avx512.c: Regenerate.
12561         * features/i386/64bit-core.c: Regenerate.
12562         * features/i386/64bit-linux.c: Regenerate.
12563         * features/i386/64bit-mpx.c: Regenerate.
12564         * features/i386/64bit-pkeys.c: Regenerate.
12565         * features/i386/64bit-segments.c: Regenerate.
12566         * features/i386/64bit-sse.c: Regenerate.
12567         * features/i386/x32-core.c: Regenerate.
12568         * features/tic6x-c6xp.c: Regenerate.
12569         * features/tic6x-core.c: Regenerate.
12570         * features/tic6x-gp.c: Regenerate.
12571         * target-descriptions.c: Use common/tdesc.h.
12572         * target-descriptions.h: Likewise.
12573
12574 2018-02-24  Tom Tromey  <tom@tromey.com>
12575
12576         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
12577         (try_thread_db_load_from_dir, thread_db_load_search): Use
12578         std::string.
12579         (info_auto_load_libthread_db_compare): Return bool.  Change
12580         argument types.
12581         (info_auto_load_libthread_db): Use std::vector, std::string.
12582         Remove cleanups.
12583
12584 2018-02-24  Tom Tromey  <tom@tromey.com>
12585
12586         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
12587         std::string.
12588         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
12589         std::string*.
12590         * gdbarch.c: Rebuild.
12591         * gdbarch.h: Rebuild.
12592         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
12593         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
12594         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
12595         std::string*.
12596
12597 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
12598
12599         * gdbtypes.h (sect_offset): Change type to uint64_t.
12600         (sect_offset_str): New function.
12601         * dwarf2read.c (create_addrmap_from_aranges): Use
12602         sect_offset_str.
12603         (error_check_comp_unit_head): Likewise.
12604         (create_debug_type_hash_table): Likewise.
12605         (read_cutu_die_from_dwo): Likewise.
12606         (init_cutu_and_read_dies): Likewise.
12607         (init_cutu_and_read_dies_no_follow): Likewise.
12608         (process_psymtab_comp_unit_reader): Likewise.
12609         (partial_die_parent_scope): Likewise.
12610         (peek_die_abbrev): Likewise.
12611         (process_queue): Likewise.
12612         (dwarf2_physname): Likewise.
12613         (read_namespace_alias): Likewise.
12614         (read_import_statement): Likewise.
12615         (create_dwo_cu_reader): Likewise.
12616         (create_cus_hash_table): Likewise.
12617         (lookup_dwo_cutu): Likewise.
12618         (inherit_abstract_dies): Likewise.
12619         (read_func_scope): Likewise.
12620         (read_call_site_scope): Likewise.
12621         (dwarf2_add_member_fn): Likewise.
12622         (read_common_block): Likewise.
12623         (read_module_type): Likewise.
12624         (read_typedef): Likewise.
12625         (read_subrange_type): Likewise.
12626         (load_partial_dies): Likewise.
12627         (read_partial_die): Likewise.
12628         (find_partial_die): Likewise.
12629         (read_str_index): Likewise.
12630         (dwarf2_string_attr): Likewise.
12631         (build_error_marker_type): Likewise.
12632         (lookup_die_type): Likewise.
12633         (dump_die_shallow): Likewise.
12634         (follow_die_ref): Likewise.
12635         (dwarf2_fetch_die_loc_sect_off): Likewise.
12636         (dwarf2_fetch_constant_bytes): Likewise.
12637         (follow_die_sig): Likewise.
12638         (get_signatured_type): Likewise.
12639         (get_DW_AT_signature_type): Likewise.
12640         (dwarf2_find_containing_comp_unit): Likewise.
12641         (set_die_type): Likewise.
12642
12643 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
12644
12645         * arch/aarch64.c: Include "common-defs.h".
12646         * arch/amd64.c: Likewise.
12647         * arch/i386.c: Likewise.
12648
12649 2018-02-21  Tom Tromey  <tom@tromey.com>
12650
12651         * value.h: (extract_field_op): Update.
12652         * eval.c (extract_field_op): Return a const char *.
12653         * expression.h (parse_expression_for_completion): Update.
12654         * completer.c (complete_expression): Update.
12655         (add_struct_fields): Make fieldname const.
12656         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
12657         (mark_completion_tag, parse_exp_in_context_1): Update.
12658         (parse_expression_for_completion): Change "name" to
12659         unique_xmalloc_ptr*.
12660
12661 2018-02-21  Tom Tromey  <tom@tromey.com>
12662
12663         * infcall.c (call_function_by_hand_dummy): Use std::vector.
12664
12665 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12666
12667         * avr-tdep.c (avr_read_pc): Change parameter type to
12668         readable_regcache.
12669         * gdbarch.sh (read_pc): Likewise.
12670         * gdbarch.c: Re-generated.
12671         * gdbarch.h: Re-generated.
12672         * hppa-tdep.c (hppa_read_pc): Change parameter type to
12673         readable_regcache.
12674         * ia64-tdep.c (ia64_read_pc): Likewise.
12675         * mips-tdep.c (mips_read_pc): Likewise.
12676         * spu-tdep.c (spu_read_pc): Likewise.
12677
12678 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12679
12680         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
12681         * regcache-dump.c: New file.
12682         * regcache.c: Move register_dump to regcache-dump.c.
12683         (maintenance_print_registers): Likewise.
12684         (maintenance_print_raw_registers): Likewise.
12685         (maintenance_print_cooked_registers): Likewise.
12686         (maintenance_print_register_groups): Likewise.
12687         (maintenance_print_remote_registers): Likewise.
12688         (_initialize_regcache): Likewise.
12689         * regcache.h (register_dump): Moved from regcache.c.
12690
12691 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12692
12693         * regcache.c (regcache::regcache): Update.
12694         (regcache::invalidate): Move it to detached_regcache::invalidate.
12695         (get_thread_arch_aspace_regcache): Update.
12696         (regcache::raw_update): Update.
12697         (regcache::cooked_read): Remove some code.
12698         (regcache::cooked_read_value): Likewise.
12699         (regcache::raw_write): Remove assert on m_readonly_p.
12700         (regcache::raw_supply_integer): Move it to
12701         detached_regcache::raw_supply_integer.
12702         (regcache::raw_supply_zeroed): Likewise.
12703         * regcache.h (detached_regcache) <raw_supply_integer>: New
12704         declaration.
12705         <raw_supply_zeroed, invalidate>: Likewise.
12706         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
12707         <invalidate>: Likewise.
12708         <m_readonly_p>: Removed.
12709
12710 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12711
12712         * infcmd.c (get_return_value): Let stop_regs point to
12713         get_current_regcache.
12714         * regcache.c (regcache::regcache): Remove.
12715         (register_dump_reg_buffer): New class.
12716         (regcache_print): Adjust.
12717         * regcache.h (regcache): Remove constructors.
12718
12719 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12720
12721         * regcache.c (class register_dump): New class.
12722         (register_dump_regcache, register_dump_none): New class.
12723         (register_dump_remote, register_dump_groups): New class.
12724         (regcache_print): Update.
12725         * regcache.h (regcache_dump_what): Move it to regcache.c.
12726         (regcache) <dump>: Remove.
12727
12728 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12729
12730         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
12731          reg_buffer_rw *.
12732         (jit_unwind_reg_set_impl): Call raw_supply.
12733         (jit_frame_sniffer): Use reg_buffer_rw.
12734         * record-full.c (record_full_core_regbuf): Change its type.
12735         (record_full_core_open_1): Use reg_buffer_rw.
12736         (record_full_close): Likewise.
12737         (record_full_core_fetch_registers): Use regcache->raw_supply.
12738         (record_full_core_store_registers): Likewise.
12739         * regcache.c (regcache::get_register_status): Move it to
12740         reg_buffer.
12741         (regcache_raw_set_cached_value): Remove.
12742         (regcache::raw_set_cached_value): Remove.
12743         (regcache::raw_write): Call raw_supply.
12744         (regcache::raw_supply): Move it to reg_buffer_rw.
12745         * regcache.h (regcache_raw_set_cached_value): Remove.
12746         (reg_buffer_rw): New class.
12747
12748 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12749
12750         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
12751         readonly_detached_regcache.
12752         (dummy_frame_prev_register): Use regcache->cooked_read.
12753         * frame.c (frame_save_as_regcache): Change return type.
12754         (frame_pop): Update.
12755         * frame.h (frame_save_as_regcache): Update declaration.
12756         * inferior.h (get_infcall_suspend_state_regcache): Update
12757         declaration.
12758         * infrun.c (infcall_suspend_state) <registers>: use
12759         readonly_detached_regcache.
12760         (save_infcall_suspend_state): Don't use regcache_dup.
12761         (get_infcall_suspend_state_regcache): Change return type.
12762         * linux-fork.c (struct fork_info) <savedregs>: Change to
12763         readonly_detached_regcache.
12764         <pc>: New field.
12765         (fork_save_infrun_state): Don't use regcache_dup.
12766         (info_checkpoints_command): Adjust.
12767         * mi/mi-main.c (register_changed_p): Update declaration.
12768         (mi_cmd_data_list_changed_registers): Use
12769         readonly_detached_regcache.
12770         (register_changed_p): Change parameter type to
12771         readonly_detached_regcache.
12772         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
12773         readonly_detached_regcache.
12774         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
12775         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
12776         New.
12777         (regcache::save): Move it to reg_buffer.
12778         (regcache::restore): Change parameter type.
12779         (regcache_dup): Remove.
12780         * regcache.h (reg_buffer) <save>: New method.
12781         (readonly_detached_regcache): New class.
12782         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
12783         readonly_detached_regcache.
12784         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
12785
12786 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12787
12788         * frame.c (frame_save_as_regcache): Use regcache method save.
12789         (frame_pop): Use regcache method restore.
12790         * infrun.c (restore_infcall_suspend_state): Likewise.
12791         * linux-fork.c (fork_load_infrun_state): Likewise.
12792         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
12793         save.
12794         * regcache.c (regcache_save): Remove.
12795         (regcache::restore): More asserts.
12796         (regcache_cpy): Remove.
12797         * regcache.h (regcache_save): Remove the declaration.
12798         (regcache::restore): Move from private to public.
12799         Remove the friend declaration of regcache_cpy.
12800         (regcache_cpy): Remove declaration.
12801
12802 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12803
12804         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
12805         parameter type to 'readable_regcache *'.
12806         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12807         * arm-tdep.c (arm_neon_quad_read): Likewise.
12808         (arm_pseudo_read): Likewise.
12809         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12810         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12811         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12812         * gdbarch.c: Re-generated.
12813         * gdbarch.h: Re-generated.
12814         * gdbarch.sh (pseudo_register_read): Change parameter type to
12815         'readable_regcache *'.
12816         (pseudo_register_read_value): Likewise.
12817         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
12818         (h8300_pseudo_register_read): Likewise.
12819         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
12820         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12821         (i386_pseudo_register_read_into_value): Likewise.
12822         (i386_pseudo_register_read_value): Likewise.
12823         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
12824         declaration.
12825         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
12826         * m32c-tdep.c (m32c_raw_read): Likewise.
12827         (m32c_read_flg): Likewise.
12828         (m32c_banked_register): Likewise.
12829         (m32c_banked_read): Likewise.
12830         (m32c_sb_read): Likewise.
12831         (m32c_part_read): Likewise.
12832         (m32c_cat_read): Likewise.
12833         (m32c_r3r2r1r0_read): Likewise.
12834         (m32c_pseudo_register_read): Likewise.
12835         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12836         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12837         (mep_pseudo_cr64_read): Likewise.
12838         (mep_pseudo_register_read): Likewise.
12839         * mips-tdep.c (mips_pseudo_register_read): Likewise.
12840         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12841         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12842         * regcache.c (regcache::raw_read): Move it to readable_regcache.
12843         (regcache::cooked_read): Likewise.
12844         (regcache::cooked_read_value): Likewise.
12845         (regcache_cooked_read_signed):
12846         (regcache::cooked_read): Likewise.
12847         * regcache.h (readable_regcache): New class.
12848         (regcache): Inherit readable_regcache.  Move some methods to
12849         readable_regcache.
12850         * rl78-tdep.c (rl78_pseudo_register_read): Change
12851         parameter type to 'readable_regcache *'.
12852         * rs6000-tdep.c (do_regcache_raw_read): Remove.
12853         (e500_pseudo_register_read): Change parameter type to
12854         'readable_regcache *'.
12855         (dfp_pseudo_register_read): Likewise.
12856         (vsx_pseudo_register_read): Likewise.
12857         (efpr_pseudo_register_read): Likewise.
12858         * s390-tdep.c (s390_pseudo_register_read): Likewise.
12859         * sh-tdep.c (sh_pseudo_register_read): Likewise.
12860         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
12861         (sh64_pseudo_register_read): Likewise.
12862         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
12863         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12864         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
12865         (spu_pseudo_register_read): Likewise.
12866         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12867         (xtensa_pseudo_register_read): Likewise.
12868
12869 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12870
12871         * regcache.c (regcache::regcache): Call reg_buffer ctor.
12872         (regcache::arch): Move it to reg_buffer::arch.
12873         (regcache::register_buffer): Likewise.
12874         (regcache::assert_regnum): Likewise.
12875         (regcache::num_raw_registers): Likewise.
12876         * regcache.h (reg_buffer): New class.
12877         (regcache): Inherit reg_buffer.
12878
12879 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
12880
12881         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
12882         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
12883
12884 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
12885
12886         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
12887
12888 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
12889
12890         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
12891         (SFILES): Remove common/*.c files.
12892         (COMMON_OBS): Remove some *.o files built from common/*.c files.
12893         * common/common.host: Add common reference.
12894         * configure.ac: Likewise.
12895         * configure: Regenerate.
12896
12897 2018-02-16  Yao Qi  <yao.qi@linaro.org>
12898
12899         * block.c (block_namespace_info): Inherit allocate_on_obstack.
12900         (block_initialize_namespace): Use new.
12901         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
12902         (dwarf2_free_objfile): Use delete.
12903         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
12904         (copy_type_recursive): Use new.
12905         * gdb_obstack.h (allocate_on_obstack): New.
12906
12907 2018-02-15  Yao Qi  <yao.qi@linaro.org>
12908
12909         PR gdb/22849
12910         * inferior.c (exit_inferior_1): Reset inf->control.
12911
12912 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
12913
12914         * ada-lang.c (ada_to_fixed_value_create): Delete advance
12915         declaration.
12916
12917 2018-02-14  Pedro Alves  <palves@redhat.com>
12918
12919         * frame-unwind.c (frame_unwind_try_unwinder): Always call
12920         frame_cleanup_after_sniffer on exception.
12921
12922 2018-02-14  Tom Tromey  <tom@tromey.com>
12923
12924         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
12925         const.
12926         (solib_bfd_open): Make pathname const.
12927         * solib.c (solib_bfd_open): Make pathname const.
12928         * solib-spu.c (spu_bfd_fopen): Make name const.
12929         (spu_bfd_open): Make pathname const.
12930         * solib-darwin.c (darwin_bfd_open): Make pathname const.
12931         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
12932
12933 2018-02-14  Tom Tromey  <tom@tromey.com>
12934
12935         * symfile.c (symfile_bfd_open): Update.
12936         * source.h (openp, source_full_path_of, find_and_open_source):
12937         Change argument type to unique_xmalloc_ptr.
12938         * source.c (openp): Take a unique_xmalloc_ptr.
12939         (source_full_path_of, find_and_open_source): Likewise.
12940         (open_source_file, symtab_to_fullname): Update.
12941         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
12942         unique_xmalloc_ptr.
12943         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
12944         (exec_file_find): Update.
12945         * psymtab.c (psymtab_to_fullname): Update.
12946         * nto-tdep.h (nto_find_and_open_solib): Update.
12947         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
12948         unique_xmalloc_ptr.
12949         * exec.c (exec_file_attach): Update.
12950         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
12951         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
12952
12953 2018-02-14  Tom Tromey  <tom@tromey.com>
12954
12955         * solib.c: Include source.h.
12956         * nto-tdep.c: Include source.h.
12957         * mi/mi-cmd-env.c: Include source.h.
12958         * infcmd.c: Include source.h.
12959         * exec.c: Include source.h.
12960         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
12961         (add_path, directory_switch, source_path, init_source_path): Move
12962         declarations...
12963         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
12964         (add_path, directory_switch, source_path, init_source_path):
12965         ...here.
12966
12967 2018-02-14  Tom Tromey  <tom@tromey.com>
12968
12969         * solist.h (exec_file_find, solib_find): Return
12970         unique_xmalloc_ptr.
12971         (solib_bfd_fopen): Take a const char *.
12972         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
12973         (exec_file_find, solib_find): Likewise.
12974         (solib_bfd_fopen): Do not take ownership of "pathname".
12975         (solib_bfd_open): Use unique_xmalloc_ptr.
12976         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
12977         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
12978         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
12979         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
12980
12981 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
12982
12983         * ada-lang.c (name_match_type_from_name): Remove reference to
12984         ada_name_for_lookup in function's documentation.
12985         * ada-lang.h (ada_name_for_lookup): Delete declaration.
12986
12987 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
12988
12989         * defs.h (enum openp_flags): New enum.
12990         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
12991         Move to enum openp_flags.
12992         (openp_flags): New enum flags.
12993         (openp): Change parameter type to openp_flags.
12994         * source.c (openp): Change parameter type to openp_flags.
12995         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
12996         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
12997
12998 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
12999
13000         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13001         per-command.
13002
13003 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13004
13005         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13006         into...
13007         (class dwarf2_queue_guard): ...the destructor of this new class.
13008         (dw2_do_instantiate_symtab): Create instance of the new class
13009         dwarf2_queue_guard, remove cleanup.
13010
13011 2018-02-09  Tom Tromey  <tom@tromey.com>
13012
13013         * source.c (find_source_lines): Don't reference past the end of
13014         the vector.
13015
13016 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13017
13018         * remote.c (remote_btrace_maybe_reopen): Change error message.
13019         * btrace.c (btrace_enable): Likewise.
13020         (parse_xml_btrace): Likewise.
13021         (parse_xml_btrace_conf): Likewise.
13022
13023 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13024
13025         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13026         (linux_enable_pt, linux_enable_bts): Call
13027         diagnose_perf_event_open_fail.
13028
13029 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13030
13031         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13032         Remove parameter and change return type.  Update callers.  Move it.
13033         (linux_enable_bts, linux_enable_pt): Improve error message.
13034         (linux_enable_pt): Remove zero buffer size check.
13035         (linux_enable_btrace): Improve error messages.  Remove NULL return
13036         check.
13037
13038 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13039
13040         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13041         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13042         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13043         (linux_supports_pt, linux_supports_btrace): Remove.
13044         (linux_enable_bts): Call cpu_supports_bts.
13045         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13046         * remote.c (remote_supports_btrace): Remove.
13047         (init_remote_ops): Remove remote_supports_btrace.
13048         * target-delegates.c: Regenerated.
13049         * target.c (target_supports_btrace): Remove.
13050         * target.h (target_ops) <to_supports_btrace>: Remove
13051         (target_supports_btrace): Remove.
13052         * x86-linux-nat.c (x86_linux_create_target): Remove
13053         linux_supports_btrace.
13054
13055 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13056
13057         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13058         btrace failed.
13059         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13060         exception and use message in own exception.
13061
13062 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13063
13064         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13065         (perf_event_pt_event_type): Use gdb_file_up.
13066         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13067         scoped_fd, and scoped_mmap.
13068
13069 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13070
13071         * common/scoped_mmap.h: New.
13072         * unittests/scoped_mmap-selftest.c: New.
13073         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13074         unittests/scoped_mmap-selftest.c.
13075
13076 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13077
13078         * common/scoped_fd.h: New.
13079         * unittests/scoped_fd-selftest.c: New.
13080         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13081         unittests/scoped_fd-selftest.c.
13082
13083 2018-02-09  Tom Tromey  <tom@tromey.com>
13084
13085         * auto-load.c (auto_load_section_scripts): Use
13086         gdb::unique_xmalloc_ptr.
13087
13088 2018-02-09  Tom Tromey  <tom@tromey.com>
13089
13090         * auto-load.c (execute_script_contents): Use std::string.
13091
13092 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13093
13094         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13095         Python function, rather than a new command.
13096
13097 2018-02-08  Tom Tromey  <tom@tromey.com>
13098
13099         * solib.c (solib_find_1): Use std::string.
13100         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13101
13102 2018-02-08  Tom Tromey  <tom@tromey.com>
13103
13104         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13105
13106 2018-02-08  Tom Tromey  <tom@tromey.com>
13107
13108         * source.c (find_source_lines): Use gdb::def_vector.
13109
13110 2018-02-08  Tom Tromey  <tom@tromey.com>
13111
13112         * macrocmd.c (struct temporary_macro_definition): New.
13113         (macro_define_command): Use temporary_macro_definition.  Remove
13114         cleanups.
13115         (free_macro_definition_ptr): Remove.
13116
13117 2018-02-08  Tom Tromey  <tom@tromey.com>
13118
13119         * macroexp.c (maybe_expand): Use std::string.
13120
13121 2018-02-08  Tom Tromey  <tom@tromey.com>
13122
13123         * macroexp.c (struct macro_buffer): Add initializers for some
13124         members.
13125         (init_buffer, init_shared_buffer, free_buffer)
13126         (free_buffer_return_text): Remove.
13127         (macro_buffer): New constructors.
13128         (~macro_buffer): New destructor.
13129         (macro_buffer::set_shared): New method.
13130         (macro_buffer::resize_buffer, macro_buffer::appendc)
13131         (macro_buffer::appendmem): Now methods, not free functions.
13132         (set_token, append_tokens_without_splicing, stringify)
13133         (macro_stringify): Update.
13134         (gather_arguments): Change return type.  Remove argc_p argument,
13135         add args_ptr argument.  Use std::vector.
13136         (substitute_args): Remove argc argument.  Accept std::vector.
13137         (expand): Update.  Use std::vector.
13138         (scan, macro_expand, macro_expand_next): Update.
13139
13140 2018-02-08  Tom Tromey  <tom@tromey.com>
13141
13142         * symtab.c (default_collect_symbol_completion_matches_break_on):
13143         Use unique_xmalloc_ptr.
13144         * macroscope.h: (sal_macro_scope, user_macro_scope)
13145         (default_macro_scope): Return unique_xmalloc_ptr.
13146         * macroscope.c (sal_macro_scope, user_macro_scope)
13147         (default_macro_scope): Return unique_xmalloc_ptr.
13148         * macroexp.h (macro_expand, macro_expand_once): Return
13149         unique_xmalloc_ptr.
13150         * macroexp.c (macro_expand, macro_expand_once): Return
13151         unique_xmalloc_ptr.
13152         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13153         (info_macro_command, info_macros_command): Use
13154         unique_xmalloc_ptr.
13155         * compile/compile-c-support.c (write_macro_definitions): Use
13156         unique_xmalloc_ptr.
13157         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13158
13159 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13160
13161         * value.c (value_static_field): Assign field type instead of
13162         containing type when returning an optimized out value.
13163
13164 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13165
13166         * ft32-tdep.c (ft32_read_pc): Remove.
13167         (ft32_write_pc): Remove.
13168         (ft32_gdbarch_init): Update.
13169         * m32r-tdep.c (m32r_read_pc): Remove.
13170         (m32r_gdbarch_init): Update.
13171         * mep-tdep.c (mep_read_pc): Remove.
13172         (mep_gdbarch_init): Update.
13173         * microblaze-tdep.c (microblaze_write_pc): Remove.
13174         (microblaze_gdbarch_init): Update.
13175         * mn10300-tdep.c (mn10300_read_pc): Remove.
13176         (mn10300_write_pc): Remove.
13177         (mn10300_gdbarch_init): Update.
13178         * moxie-tdep.c (moxie_read_pc): Remove.
13179         (moxie_write_pc): Remove.
13180         (moxie_gdbarch_init): Update.
13181
13182 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13183
13184         * expprint.c (print_subexp_standard): Handle
13185         OP_F77_UNDETERMINED_ARGLIST.
13186         (dump_subexp_body_standard): Likewise.
13187
13188 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13189
13190         * target-descriptions.c (tdesc_element_visitor) Add empty
13191         implementations.
13192         (tdesc_type): Move make_gdb_type from here.
13193         (tdesc_type_builtin): Likewise.
13194         (tdesc_type_vector): Likewise.
13195         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13196         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13197         (make_gdb_type_union): Likewise.
13198         (make_gdb_type_flags): Likewise.
13199         (make_gdb_type_enum): Likewise.
13200         (make_gdb_type): New function.
13201         (tdesc_register_type): Use static make_gdb_type.
13202
13203 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13204
13205         * infcmd.c (default_print_one_register_info): Align natural-format
13206         column values consistently one under another.
13207         (pad_to_column): New function.
13208
13209 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13210
13211         * dwarf2read.c (dwarf2_physname): Move commment.
13212
13213 2018-02-01  Leszek Swirski  <leszeks@google.com>
13214
13215         * varobj.c (varobj_formatted_print_options): Allow recursive
13216         pretty printing if pretty printing is enabled.
13217
13218 2018-02-01  Leszek Swirski  <leszeks@google.com>
13219
13220         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13221         names after a structop as a filename.
13222
13223 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13224
13225         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13226         (arm_record_coproc_data_proc): Likewise.
13227
13228 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13229
13230         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13231
13232 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13233
13234         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13235         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13236
13237 2018-01-31  Pedro Alves  <palves@redhat.com>
13238
13239         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13240         * inflow.c (child_terminal_save_inferior): Wrap reference to
13241         tcgetpgrp in HAVE_TERMIOS_H.
13242         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13243         _WIN32.
13244         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13245         always iterate over all inferiors.
13246         (gdbsim_cntrl_c): Adjust.
13247         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13248
13249 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13250
13251         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13252         index type is objfile-owned if the element type is as well.
13253
13254 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13255
13256         GDB 8.1 released.
13257
13258 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13259
13260         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13261         "features/s390x-linux64.c".
13262         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13263         s390_linux32 and s390x_linux64.
13264         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13265         default tdesc.
13266         * s390-tdep.c: Include "features/s390-linux32.c" and
13267         "features/s390x-linux64.c".
13268         (s390_tdesc_valid): Add check for tdesc_has_registers.
13269         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13270         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13271         tdesc_s390x_linux64.
13272         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13273         tdesc_s390x_linux64 to...
13274         * s390-tdep.h: ...here.
13275
13276 2018-01-30  Pedro Alves  <palves@redhat.com>
13277
13278         PR gdb/13211
13279         * config.in, configure: Regenerate.
13280         * configure.ac: Check for getpgid.
13281         * go32-nat.c (go32_pass_ctrlc): New.
13282         (go32_target): Install it.
13283         * inf-child.c (inf_child_target): Install
13284         child_terminal_save_inferior, child_pass_ctrlc and
13285         child_interrupt.
13286         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13287         (inf_ptrace_target): No longer install it.
13288         * infcmd.c (interrupt_target_1): Adjust.
13289         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13290         (child_interrupt): Declare.
13291         (inferior::terminal_state): New.
13292         * inflow.c (struct terminal_info): Update comments.
13293         (inferior_process_group): Delete.
13294         (terminal_is_ours): Delete.
13295         (gdb_tty_state): New.
13296         (child_terminal_init): Adjust.
13297         (is_gdb_terminal, sharing_input_terminal_1)
13298         (sharing_input_terminal): New functions.
13299         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13300         Set the process's actual process group in the foreground if
13301         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13302         mark terminal as the inferior's if not sharing GDB's terminal.
13303         Don't check attach_flag.
13304         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13305         pass down a target_terminal_state.
13306         (child_terminal_save_inferior): New, factored out from ...
13307         (child_terminal_ours_1): ... this.  Handle
13308         target_terminal_state::is_ours_for_output.
13309         (child_interrupt, child_pass_ctrlc): New.
13310         (inflow_inferior_exit): Clear the inferior's terminal_state.
13311         (copy_terminal_info): Copy the inferior's terminal state.
13312         (_initialize_inflow): Remove reference to terminal_is_ours.
13313         * inflow.h (inferior_process_group): Delete.
13314         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13315         * procfs.c (procfs_target): Don't install procfs_interrupt.
13316         (procfs_interrupt): Delete.
13317         * remote.c (remote_serial_quit_handler): Adjust.
13318         (remote_interrupt): Remove ptid parameter.  Adjust.
13319         * target-delegates.c: Regenerate.
13320         * target.c: Include "terminal.h".
13321         (target_terminal::terminal_state): Rename to ...
13322         (target_terminal::m_terminal_state): ... this.
13323         (target_terminal::init): Adjust.
13324         (target_terminal::inferior): Adjust to per-inferior
13325         terminal_state.
13326         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13327         (target_terminal::ours, target_terminal::ours_for_output): Use
13328         target_terminal_is_ours_kind.
13329         (target_interrupt): Remove ptid parameter.  Adjust.
13330         (default_target_pass_ctrlc): Adjust.
13331         * target.h (target_ops::to_terminal_save_inferior): New field.
13332         (target_ops::to_interrupt): Remove ptid_t parameter.
13333         (target_interrupt): Remove ptid_t parameter.  Update comment.
13334         (target_pass_ctrlc): Update comment.
13335         * target/target.h (target_terminal_state): New scoped enum,
13336         factored out of ...
13337         (target_terminal::terminal_state): ... here.
13338         (target_terminal::inferior): Update comments.
13339         (target_terminal::restore_inferior): New.
13340         (target_terminal::is_inferior, target_terminal::is_ours)
13341         (target_terminal::is_ours_for_output): Adjust.
13342         (target_terminal::scoped_restore_terminal_state): Adjust to
13343         rename, and call restore_inferior() instead of inferior().
13344         (target_terminal::scoped_restore_terminal_state::m_state): Change
13345         type.
13346         (target_terminal::terminal_state): Rename to ...
13347         (target_terminal::m_terminal_state): ... this and change type.
13348
13349 2018-01-30  Pedro Alves  <palves@redhat.com>
13350
13351         * linux-nat.c (wait_for_signal): New function.
13352         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13353         directly.
13354         (async_terminal_is_ours)
13355         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13356         (linux_nat_add_target): Don't override
13357         to_terminal_inferior/to_terminal_ours.
13358
13359 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13360
13361         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13362
13363 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13364
13365         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13366         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13367         dwarf2_per_objfile_free here.
13368         (dwarf2_per_objfile_free): Remove.
13369         (_initialize_dwarf2_read): Don't register
13370         dwarf2_per_objfile_free as a registry cleanup.
13371
13372 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13373
13374         Avoid compilation errors in MinGW native builds
13375
13376         The error is triggered by including python-internal.h, and the
13377         error message is:
13378
13379              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13380                       from build-gnulib/import/math.h:27,
13381                       from d:/usr/Python26/include/pyport.h:235,
13382                       from d:/usr/Python26/include/Python.h:58,
13383                       from python/python-internal.h:94,
13384                       from python/py-arch.c:24:
13385              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13386         using ::hypot;
13387                 ^~~~~
13388
13389         This happens because Python headers define 'hypot' to expand t
13390         '_hypot' in the Windows builds.
13391         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13392         'hypoth'.  This avoids a compilation error.
13393
13394 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13395
13396         * MAINTAINERS (Write After Approval): Fix ordering.
13397
13398 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13399
13400         * MAINTAINERS (Write After Approval): Add Alan Hayward.
13401
13402 2018-01-26  Alan Modra  <amodra@gmail.com>
13403
13404         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
13405         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
13406         Remove nop.  Make const.  Comment.
13407         (powerpc32_plt_stub_so_2): New.
13408         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
13409         Correct count.  Update uses.
13410         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
13411         Move common code reading PLT entry word.  Correct
13412         powerpc32_plt_stub PLT address calculation.
13413         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
13414         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
13415         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
13416         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
13417         (ppc64_standard_linkage8): Likewise.
13418         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
13419         Correct insns description.
13420         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
13421
13422 2018-01-24  Pedro Alves  <palves@redhat.com>
13423
13424         GCC PR libstdc++/83906
13425         * gdbtypes.c (operator==(const dynamic_prop &,
13426         const dynamic_prop &)): New.
13427         (operator==(const range_bounds &, const range_bounds &)): New.
13428         (check_types_equal): Use them instead of memcmp.
13429         * gdbtypes.h (operator==(const dynamic_prop &,
13430         const dynamic_prop &)): Declare.
13431         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
13432         (operator==(const range_bounds &, const range_bounds &)): Declare.
13433         (operator!=(const range_bounds &, const range_bounds &)): Declare.
13434
13435 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13436
13437         * s390-linux-tdep.c (s390_record_address_mask)
13438         (s390_record_calc_disp_common, s390_record_calc_disp)
13439         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13440         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13441         (s390_process_record): Move to s390-tdep.c.
13442         (s390_linux_init_abi_any): Adjust.
13443         * s390-tdep.c (s390_record_address_mask)
13444         (s390_record_calc_disp_common, s390_record_calc_disp)
13445         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13446         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13447         (s390_process_record): Moved from s390-linux-tdep.c
13448         (s390_gdbarch_init): Adjust.
13449
13450 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13451
13452         * s390-linux-nat.c (s390-tdep.h): New include.
13453         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
13454         (HFILES_NO_SRCDIR): Add s390-tdep.h.
13455         (ALLDEPFILES): Add s390-tdep.c.
13456         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
13457         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
13458         * s390-tdep.h: ...this.  New file.
13459         * s390-linux-tdep.c (s390-tdep.h): New include.
13460         (_initialize_s390_tdep): Rename to...
13461         (_initialize_s390_linux_tdep): ...this and adjust.
13462         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
13463         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
13464         s390-tdep.h.
13465         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
13466         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
13467         (s390_is_partial_instruction, s390_software_single_step)
13468         (is_non_branch_ril, s390_displaced_step_copy_insn)
13469         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
13470         (s390_prologue_data, s390_addr, s390_store, s390_load)
13471         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
13472         (s390_register_call_saved, s390_guess_tracepoint_registers)
13473         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
13474         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
13475         (s390_pseudo_register_name, s390_pseudo_register_type)
13476         (s390_pseudo_register_read, s390_pseudo_register_write)
13477         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
13478         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
13479         (s390_addr_bits_remove, s390_address_class_type_flags)
13480         (s390_address_class_type_flags_to_name)
13481         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
13482         (s390_function_arg_float, s390_function_arg_vector)
13483         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
13484         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
13485         (s390_frame_align, s390_register_return_value, s390_return_value)
13486         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
13487         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
13488         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
13489         (s390_trad_frame_prev_register, s390_unwind_cache)
13490         (s390_prologue_frame_unwind_cache)
13491         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
13492         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
13493         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
13494         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
13495         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
13496         (s390_frame_base_address, s390_local_base_address)
13497         (s390_frame_base, s390_gcc_target_options)
13498         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
13499         (s390_validate_reg_range, s390_tdesc_valid)
13500         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
13501         * s390-tdep.c: ...this.  New file.
13502
13503 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13504
13505         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
13506         (s390_process_record, s390_gdbarch_tdep_alloc)
13507         (s390_linux_init_abi_any): Use/set new hook.
13508
13509 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13510
13511         * s390-linux-tdep.c (osabi.h): New include.
13512         (s390_linux_init_abi_31, s390_linux_init_abi_64)
13513         (s390_linux_init_abi_any): New functions.
13514         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
13515
13516 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13517
13518         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
13519         tdesc_has_registers check
13520
13521 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13522
13523         * s390-linux-tdep.c (s390_tdesc_valid): New function.
13524         (s390_validate_reg_range): New macro.
13525         (s390_gdbarch_init): Adjust.
13526
13527 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13528
13529         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
13530         (s390_gdbarch_tdep_alloc): Adjust.
13531         (s390_gdbarch_init): Adjust.
13532
13533 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13534
13535         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
13536         <have_tdb>: Change type to bool.
13537         (s390_gdbarch_tdep_alloc): Adjust.
13538         (s390_gdbarch_init): Adjust.
13539
13540 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13541
13542         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
13543         (gdbarch_tdep) <have_upper, have_vx>: New fields.
13544         (s390_gdbarch_tdep_alloc): New function.
13545         (s390_gdbarch_init): Allocate tdep at start and use its fields
13546         instead of separate variables.
13547
13548 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13549
13550         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
13551         when looking for cached gdbarch and add comment for remaining.
13552
13553 2018-01-22  Pedro Alves  <palves@redhat.com>
13554             Sergio Durigan Junior  <sergiodj@redhat.com>
13555
13556         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
13557         case.
13558
13559 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
13560
13561         * MAINTAINERS: Update my company e-mail address.
13562
13563 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13564
13565         * regcache.c (cooked_write_test): New function.
13566         (_initialize_regcache): Register the test.
13567
13568 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13569
13570         * ia64-tdep.c (ia64_pseudo_register_read): Call
13571         regcache->cooked_read instead of regcache_cooked_read_unsigned.
13572         * m32c-tdep.c (m32c_cat_read): Likewise.
13573         (m32c_r3r2r1r0_read): Likewise.
13574         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13575         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13576
13577 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13578
13579         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
13580         method raw_read instead of regcache_raw_read.
13581         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13582         * arm-tdep.c (arm_neon_quad_read): Likewise.
13583         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13584         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13585         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13586         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
13587         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13588         (i386_pseudo_register_read_into_value): Likewise.
13589         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13590         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13591         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13592         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
13593         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
13594         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
13595         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13596         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
13597         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
13598
13599 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13600
13601         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
13602         * configure.tgt: Remove target mt.
13603         * mt-tdep.c: Remove.
13604         * regcache.c (cooked_read_test): Remove the check for mt.
13605
13606 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13607
13608         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
13609         instead of gdbarch_pseudo_register_read_value.
13610
13611 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13612
13613         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
13614         language is Ada.
13615
13616 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13617
13618         * linespec.c (create_sals_line_offset): Remove code that preserved
13619         the symtab_and_line's line number.
13620
13621 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13622
13623         * varobj.c (varobj_create): Don't set valid_block when creating a
13624         floating varobj.
13625
13626 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13627
13628         * varobj.c (varobj_create): Remove out of date comment.
13629
13630 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13631
13632         PR mi/20395
13633         * ada-exp.y (write_var_from_sym): Pass extra parameter when
13634         updating innermost block.
13635         * parse.c (innermost_block_tracker::update): Take extra type
13636         parameter, and check types match before updating innermost block.
13637         (write_dollar_variable): Update innermost block for registers.
13638         * parser-defs.h (enum innermost_block_tracker_type): New enum.
13639         (innermost_block_tracker::innermost_block_tracker): Initialise
13640         m_types member.
13641         (innermost_block_tracker::reset): Take type parameter.
13642         (innermost_block_tracker::update): Take type parameter, and pass
13643         type through as needed.
13644         (innermost_block_tracker::m_types): New member.
13645         * varobj.c (varobj_create): Pass type when reseting innermost
13646         block.
13647
13648 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13649
13650         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
13651         * ada-lang.c (resolve_subexp): Likewise.
13652         * breakpoint.c (set_breakpoint_condition) Likewise.
13653         (watch_command_1) Likewise.
13654         * c-exp.y (variable): Likewise.
13655         * d-exp.y (PrimaryExpression): Likewise.
13656         * f-exp.y (variable): Likewise.
13657         * go-exp.y (variable): Likewise.
13658         * m2-exp.y (variable): Likewise.
13659         * objfiles.c (objfile::~objfile): Likewise.
13660         * p-exp.y (variable): Likewise.
13661         * parse.c (innermost_block): Change type.
13662         * parser-defs.h (class innermost_block_tracker): New.
13663         (innermost_block): Change to innermost_block_tracker.
13664         * printcmd.c (display_command): Switch to innermost_block API.
13665         (do_one_display): Likewise.
13666         * rust-exp.y (do_one_display): Likewise.
13667         * symfile.c (clear_symtab_users): Likewise.
13668         * varobj.c (varobj_create): Switch to innermost_block API, replace
13669         use of innermost_block with block stored on varobj object.
13670
13671 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13672
13673         * expression.h (innermost_block): Remove declaration.
13674         * varobj.c: Add 'parser-defs.h' include.
13675
13676 2018-01-19  Tom Tromey  <tom@tromey.com>
13677
13678         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
13679         symbols in the static and global blocks.
13680
13681 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
13682
13683         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
13684         gdb_ptrace.h, and move including gdb_wait.h ...
13685         * nat/linux-ptrace.h: ... to here.
13686
13687 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13688
13689         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
13690         inf_ptrace_detach_success.
13691         (inf_ptrace_detach_success): Add inferior parameter, use it
13692         instead of inferior_ptid, pass it to detach_inferior.
13693         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
13694         parameter.
13695         * inferior.c (detach_inferior): Add overload that takes an
13696         inferior object.
13697         * inferior.h (detach_inferior): Likewise.
13698         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
13699         use inferior_ptid, adjust call to inf_ptrace_detach_success.
13700         * linux-thread-db.c (thread_db_detach): Use inf parameter.
13701
13702 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13703
13704         * target.h (struct target_ops) <to_detach>: Add inferior
13705         parameter.
13706         (target_detach): Likewise.
13707         * target.c (dispose_inferior): Pass inferior down.
13708         (target_detach): Pass inferior down.  Assert that it is equal to
13709         the current inferior.
13710         * aix-thread.c (aix_thread_detach): Pass inferior down.
13711         * corefile.c (core_file_command): Pass current_inferior() down.
13712         * corelow.c (core_detach): Add inferior parameter.
13713         * darwin-nat.c (darwin_detach): Likewise.
13714         * gnu-nat.c (gnu_detach): Likewise.
13715         * inf-ptrace.c (inf_ptrace_detach): Likewise.
13716         * infcmd.c (detach_command): Pass current_inferior() down to
13717         target_detach.
13718         * infrun.c (follow_fork_inferior): Pass parent_inf to
13719         target_detach.
13720         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
13721         target_detach.
13722         * linux-nat.c (linux_nat_detach): Add inferior parameter.
13723         * linux-thread-db.c (thread_db_detach): Likewise.
13724         * nto-procfs.c (procfs_detach): Likewise.
13725         * procfs.c (procfs_detach): Likewise.
13726         * record.c (record_detach): Likewise.
13727         * record.h (struct inferior): Forward-declare.
13728         (record_detach): Add inferior parameter.
13729         * remote-sim.c (gdbsim_detach): Likewise.
13730         * remote.c (remote_detach_1): Likewise.
13731         (remote_detach): Likewise.
13732         (extended_remote_detach): Likewise.
13733         * sol-thread.c (sol_thread_detach): Likewise.
13734         * target-debug.h (target_debug_print_inferior_p): New macro.
13735         * target-delegates.c: Re-generate.
13736         * top.c (kill_or_detach): Pass inferior down to target_detach.
13737         * windows-nat.c (windows_detach): Add inferior parameter.
13738
13739 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13740
13741         * target.h (struct target_ops) <to_detach>: Remove args
13742         parameter.
13743         (target_detach): Likewise.
13744         * target.c (dispose_inferior): Adjust.
13745         (target_detach): Remove args parameter, adjust.
13746         * aix-thread.c (aix_thread_detach): Adjust.
13747         * corefile.c (core_file_command): Adjust.
13748         * corelow.c (core_detach): Adjust.
13749         * darwin-nat.c (darwin_detach): Adjust.
13750         * gnu-nat.c (gnu_detach): Adjust.
13751         * inf-ptrace.c (inf_ptrace_detach): Adjust.
13752         * infcmd.c (detach_command): Adjust
13753         * infrun.c (follow_fork_inferior): Adjust.
13754         (handle_vfork_child_exec_or_exit): Adjust.
13755         * linux-fork.c (linux_fork_detach): Remove args parameter.
13756         * linux-fork.h (linux_fork_detach): Likewise.
13757         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
13758         * linux-thread-db.c (thread_db_detach): Likewise.
13759         * nto-procfs.c (procfs_detach): Likewise.
13760         * procfs.c (procfs_detach): Likewise.
13761         (do_detach): Remove signo parameter.
13762         * record.c (record_detach): Remove args parameter.
13763         * record.h (record_detach): Likewise.
13764         * remote-sim.c (gdbsim_detach): Likewise.
13765         * remote.c (remote_detach_1): Likewise.
13766         (remote_detach): Likewise.
13767         (extended_remote_detach): Likewise.
13768         * sol-thread.c (sol_thread_detach): Likewise.
13769         * target-delegates.c: Re-generate.
13770         * top.c (struct qt_args) <args>: Remove field.
13771         (kill_or_detach): Don't pass args.
13772         (quit_force): Don't set args.
13773         * windows-nat.c (windows_detach): Remove args parameter.
13774
13775 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13776
13777         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
13778         (arm_linux_init_abi): Install it.
13779
13780 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13781
13782         * osabi.c (gdb_osabi_names): Extend the regexp for
13783         arm-linux-gnueabihf.
13784
13785 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13786
13787         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
13788         m_abbrevs.
13789         (abbrev_table::add_abbrev): Update.
13790         (abbrev_table::lookup_abbrev): Update.
13791
13792 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13793
13794         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
13795
13796 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
13797
13798         * compile/compile.c (compile_to_object): Convert "triplet_rx"
13799         to "std::string".
13800
13801 2018-01-17  Tom Tromey  <tom@tromey.com>
13802
13803         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
13804
13805 2018-01-17  Tom Tromey  <tom@tromey.com>
13806
13807         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
13808         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
13809         (create_array_type_with_stride): Update.
13810         * dwarf2read.c (set_die_type): Update.
13811
13812 2018-01-17  Tom Tromey  <tom@tromey.com>
13813
13814         * dwarf2read.c (delayed_method_info): Remove typedef.
13815         (dwarf2_cu::method_info): Now a std::vector.
13816         (add_to_method_list): Update.
13817         (free_delayed_list): Remove.
13818         (compute_delayed_physnames): Update.
13819         (process_full_comp_unit, process_full_type_unit): Clear the method
13820         list.  Remove cleanups.
13821         (psymtab_include_file_name): Add name_holder parameter.  Use
13822         unique_xmalloc_ptr.
13823         (dwarf_decode_lines): Update.
13824
13825 2018-01-17  Tom Tromey  <tom@tromey.com>
13826             Simon Marchi  <simon.marchi@ericsson.com>
13827
13828         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
13829         (dwarf2_per_objfile::free_cached_comp_units)
13830         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13831         (init_cutu_and_read_dies_no_follow): Update.
13832         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
13833         (dwarf2_cu::~dwarf2_cu): New.
13834         (free_heap_comp_unit, free_stack_comp_unit): Remove.
13835         (age_cached_comp_units, free_one_cached_comp_unit): Update.
13836
13837 2018-01-17  Tom Tromey  <tom@tromey.com>
13838             Simon Marchi  <simon.marchi@ericsson.com>
13839
13840         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
13841         (struct die_reader_specs) <abbrev_table>: New member.
13842         (struct abbrev_table): Add constructor.
13843         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
13844         <abbrev_obstack>: Now an auto_obstack.
13845         (abbrev_table_up): New typedef.
13846         (init_cu_die_reader): Add abbrev_table parameter.
13847         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
13848         Add result_dwo_abbrev_table.
13849         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13850         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
13851         Update.
13852         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
13853         parameter.
13854         (skip_children): Update.
13855         (abbrev_table::alloc_abbrev): Rename from
13856         abbrev_table_alloc_abbrev.
13857         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
13858         (abbrev_table::lookup_abbrev): Rename from
13859         abbrev_table_lookup_abbrev.
13860         (abbrev_table_read_table): Return abbrev_table_up.
13861         (abbrev_table_free, abbrev_table_free_cleanup)
13862         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
13863         (load_partial_dies): Update.
13864
13865 2018-01-17  Tom Tromey  <tom@tromey.com>
13866
13867         * dwarf2read.c (dwarf2_compute_name): Update comment.
13868         (read_func_scope, read_variable): Update.
13869         (new_symbol): Remove.
13870         (new_symbol_full): Rename to new_symbol.
13871
13872 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
13873
13874         PR gdb/16577
13875         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
13876         a warning instead of throwing an error, set section size to 0 and return
13877         NULL.
13878         * gdb_bfd.h (gdb_bfd_map_section): Update description.
13879
13880 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13881
13882         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
13883         std::string.
13884         (linux_ptrace_attach_fail_reason_string): Likewise.
13885         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
13886         Likewise.
13887         (linux_ptrace_attach_fail_reason_string): Likewise.
13888         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
13889
13890 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13891
13892         * linux-nat.c (linux_nat_attach): Remove xstrdup.
13893
13894 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
13895
13896         PR gdb/21559
13897         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
13898         checking for fs_base/gs_base fields in struct user_regs_struct.
13899         * configure: Regenerate.
13900
13901 2018-01-17  Yao Qi  <yao.qi@linaro.org>
13902
13903         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
13904         function.
13905         (aarch64_linux_init_abi): Install it to gdbarch hook
13906         gcc_target_options.
13907
13908 2018-01-15  Pedro Alves  <palves@redhat.com>
13909
13910         * common/signals-state-save-restore.c
13911         (save_original_signals_state): Fix typos.
13912
13913 2017-01-12  Tom Tromey  <tom@tromey.com>
13914             Sergio Durigan Junior  <sergiodj@redhat.com>
13915
13916         * Makefile.in (install-only): Install gdb-add-index.
13917
13918 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
13919
13920         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
13921
13922 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13923
13924         * infrun.c (keep_going_pass_signal): Clear step-over info when
13925         insert_breakpoints fails.
13926
13927 2018-01-11  Pedro Alves  <palves@redhat.com>
13928
13929         PR gdb/22583
13930         * infrun.c (resume): Rename to ...
13931         (resume_1): ... this.
13932         (resume): Reimplement as wrapper around resume_1.
13933
13934 2018-01-11  Pedro Alves  <palves@redhat.com>
13935
13936         PR remote/22597
13937         * remote.c (remote_parse_stop_reply): Default to the last-set
13938         general thread instead of to 'magic_null_ptid'.
13939
13940 2018-01-10  Pedro Alves  <palves@redhat.com>
13941
13942         * language.h (language_get_symbol_name_matcher): Rename ...
13943         (get_symbol_name_matcher): ... this.
13944         * language.c (language_get_symbol_name_matcher): Ditto.
13945         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
13946         callers adjusted.
13947
13948 2018-01-10  Pedro Alves  <palves@redhat.com>
13949
13950         PR gdb/22670
13951         * dwarf2read.c
13952         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
13953         Adjust to use language_get_symbol_name_matcher instead of
13954         language_defn::la_get_symbol_name_matcher.
13955         * language.c (language_get_symbol_name_matcher): If in Ada mode
13956         and the lookup name is a verbatim match, return Ada's matcher.
13957         * language.h (language_get_symbol_name_matcher): Adjust comment.
13958         (ada_lookup_name_info::verbatim_p):: New method.
13959
13960 2018-01-10  Pedro Alves  <palves@redhat.com>
13961
13962         PR gdb/22670
13963         * ada-lang.c (ada_collect_symbol_completion_matches): If the
13964         minsym's language is language_auto or language_cplus, pass down
13965         language_ada instead.
13966         * symtab.c (compare_symbol_name): Don't frob symbol language here.
13967
13968 2018-01-10  Pedro Alves  <palves@redhat.com>
13969
13970         PR gdb/22670
13971         * minsyms.c (linkage_name_str): New function.
13972         (iterate_over_minimal_symbols): Use it.
13973
13974 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13975
13976         * NEWS: Document that 'info proc' now works on FreeBSD.
13977
13978 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13979
13980         * configure.ac: Check for kinfo_getfile in libutil.
13981         * configure: Regenerate.
13982         * config.in: Regenerate.
13983         * fbsd-nat.c: Include "fbsd-tdep.h".
13984         (fbsd_fetch_cmdline): New.
13985         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
13986         rather than calling error.
13987         (fbsd_info_proc): New.
13988         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
13989         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
13990         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
13991
13992 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13993
13994         * fbsd-nat.c (struct free_deleter): Remove.
13995         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
13996
13997 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13998
13999         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14000         NULL for an empty pathname.
14001
14002 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14003
14004         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14005         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14006         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14007         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14008         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14009         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14010         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14011         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14012         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14013         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14014         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14015         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14016         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14017         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14018         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14019
14020 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14021
14022         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14023         (gnu_xfer_auxv): New function.
14024         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14025         TARGET_OBJECT_AUXV.
14026
14027 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14028             Simon Marchi  <simon.marchi@ericsson.com>
14029
14030         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14031         common/selftest.c.
14032         (COMMON_OBS): Remove selftest.o.
14033         * configure.ac: Append selftest-arch.c and common/selftest.c to
14034         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14035         * configure: Re-generated.
14036         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14037         GDB_SELF_TEST.
14038         (maintenance_info_selftests): Likewise.
14039
14040 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14041
14042         * ada-valprint.c (val_print_packed_array_elements): Use
14043         proper number of elements when printing an array indexed
14044         by an enumeration type.
14045
14046 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14047
14048         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14049         (dw2_get_file_names_reader): Adjust.
14050         (lookup_dwo_signatured_type): Adjust.
14051         (lookup_dwp_signatured_type): Adjust.
14052         (lookup_signatured_type): Adjust.
14053         (create_type_unit_group): Adjust.
14054         (get_type_unit_group): Adjust.
14055         (process_psymtab_comp_unit_reader): Adjust.
14056         (build_type_psymtabs_reader): Adjust.
14057         (scan_partial_symbols): Adjust.
14058         (add_partial_symbol): Adjust.
14059         (add_partial_subprogram): Adjust.
14060         (peek_die_abbrev): Adjust.
14061         (fixup_go_packaging): Adjust.
14062         (process_imported_unit_die): Adjust.
14063         (dwarf2_compute_name): Adjust.
14064         (dwarf2_physname): Adjust.
14065         (read_import_statement): Adjust.
14066         (handle_DW_AT_stmt_list): Adjust.
14067         (read_file_scope): Adjust.
14068         (read_func_scope): Adjust.
14069         (read_lexical_block_scope): Adjust.
14070         (read_call_site_scope): Adjust.
14071         (read_variable): Adjust.
14072         (dwarf2_rnglists_process): Adjust.
14073         (dwarf2_ranges_process): Adjust.
14074         (dwarf2_ranges_read): Adjust.
14075         (dwarf2_get_pc_bounds): Adjust.
14076         (dwarf2_record_block_ranges): Adjust.
14077         (dwarf2_add_field): Adjust.
14078         (dwarf2_add_member_fn): Adjust.
14079         (read_structure_type): Adjust.
14080         (process_structure_scope): Adjust.
14081         (read_enumeration_type): Adjust.
14082         (read_array_type): Adjust.
14083         (mark_common_block_symbol_computed): Adjust.
14084         (read_common_block): Adjust.
14085         (read_namespace_type): Adjust.
14086         (read_namespace): Adjust.
14087         (read_module_type): Adjust.
14088         (read_tag_pointer_type): Adjust.
14089         (read_tag_ptr_to_member_type): Adjust.
14090         (read_tag_string_type): Adjust.
14091         (read_subroutine_type): Adjust.
14092         (read_typedef): Adjust.
14093         (read_base_type): Adjust.
14094         (attr_to_dynamic_prop): Adjust.
14095         (read_subrange_type): Adjust.
14096         (read_unspecified_type): Adjust.
14097         (dwarf2_read_abbrevs): Adjust.
14098         (load_partial_dies): Adjust.
14099         (read_partial_die): Adjust.
14100         (find_partial_die): Adjust.
14101         (guess_partial_die_structure_name): Adjust.
14102         (fixup_partial_die): Adjust.
14103         (read_attribute_value): Adjust.
14104         (read_addr_index): Adjust.
14105         (read_addr_index_from_leb128): Adjust.
14106         (read_str_index): Adjust.
14107         (dwarf2_string_attr): Adjust.
14108         (get_debug_line_section): Adjust.
14109         (dwarf_decode_line_header): Adjust.
14110         (lnp_state_machine::check_line_address): Adjust.
14111         (dwarf_decode_lines_1): Adjust.
14112         (dwarf_decode_lines): Adjust.
14113         (dwarf2_start_symtab): Adjust.
14114         (var_decode_location): Adjust.
14115         (new_symbol_full): Adjust.
14116         (dwarf2_const_value_data): Adjust.
14117         (dwarf2_const_value_attr): Adjust.
14118         (dwarf2_const_value): Adjust.
14119         (die_type): Adjust.
14120         (die_containing_type): Adjust.
14121         (build_error_marker_type): Adjust.
14122         (lookup_die_type): Adjust.
14123         (guess_full_die_structure_name): Adjust.
14124         (anonymous_struct_prefix): Adjust.
14125         (determine_prefix): Adjust.
14126         (dwarf2_name): Adjust.
14127         (follow_die_ref_or_sig): Adjust.
14128         (follow_die_offset): Adjust.
14129         (follow_die_ref): Adjust.
14130         (follow_die_sig_1): Adjust.
14131         (follow_die_sig): Adjust.
14132         (get_signatured_type): Adjust.
14133         (get_DW_AT_signature_type): Adjust.
14134         (decode_locdesc): Adjust.
14135         (dwarf_decode_macros): Adjust.
14136         (cu_debug_loc_section): Adjust.
14137         (fill_in_loclist_baton): Adjust.
14138         (dwarf2_symbol_mark_computed): Adjust.
14139         (init_one_comp_unit): Don't assign
14140         dwarf2_cu::dwarf2_per_objfile.
14141         (set_die_type): Adjust.
14142
14143 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14144
14145         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14146         <dwarf2_per_objfile>: New field.
14147         (dwarf2_per_objfile): Remove global.
14148         (get_dwarf2_per_objfile): New function.
14149         (set_dwarf2_per_objfile): New function.
14150         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14151         dwarf2_per_objfile.
14152         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14153         (read_abbrev_offset): Likewise.
14154         (read_indirect_string): Likewise.
14155         (read_indirect_line_string): Likewise.
14156         (read_indirect_string_at_offset): Likewise.
14157         (read_indirect_string_from_dwz): Likewise.
14158         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14159         dwarf2_per_objfile.
14160         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14161         (create_all_comp_units): Change objfile parameter to
14162         dwarf2_per_objfile.
14163         (create_all_type_units): Likewise.
14164         (process_queue): Add dwarf2_per_objfile parameter.
14165         (read_and_check_comp_unit_head): Likewise.
14166         (lookup_dwo_unit_in_dwp): Likewise.
14167         (get_dwp_file): Likewise.
14168         (process_cu_includes): Likewise.
14169         (struct free_dwo_file_cleanup_data): New struct.
14170         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14171         set_dwarf2_per_objfile.
14172         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14173         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14174         context, adjust calls.
14175         (dw2_instantiate_symtab): Likewise.
14176         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14177         (dw2_get_cu): Likewise.
14178         (create_cu_from_index_list): Change objfile parameter to
14179         dwarf2_per_objfile.
14180         (create_cus_from_index_list): Get dwarf2_per_objfile from
14181         context, adjust calls.
14182         (create_cus_from_index): Likewise.
14183         (create_signatured_type_table_from_index): Change objfile
14184         parameter to dwarf2_per_objfile.
14185         (create_signatured_type_table_from_debug_names): Change objfile
14186         parameter to dwarf2_per_objfile.
14187         (create_addrmap_from_index): Likewise.
14188         (create_addrmap_from_aranges): Likewise.
14189         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14190         (dw2_setup): Remove.
14191         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14192         context.
14193         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14194         get_dwarf2_per_objfile.
14195         (dw2_forget_cached_source_info): Likewise.
14196         (dw2_map_symtabs_matching_filename): Likewise.
14197         (struct dw2_symtab_iterator) <index>: Remove.
14198         <dwarf2_per_objfile>: New field.
14199         (dw2_symtab_iter_init): Replace index parameter with
14200         dwarf2_per_objfile.
14201         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14202         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14203         (dw2_print_stats): Likewise.
14204         (dw2_dump): Likewise.
14205         (dw2_expand_symtabs_for_function): Likewise.
14206         (dw2_expand_all_symtabs): Likewise.
14207         (dw2_expand_symtabs_with_fullname): Likewise.
14208         (dw2_expand_marked_cus): Replace index and objfile parameters
14209         with dwarf2_per_objfile.
14210         (dw_expand_symtabs_matching_file_matcher): Add
14211         dwarf2_per_objfile parameter and adjust calls.
14212         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14213         adjust calls.
14214         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14215         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14216         adjust calls.
14217         (create_cus_from_debug_names_list): Replace objfile parameter
14218         with dwarf2_per_objfile and adjust calls.
14219         (create_cus_from_debug_names): Likewise.
14220         (dwarf2_read_debug_names): Likewise.
14221         (mapped_debug_names::namei_to_name): Adjust call.
14222         (dw2_debug_names_iterator::next): Likewise.
14223         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14224         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14225         (dw2_debug_names_dump): Likewise.
14226         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14227         (dw2_debug_names_expand_symtabs_matching): Likewise.
14228         (dwarf2_initialize_objfile): Likewise.
14229         (dwarf2_build_psymtabs): Likewise.
14230         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14231         this_cu.
14232         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14233         (read_and_check_comp_unit_head): Likewise.
14234         (read_abbrev_offset): Likewise.
14235         (create_debug_type_hash_table): Likewise.
14236         (create_debug_types_hash_table): Likewise.
14237         (create_all_type_units): Replace objfile parameter with
14238         dwarf2_per_objfile.
14239         (add_type_unit): Add dwarf2_per_objfile parameter.
14240         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14241         with dwarf2_per_objfile.
14242         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14243         (lookup_dwp_signatured_type): Likewise.
14244         (lookup_signatured_type): Likewise.
14245         (read_cutu_die_from_dwo): Likewise.
14246         (init_tu_and_read_dwo_dies): Likewise.
14247         (init_cutu_and_read_dies): Likewise.
14248         (init_cutu_and_read_dies_no_follow): Likewise.
14249         (allocate_type_unit_groups_table): Add objfile parameter.
14250         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14251         (get_type_unit_group): Likewise.
14252         (process_psymtab_comp_unit): Update call.
14253         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14254         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14255         (print_tu_stats): Likewise.
14256         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14257         in void* parameter.
14258         (build_type_psymtabs): Change objfile parameter to
14259         dwarf2_per_objfile.
14260         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14261         passed in void* parameter.
14262         (process_skeletonless_type_units): Change objfile parameter to
14263         dwarf2_per_objfile.
14264         (set_partial_user): Likewise.
14265         (dwarf2_build_psymtabs_hard): Likewise.
14266         (read_comp_units_from_section): Likewise.
14267         (create_all_comp_units): Likewise.
14268         (scan_partial_symbols): Update calls.
14269         (add_partial_symbol): Likewise.
14270         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14271         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14272         (process_queue): Add dwarf2_per_objfile parameter.
14273         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14274         (compute_compunit_symtab_includes): Likewise.
14275         (process_cu_includes): Add dwarf2_per_objfile parameter.
14276         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14277         (process_full_type_unit): Likewise.
14278         (process_imported_unit_die): Update call.
14279         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14280         (read_file_scope): Likewise.
14281         (allocate_dwo_file_hash_table): Add objfile parameter.
14282         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14283         (create_cus_hash_table): Likewise.
14284         (create_dwp_hash_table): Likewise.
14285         (create_dwo_unit_in_dwp_v1): Likewise.
14286         (create_dwp_v2_section): Likewise.
14287         (create_dwo_unit_in_dwp_v2): Likewise.
14288         (lookup_dwo_unit_in_dwp): Likewise.
14289         (try_open_dwop_file): Likewise.
14290         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14291         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14292         cleanup to include a reference to dwarf2_per_objfile.
14293         (open_dwp_file): Add dwarf2_per_objfile parameter.
14294         (open_and_init_dwp_file): Likewise.
14295         (get_dwp_file): Likewise.
14296         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14297         (queue_and_load_all_dwo_tus): Update call.
14298         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14299         data.
14300         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14301         (dwarf2_ranges_process): Likewise.
14302         (dwarf2_get_pc_bounds): Likewise.
14303         (mark_common_block_symbol_computed): Likewise.
14304         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14305         (dwarf2_read_abbrevs): Update call.
14306         (read_partial_die): Use dwarf2_per_objfile from cu.
14307         (find_partial_die): Likewise.
14308         (fixup_partial_die): Likewise.
14309         (read_attribute_value): Likewise.
14310         (read_indirect_string_at_offset_from): Add objfile parameter.
14311         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14312         parameter.
14313         (read_indirect_string_from_dwz): Add objfile parameter.
14314         (read_indirect_string): Add objfile parameter.
14315         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14316         (read_addr_index): Use dwarf2_per_objfile from cu.
14317         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14318         call dw2_setup.
14319         (read_str_index): Use dwarf2_per_objfile from cu.
14320         (get_debug_line_section): Likewise.
14321         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14322         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14323         (new_symbol_full): Use dwarf2_per_objfile from cu.
14324         (build_error_marker_type): Likewise.
14325         (lookup_die_type): Likewise.
14326         (determine_prefix): Likewise.
14327         (follow_die_offset): Likewise.
14328         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14329         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14330         (dwarf2_fetch_die_type_sect_off): Likewise.
14331         (dwarf2_get_die_type): Likewise.
14332         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14333         (get_signatured_type): Likewise.
14334         (get_DW_AT_signature_type): Likewise.
14335         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14336         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14337         (cu_debug_loc_section): Likewise.
14338         (fill_in_loclist_baton): Likewise.
14339         (dwarf2_symbol_mark_computed): Likewise.
14340         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14341         dwarf2_per_objfile.
14342         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14343         parameter.
14344         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14345         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14346         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14347         (set_die_type): Use dwarf2_free_objfile from cu.
14348         (get_die_type_at_offset): Likewise.
14349         (dwarf2_per_objfile_free): Don't assign global variable.
14350         (debug_names) <constructor>: Add dwarf2_per_objfile
14351         parameter, update m_debugstrlookup construction.
14352         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14353         parameter.
14354         <m_dwarf2_per_objfile>: New field.
14355         <lookup>: Use m_dwarf2_per_objfile.
14356         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14357         (psyms_seen_size): Likewise.
14358         (write_gdbindex): Replace objfile parameter with
14359         dwarf2_per_objfile.
14360         (write_debug_names): Likewise.
14361         (write_psymtabs_to_index): Likewise.
14362         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14363         calls.
14364
14365 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14366
14367         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14368         <dwarf2_per_objfile>: New field.
14369         (struct dwarf2_per_cu_data) <objfile>: Remove.
14370         <dwarf2_per_objfile>: New field.
14371         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14372         of objfile.
14373         (create_signatured_type_table_from_index): Likewise.
14374         (create_debug_type_hash_table): Likewise.
14375         (fill_in_sig_entry_from_dwo_entry): Likewise.
14376         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14377         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14378         objfile.
14379         (create_partial_symtab): Access objfile through
14380         dwarf2_per_objfile.
14381         (process_psymtab_comp_unit_reader): Likewise.
14382         (read_comp_units_from_section): Likewise.
14383         (scan_partial_symbols): Likewise.
14384         (add_partial_symbol): Likewise.
14385         (add_partial_subprogram): Likewise.
14386         (peek_die_abbrev): Likewise.
14387         (fixup_go_packaging): Likewise.
14388         (process_full_comp_unit): Likewise.
14389         (process_full_type_unit): Likewise.
14390         (process_imported_unit_die): Likewise.
14391         (dwarf2_compute_name): Likewise.
14392         (dwarf2_physname): Likewise.
14393         (read_import_statement): Likewise.
14394         (create_cus_hash_table): Assign dwarf2_physname instead of
14395         objfile.
14396         (read_func_scope): Access objfile through dwarf2_per_objfile.
14397         (read_lexical_block_scope): Likewise.
14398         (read_call_site_scope): Likewise.
14399         (read_variable): Likewise.
14400         (dwarf2_rnglists_process): Likewise.
14401         (dwarf2_ranges_process): Likewise.
14402         (dwarf2_ranges_read): Likewise.
14403         (dwarf2_record_block_ranges): Likewise.
14404         (dwarf2_add_field): Likewise.
14405         (dwarf2_add_member_fn): Likewise.
14406         (read_structure_type): Likewise.
14407         (process_structure_scope): Likewise.
14408         (read_enumeration_type): Likewise.
14409         (read_array_type): Likewise.
14410         (read_common_block): Likewise.
14411         (read_namespace_type): Likewise.
14412         (read_namespace): Likewise.
14413         (read_module_type): Likewise.
14414         (read_tag_pointer_type): Likewise.
14415         (read_tag_ptr_to_member_type): Likewise.
14416         (read_tag_string_type): Likewise.
14417         (read_subroutine_type): Likewise.
14418         (read_typedef): Likewise.
14419         (read_base_type): Likewise.
14420         (attr_to_dynamic_prop): Likewise.
14421         (read_subrange_type): Likewise.
14422         (read_unspecified_type): Likewise.
14423         (load_partial_dies): Likewise.
14424         (read_partial_die): Likewise.
14425         (find_partial_die): Likewise.
14426         (guess_partial_die_structure_name): Likewise.
14427         (fixup_partial_die): Likewise.
14428         (read_attribute_value): Likewise.
14429         (read_addr_index_from_leb128): Likewise.
14430         (dwarf2_read_addr_index): Likewise.
14431         (dwarf2_string_attr): Likewise.
14432         (lnp_state_machine::check_line_address): Likewise.
14433         (dwarf_decode_lines_1): Likewise.
14434         (dwarf_decode_lines): Likewise.
14435         (dwarf2_start_symtab): Likewise.
14436         (var_decode_location): Likewise.
14437         (new_symbol_full): Likewise.
14438         (dwarf2_const_value_data): Likewise.
14439         (dwarf2_const_value_attr): Likewise.
14440         (dwarf2_const_value): Likewise.
14441         (die_type): Likewise.
14442         (die_containing_type): Likewise.
14443         (lookup_die_type): Likewise.
14444         (guess_full_die_structure_name): Likewise.
14445         (anonymous_struct_prefix): Likewise.
14446         (dwarf2_name): Likewise.
14447         (follow_die_ref_or_sig): Likewise.
14448         (follow_die_offset): Likewise.
14449         (follow_die_ref): Likewise.
14450         (dwarf2_fetch_die_loc_sect_off): Likewise.
14451         (dwarf2_fetch_constant_bytes): Likewise.
14452         (dwarf2_fetch_die_type_sect_off): Likewise.
14453         (dwarf2_get_die_type): Likewise.
14454         (follow_die_sig): Likewise.
14455         (decode_locdesc): Likewise.
14456         (dwarf2_per_cu_objfile): Likewise.
14457         (dwarf2_per_cu_text_offset): Likewise.
14458         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
14459         objfile.
14460         (set_die_type): Access objfile through
14461         dwarf2_per_objfile.
14462
14463 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14464
14465         * valprint.c (converted_character_d): Remove typedef.
14466         (DEF_VEC_O (converted_character_d)): Remove.
14467         (count_next_character): Use std::vector.
14468         (print_converted_chars_to_obstack): Likewise.
14469         (generic_printstr): Likewise.
14470
14471 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14472
14473         * xml-support.h (struct gdb_xml_value): Add constructor.
14474         <value>: Change type to unique_xmalloc_ptr.
14475         (gdb_xml_value_s): Remove typedef.
14476         (DEF_VEC_O (gdb_xml_value_s)): Remove.
14477         (gdb_xml_element_start_handler): Change parameter type to
14478         std::vector.
14479         (xml_find_attribute): Likewise.
14480         * xml-support.c (xml_find_attribute): Change parameter type to
14481         std::vector and adjust.
14482         (gdb_xml_values_cleanup): Remove.
14483         (gdb_xml_parser::start_element): Adjust to std::vector.
14484         (xinclude_start_include): Change paraeter type to std::vector
14485         and adjust.
14486         * btrace.c (check_xml_btrace_version): Likewise.
14487         (parse_xml_btrace_block): Likewise.
14488         (parse_xml_btrace_pt_config_cpu): Likewise.
14489         (parse_xml_btrace_pt): Likewise.
14490         (parse_xml_btrace_conf_bts): Likewise.
14491         (parse_xml_btrace_conf_pt): Likewise.
14492         * memory-map.c (memory_map_start_memory): Likewise.
14493         (memory_map_start_property): Likewise.
14494         * osdata.c (osdata_start_osdata): Likewise.
14495         (osdata_start_item): Likewise.
14496         (osdata_start_column): Likewise.
14497         * remote.c (start_thread): Likewise.
14498         * solib-aix.c (library_list_start_library): Likewise.
14499         (library_list_start_list): Likewise.
14500         * solib-svr4.c (library_list_start_library): Likewise.
14501         (svr4_library_list_start_list): Likewise.
14502         * solib-target.c (library_list_start_segment): Likewise.
14503         (library_list_start_section): Likewise.
14504         (library_list_start_library): Likewise.
14505         (library_list_start_list): Likewise.
14506         * tracepoint.c (traceframe_info_start_memory): Likewise.
14507         (traceframe_info_start_tvar): Likewise.
14508         * xml-syscall.c (syscall_start_syscall): Likewise.
14509         * xml-tdesc.c (tdesc_start_target): Likewise.
14510         (tdesc_start_feature): Likewise.
14511         (tdesc_start_reg): Likewise.
14512         (tdesc_start_union): Likewise.
14513         (tdesc_start_struct): Likewise.
14514         (tdesc_start_flags): Likewise.
14515         (tdesc_start_enum): Likewise.
14516         (tdesc_start_field): Likewise.
14517         (tdesc_start_enum_value): Likewise.
14518         (tdesc_start_vector): Likewise.
14519
14520 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14521
14522         * extension.h (struct xmethod_worker) <clone>: Remove.
14523         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
14524         Remove.
14525         (python_xmethod_worker::clone): Remove.
14526         * valops.c (find_overload_match): Use std::move instead of
14527         clone.
14528
14529 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14530
14531         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
14532         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
14533         <free_xmethod_worker_data>: Remove.
14534         <get_matching_xmethod_workers>: Chance VEC to std::vector.
14535         <get_xmethod_arg_types>: Remove.
14536         <get_xmethod_result_type>: Remove.
14537         <invoke_xmethod>: Remove.
14538         * extension.c (new_xmethod_worker): Remove.
14539         (clone_xmethod_worker): Remove.
14540         (get_matching_xmethod_workers): Return void, pass std::vector by
14541         pointer.
14542         (get_xmethod_arg_types): Rename to...
14543         (xmethod_worker::get_arg_types): ... this, and adjust.
14544         (get_xmethod_result_type): Rename to...
14545         (xmethod_worker::get_result_type): ... this, and adjust.
14546         (invoke_xmethod): Remove.
14547         (free_xmethod_worker): Remove.
14548         (free_xmethod_worker_vec): Remove.
14549         * extension.h (enum ext_lang_rc): Move here from
14550         extension-priv.h.
14551         (struct xmethod_worker): Add constructor and destructor.
14552         <data>: Remove.
14553         <value>: Remove.
14554         <invoke, clone, do_get_result_type, do_get_arg_types>: New
14555         virtual pure methods.
14556         <get_arg_types, get_result_type>: New methods.
14557         (xmethod_worker_ptr): Remove typedef.
14558         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
14559         (xmethod_worker_vec): Remove typedef.
14560         (xmethod_worker_up): New typedef.
14561         (invoke_xmethod): Remove.
14562         (clone_xmethod_worker): Remove.
14563         (free_xmethod_worker): Remove.
14564         (free_xmethod_worker_vec): Remove.
14565         (get_xmethod_arg_types): Remove.
14566         (get_xmethod_result_type): Remove.
14567         * valops.c (find_method_list): Use std::vector, don't use
14568         intermediate vector.
14569         (value_find_oload_method_list): Use std::vector.
14570         (find_overload_match): Use std::vector.
14571         (find_oload_champ): Use std::vector.
14572         * value.c (value_free): Use operator delete.
14573         (value_of_xmethod): Rename to...
14574         (value_from_xmethod): ... this.  Don't assign
14575         xmethod_worker::value, take rvalue-reference.
14576         (result_type_of_xmethod): Adjust.
14577         (call_xmethod): Adjust.
14578         * value.h: Include extension.h.
14579         (struct xmethod_worker): Don't forward-declare.
14580         (value_of_xmethod): Rename to...
14581         (value_from_xmethod): ... this, take rvalue-reference.
14582         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
14583         (struct python_xmethod_worker): ... this, add constructor and
14584         destructor.
14585         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
14586         (gdbpy_free_xmethod_worker_data): Rename to...
14587         (python_xmethod_worker::~python_xmethod_worker): ... this and
14588         adjust.
14589         (gdbpy_clone_xmethod_worker_data): Rename to...
14590         (python_xmethod_worker::clone): ... this and adjust.
14591         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
14592         temporary vector.
14593         (gdbpy_get_xmethod_arg_types): Rename to...
14594         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
14595         (gdbpy_get_xmethod_result_type): Rename to...
14596         (python_xmethod_worker::do_get_result_type): ... this and
14597         adjust.
14598         (gdbpy_invoke_xmethod): Rename to...
14599         (python_xmethod_worker::invoke): ... this and adjust.
14600         (new_python_xmethod_worker): Rename to...
14601         (python_xmethod_worker::python_xmethod_worker): ... this and
14602         adjust.
14603         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
14604         Remove.
14605         (gdbpy_free_xmethod_worker_data): Remove.
14606         (gdbpy_get_matching_xmethod_workers): Use std::vector.
14607         (gdbpy_get_xmethod_arg_types): Remove.
14608         (gdbpy_get_xmethod_result_type): Remove.
14609         (gdbpy_invoke_xmethod): Remove.
14610         * python/python.c (python_extension_ops): Remove obsolete
14611         callbacks.
14612
14613 2018-01-05  Pedro Alves  <palves@redhat.com>
14614
14615         PR gdb/18653
14616         * common/signals-state-save-restore.c
14617         (save_original_signals_state): New parameter 'quiet'.  Warn if we
14618         find a custom handler preinstalled, instead of internal erroring.
14619         But only warn if !quiet.
14620         * common/signals-state-save-restore.h
14621         (save_original_signals_state): New parameter 'quiet'.
14622         * main.c (captured_main_1): Move save_original_signals_state call
14623         after option handling, and pass QUIET.
14624
14625 2018-01-05  Pedro Alves  <palves@redhat.com>
14626
14627         * spu-tdep.c (spu_catch_start): Pass
14628         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
14629
14630 2018-01-05  Pedro Alves  <palves@redhat.com>
14631
14632         PR gdb/22670
14633         * ada-lang.c (literal_symbol_name_matcher): New function.
14634         (ada_get_symbol_name_matcher): Use it for
14635         symbol_name_match_type::SEARCH_NAME.
14636         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
14637         it down instead of assuming symbol_name_match_type::FULL.
14638         * block.h (block_lookup_symbol): New parameter 'match_type'.
14639         * c-valprint.c (print_unpacked_pointer): Use
14640         lookup_symbol_search_name instead of lookup_symbol.
14641         * compile/compile-object-load.c (get_out_value_type): Pass down
14642         symbol_name_match_type::SEARCH_NAME.
14643         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
14644         symbol_name_match_type::FULL.
14645         * cp-support.c (cp_get_symbol_name_matcher): Handle
14646         symbol_name_match_type::SEARCH_NAME.
14647         * infrun.c (insert_exception_resume_breakpoint): Use
14648         lookup_symbol_search_name.
14649         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
14650         * psymtab.c (maintenance_check_psymtabs): Use
14651         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
14652         * stack.c (print_frame_args): Use lookup_symbol_search_name and
14653         SYMBOL_SEARCH_NAME.
14654         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
14655         if symbol_name_match_type::SEARCH_NAME.
14656         (lookup_symbol_in_language): Pass down
14657         symbol_name_match_type::FULL.
14658         (lookup_symbol_search_name): New.
14659         (lookup_language_this): Pass down
14660         symbol_name_match_type::SEARCH_NAME.
14661         (lookup_symbol_aux, lookup_local_symbol): New parameter
14662         'match_type'.  Pass it down.
14663         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
14664         (lookup_symbol_search_name): New declaration.
14665         (lookup_symbol_in_block): New 'match_type' parameter.
14666
14667 2018-01-05  Pedro Alves  <palves@redhat.com>
14668
14669         PR gdb/22670
14670         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
14671         ada_lookup_symbol.
14672         (ada_lookup_symbol): Reimplement in terms of
14673         ada_lookup_symbol_list, bits factored out from
14674         ada_lookup_encoded_symbol.
14675
14676 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14677
14678         * ada-exp.y (write_object_renaming): When subscripting an array
14679         using a symbol as the index, pass the block in call to
14680         ada_lookup_encoded_symbol when looking that symbol up.
14681
14682 2018-01-05  Jerome Guitton  <guitton@adacore.com>
14683
14684         * ada-lang.c (ada_array_length): Use ada_index_type instead of
14685         TYPE_INDEX_TYPE.
14686
14687 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14688
14689         * ada-lang.c (ada_to_fixed_value_create): Add handling of
14690         the case where VALUE_LVAL (val0) is not lval_memory.
14691
14692 2018-01-05  Xavier Roirand  <roirand@adacore.com>
14693
14694         * ada-valprint.c (print_optional_low_bound): Handle
14695         character-indexed array printing like boolean-indexed array
14696         printing.
14697
14698 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14699
14700         * NEWS: Create a new section for the next release branch.
14701         Rename the section of the current branch, now that it has
14702         been cut.
14703
14704 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14705
14706         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
14707         * version.in: Bump version to 8.1.50.DATE-git.
14708
14709 2018-01-03  Xavier Roirand  <roirand@adacore.com>
14710
14711         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
14712         Add field.
14713         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
14714         Add field.
14715         (default_exception_support_info) <catch_handlers_sym>: Add field.
14716         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
14717         (ada_exception_name_addr_1): Add "catch handlers" handling.
14718         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
14719         Update all callers.
14720         (create_excep_cond_exprs) <ex>: Add parameter.
14721         (re_set_exception): Update create_excep_cond_exprs call.
14722         (print_it_exception, print_one_exception, print_mention_exception)
14723         (print_recreate_exception): Add "catch handler" handling.
14724         (allocate_location_catch_handlers, re_set_catch_handlers)
14725         (check_status_catch_handlers, print_it_catch_handlers)
14726         (print_one_catch_handlers, print_mention_catch_handlers)
14727         (print_recreate_catch_handlers): New function.
14728         (catch_handlers_breakpoint_ops): New variable.
14729         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
14730         Add parameter.  Add "catch handler" handling.
14731         (ada_exception_sym_name, ada_exception_breakpoint_ops):
14732         Add "catch handler" handling.
14733         (ada_exception_catchpoint_cond_string): Add "catch handler"
14734         handling.
14735         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
14736         call.
14737         (catch_ada_handlers_command): New function.
14738         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
14739         operations structure.
14740         (_initialize_ada_language): Add "catch handlers" command entry.
14741         * NEWS: Document "catch handlers" feature.
14742
14743 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14744
14745         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
14746         account when creating the array type of the slice.
14747         (ada_value_slice): Likewise.
14748
14749 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14750
14751         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
14752         New enum value.
14753         (create_array_type_with_stride): Add byte_stride_prop parameter.
14754         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
14755         New parameter.  Update all callers in this file.
14756         (array_type_has_dynamic_stride): New function.
14757         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
14758         of arrays with dynamic byte strides.
14759         * dwarf2read.c (read_array_type): Add support for dynamic
14760         DW_AT_byte_stride attributes.
14761
14762 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14763
14764         * dwarf2read.c (read_unspecified_type): Treat
14765         DW_TAG_enumeration_type DIEs from Ada units as stubs.
14766
14767 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14768
14769         Update copyright year range in all GDB files.
14770
14771 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
14772
14773         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
14774         and gdb/testsuite/gdb.base/step-line.c.
14775
14776 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14777
14778         * copyright.py (main): Dump the contents of
14779         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
14780         even if BY_HAND is empty.
14781
14782 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14783
14784         * top.c (print_gdb_version): Update Copyright year in version
14785         message.
14786
14787 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14788
14789         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
14790
14791 For older changes see ChangeLog-2017.
14792 \f
14793 Local Variables:
14794 mode: change-log
14795 left-margin: 8
14796 fill-column: 74
14797 version-control: never
14798 coding: utf-8
14799 End: