gdb/riscv: Fix register access for register aliases
[external/binutils.git] / gdb / ChangeLog
1 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
2
3         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
4         register names.
5         (struct register_alias): Rename to...
6         (struct riscv_register_alias): ...this, and update comment.
7         (riscv_register_aliases): Update type, and alias names.  Remove
8         CSR names from this list.
9         (riscv_register_name): Use riscv_gdb_reg_names for int and float
10         register names.  Add an extra assertion.
11         (riscv_is_regnum_a_named_csr): New function.
12         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
13
14 2018-10-22  Jim Wilson  <jimw@sifive.com>
15
16         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
17         FP reg smaller than FP reg size, and fill with -1 instead of 0.
18
19         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
20         (riscv_register_type): Use them.
21         (riscv_print_one_register_info): Handle union of floats same as float.
22         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
23         riscv_fpreg_q_type fields.
24
25 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
26
27         * gdbarch.sh (gdbarch_num_cooked_regs): New.
28         * gdbarch.h: Re-generate.
29         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
30         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
31         * eval.c (evaluate_subexp_standard): Likewise.
32         * findvar.c (value_of_register): Likewise.
33         (value_of_register_lazy): Likewise.
34         (address_from_register): Likewise.
35         * frame.c (get_frame_register_bytes): Likewise.
36         * gdbarch-selftests.c (register_to_value_test): Likewise.
37         * h8300-tdep.c (h8300_register_type): Likewise.
38         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
39         (i386_svr4_reg_to_regnum): Likewise.
40         * infcmd.c (default_print_registers_info): Likewise.
41         (registers_info): Likewise.
42         (print_vector_info): Likewise.
43         (default_print_float_info): Likewise.
44         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
45         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
46         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
47         (mi_cmd_data_list_changed_registers): Likewise.
48         (mi_cmd_data_list_register_values): Likewise.
49         (mi_cmd_data_write_register_values): Likewise.
50         (mi_cmd_trace_frame_collected): Likewise.
51         * mips-tdep.c (print_gp_register_row): Likewise.
52         (mips_print_registers_info): Likewise.
53         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
54         * regcache.c (init_regcache_descr): Likewise.
55         (register_size): Likewise.
56         (register_dump::dump): Likewise.
57         (cooked_read_test): Likewise.
58         (cooked_write_test): Likewise.
59         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
60         (rs6000_gdbarch_init): Likewise.
61         * stabsread.c (stab_reg_to_regnum): Likewise.
62         * stack.c (info_frame_command): Likewise.
63         * target-descriptions.c (tdesc_register_name): Likewise.
64         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
65         * tui/tui-regs.c (tui_show_register_group): Likewise.
66         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
67         (user_reg_map_regnum_to_name): Likewise.
68         (value_of_user_reg): Likewise.
69         (maintenance_print_user_registers): Likewise.
70         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
71         (xtensa_register_name): Likewise.
72         (xtensa_register_type): Likewise.
73         (xtensa_reg_to_regnum): Likewise.
74         (xtensa_pseudo_register_read): Likewise.
75         (xtensa_pseudo_register_write): Likewise.
76
77 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
78
79         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
80         correctly-sized buffer with raw_read.
81         (amd64_pseudo_register_write): Use correctly-sized buffer for
82         raw_read/raw_write.
83
84 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
85
86         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
87         in add_prefix_cmd of set print type.
88
89 2018-10-19  Tom Tromey  <tom@tromey.com>
90
91         PR tui/18388:
92         * NEWS: Mention tabset deprecation.
93         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
94         (update_tab_width): New function.
95         (tui_set_tab_width, tui_show_tab_width): New functions.
96         (tui_set_tab_width_command): Use update_tab_width.
97         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
98         Add new "set tui tab-width" command.
99         * tui/tui-source.c (tui_set_source_content): Update.
100         * tui/tui-disasm.c (tui_set_disassem_content): Update.
101         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
102         Don't declare.
103         (tui_tab_width): Declare.
104         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
105         (tui_set_default_tab_len): Remove.
106
107 2018-10-19  Tom Tromey  <tom@tromey.com>
108
109         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
110         (key_is_backspace, tui_getc): Don't declare.
111         * tui/tui-io.c (key_is_start_sequence): Now static.
112         (key_is_end_sequence, key_is_backspace): Remove.
113         (tui_getc): Now static.
114
115 2018-10-19  Tom Tromey  <tom@tromey.com>
116
117         * symfile.c (reread_symbols): Clear "static_links".
118
119 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
120
121         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
122         define.
123         (aarch64_linux_sigframe_init): Extra boundary checks.
124
125 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
126
127         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
128         the possibly non-existent tdesc type 'vec128', but the type of raw
129         register v16 instead.
130
131 2018-10-19  Gary Benson <gbenson@redhat.com>
132
133         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
134
135 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
136
137         PR cli/23785
138         * cli/cli-dump.c (restore_binary_file): Check if "file" is
139         NULL.
140
141 2018-10-17  Paul Koning  <paul_koning@dell.com>
142
143         * charset.c (convert_between_encodings): Fix unsigned overflow.
144
145 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
146
147         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
148         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
149         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
150         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
151         New functions.
152         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
153         and fbsd_info_proc_mappings_header.
154         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
155         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
156         New.
157
158 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
159
160         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
161         Solaris Maintainer.
162
163 2018-10-15  Tom Tromey  <tom@tromey.com>
164
165         * tui/tui.c (strcat_to_buf): Remove casts.
166         * tui/tui-winsource.c (tui_show_source_line)
167         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
168         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
169         * tui/tui-windata.c (tui_first_data_item_displayed)
170         (tui_delete_data_content_windows, tui_erase_data_content)
171         (tui_display_all_data, tui_display_data_from)
172         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
173         * tui/tui-win.c (tui_set_win_height)
174         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
175         casts.
176         * tui/tui-win.c (tui_resize_all): Remove casts.
177         (tui_scroll_backward_command, tui_set_focus)
178         (tui_set_tab_width_command): Likewise.
179         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
180         * tui/tui-regs.c (tui_show_register_group): Remove cast.
181         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
182         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
183         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
184         Remove casts.
185
186 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
187
188         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
189         AArch64/ARM maintainer.
190
191 2018-10-11  Gary Benson <gbenson@redhat.com>
192
193         * interps.h (interp::m_name): Make private and mutable.
194         * interps.c (interp::~interp): Free m_name.
195
196 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
197             Simon Marchi <simark@simark.ca>
198
199         * README (`configure' options): Add documentation for new
200         "--enable-unit-tests" option.
201         * acinclude.m4: Include "selftest.m4".
202         * configure: Regenerate.
203         * configure.ac: Use "GDB_AC_SELFTEST".
204         * maint.c (maintenance_selftest): Update message informing
205         that selftests have been disabled.
206         (maintenance_info_selftests): Likewise.
207         * selftest.m4: New file.
208
209 2018-10-10  Gary Benson <gbenson@redhat.com>
210
211         * remote.c (remote_target::remote_send_printf): Add
212         missing va_end found by Coverity.
213
214 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
215
216         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
217
218 2018-10-09  Tom Tromey  <tom@tromey.com>
219
220         * configure: Rebuild.
221         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
222         * NEWS: Update --enable-ubsan documentation.
223
224 2018-10-09  Gary Benson <gbenson@redhat.com>
225
226         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
227         found by Coverity.
228
229 2018-10-08  Tom Tromey  <tom@tromey.com>
230
231         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
232         variable.
233         (riscv_fbsd_init_abi): Likewise.
234
235 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
236         * valops.c (value_struct_elt_for_reference): Rename local variable
237         to work around the shadowing a previous local warning.
238
239 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
240
241         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
242         * NEWS: Mention new FreeBSD/riscv native configuration.
243         * configure.host: Add riscv*-*-freebsd*.
244         * configure.nat: Likewise.
245         * riscv-fbsd-nat.c: New file.
246
247 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
248
249         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
250         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
251         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
252         * NEWS: Mention new FreeBSD/riscv target.
253         * configure.tgt: Add riscv*-*-freebsd*.
254         * riscv-fbsd-tdep.c: New file.
255         * riscv-fbsd-tdep.h: New file.
256
257 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
258
259         * regcache.h (struct regcache_map_entry): Note that this type can
260         be used with traditional frame caches.
261         * trad-frame.c (trad_frame_set_reg_regmap): New.
262         * trad-frame.h (trad_frame_set_reg_regmap): New.
263
264 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
265
266         PR c++/16841
267         * valops.c (get_virtual_base_offset): New function.
268         (value_struct_elt_for_reference): Use it to get virtual base offset
269         and add it in calculating class member address.
270
271 2018-10-08   John Darrington <john@darrington.wattle.id.au>
272
273     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
274       (check_producer): Check if the producer is codewarrior.
275       (producer_is_codewarrior): New function.
276       (lnp_state_machine::record_line): Ignore is_stmt flag for records
277        produced by codewarrior.
278       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
279
280 2018-10-06  Tom Tromey  <tom@tromey.com>
281
282         PR python/19399:
283         * python/py-inferior.c: Add "architecture" entry.
284         (infpy_architecture): New function.
285
286 2018-10-06  Tom Tromey  <tom@tromey.com>
287
288         PR python/21765:
289         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
290         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
291         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
292         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
293
294 2018-10-06  Tom Tromey  <tom@tromey.com>
295
296         PR build/17077:
297         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
298         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
299         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
300         #include.
301
302 2018-10-06  Tom Tromey  <tom@tromey.com>
303
304         * python/py-breakpoint.c (bppy_get_location): Handle a
305         bp_breakpoint without a location.
306
307 2018-10-06  Tom Tromey  <tom@tromey.com>
308
309         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
310         (_RegEx): Reformat help text.
311         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
312         (AnyCallerIs, AnyCallerMatches): Reformat help text.
313         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
314         text.
315         * python/lib/gdb/command/xmethods.py (InfoXMethod)
316         (EnableXMethod, DisableXMethod): Remove help indentation.
317         Capitalize meta-syntactic variables.
318         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
319         (EnableUnwinder, DisableUnwinder): Remove help indentation.
320         Capitalize meta-syntactic variables.
321         * python/lib/gdb/command/explore.py (ExploreCommand)
322         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
323         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
324         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
325         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
326         Remove help indentation.
327         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
328         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
329         (DisableFrameFilter, SetFrameFilterPriority)
330         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
331
332 2018-10-06  Tom Tromey  <tom@tromey.com>
333
334         PR tui/28819:
335         * tui/tui-io.c (gdb_wgetch): New function.
336         (tui_mld_getc, tui_getc): Use it.
337
338 2018-10-05  Tom Tromey  <tom@tromey.com>
339
340         * sol-thread.c (sol_thread_target::wait): Rename inner
341         "save_ptid".
342
343 2018-10-04  Tom Tromey  <tom@tromey.com>
344
345         * configure: Rebuild.
346         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
347
348 2018-10-04  Tom Tromey  <tom@tromey.com>
349
350         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
351         declaration of "block".
352
353 2018-10-04  Tom Tromey  <tom@tromey.com>
354
355         * common/filestuff.c (fdwalk): Remove inner declaration of
356         "result".
357
358 2018-10-04  Tom Tromey  <tom@tromey.com>
359
360         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
361         "structs_addr" and hoist declaration.
362
363 2018-10-04  Tom Tromey  <tom@tromey.com>
364
365         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
366         variable "size".
367
368 2018-10-04  Tom Tromey  <tom@tromey.com>
369
370         * mdebugread.c (parse_partial_symbols): Use std::string.
371
372 2018-10-04  Tom Tromey  <tom@tromey.com>
373
374         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
375         * p-valprint.c (pascal_val_print): Split inner "i" variable.
376         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
377         header.
378         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
379         more inner scope.
380         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
381         * varobj.c (varobj_update): Rename inner "newobj",
382         "type_changed".
383         * valprint.c (generic_emit_char): Rename inner "buf".
384         * valops.c (find_overload_match): Rename inner "temp".
385         (value_struct_elt_for_reference): Declare "v" in more inner
386         scope.
387         * v850-tdep.c (v850_push_dummy_call): Rename "len".
388         * unittests/array-view-selftests.c (run_tests): Rename inner
389         "vec".
390         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
391         header.
392         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
393         "tsv" in more inner scope.
394         (print_one_static_tracepoint_marker): Rename inner
395         "tuple_emitter".
396         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
397         (tic6x_push_dummy_call): Don't redeclare "addr".
398         * target-float.c: Declare "dto" lower.
399         * symtab.c (lookup_local_symbol): Rename inner "sym".
400         (find_pc_sect_line): Rename inner "pc".
401         * stack.c (print_frame): Don't redeclare "gdbarch".
402         (return_command): Rename inner "gdbarch".
403         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
404         "sp".
405         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
406         header.
407         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
408         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
409         scope.
410         * remote.c (remote_target::update_thread_list): Don't redeclare
411         "tp".
412         (remote_target::process_initial_stop_replies): Rename inner
413         "thread".
414         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
415         (remote_target::wait_as): Don't redeclare "stop_reply".
416         (remote_target::get_thread_local_address): Rename inner
417         "result".
418         (remote_target::get_tib_address): Likewise.
419
420         * regcache.c (cooked_read_test): Rename "regnum".
421         * record-btrace.c (cmd_record_btrace_start): Rename inner
422         "exception".
423         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
424         loop header.
425         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
426         header.
427         (ppu2spu_sniffer): Rename inner "buf".
428         * parse.c (operator_check_standard): Rename inner "type",
429         "objfile".
430         * p-valprint.c (pascal_val_print): Introduce new scope for
431         "low_bound", "high_bound".
432         * p-exp.y (yylex): Declare "i" in loop header.
433         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
434         Lower declaration of "s".
435         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
436         header.
437         (nios2_push_dummy_call): Rename "len".
438         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
439         "buf".
440         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
441         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
442         (linux_xfer_osdata_modules): Likewise.
443         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
444         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
445         (mips_o64_push_dummy_call): Likewise.
446         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
447         "op".
448         * mi/mi-main.c (list_available_thread_groups): Rename inner
449         "tuple_emitter".
450         (mi_cmd_data_read_memory): Rename inner "opts".
451         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
452         "tuple_emitter".
453         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
454         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
455         more inner scope.
456         (parse_partial_symbols): Rename inner "pst", "p", "name"
457         * main.c (captured_main_1): Rename inner "i"s.
458         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
459         "oso2".
460         * linux-tdep.c (linux_info_proc): Rename inner "filename".
461         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
462         * infrun.c (handle_no_resumed): Don't redeclare "thread".
463         (handle_signal_stop): Rename inner "gdbarch".
464         (handle_command): Declare "signum" in loop header.
465         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
466         "status".
467         (examine_prologue): Rename inner "sol" and "sof".
468         (ia64_extract_return_value): Rename inner "val".  Declare another
469         "val" in a more inner scope.
470         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
471         inner scope.
472         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
473         "except".
474         * findvar.c (default_read_var_value): Don't redeclare "addr".
475         * f-exp.y (yylex): Declare "i" in loop header.
476         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
477         Rename inner "type", "expect_type".
478         (evaluate_subexp_for_sizeof): Rename inner "pc".
479         * elfread.c (elf_symfile_read): Rename inner "abfd".
480         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
481         "bytes_read".
482         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
483         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
484         (dwarf_decode_line_header): Rename inner "lh".
485         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
486         "offset".  Declare "i" in loop header.
487         (disassemble_dwarf_expression): Rename inner "addr_size".
488         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
489         inner "result".
490         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
491         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
492         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
493         "inner_list_emitter".
494         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
495         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
496         declaration in a block.
497         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
498         * cp-valprint.c (cp_print_value_fields): Don't redeclare
499         "obstack_final_size".
500         * cp-support.c (inspect_type): Declare "i" in loop header.
501         * compile/compile.c (compile_instance::insert_symbol_error):
502         Rename inner "e".
503         * common/agent.c (agent_run_command): Remove inner "ret"
504         declaration.
505         * coffread.c (coff_symfile_read): Rename inner "name".
506         (coff_symfile_read): Rename inner "abfd".
507         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
508         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
509         "high".
510         * c-exp.y (lex_one_token): Move "len" declaration lower.
511         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
512         "gdbarch".
513         (create_exception_master_breakpoint): Likewise.  Don't redeclare
514         "b".
515         (watch_command_1): Declare "mark" later.
516         (clear_command): Don't shadow "a" or "b".
517         (delete_command): Rename inner "b".
518         (delete_trace_command): Likewise.
519         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
520         "op".
521         (arm_gdbarch_init): Remove inner "e_flags".
522         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
523         "offset" in inner blocks.
524
525 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
526
527         * dwarf-index-write.c (file_write): Don't write if the vector is
528         empty.
529
530 2018-10-05  Tom de Vries  <tdevries@suse.de>
531
532         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
533         PyArg_ParseTuple call.
534
535 2018-10-05  Tom de Vries  <tdevries@suse.de>
536
537         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
538         PyArg_ParseTuple call.
539
540 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
541
542         * psymtab.c (recursively_search_psymtabs): Reformat parameters
543         to avoid exceeding 80 characters per line limit.
544
545 2018-10-04  Tom Tromey  <tom@tromey.com>
546
547         * symfile.c (syms_from_objfile_1, finish_new_objfile)
548         (reread_symbols): Update.
549         * complaints.h (clear_complaints): Remove argument.
550         * complaints.c (enum complaint_series): Remove.
551         (series): Remove global.
552         (complaint_internal): Update.
553         (clear_complaints): Remove argument.
554
555 2018-10-04  Tom Tromey  <tom@tromey.com>
556
557         * symfile.c (symbol_file_add_with_addrs): Do not print "no
558         debugging symbols" message if there is a separate debug objfile.
559
560 2018-10-04  Tom Tromey  <tom@tromey.com>
561
562         PR cli/19551:
563         * symfile.c (symbol_file_add_with_addrs): Update output.
564         * psymtab.c (require_partial_symbols): Update output.
565
566 2018-10-04  Tom Tromey  <tom@tromey.com>
567
568         PR cli/22234:
569         * complaints.c: Emit \n.
570
571 2018-10-04  Tom Tromey  <tom@tromey.com>
572
573         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
574         (separate_debug_file_exists, find_separate_debug_file)
575         (add_symbol_file_command, reread_symbols, allocate_symtab)
576         (allocate_compunit_symtab): Use filtered printing, not
577         unfiltered.
578         * psymtab.c (require_partial_symbols, dump_psymtab)
579         (allocate_psymtab): Use filtered printing, not unfiltered.
580
581 2018-10-04  Tom Tromey  <tom@tromey.com>
582
583         * complaints.c (complaint_internal): Correctly check complaint
584         count.
585
586 2018-10-04  Tom Tromey  <tom@tromey.com>
587
588         * complaints.h (struct complaints): Remove declaration.
589         * complaints.c (clear_complaints): Remove an unused variable.
590
591 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
592
593         * MAINTAINERS (Write After Approval): Add self.
594
595 2018-10-03  Tom Tromey  <tom@tromey.com>
596
597         * guile/scm-value.c (gdbscm_value_to_string): Initialize
598         "buffer_contents".
599         * coffread.c (coff_symtab_read): Initialize "newobj".
600
601 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
602
603         * dwarf2read.c (read_func_scope): Remove struct keyword in
604         range-based for.
605
606 2018-10-03  Tom Tromey  <tom@tromey.com>
607
608         * README: Mention --enable-ubsan.
609         * NEWS: Mention --enable-ubsan.
610         * acinclude.m4: Include sanitize.m4.
611         * configure: Rebuild.
612         * configure.ac: Call AM_GDB_UBSAN.
613         * sanitize.m4: New file.
614
615 2018-10-03  Tom Tromey  <tom@tromey.com>
616
617         * expression.h (enum exp_opcode): Use uint8_t as base type.
618         * expprint.c (op_name): Handle invalid opcodes.
619
620 2018-10-03  Tom Tromey  <tom@tromey.com>
621
622         * parse.c (prefixify_expression): Add assert.
623         (parse_exp_in_context_1): Throw exception if the expression is
624         empty.
625
626 2018-10-03  Tom Tromey  <tom@tromey.com>
627
628         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
629
630 2018-10-03  Tom Tromey  <tom@tromey.com>
631
632         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
633
634 2018-10-03  Tom Tromey  <tom@tromey.com>
635
636         * dwarf2read.c (read_subrange_type): Make "negative_mask"
637         unsigned.
638
639 2018-10-03  Tom Tromey  <tom@tromey.com>
640
641         * findvar.c (extract_integer): Do work in an unsigned type.
642
643 2018-10-03  Tom Tromey  <tom@tromey.com>
644
645         * common/enum-flags.h (enum_flags::operator~): Add static assert.
646         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
647         base type.
648         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
649         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
650         type.
651         * c-lang.h (enum c_string_type_values): Use unsigned as base
652         type.
653         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
654
655 2018-10-03  Tom Tromey  <tom@tromey.com>
656
657         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
658         <~dwarf2_frame_state_reg_info>: Update.
659         <dwarf2_frame_state_reg_info>: Update.
660         <alloc_regs>: Add assertion.  Update.
661         <reg>: Now a std::vector.
662         <num_regs>: Remove.
663         <swap>: Update.
664         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
665         (execute_cfa_program_test, dwarf2_frame_cache): Update.
666
667 2018-10-03  Tom Tromey  <tom@tromey.com>
668
669         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
670
671 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
672
673         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
674
675 2018-10-02  Tom Tromey  <tom@tromey.com>
676
677         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
678
679 2018-10-02  John Darrington <john@darrington.wattle.id.au>
680
681         * NEWS: Mention changed commands.
682         * ser-uds.c: New file.
683         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
684         * configure: Regenerate.
685         * Makefile.in: Add new file.
686         * serial.c (serial_open): Check if filename is a socket
687           and lookup the appropriate interface accordingly.
688
689 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
690
691         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
692         define.
693         (AARCH64_EXTRA_MAGIC): Likewise.
694         (AARCH64_FPSIMD_MAGIC): Likewise.
695         (AARCH64_SVE_MAGIC): Likewise.
696         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
697         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
698         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
699         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
700         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
701         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
702         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
703         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
704         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
705         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
706         (read_aarch64_ctx): Add function.
707         (aarch64_linux_sigframe_init): Detect FP registers.
708
709 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
710
711         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
712         (AARCH64_D0_REGNUM): Likewise.
713         (AARCH64_S0_REGNUM): Likewise.
714         (AARCH64_H0_REGNUM): Likewise.
715         (AARCH64_B0_REGNUM): Likewise.
716         (AARCH64_SVE_V0_REGNUM): Likewise.
717         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
718         (AARCH64_D0_REGNUM): Likewise.
719         (AARCH64_S0_REGNUM): Likewise.
720         (AARCH64_H0_REGNUM): Likewise.
721         (AARCH64_B0_REGNUM): Likewise.
722         (AARCH64_SVE_V0_REGNUM): Likewise.
723
724 2018-10-01  Gary Benson <gbenson@redhat.com>
725
726         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
727         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
728         prfpregset_t instead of gdb_prfpregset_t.
729         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
730         * configure, config.in: Rebuild.
731
732 2018-10-01  Gary Benson <gbenson@redhat.com>
733
734         * common/gdb_proc_service.h: New file, factored out from...
735         * gdb_proc_service.h: Moved common code to the above file.
736         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
737
738 2018-10-01  Gary Benson <gbenson@redhat.com>
739
740         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
741         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
742
743 2018-10-01  Gary Benson <gbenson@redhat.com>
744
745         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
746         (AC_CHECK_HEADERS): Check for linux/elf.h.
747         * configure, config.in: Rebuild.
748         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
749         doesn't define elf_fpregset_t.
750
751 2018-10-01  Gary Benson <gbenson@redhat.com>
752
753         * gdb_proc_service.h: Whitespace change.
754
755 2018-10-01  Tom Tromey  <tom@tromey.com>
756
757         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
758         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
759         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
760
761 2018-10-01  Tom Tromey  <tom@tromey.com>
762
763         * README: Minor change.
764
765 2018-09-30  Pedro Alves  <palves@redhat.com>
766
767         * darwin-nat-info.c (darwin_debug_regions_recurse)
768         (info_mach_exceptions_command): Remove unused local variables.
769         * darwin-nat.c (darwin_decode_notify_message)
770         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
771         (darwin_stop_inferior, darwin_setup_exceptions)
772         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
773         (darwin_nat_target::attach, darwin_nat_target::detach)
774         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
775         local variables.
776         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
777         variables.
778
779 2018-09-29  Tom Tromey  <tom@tromey.com>
780
781         * README: Remove some leftover text.
782
783 2018-09-29  Tom Tromey  <tom@tromey.com>
784
785         * PROBLEMS: Rewrite.
786         * README: Update.
787
788 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
789
790         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
791         case with explicit breakpoint kind.
792         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
793         'additional_info' and related logic.
794         (riscv_debug_breakpoints): New variable.
795         (riscv_breakpoint_kind_from_pc): Use the length of the existing
796         instruction to determine the breakpoint kind.
797         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
798         flag.  Update description of 'set/show riscv
799         use-compressed-breakpoints' flag.
800
801 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
802
803         (NEWS): Mention changes to frame related commands.
804         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
805         (add_prefix_cmd_suppress_notification): New function.
806         (add_com_suppress_notification): Call
807         add_cmd_suppress_notification.
808         * command.h (add_cmd_suppress_notification): Declare.
809         (add_prefix_cmd_suppress_notification): Declare.
810         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
811         (parse_frame_specification): Moved from stack.c, with
812         simplification to handle a single argument.
813         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
814         switch to the selected frame.  Add a header comment.
815         * stack.c: Remove 'safe-ctype.h' include.
816         (find_frame_for_function): Add declaration.
817         (find_frame_for_address): New function.
818         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
819         (frame_selection_by_function_completer): New function.
820         (info_frame_command): Rename to...
821         (info_frame_command_core): ...this, and update parameter types.
822         (select_frame_command): Rename to...
823         (select_frame_command_core): ...this, and update parameter types.
824         (frame_command): Rename to...
825         (frame_command_core): ...this, and update parameter types.
826         (class frame_command_helper): New class to wrap implementations of
827         frame related sub-commands.
828         (frame_apply_cmd_list): New static global.
829         (frame_cmd_list): Make static.
830         (select_frame_cmd_list): New global for sub-commands.
831         (info_frame_cmd_list): New global for sub-commands.
832         (_initialize_stack): Register sub-commands for 'frame',
833         'select-frame', and 'info frame'.  Update 'frame apply' commands
834         to use frame_apply_cmd_list.  Move function local static
835         frame_apply_list to file static frame_apply_cmd_list for
836         consistency.
837         * stack.h (select_frame_command): Delete declarationn.
838         (select_frame_for_mi): Declare new function.
839
840 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
841
842         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
843         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
844         and NOP.
845
846 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
847
848         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
849
850 2018-09-26  Tom Tromey  <tom@tromey.com>
851
852         * valops.c (auto_abandon): Remove dead code.
853
854 2018-09-26  Tom Tromey  <tom@tromey.com>
855
856         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
857
858 2018-09-24  Tom Tromey  <tom@tromey.com>
859
860         * common/pathstuff.c (get_standard_cache_dir): Make
861         "xdg_cache_home" and "home" const.
862         * top.c (init_history): Make "tmpenv" const.
863         * main.c (get_init_files): Make "homedir" const.
864
865 2018-09-23  Tom Tromey  <tom@tromey.com>
866
867         PR python/18852:
868         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
869
870 2018-09-23  Tom Tromey  <tom@tromey.com>
871
872         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
873         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
874         * python/python-internal.h (gdbpy_handle_exception): Declare.
875         * python/py-utils.c (gdbpy_handle_exception): New function.
876
877 2018-09-23  Tom Tromey  <tom@tromey.com>
878
879         PR python/17284:
880         * python/py-type.c (typy_template_argument): Check for negative
881         argument number.
882
883 2018-09-23  Tom Tromey  <tom@tromey.com>
884
885         PR python/14062:
886         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
887
888 2018-09-23  Tom Tromey  <tom@tromey.com>
889
890         PR python/18170:
891         * python/py-value.c (valpy_int): Allow conversion from pointer
892         type.
893
894 2018-09-23  Tom Tromey  <tom@tromey.com>
895
896         PR python/20126:
897         * python/py-value.c (valpy_int): Respect type sign.
898
899 2018-09-23  Tom Tromey  <tom@tromey.com>
900
901         PR python/18352;
902         * python/py-value.c (valpy_float): Allow conversions from int or
903         char.
904         (valpy_int, valpy_long): Allow conversions from float.
905
906 2018-09-23  Tom Tromey  <tom@tromey.com>
907
908         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
909         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
910
911 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
912
913         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
914         __sighndlr.
915         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
916
917 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
918
919         * windows-nat.c (windows_nat_target::wait): Remove a spurious
920         target_terminal::ours().
921
922 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
923
924         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
925         of vl to ULONGEST.
926
927 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
928
929         * breakpoint.c (update_inserted_breakpoint_locations): Remove
930         redundant condition.
931
932 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
933
934         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
935
936         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
937         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
938         * sol-thread.c (ps_pdmodel): Don't guard definition.
939
940         * procfs.c: Fix formatting.
941
942         * procfs.c (sysset_t_alloc): Remove.
943         (create_procinfo): Use XNEW instead of sysset_t_alloc.
944         (procfs_debug_inferior): Likewise.
945         (procfs_set_exec_trap): Likewise.
946         (proc_set_traced_sysentry): Don't allocate argp dynamically.
947         (proc_set_traced_sysexit): Likewise.
948
949         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
950         (dead_procinfo): Likewise.
951         (proc_warn): Likewise.
952         (proc_error): Likewise.
953         (proc_get_LDT_entry): Likewise.
954         (do_attach): Likewise.
955         (procfs_target::pid_to_str): Likewise.
956         (iterate_over_mappings): Likewise.
957
958         * procfs.c (create_procinfo): Fix ARI warning.
959         (proc_get_status): Likewise.
960         (proc_stop_process): Likewise.
961         (proc_run_process): Likewise.
962         (proc_kill): Likewise.
963         (proc_get_LDT_entry): Likewise.
964         (procfs_find_LDT_entry): Likewise.
965         (proc_update_threads): Likewise.
966         (proc_iterate_over_threads): Likewise.
967         (do_attach): Likewise.
968         (procfs_xfer_memory): Likewise.
969         (invalidate_cache): Likewise.
970         (procfs_target::resume): Likewise.
971         (procfs_init_inferior): Likewise.
972         (procfs_set_exec_trap): Likewise.
973         (procfs_target::thread_alive): Likewise.
974         (procfs_target::pid_to_exec_file): Likewise.
975         (iterate_over_mappings): Likewise.
976         (procfs_target::make_corefile_notes): Likewise.
977         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
978
979         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
980         (procfs_find_LDT_entry): Likewise.
981         * sol-thread.c (ps_lgetLDT): Likewise.
982
983 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
984
985         PR tdep/17903
986         * procfs.c (procfs_target): Declare pid_to_exec_file.
987         (procfs_target::pid_to_exec_file): New.
988
989 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
990
991         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
992         renaming.
993         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
994         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
995
996 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
997
998         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
999         (supply_fpregset, fill_fpregset): Move ...
1000         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1001         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1002         Remove references to ioctl-based procfs.
1003         Include <sys/reg.h>.
1004         Remove PR_MODEL_NATIVE guards.
1005         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1006         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1007
1008 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1009
1010         PR gdb/20981:
1011         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1012         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1013         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1014
1015 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1016
1017         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1018         (fbsd_print_sockaddr_in6): Likewise.
1019
1020 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1021             Chris January  <chris.january@arm.com>
1022
1023         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1024         (evaluate_subexp_standard): Return a dummy type when
1025         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1026         OP_F77_UNDETERMINED_ARGLIST case.
1027         * expression.h (enum noside): Update comment.
1028
1029 2018-09-19  George Vasick <george.vasick@oracle.com>
1030
1031         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1032
1033 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1034             April Chin <april.chin@oracle.com>
1035             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1036
1037         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1038         uint_t lwpid_t.
1039         (create_procinfo): Print pids in /proc without leading zeros.
1040
1041 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1042
1043         * nios2-tdep.c (nios2_gcc_target_options): New.
1044         (nios2_gdb_arch_init): Install new hook.
1045
1046 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1047
1048         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1049         New file.
1050         * update-gnulib.sh: Apply patch.
1051         * configure: Re-generate.
1052
1053 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1054
1055         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1056         description.  Make "info proc" command descriptions more
1057         consistent.
1058
1059 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1060
1061         * NEWS: Mention 'info proc files' command.
1062
1063 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1064
1065         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1066         descriptors for IP_FILES and IP_ALL.
1067
1068 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1069
1070         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1071         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1072         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1073         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1074         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1075         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1076         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1077         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1078         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1079         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1080         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1081         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1082         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1083         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1084         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1085         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1086         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1087         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1088         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1089         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1090         (struct fbsd_sockaddr_un): New types.
1091         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1092         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1093         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1094         (fbsd_core_info_proc_files): New functions.
1095         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1096         IP_ALL.
1097         * fbsd-tdep.h (fbsd_info_proc_files_header)
1098         (fbsd_info_proc_files_entry): New.
1099
1100 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1101
1102         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1103         * infcmd.c (info_proc_cmd_files): New function.
1104         (_initialize_infcmd): Register 'info proc files' command.
1105
1106 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1107
1108         * gnulib/aclocal-m4-deps.mk: Re-generate.
1109         * gnulib/aclocal.m4: Re-generate.
1110         * gnulib/config.in: Re-generate.
1111         * gnulib/configure: Re-generate.
1112         * gnulib/import/Makefile.am: Re-generate.
1113         * gnulib/import/Makefile.in: Re-generate.
1114         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1115         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1116         * gnulib/import/arpa_inet.in.h: New file.
1117         * gnulib/import/inet_ntop.c: New file.
1118         * gnulib/import/m4/arpa_inet_h.m4: New file.
1119         * gnulib/import/m4/inet_ntop.m4: New file.
1120         * gnulib/import/m4/netinet_in_h.m4: New file.
1121         * gnulib/import/m4/socklen.m4: New file.
1122         * gnulib/import/m4/sockpfaf.m4: New file.
1123         * gnulib/import/m4/stdalign.m4: New file.
1124         * gnulib/import/m4/sys_uio_h.m4: New file.
1125         * gnulib/import/netinet_in.in.h: New file.
1126         * gnulib/import/stdalign.in.h: New file.
1127         * gnulib/import/sys_socket.c: New file.
1128         * gnulib/import/sys_socket.in.h: New file.
1129         * gnulib/import/sys_uio.in.h: New file.
1130         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1131         module.
1132
1133 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1134
1135         * gnulib/aclocal-m4-deps.mk: New file.
1136         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1137         deterministically.
1138
1139 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1140
1141         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1142         KVE_PATH.
1143
1144 2018-09-18  Tom Tromey  <tom@tromey.com>
1145
1146         * compile/compile-object-load.c (struct
1147         link_hash_table_cleanup_data): Add constructor and destructor.
1148         Use DISABLE_COPY_AND_ASSIGN.
1149         (~link_hash_table_cleanup_data): Rename from
1150         link_hash_table_free.  Now a destructor.
1151         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1152
1153 2018-09-18  Tom Tromey  <tom@tromey.com>
1154
1155         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1156         * compile/compile-object-load.c (struct munmap_list): Move to
1157         header file.
1158         (munmap_list::add): Rename from munmap_list_add; rewrite.
1159         (munmap_list::~munmap_list): Rename from munmap_list_free.
1160         (munmap_listp_free_cleanup): Remove.
1161         (compile_object_load): Update.
1162         * compile/compile-object-load.h (struct munmap_list): Move from
1163         compile-object-load.c.  Rewrite.
1164
1165 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1166
1167         * aarch64-tdep.c (pass_in_v): Use register size.
1168         (aarch64_extract_return_value): Likewise.
1169         (aarch64_store_return_value): Likewise.
1170
1171 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1172
1173         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1174         rlim_t.
1175
1176 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1177
1178         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1179         Fix short help line.
1180
1181 2018-09-17  Tom Tromey  <tom@tromey.com>
1182
1183         PR python/20445:
1184         * configure: Rebuild.
1185         * configure.ac: Conditionally use -DNDEBUG for Python.
1186
1187 2018-09-17  Tom Tromey  <tom@tromey.com>
1188
1189         * configure: Rebuild.
1190         * configure.ac: Use gmp as a library dependency when checking for
1191         mpfr.
1192
1193 2018-09-17  Pedro Alves  <palves@redhat.com>
1194
1195         * python/py-inferior.c (find_inferior_object): Delete.
1196
1197 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1198
1199         * compile/compile-cplus-types.c
1200         (compile_cplus_instance::enter_scope): Don't use new_scope after
1201         std::move.
1202
1203 2018-09-17  Tom Tromey  <tom@tromey.com>
1204
1205         * common/pathstuff.c (get_standard_cache_dir): Use
1206         ~/Library/Caches on macOS.
1207         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1208
1209 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1210
1211         PR python/23669
1212         * breakpoint.c (commands_cmd_element): New.
1213         (_initialize_breakpoint): Assign commands_cmd_element.
1214         * breakpoint.h (commands_cmd_element): New.
1215         * cli/cli-script.c (while_cmd_element, if_command,
1216         define_cmd_element): New.
1217         (command_name_equals): Remove.
1218         (process_next_line): Compare commands by pointer, not by name.
1219         (_initialize_cli_script): Assign the various cmd_list_element
1220         variables.
1221         * compile/compile.c (compile_cmd_element): New.
1222         (_initialize_compile): Assign compile_cmd_element.
1223         * compile/compile.h (compile_cmd_element): New.
1224         * guile/guile.c (guile_cmd_element): New.
1225         (install_gdb_commands): Assign guile_cmd_element.
1226         * guile/guile.h (guile_cmd_element): New.
1227         * python/python.c (python_cmd_element): New.
1228         (_initialize_python): Assign python_cmd_element.
1229         * python/python.h (python_cmd_element): New.
1230         * tracepoint.c (while_stepping_cmd_element): New.
1231         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1232         * tracepoint.h (while_stepping_cmd_element): New.
1233
1234 2018-09-17  Tom Tromey  <tom@tromey.com>
1235
1236         * infrun.c (save_infcall_suspend_state): Return
1237         infcall_suspend_state_up.
1238         (save_infcall_control_state): Return infcall_control_state_up.
1239         * inferior.h (save_infcall_suspend_state)
1240         (save_infcall_control_state): Declare later.  Return unique
1241         pointers.
1242
1243 2018-09-17  Tom Tromey  <tom@tromey.com>
1244
1245         * infrun.c (struct stop_context): Declare constructor,
1246         destructor, "changed" method.
1247         (stop_context::stop_context): Rename from save_stop_context.
1248         (stop_context::~stop_context): Rename from
1249         release_stop_context_cleanup.
1250         (normal_stop): Update.
1251         (stop_context::changed): Rename from stop_context_changed.  Return
1252         bool.
1253
1254 2018-09-17  Tom Tromey  <tom@tromey.com>
1255
1256         * inferior.h (struct infcall_suspend_state_deleter): New.
1257         (infcall_suspend_state_up): New typedef.
1258         (struct infcall_control_state_deleter): New.
1259         (infcall_control_state_up): New typedef.
1260         (make_cleanup_restore_infcall_suspend_state)
1261         (make_cleanup_restore_infcall_control_state): Don't declare.
1262         * infcall.c (call_function_by_hand_dummy): Update.
1263         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1264         (make_cleanup_restore_infcall_suspend_state): Remove.
1265         (do_restore_infcall_control_state_cleanup)
1266         (make_cleanup_restore_infcall_control_state): Remove.
1267
1268 2018-09-17  Tom Tromey  <tom@tromey.com>
1269
1270         * gdbthread.h (struct thread_control_state): Add initializer.
1271         (class thread_info) <control>: Remove initializer.
1272         * inferior.h (struct inferior_control_state): Add initializer.
1273         (class inferior) <control>: Remove initializer.
1274         (exit_inferior_1): Update.
1275         * infrun.c (struct infcall_control_state): Add constructors.
1276         (save_infcall_control_state): Use new.
1277         (restore_infcall_control_state, discard_infcall_control_state):
1278         Use delete.
1279
1280 2018-09-17  Tom Tromey  <tom@tromey.com>
1281
1282         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1283         unique_ptr.
1284         <siginfo_data>: Now a unique_xmalloc_ptr.
1285         (save_infcall_suspend_state, restore_infcall_suspend_state)
1286         (discard_infcall_suspend_state)
1287         (get_infcall_suspend_state_regcache): Update.
1288
1289 2018-09-17  Tom Tromey  <tom@tromey.com>
1290
1291         * gdbthread.h (struct thread_suspend_state): Add initializers.
1292         (class thread_info) <suspend>: Remove initializer.
1293         * infrun.c (struct infcall_suspend_state): Add initializers.
1294         (save_infcall_suspend_state): Use new.
1295         (discard_infcall_suspend_state): Use delete.
1296
1297 2018-09-16  Tom Tromey  <tom@tromey.com>
1298
1299         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1300         Remove.
1301         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1302         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1303         (py_varobj_iter_new): Likewise.
1304         (py_varobj_get_iterator): Use gdbpy_ref.
1305
1306 2018-09-16  Tom Tromey  <tom@tromey.com>
1307
1308         * python/py-threadevent.c (py_get_event_thread): Simplify.
1309         * python/py-inferior.c (infpy_thread_from_thread_handle):
1310         Return immediately after calling thread_to_thread_object.  Use
1311         Py_RETURN_NONE.
1312         (thread_to_thread_object): Set the exception on a NULL return.
1313
1314 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1315
1316         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1317
1318 2018-09-16  Tom Tromey  <tom@tromey.com>
1319
1320         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1321         Remove.
1322
1323 2018-09-16  Tom Tromey  <tom@tromey.com>
1324
1325         * python/python-internal.h (thread_to_thread_object): Change
1326         return type.
1327         * python/py-inferior.c (thread_to_thread_object): Return a new
1328         reference.
1329         (infpy_thread_from_thread_handle): Update.
1330         * python/py-infthread.c (gdbpy_selected_thread): Update.
1331         * python/py-stopevent.c (create_stop_event_object): Update.
1332         * python/py-threadevent.c (py_get_event_thread): Return a new
1333         reference.
1334         (py_get_event_thread): Update.
1335         * python/py-event.h (py_get_event_thread): Change return type.
1336         * python/py-continueevent.c (create_continue_event_object):
1337         Update.
1338
1339 2018-09-16  Tom Tromey  <tom@tromey.com>
1340
1341         * python/py-progspace.c (pspy_get_objfiles): Update.
1342         * python/python-internal.h (objfile_to_objfile_object): Change
1343         return type.
1344         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1345         Update.
1346         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1347         Update.
1348         * python/python.c (gdbpy_get_current_objfile): Update.
1349         (gdbpy_objfiles): Update.
1350         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1351         Update.
1352         (objfile_to_objfile_object): Return a new reference.
1353         * python/py-symtab.c (stpy_get_objfile): Update.
1354         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1355         Update.
1356
1357 2018-09-16  Tom Tromey  <tom@tromey.com>
1358
1359         * python/py-inferior.c (infpy_get_progspace): Update.
1360         * python/python-internal.h (pspace_to_pspace_object): Change
1361         return type.
1362         * python/py-newobjfileevent.c
1363         (create_clear_objfiles_event_object): Update.
1364         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1365         Update.
1366         * python/python.c (gdbpy_get_current_progspace): Update.
1367         (gdbpy_progspaces): Update.
1368         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1369         reference.
1370         * python/py-objfile.c (objfpy_get_progspace): Update.
1371         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1372         Update.
1373
1374 2018-09-16  Tom Tromey  <tom@tromey.com>
1375
1376         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1377         (solib_name, block_for_pc, find_pc_line): New functions.
1378         (execute_unwinders): Update.
1379         * python/py-block.c (gdbpy_block_for_pc): Remove.
1380         * python/py-inferior.c (infpy_get_progspace): New function.
1381         (inferior_object_getset) <progspace>: Add.
1382         * python/py-progspace.c (pspy_objfiles): Rewrite.
1383         (pspy_solib_name, pspy_block_for_pc)
1384         (pspy_find_pc_line, pspy_is_valid): New functions.
1385         (progspace_object_methods): Add entries for solib_name,
1386         block_for_pc, find_pc_line, is_valid.
1387         * python/python-internal.h (gdbpy_block_for_pc)
1388         (build_objfiles_list): Don't declare.
1389         * python/python.c: Don't include solib.h.
1390         (gdbpy_solib_name, gdbpy_find_pc_line)
1391         (gdbpy_get_current_progspace, build_objfiles_list)
1392         (gdbpy_objfiles): Remove.
1393         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1394         solib_name, find_pc_line>: Remove entries.
1395
1396 2018-09-16  Tom Tromey  <tom@tromey.com>
1397
1398         * top.c (new_ui_command): Use GNU style for metasyntactic
1399         variables.
1400         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1401         variables.
1402         * maint.c (maintenance_translate_address): Remove "<>" around
1403         text.
1404         * interps.c (interpreter_exec_cmd): Use GNU style for
1405         metasyntactic variables.
1406         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1407         metasyntactic variables.
1408         * tracepoint.c (tfind_range_command): Use GNU style for
1409         metasyntactic variables.
1410         (tfind_outside_command): Likewise.
1411         (_initialize_tracepoint): Likewise.
1412         * remote.c (extended_remote_target::create_inferior): Use GNU
1413         style for metasyntactic variables.
1414         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1415         metasyntactic variables.
1416         (adi_assign_command): Likewise.
1417
1418 2018-09-16  Tom Tromey  <tom@tromey.com>
1419
1420         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1421         metasyntactic variables.  Print message if no disassembler options
1422         are available.
1423
1424 2018-09-15  Tom Tromey  <tom@tromey.com>
1425
1426         * infcmd.c (get_inferior_args): Return const char *.
1427         * inferior.h (get_inferior_args): Return type now const.
1428         * linux-tdep.c (linux_fill_prpsinfo): Update.
1429         * procfs.c (procfs_target::make_corefile_notes): Update.
1430
1431 2018-09-07  Tom Tromey  <tom@tromey.com>
1432
1433         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1434         inside the TRY.
1435
1436 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1437
1438         * nios2-tdep.c (nios2_type_align): New.
1439         (nios2_gdb_arch_init): Install type_align hook.
1440
1441 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1442
1443         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1444         type that is neither object file owned, nor gdbarch owned.
1445         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1446         gdbarch is non-NULL.
1447         (alloc_type_instance): Allocate non-objfile owned types on the
1448         gdbarch obstack.
1449         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1450         using TYPE_ALLOC to ensure memory is allocated on the correct
1451         obstack.
1452         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1453         obstack, or the gdbarch obstack.
1454         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1455
1456 2018-09-14  Tom Tromey  <tom@tromey.com>
1457
1458         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1459         block.
1460
1461 2018-09-14  Tom Tromey  <tom@tromey.com>
1462
1463         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1464
1465 2018-09-13  Tom Tromey  <tom@tromey.com>
1466
1467         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1468         static.
1469
1470 2018-09-13  Tom Tromey  <tom@tromey.com>
1471
1472         * exec.c (try_open_exec_file): Use std::string.
1473
1474 2018-09-13  Tom Tromey  <tom@tromey.com>
1475
1476         * utils.h (gdb_bfd_errmsg): Return std::string.
1477         * exec.c (exec_file_attach): Update.
1478         * compile/compile-object-load.c (compile_object_load): Update.
1479         * utils.c (gdb_bfd_errmsg): Return std::string.
1480
1481 2018-09-13  Tom Tromey  <tom@tromey.com>
1482
1483         * procfs.c (struct procinfo_deleter): New.
1484         (procinfo_up): New typedef.
1485         (do_destroy_procinfo_cleanup): Remove.
1486         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
1487
1488 2018-09-13  Tom Tromey  <tom@tromey.com>
1489
1490         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
1491
1492 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1493 2018-09-13  Tom Tromey  <tom@tromey.com>
1494
1495         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
1496         (pspy_get_objfiles): New function.
1497         (progspace_object_methods): New.
1498         (pspace_object_type): Add tp_methods callback.
1499         * python/python-internal.h (build_objfiles_list): New
1500         declaration.
1501         * python/python.c (build_objfiles_list): New function.
1502         (gdbpy_objfiles): Implement using build_objfiles_list.
1503         * NEWS: Mention the Progspace.objfiles method.
1504
1505 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1506
1507         * python/py-inferior.c (infpy_get_progspace): New function.
1508         (inferior_object_getset): Add progspace property.
1509         * NEWS: Mention the new property.
1510
1511 2018-09-13  Tom Tromey  <tom@tromey.com>
1512
1513         PR rust/23650:
1514         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
1515
1516 2018-09-13  Tom Tromey  <tom@tromey.com>
1517
1518         PR rust/23626:
1519         * rust-lang.c (rust_enum_variant): Now static.
1520         (rust_empty_enum_p): New function.
1521         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
1522         Handle empty enum.
1523
1524 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1525
1526         * python/py-inferior.c (infpy_repr): New.
1527         (inferior_object_type): Register infpy_repr.
1528         * python/py-objfile.c (objfpy_repr): New.
1529         (objfile_object_type): Register objfpy_repr.
1530
1531 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1532
1533         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
1534
1535 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1536
1537         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
1538         typo.
1539
1540 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
1541
1542         * common/common-utils.c: Don't include '<sys/stat.h>'.
1543         (is_regular_file): Move to...
1544         * common/filestuff.c (is_regular_file): ... here.
1545         * common/common-utils.h (is_regular_file): Move to...
1546         * common/filestuff.h (is_regular_file): ... here.
1547
1548 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
1549
1550         * skip.c (debug_skip): New variable.
1551         (skiplist_entry::do_skip_file_p): Add debug output.
1552         (skiplist_entry::do_skip_gfile_p): Likewise.
1553         (skiplist_entry::skip_function_p): Likewise.
1554         (_initialize_step_skip): Create debug command.
1555         * NEWS: Mention set/show debug skip.
1556
1557 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1558
1559         * darwin-nat.c (should_disable_startup_with_shell):
1560         New function.
1561         (darwin_nat_target::create_inferior): Add call.
1562
1563 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1564
1565         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
1566         inf_port, msg_state>: Initialize.
1567         (struct darwin_thread_info) <signaled, single_step>: Change
1568         type and initialize.
1569         (struct darwin_thread_info) <event>: Initialize.
1570
1571 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1572
1573         PR gdb/23555
1574         PR gdb/23558
1575         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
1576         guesses.
1577
1578 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1579
1580         Revert:
1581         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1582
1583         PR gdb/23555
1584         PR gdb/23558
1585         * gnulib/aclocal.m4: Regenerate.
1586         * gnulib/config.in: Regenerate.
1587         * gnulib/configure: Regenerate.
1588         * gnulib/import/Makefile.am: Update.
1589         * gnulib/import/Makefile.in: Update.
1590         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1591         * gnulib/import/_Noreturn.h: ... this.
1592         * gnulib/import/alloca.in.h: Update.
1593         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
1594         * gnulib/import/arg-nonnull.h: ... this.
1595         * gnulib/import/assure.h: Update.
1596         * gnulib/import/at-func.c: Update.
1597         * gnulib/import/basename-lgpl.c: Update.
1598         * gnulib/import/extra/snippet/c++defs.h: Rename to...
1599         * gnulib/import/c++defs.h: ... this.
1600         * gnulib/import/canonicalize-lgpl.c: Update.
1601         * gnulib/import/cdefs.h: Update.
1602         * gnulib/import/chdir-long.c: Update.
1603         * gnulib/import/chdir-long.h: Update.
1604         * gnulib/import/cloexec.c: Update.
1605         * gnulib/import/cloexec.h: Update.
1606         * gnulib/import/close.c: Update.
1607         * gnulib/import/closedir.c: Update.
1608         * gnulib/import/config.charset: Update.
1609         * gnulib/import/dirent-private.h: Update.
1610         * gnulib/import/dirent.in.h: Update.
1611         * gnulib/import/dirfd.c: Update.
1612         * gnulib/import/dirname-lgpl.c: Update.
1613         * gnulib/import/dirname.h: Update.
1614         * gnulib/import/dosname.h: Update.
1615         * gnulib/import/dup-safer-flag.c: Update.
1616         * gnulib/import/dup-safer.c: Update.
1617         * gnulib/import/dup.c: Update.
1618         * gnulib/import/dup2.c: Update.
1619         * gnulib/import/errno.in.h: Update.
1620         * gnulib/import/error.c: Update.
1621         * gnulib/import/error.h: Update.
1622         * gnulib/import/exitfail.c: Update.
1623         * gnulib/import/exitfail.h: Update.
1624         * gnulib/import/extra/update-copyright: Update.
1625         * gnulib/import/fchdir.c: Update.
1626         * gnulib/import/fcntl.c: Update.
1627         * gnulib/import/fcntl.in.h: Update.
1628         * gnulib/import/fd-hook.c: Update.
1629         * gnulib/import/fd-hook.h: Update.
1630         * gnulib/import/fd-safer-flag.c: Update.
1631         * gnulib/import/fd-safer.c: Update.
1632         * gnulib/import/fdopendir.c: Update.
1633         * gnulib/import/filename.h: Update.
1634         * gnulib/import/filenamecat-lgpl.c: Update.
1635         * gnulib/import/filenamecat.h: Update.
1636         * gnulib/import/flexmember.h: Update.
1637         * gnulib/import/float+.h: Update.
1638         * gnulib/import/float.c: Update.
1639         * gnulib/import/float.in.h: Update.
1640         * gnulib/import/fnmatch.c: Update.
1641         * gnulib/import/fnmatch.in.h: Update.
1642         * gnulib/import/fnmatch_loop.c: Update.
1643         * gnulib/import/fpucw.h: Update.
1644         * gnulib/import/frexp.c: Update.
1645         * gnulib/import/frexpl.c: Update.
1646         * gnulib/import/fstat.c: Update.
1647         * gnulib/import/fstatat.c: Update.
1648         * gnulib/import/getcwd-lgpl.c: Update.
1649         * gnulib/import/getcwd.c: Update.
1650         * gnulib/import/getdtablesize.c: Update.
1651         * gnulib/import/getlogin_r.c: Update.
1652         * gnulib/import/getprogname.c: Update.
1653         * gnulib/import/getprogname.h: Update.
1654         * gnulib/import/gettext.h: Update.
1655         * gnulib/import/gettimeofday.c: Update.
1656         * gnulib/import/glob-libc.h: Update.
1657         * gnulib/import/glob.c: Update.
1658         * gnulib/import/glob.in.h: Update.
1659         * gnulib/import/glob_internal.h: Update.
1660         * gnulib/import/glob_pattern_p.c: Update.
1661         * gnulib/import/globfree.c: Update.
1662         * gnulib/import/hard-locale.c: Update.
1663         * gnulib/import/hard-locale.h: Update.
1664         * gnulib/import/intprops.h: Update.
1665         * gnulib/import/inttypes.in.h: Update.
1666         * gnulib/import/isnan.c: Update.
1667         * gnulib/import/isnand-nolibm.h: Update.
1668         * gnulib/import/isnand.c: Update.
1669         * gnulib/import/isnanl-nolibm.h: Update.
1670         * gnulib/import/isnanl.c: Update.
1671         * gnulib/import/itold.c: Update.
1672         * gnulib/import/libc-config.h: Update.
1673         * gnulib/import/limits.in.h: Update.
1674         * gnulib/import/localcharset.c: Update.
1675         * gnulib/import/localcharset.h: Update.
1676         * gnulib/import/localtime-buffer.c: Update.
1677         * gnulib/import/localtime-buffer.h: Update.
1678         * gnulib/import/lstat.c: Update.
1679         * gnulib/import/m4/00gnulib.m4: Update.
1680         * gnulib/import/m4/__inline.m4: Update.
1681         * gnulib/import/m4/absolute-header.m4: Update.
1682         * gnulib/import/m4/alloca.m4: Update.
1683         * gnulib/import/m4/builtin-expect.m4: Update.
1684         * gnulib/import/m4/canonicalize.m4: Update.
1685         * gnulib/import/m4/chdir-long.m4: Update.
1686         * gnulib/import/m4/close.m4: Update.
1687         * gnulib/import/m4/closedir.m4: Update.
1688         * gnulib/import/m4/configmake.m4: Update.
1689         * gnulib/import/m4/d-ino.m4: Update.
1690         * gnulib/import/m4/d-type.m4: Update.
1691         * gnulib/import/m4/dirent_h.m4: Update.
1692         * gnulib/import/m4/dirfd.m4: Update.
1693         * gnulib/import/m4/dirname.m4: Update.
1694         * gnulib/import/m4/double-slash-root.m4: Update.
1695         * gnulib/import/m4/dup.m4: Update.
1696         * gnulib/import/m4/dup2.m4: Update.
1697         * gnulib/import/m4/eealloc.m4: Update.
1698         * gnulib/import/m4/environ.m4: Update.
1699         * gnulib/import/m4/errno_h.m4: Update.
1700         * gnulib/import/m4/error.m4: Update.
1701         * gnulib/import/m4/exponentd.m4: Update.
1702         * gnulib/import/m4/exponentl.m4: Update.
1703         * gnulib/import/m4/extensions.m4: Update.
1704         * gnulib/import/m4/extern-inline.m4: Update.
1705         * gnulib/import/m4/fchdir.m4: Update.
1706         * gnulib/import/m4/fcntl-o.m4: Update.
1707         * gnulib/import/m4/fcntl.m4: Update.
1708         * gnulib/import/m4/fcntl_h.m4: Update.
1709         * gnulib/import/m4/fdopendir.m4: Update.
1710         * gnulib/import/m4/filenamecat.m4: Update.
1711         * gnulib/import/m4/flexmember.m4: Update.
1712         * gnulib/import/m4/float_h.m4: Update.
1713         * gnulib/import/m4/fnmatch.m4: Update.
1714         * gnulib/import/m4/fnmatch_h.m4: Update.
1715         * gnulib/import/m4/fpieee.m4: Update.
1716         * gnulib/import/m4/frexp.m4: Update.
1717         * gnulib/import/m4/frexpl.m4: Update.
1718         * gnulib/import/m4/fstat.m4: Update.
1719         * gnulib/import/m4/fstatat.m4: Update.
1720         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1721         * gnulib/import/m4/getcwd-path-max.m4: Update.
1722         * gnulib/import/m4/getcwd.m4: Update.
1723         * gnulib/import/m4/getdtablesize.m4: Update.
1724         * gnulib/import/m4/getlogin.m4: Update.
1725         * gnulib/import/m4/getlogin_r.m4: Update.
1726         * gnulib/import/m4/getpagesize.m4: Update.
1727         * gnulib/import/m4/getprogname.m4: Update.
1728         * gnulib/import/m4/gettimeofday.m4: Update.
1729         * gnulib/import/m4/glibc21.m4: Update.
1730         * gnulib/import/m4/glob.m4: Update.
1731         * gnulib/import/m4/glob_h.m4: Update.
1732         * gnulib/import/m4/gnulib-cache.m4: Update.
1733         * gnulib/import/m4/gnulib-common.m4: Update.
1734         * gnulib/import/m4/gnulib-comp.m4: Update.
1735         * gnulib/import/m4/gnulib-tool.m4: Update.
1736         * gnulib/import/m4/hard-locale.m4: Update.
1737         * gnulib/import/m4/include_next.m4: Update.
1738         * gnulib/import/m4/inttypes-pri.m4: Update.
1739         * gnulib/import/m4/inttypes.m4: Update.
1740         * gnulib/import/m4/isnand.m4: Update.
1741         * gnulib/import/m4/isnanl.m4: Update.
1742         * gnulib/import/m4/largefile.m4: Update.
1743         * gnulib/import/m4/limits-h.m4: Update.
1744         * gnulib/import/m4/localcharset.m4: Update.
1745         * gnulib/import/m4/locale-fr.m4: Update.
1746         * gnulib/import/m4/locale-ja.m4: Update.
1747         * gnulib/import/m4/locale-zh.m4: Update.
1748         * gnulib/import/m4/localtime-buffer.m4: Update.
1749         * gnulib/import/m4/longlong.m4: Update.
1750         * gnulib/import/m4/lstat.m4: Update.
1751         * gnulib/import/m4/malloc.m4: Update.
1752         * gnulib/import/m4/malloca.m4: Update.
1753         * gnulib/import/m4/math_h.m4: Update.
1754         * gnulib/import/m4/mbrtowc.m4: Update.
1755         * gnulib/import/m4/mbsinit.m4: Update.
1756         * gnulib/import/m4/mbsrtowcs.m4: Update.
1757         * gnulib/import/m4/mbstate_t.m4: Update.
1758         * gnulib/import/m4/memchr.m4: Update.
1759         * gnulib/import/m4/memmem.m4: Update.
1760         * gnulib/import/m4/mempcpy.m4: Update.
1761         * gnulib/import/m4/memrchr.m4: Update.
1762         * gnulib/import/m4/mkdir.m4: Update.
1763         * gnulib/import/m4/mkstemp.m4: Update.
1764         * gnulib/import/m4/mmap-anon.m4: Update.
1765         * gnulib/import/m4/mode_t.m4: Update.
1766         * gnulib/import/m4/msvc-inval.m4: Update.
1767         * gnulib/import/m4/msvc-nothrow.m4: Update.
1768         * gnulib/import/m4/multiarch.m4: Update.
1769         * gnulib/import/m4/nocrash.m4: Update.
1770         * gnulib/import/m4/off_t.m4: Update.
1771         * gnulib/import/m4/onceonly.m4: Update.
1772         * gnulib/import/m4/open-cloexec.m4: Update.
1773         * gnulib/import/m4/open.m4: Update.
1774         * gnulib/import/m4/openat.m4: Update.
1775         * gnulib/import/m4/opendir.m4: Update.
1776         * gnulib/import/m4/pathmax.m4: Update.
1777         * gnulib/import/m4/rawmemchr.m4: Update.
1778         * gnulib/import/m4/readdir.m4: Update.
1779         * gnulib/import/m4/readlink.m4: Update.
1780         * gnulib/import/m4/realloc.m4: Update.
1781         * gnulib/import/m4/rename.m4: Update.
1782         * gnulib/import/m4/rewinddir.m4: Update.
1783         * gnulib/import/m4/rmdir.m4: Update.
1784         * gnulib/import/m4/save-cwd.m4: Update.
1785         * gnulib/import/m4/secure_getenv.m4: Update.
1786         * gnulib/import/m4/setenv.m4: Update.
1787         * gnulib/import/m4/signal_h.m4: Update.
1788         * gnulib/import/m4/ssize_t.m4: Update.
1789         * gnulib/import/m4/stat-time.m4: Update.
1790         * gnulib/import/m4/stat.m4: Update.
1791         * gnulib/import/m4/std-gnu11.m4: Update.
1792         * gnulib/import/m4/stdbool.m4: Update.
1793         * gnulib/import/m4/stddef_h.m4: Update.
1794         * gnulib/import/m4/stdint.m4: Update.
1795         * gnulib/import/m4/stdio_h.m4: Update.
1796         * gnulib/import/m4/stdlib_h.m4: Update.
1797         * gnulib/import/m4/strchrnul.m4: Update.
1798         * gnulib/import/m4/strdup.m4: Update.
1799         * gnulib/import/m4/strerror.m4: Update.
1800         * gnulib/import/m4/string_h.m4: Update.
1801         * gnulib/import/m4/strstr.m4: Update.
1802         * gnulib/import/m4/strtok_r.m4: Update.
1803         * gnulib/import/m4/sys_socket_h.m4: Update.
1804         * gnulib/import/m4/sys_stat_h.m4: Update.
1805         * gnulib/import/m4/sys_time_h.m4: Update.
1806         * gnulib/import/m4/sys_types_h.m4: Update.
1807         * gnulib/import/m4/tempname.m4: Update.
1808         * gnulib/import/m4/time_h.m4: Update.
1809         * gnulib/import/m4/unistd-safer.m4: Update.
1810         * gnulib/import/m4/unistd_h.m4: Update.
1811         * gnulib/import/m4/warn-on-use.m4: Update.
1812         * gnulib/import/m4/wchar_h.m4: Update.
1813         * gnulib/import/m4/wchar_t.m4: Update.
1814         * gnulib/import/m4/wctype_h.m4: Update.
1815         * gnulib/import/m4/wint_t.m4: Update.
1816         * gnulib/import/malloc.c: Update.
1817         * gnulib/import/malloc/scratch_buffer.h: Update.
1818         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1819         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1820         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1821         * gnulib/import/malloca.c: Update.
1822         * gnulib/import/malloca.h: Update.
1823         * gnulib/import/malloca.valgrind: Update.
1824         * gnulib/import/math.in.h: Update.
1825         * gnulib/import/mbrtowc.c: Update.
1826         * gnulib/import/mbsinit.c: Update.
1827         * gnulib/import/mbsrtowcs-impl.h: Update.
1828         * gnulib/import/mbsrtowcs-state.c: Update.
1829         * gnulib/import/mbsrtowcs.c: Update.
1830         * gnulib/import/memchr.c: Update.
1831         * gnulib/import/memmem.c: Update.
1832         * gnulib/import/mempcpy.c: Update.
1833         * gnulib/import/memrchr.c: Update.
1834         * gnulib/import/mkdir.c: Update.
1835         * gnulib/import/mkstemp.c: Update.
1836         * gnulib/import/msvc-inval.c: Update.
1837         * gnulib/import/msvc-inval.h: Update.
1838         * gnulib/import/msvc-nothrow.c: Update.
1839         * gnulib/import/msvc-nothrow.h: Update.
1840         * gnulib/import/open.c: Update.
1841         * gnulib/import/openat-die.c: Update.
1842         * gnulib/import/openat-priv.h: Update.
1843         * gnulib/import/openat-proc.c: Update.
1844         * gnulib/import/openat.c: Update.
1845         * gnulib/import/openat.h: Update.
1846         * gnulib/import/opendir.c: Update.
1847         * gnulib/import/pathmax.h: Update.
1848         * gnulib/import/pipe-safer.c: Update.
1849         * gnulib/import/rawmemchr.c: Update.
1850         * gnulib/import/readdir.c: Update.
1851         * gnulib/import/readlink.c: Update.
1852         * gnulib/import/realloc.c: Update.
1853         * gnulib/import/ref-add.sin: Update.
1854         * gnulib/import/ref-del.sin: Update.
1855         * gnulib/import/rename.c: Update.
1856         * gnulib/import/rewinddir.c: Update.
1857         * gnulib/import/rmdir.c: Update.
1858         * gnulib/import/same-inode.h: Update.
1859         * gnulib/import/save-cwd.c: Update.
1860         * gnulib/import/save-cwd.h: Update.
1861         * gnulib/import/scratch_buffer.h: Update.
1862         * gnulib/import/secure_getenv.c: Update.
1863         * gnulib/import/setenv.c: Update.
1864         * gnulib/import/signal.in.h: Update.
1865         * gnulib/import/stat-time.c: Update.
1866         * gnulib/import/stat-time.h: Update.
1867         * gnulib/import/stat-w32.c: Update.
1868         * gnulib/import/stat-w32.h: Update.
1869         * gnulib/import/stat.c: Update.
1870         * gnulib/import/stdbool.in.h: Update.
1871         * gnulib/import/stddef.in.h: Update.
1872         * gnulib/import/stdint.in.h: Update.
1873         * gnulib/import/stdio.in.h: Update.
1874         * gnulib/import/stdlib.in.h: Update.
1875         * gnulib/import/str-two-way.h: Update.
1876         * gnulib/import/strchrnul.c: Update.
1877         * gnulib/import/strdup.c: Update.
1878         * gnulib/import/streq.h: Update.
1879         * gnulib/import/strerror-override.c: Update.
1880         * gnulib/import/strerror-override.h: Update.
1881         * gnulib/import/strerror.c: Update.
1882         * gnulib/import/string.in.h: Update.
1883         * gnulib/import/stripslash.c: Update.
1884         * gnulib/import/strnlen1.c: Update.
1885         * gnulib/import/strnlen1.h: Update.
1886         * gnulib/import/strstr.c: Update.
1887         * gnulib/import/strtok_r.c: Update.
1888         * gnulib/import/sys_stat.in.h: Update.
1889         * gnulib/import/sys_time.in.h: Update.
1890         * gnulib/import/sys_types.in.h: Update.
1891         * gnulib/import/tempname.c: Update.
1892         * gnulib/import/tempname.h: Update.
1893         * gnulib/import/time.in.h: Update.
1894         * gnulib/import/unistd--.h: Update.
1895         * gnulib/import/unistd-safer.h: Update.
1896         * gnulib/import/unistd.in.h: Update.
1897         * gnulib/import/unsetenv.c: Update.
1898         * gnulib/import/verify.h: Update.
1899         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1900         * gnulib/import/wchar.in.h: Update.
1901         * gnulib/import/wctype.in.h: Update.
1902         * gnulib/import/xalloc-oversized.h: Update.
1903         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1904         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1905
1906 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
1907
1908         * record-btrace.c (get_thread_current_frame): Remove
1909         old_inferior_ptid.
1910
1911 2018-09-10  Jerome Guitton  <guitton@adacore.com>
1912
1913         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
1914         with check_tag to 1 if and only if the type is tagged and the
1915         component being searched cannot been found in the current
1916         view. Otherwise, always call ada_to_fixed_type with
1917         check_tag to 0.
1918
1919 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1920
1921         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
1922         declaration.
1923         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
1924         * ada-varobj.c (ada_varobj_get_number_of_children,
1925         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
1926
1927 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1928
1929         * ada-valprint.c (ada_value_print): Use type instead of
1930         enclosing type.
1931
1932 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1933
1934         * ada-lang.c (ada_value_subscript): Handle case when parameter is
1935         an array of access to unconstrained array.
1936
1937 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1938
1939         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
1940         (ada_check_typedef): Use it.
1941
1942 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1943
1944         * ada-varobj.c (ada_varobj_describe_struct_child)
1945         (ada_varobj_describe_child): Handle union case like struct one.
1946
1947 2018-09-10  Tom Tromey  <tom@tromey.com>
1948
1949         PR python/18380:
1950         * python/python.c (_initialize_python): Make example in "python"
1951         help work in Python 3.
1952
1953 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
1954
1955         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
1956         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
1957         $(EXEEXT) to the script, as it is not a program.
1958
1959 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
1960
1961         * python/py-prettyprint.c (pretty_print_one_value): Return
1962         gdbpy_ref<>.
1963         (print_string_repr): Adjust.
1964         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
1965         * python/python-internal.h (apply_varobj_pretty_printer): Return
1966         gdbpy_ref<>.
1967         * varobj.c (varobj_value_get_print_value): Adjust.
1968
1969 2018-09-08  Tom Tromey  <tom@tromey.com>
1970
1971         PR python/16047:
1972         * python/py-prettyprint.c (pretty_print_one_value): Check for
1973         to_string method.
1974
1975 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1976
1977         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
1978         replace_operator_with_call.
1979
1980 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1981
1982         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
1983
1984 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1985
1986         * ada-typeprint.c (print_range): Print the bounds using TYPE
1987         rather than its TYPE_TARGET_TYPE.
1988
1989 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1990
1991         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
1992         call to ada_to_fixed_value_create.
1993
1994 2018-09-08  Jerome Guitton  <guitton@adacore.com>
1995
1996         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
1997
1998 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1999
2000         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2001         by calls to error.
2002
2003 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2004
2005         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2006         Move update of loop variable "fi".
2007
2008 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2009
2010         * ada-lang.c (value_assign_to_component): In the case of
2011         big-endian targets, extract the bits of the given VAL
2012         using an src_offset of zero if container is not a scalar.
2013
2014 2018-09-06  Simon Ser  <contact@emersion.fr>
2015
2016         PR gdb/23105
2017         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2018         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2019         * fbsd-tdep.c (fbsd_make_note_desc): New.
2020         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2021         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2022         * target.h (enum target_object) Add FreeBSD-specific
2023         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2024
2025 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2026
2027         * compile/compile-c.h (generate_c_for_variable_locations):
2028         Change reference to pointer.
2029         * compile/compile-c-support.c (compile_program) <compute>:
2030         Likewise.
2031         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2032         (generate_c_for_for_one_variable): Likewise
2033         (generate_c_for_variable_locations): Likewise
2034         * compile/compile-c-types.c (compile_c_instance::convert_type):
2035         Likewise
2036         * compile/compile-cplus-symbols.c (convert_one_symbol):
2037         std::move the scope passed to enter_scope.
2038         * compile/compile-cplus-types.c
2039         (compile_cplus_instance::enter_scope): Make parameter
2040         rvalue-reference.
2041         (compile_cplus_instance::new_scope): Change reference to
2042         pointer.
2043         (compile_cplus_instance::convert_type): Likewise
2044         (compile_cplus_convert_typedef): std::move the scope passed to
2045         enter_scope.
2046         (compile_cplus_convert_struct_or_union): Likewise.
2047         (compile_cplus_convert_enum): Likewise.
2048         (compile_cplus_convert_namespace): Likewise.
2049         * compile/compile-cplus.h (compile_cplus_instance)
2050         <enter_scope>: Make parameter rvalue-reference.
2051         * compile/compile-internal.h (compile_instance)
2052         <get_cached_type>: Likewise
2053         * compile/compile-loc2c.c (push): Likewise
2054         (pushf): Likewise
2055         (unary): Likewise
2056         (binary): Likewise
2057         (print_label): Likewise
2058         (pushf_register_address): Likewise
2059         (pushf_register): Likewise
2060         (do_compile_dwarf_expr_to_c): Likewise
2061         (compile_dwarf_expr_to_c): Likewise
2062         (compile_dwarf_bounds_to_c): Likewise
2063         * compile/compile.c (compile_instance::get_cached_type):
2064         Likewise
2065         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2066         (compile_dwarf_bounds_to_c): Likewise
2067         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2068         (dwarf2_compile_property_to_c): Likewise
2069         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2070         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2071         Likewise
2072
2073 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2074
2075         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2076         * tui/tui-data.c (init_content_element): Don't initialize it.
2077
2078 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2079
2080         * tui/tui-data.h (struct tui_win_info)
2081         <detail::opaque>: Remove.
2082         * tui/tui-data.c (init_win_info): Remove assignment.
2083
2084 2018-09-05  Tom Tromey  <tom@tromey.com>
2085
2086         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2087         -Wformat-nonliteral.
2088         * target-float.c (host_float_ops<T>::to_string)
2089         (host_float_ops<T>::from_string): Use
2090         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2091         * configure: Rebuild.
2092
2093 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2094
2095         * printcmd.c (printf_c_string): Use
2096         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2097         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2098
2099 2018-09-05  Tom Tromey  <tom@tromey.com>
2100
2101         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2102
2103 2018-09-05  Tom de Vries  <tdevries@suse.de>
2104
2105         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2106         with resolve_abstract_p == true.
2107         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2108         defaulting to false. Propagate resolve_abstract_p to
2109         dwarf2_fetch_die_loc_sect_off.
2110         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2111         parameter, defaulting to false.
2112         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2113         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2114         parameter.
2115         * dwarf2read.h (struct die_info): Forward-declare.
2116         (die_info_ptr): New typedef.
2117         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2118
2119 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2120
2121         GDB 8.2 released.
2122
2123 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2124             Pedro Alves  <palves@redhat.com>
2125
2126         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2127         "aclocal-m4-deps.mk".  Include file here.
2128         $(srcdir)/aclocal.m4: Add "configure.ac".
2129         * gnulib/aclocal-m4-deps.mk: New file.
2130         * gnulib/update-gnulib.sh: Automatically update
2131         "aclocal-m4-deps.mk".
2132
2133 2018-09-04  Tom Tromey  <tom@tromey.com>
2134
2135         * configure: Rebuild.
2136         * configure.ac: Remove multi-ice code.
2137
2138 2018-09-04  Tom Tromey  <tom@tromey.com>
2139
2140         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2141         (ada-exp.o): Update.
2142
2143 2018-09-04  Tom Tromey  <tom@tromey.com>
2144
2145         * Makefile.in (printcmd.o, target-float.o): Remove.
2146         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2147
2148 2018-09-04  Tom Tromey  <tom@tromey.com>
2149
2150         * gnulib/Makefile.in: Remove obsolete comment.
2151         * Makefile.in: Remove obsolete comment.
2152
2153 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2154
2155         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2156         line with '+'.
2157
2158 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2159
2160         * riscv-tdep.c: Add 'prologue-value.h' include.
2161         (struct riscv_unwind_cache): New struct.
2162         (riscv_debug_unwinder): New global.
2163         (riscv_scan_prologue): Update arguments, capture register details
2164         from prologue scan.
2165         (riscv_skip_prologue): Reformat arguments line, move end of
2166         prologue calculation into riscv_scan_prologue.
2167         (riscv_frame_cache): Update return type, create
2168         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2169         details.
2170         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2171         (riscv_frame_prev_register): Use the trad_frame within the
2172         riscv_unwind_cache.
2173         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2174         flag.
2175
2176 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2177
2178         * trad-frame.h (trad_frame_set_realreg): Declare.
2179         (trad_frame_set_addr): Declare.
2180         * trad-frame.c (trad_frame_set_realreg): Define new function.
2181         (trad_frame_set_addr): Define new function.
2182         (trad_frame_set_reg_realreg): Use new function.
2183         (trad_frame_set_reg_addr): Use new function.
2184
2185 2018-09-01  Keith Seitz  <keiths@redhat.com>
2186
2187         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2188         pulongest instead of "%lld".
2189         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2190         ATTRIBUTE_UNUSED.
2191
2192 2018-08-31  Tom Tromey  <tom@tromey.com>
2193
2194         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2195         variant part type.
2196
2197 2018-08-31  Pedro Alves  <palves@redhat.com>
2198
2199         * gdbarch.h: Regenerate.
2200
2201 2018-08-31  Pedro Alves  <palves@redhat.com>
2202
2203         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2204         * target.h (Hardware watchpoint interfaces): Describe
2205         continuable/steppable/non-steppable watchpoints.
2206         * gdbarch.h, gdbarch.c: Regenerate.
2207
2208 2018-08-31  Pedro Alves  <palves@redhat.com>
2209
2210         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2211         Delete.
2212         * s390-linux-nat.c
2213         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2214         * target.h (target_ops::have_continuable_watchpoint): Delete.
2215         (target_have_continuable_watchpoint): Delete.
2216         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2217         * target-delegates.c: Regenerate.
2218
2219 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2220
2221         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2222         the files present in "gnulib/import/m4/".
2223
2224 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2225
2226         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2227         c.sw, c.swsp, and c.sdsp.
2228
2229 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2230
2231         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2232         (riscv_read_misa_reg): Don't cache value read into inferior data.
2233         (riscv_new_inferior_data): Delete.
2234         (riscv_inferior_data_cleanup): Delete.
2235         (riscv_inferior_data): Delete.
2236         (riscv_invalidate_inferior_data): Delete.
2237         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2238
2239 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2240
2241         * compile/compile-cplus-types.c
2242         (compile_cplus_instance::leave_scope): Take the address of scope
2243         object.
2244         (compile_cplus_instance::convert_qualified_base): Compare quals
2245         to 0.
2246
2247 2018-08-30  Keith Seitz  <keiths@redhat.com>
2248
2249         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2250         Use "%s" and host_address_to_string instead of "%p" in printf.
2251
2252 2018-08-29  Keith Seitz  <keiths@redhat.com>
2253
2254         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2255         and compile-cplus-types.c.
2256         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2257         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2258         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2259         Declare.
2260         * compile/compile-c-support.c: Include compile-cplus.h.
2261         (load_libcompile): Templatize.
2262         (get_compile_context): "New" function.
2263         (c_get_compile_context): Use get_compile_context.
2264         (cplus_get_compile_context): New function.
2265         (cplus_push_user_expression, cplus_pop_user_expression)
2266         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2267         (cplus_compute_program): Define new structs/functions.
2268         * compile/compile-cplus-symmbols.c: New file.
2269         * compile/compile-cplus-types.c: New file.
2270         * compile/compile-cplus.h: New file.
2271         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2272         Declare.
2273         * compile/compile-object-load.c (get_out_value_type): Use
2274         strncmp_iw when comparing symbol names.
2275         (compile_object_load): Add mst_bss and mst_data.
2276         * compile/compile.c (_initialize_compile): Remove
2277         -Wno-implicit-function-declaration from `compile_args'.
2278         * compile/gcc-cp-plugin.h: New file.
2279         * NEWS: Mention C++ compile support and new debug options.
2280
2281 2018-08-29  Keith Seitz  <keiths@redhat.com>
2282
2283         * linespec.c (collect_info::add_symbol): Make virtual.
2284         (struct symbol_searcher_collect_info): New struct.
2285         (symbol_searcher::find_all_symbols): New method.
2286         * symtab.h (class symbol_searcher): New class.
2287
2288 2018-08-29  Keith Seitz  <keiths@redhat.com>
2289
2290         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2291         Change to vector of block_symbol.  Update all users.
2292         (struct collect_info) <symbols>: Likewise.
2293         (collect_info::add_symbol): Take block_symbol as argument.
2294         Update all callers.
2295         (decode_compound_collector) <m_symbols>: Change type to vector
2296         of block_symbol.  Update all users.
2297         (decode_compound_collector::operator ()): Change parameter type
2298         to block_symbol.
2299         (find_method, find_function_symbols, find_linespec_symbols)
2300         (find_label_symbols_in_block, find_label_symbols): Change symbol
2301         vectors to block_symbol vectors.
2302         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2303         block_symbol.
2304
2305 2018-08-29  Keith Seitz  <keiths@redhat.com>
2306
2307         * linespec.c (symbolp): Remove typedef and VEC definitions.
2308         (bound_minimal_symbol_d): Likewise.
2309
2310 2018-08-29  Keith Seitz  <keiths@redhat.com>
2311
2312         * linespec.c (decode_compound_collector::decode_compound_collector):
2313         Remove initialization for `m_symtabs'.
2314         (decode_compound_collector::release_symbols): Change return type
2315         to std::vector.  Update all callers.
2316         (class decode_compound_collector) <m_symbols>: Change type to
2317         std::vector.
2318         (lookup_prefix_sym): Change return type to std::vector.  Update all
2319         callers.
2320         (compare_symbols): Remove.
2321         (std_compare_symbols): Rename to `compare_symbols'.
2322         (find_method): Change `sym_classes' parameter to std::vector.
2323         Update all callers.  Use std::sort to sort sym_classes.
2324         (find_linespec_symbols): Remove cleanup.
2325
2326 2018-08-29  Keith Seitz  <keiths@redhat.com>
2327
2328         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2329         std::vector.  Update all users.
2330         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2331         (struct collect_info) <minimal_symbols>: Likewise.
2332         (compare_msymbols): Return bool.  Change parameters to const
2333         bound_minimal_symbol references.
2334         (find_method, find_function_symbols, find_linespec_symbols): Change
2335         `minsyms' parameter to std::vector.  Update all callers.
2336
2337 2018-08-29  Keith Seitz  <keiths@redhat.com>
2338
2339         * linespec.c (struct linespec) <label_symbols>: Change type to
2340         std::vector.  Update all users.
2341         (find_label_symbols_in_block): Change `result' parameter to
2342         std::vector.  Update all callers.
2343         (find_label_symbols): Return std::vector.  Update all callers.
2344
2345 2018-08-29  Keith Seitz  <keiths@redhat.com>
2346
2347         * linespec.c (struct linespec) <function_symbols>: Change type to
2348         std::vector.  Update all users.
2349         (struct collect_info) <function_symbols>: Likewise.
2350         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2351         (std_compare_symbols): New function.
2352         (find_method, find_function_symbols, find_linespec_symbols)
2353         (find_label_symbols_in_block): Change `symbols' parameter to
2354         std::vector.  Update all callers.
2355         (find_label_symbols): Likewise for `function_symbols' and
2356         `label_funcs_ret'.
2357
2358 2018-08-29  Keith Seitz  <keiths@redhat.com>
2359
2360         * linespec.c (symtab_vector_up): Define.
2361         (struct linespec) <file_symtabs>: Change type to std::vector *.
2362         Update all uses.
2363         (struct collect_info) <file_symtabs>: Likewise.
2364         (collect_symtabs_from_filename): Return symtab_vector_up.
2365         Update all callers.
2366         (decode_objc): Remove cleanup.
2367         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2368         (symtab_collector::release_symtabs): Return symtab_vector_up.
2369         Update all callers.
2370         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2371         Update all users.
2372         (collect_symtabs_from_filename, symtabs_from_filename): Return
2373         symtab_vector_up.  Update all callers.
2374
2375 2018-08-29  Tom Tromey  <tom@tromey.com>
2376
2377         * csky-tdep.c (csky_analyze_prologue): Use
2378         core_addr_to_string_nz.
2379
2380 2018-08-29  Tom Tromey  <tom@tromey.com>
2381
2382         * windows-nat.c (struct xlate_exception) <them>: Change type to
2383         DWORD.
2384         (xlate): Fix formatting.  Remove last entry.
2385         (struct xlate_exception, xlate): Comment out.
2386         (windows_nat_target::resume): Use ranged for.
2387
2388 2018-08-29  Jim Wilson  <jimw@sifive.com>
2389
2390         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2391         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2392         of NT_PRFPREG.
2393         (riscv_linux_nat_target::store_registers): Likewise.
2394
2395 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2396
2397         PR gdb/23555
2398         PR gdb/23558
2399         * gnulib/aclocal.m4: Regenerate.
2400         * gnulib/config.in: Regenerate.
2401         * gnulib/configure: Regenerate.
2402         * gnulib/import/Makefile.am: Update.
2403         * gnulib/import/Makefile.in: Update.
2404         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2405         * gnulib/import/_Noreturn.h: ... this.
2406         * gnulib/import/alloca.in.h: Update.
2407         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2408         * gnulib/import/arg-nonnull.h: ... this.
2409         * gnulib/import/assure.h: Update.
2410         * gnulib/import/at-func.c: Update.
2411         * gnulib/import/basename-lgpl.c: Update.
2412         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2413         * gnulib/import/c++defs.h: ... this.
2414         * gnulib/import/canonicalize-lgpl.c: Update.
2415         * gnulib/import/cdefs.h: Update.
2416         * gnulib/import/chdir-long.c: Update.
2417         * gnulib/import/chdir-long.h: Update.
2418         * gnulib/import/cloexec.c: Update.
2419         * gnulib/import/cloexec.h: Update.
2420         * gnulib/import/close.c: Update.
2421         * gnulib/import/closedir.c: Update.
2422         * gnulib/import/config.charset: Update.
2423         * gnulib/import/dirent-private.h: Update.
2424         * gnulib/import/dirent.in.h: Update.
2425         * gnulib/import/dirfd.c: Update.
2426         * gnulib/import/dirname-lgpl.c: Update.
2427         * gnulib/import/dirname.h: Update.
2428         * gnulib/import/dosname.h: Update.
2429         * gnulib/import/dup-safer-flag.c: Update.
2430         * gnulib/import/dup-safer.c: Update.
2431         * gnulib/import/dup.c: Update.
2432         * gnulib/import/dup2.c: Update.
2433         * gnulib/import/errno.in.h: Update.
2434         * gnulib/import/error.c: Update.
2435         * gnulib/import/error.h: Update.
2436         * gnulib/import/exitfail.c: Update.
2437         * gnulib/import/exitfail.h: Update.
2438         * gnulib/import/extra/update-copyright: Update.
2439         * gnulib/import/fchdir.c: Update.
2440         * gnulib/import/fcntl.c: Update.
2441         * gnulib/import/fcntl.in.h: Update.
2442         * gnulib/import/fd-hook.c: Update.
2443         * gnulib/import/fd-hook.h: Update.
2444         * gnulib/import/fd-safer-flag.c: Update.
2445         * gnulib/import/fd-safer.c: Update.
2446         * gnulib/import/fdopendir.c: Update.
2447         * gnulib/import/filename.h: Update.
2448         * gnulib/import/filenamecat-lgpl.c: Update.
2449         * gnulib/import/filenamecat.h: Update.
2450         * gnulib/import/flexmember.h: Update.
2451         * gnulib/import/float+.h: Update.
2452         * gnulib/import/float.c: Update.
2453         * gnulib/import/float.in.h: Update.
2454         * gnulib/import/fnmatch.c: Update.
2455         * gnulib/import/fnmatch.in.h: Update.
2456         * gnulib/import/fnmatch_loop.c: Update.
2457         * gnulib/import/fpucw.h: Update.
2458         * gnulib/import/frexp.c: Update.
2459         * gnulib/import/frexpl.c: Update.
2460         * gnulib/import/fstat.c: Update.
2461         * gnulib/import/fstatat.c: Update.
2462         * gnulib/import/getcwd-lgpl.c: Update.
2463         * gnulib/import/getcwd.c: Update.
2464         * gnulib/import/getdtablesize.c: Update.
2465         * gnulib/import/getlogin_r.c: Update.
2466         * gnulib/import/getprogname.c: Update.
2467         * gnulib/import/getprogname.h: Update.
2468         * gnulib/import/gettext.h: Update.
2469         * gnulib/import/gettimeofday.c: Update.
2470         * gnulib/import/glob-libc.h: Update.
2471         * gnulib/import/glob.c: Update.
2472         * gnulib/import/glob.in.h: Update.
2473         * gnulib/import/glob_internal.h: Update.
2474         * gnulib/import/glob_pattern_p.c: Update.
2475         * gnulib/import/globfree.c: Update.
2476         * gnulib/import/hard-locale.c: Update.
2477         * gnulib/import/hard-locale.h: Update.
2478         * gnulib/import/intprops.h: Update.
2479         * gnulib/import/inttypes.in.h: Update.
2480         * gnulib/import/isnan.c: Update.
2481         * gnulib/import/isnand-nolibm.h: Update.
2482         * gnulib/import/isnand.c: Update.
2483         * gnulib/import/isnanl-nolibm.h: Update.
2484         * gnulib/import/isnanl.c: Update.
2485         * gnulib/import/itold.c: Update.
2486         * gnulib/import/libc-config.h: Update.
2487         * gnulib/import/limits.in.h: Update.
2488         * gnulib/import/localcharset.c: Update.
2489         * gnulib/import/localcharset.h: Update.
2490         * gnulib/import/localtime-buffer.c: Update.
2491         * gnulib/import/localtime-buffer.h: Update.
2492         * gnulib/import/lstat.c: Update.
2493         * gnulib/import/m4/00gnulib.m4: Update.
2494         * gnulib/import/m4/__inline.m4: Update.
2495         * gnulib/import/m4/absolute-header.m4: Update.
2496         * gnulib/import/m4/alloca.m4: Update.
2497         * gnulib/import/m4/builtin-expect.m4: Update.
2498         * gnulib/import/m4/canonicalize.m4: Update.
2499         * gnulib/import/m4/chdir-long.m4: Update.
2500         * gnulib/import/m4/close.m4: Update.
2501         * gnulib/import/m4/closedir.m4: Update.
2502         * gnulib/import/m4/configmake.m4: Update.
2503         * gnulib/import/m4/d-ino.m4: Update.
2504         * gnulib/import/m4/d-type.m4: Update.
2505         * gnulib/import/m4/dirent_h.m4: Update.
2506         * gnulib/import/m4/dirfd.m4: Update.
2507         * gnulib/import/m4/dirname.m4: Update.
2508         * gnulib/import/m4/double-slash-root.m4: Update.
2509         * gnulib/import/m4/dup.m4: Update.
2510         * gnulib/import/m4/dup2.m4: Update.
2511         * gnulib/import/m4/eealloc.m4: Update.
2512         * gnulib/import/m4/environ.m4: Update.
2513         * gnulib/import/m4/errno_h.m4: Update.
2514         * gnulib/import/m4/error.m4: Update.
2515         * gnulib/import/m4/exponentd.m4: Update.
2516         * gnulib/import/m4/exponentl.m4: Update.
2517         * gnulib/import/m4/extensions.m4: Update.
2518         * gnulib/import/m4/extern-inline.m4: Update.
2519         * gnulib/import/m4/fchdir.m4: Update.
2520         * gnulib/import/m4/fcntl-o.m4: Update.
2521         * gnulib/import/m4/fcntl.m4: Update.
2522         * gnulib/import/m4/fcntl_h.m4: Update.
2523         * gnulib/import/m4/fdopendir.m4: Update.
2524         * gnulib/import/m4/filenamecat.m4: Update.
2525         * gnulib/import/m4/flexmember.m4: Update.
2526         * gnulib/import/m4/float_h.m4: Update.
2527         * gnulib/import/m4/fnmatch.m4: Update.
2528         * gnulib/import/m4/fnmatch_h.m4: Update.
2529         * gnulib/import/m4/fpieee.m4: Update.
2530         * gnulib/import/m4/frexp.m4: Update.
2531         * gnulib/import/m4/frexpl.m4: Update.
2532         * gnulib/import/m4/fstat.m4: Update.
2533         * gnulib/import/m4/fstatat.m4: Update.
2534         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2535         * gnulib/import/m4/getcwd-path-max.m4: Update.
2536         * gnulib/import/m4/getcwd.m4: Update.
2537         * gnulib/import/m4/getdtablesize.m4: Update.
2538         * gnulib/import/m4/getlogin.m4: Update.
2539         * gnulib/import/m4/getlogin_r.m4: Update.
2540         * gnulib/import/m4/getpagesize.m4: Update.
2541         * gnulib/import/m4/getprogname.m4: Update.
2542         * gnulib/import/m4/gettimeofday.m4: Update.
2543         * gnulib/import/m4/glibc21.m4: Update.
2544         * gnulib/import/m4/glob.m4: Update.
2545         * gnulib/import/m4/glob_h.m4: Update.
2546         * gnulib/import/m4/gnulib-cache.m4: Update.
2547         * gnulib/import/m4/gnulib-common.m4: Update.
2548         * gnulib/import/m4/gnulib-comp.m4: Update.
2549         * gnulib/import/m4/gnulib-tool.m4: Update.
2550         * gnulib/import/m4/hard-locale.m4: Update.
2551         * gnulib/import/m4/include_next.m4: Update.
2552         * gnulib/import/m4/inttypes-pri.m4: Update.
2553         * gnulib/import/m4/inttypes.m4: Update.
2554         * gnulib/import/m4/isnand.m4: Update.
2555         * gnulib/import/m4/isnanl.m4: Update.
2556         * gnulib/import/m4/largefile.m4: Update.
2557         * gnulib/import/m4/limits-h.m4: Update.
2558         * gnulib/import/m4/localcharset.m4: Update.
2559         * gnulib/import/m4/locale-fr.m4: Update.
2560         * gnulib/import/m4/locale-ja.m4: Update.
2561         * gnulib/import/m4/locale-zh.m4: Update.
2562         * gnulib/import/m4/localtime-buffer.m4: Update.
2563         * gnulib/import/m4/longlong.m4: Update.
2564         * gnulib/import/m4/lstat.m4: Update.
2565         * gnulib/import/m4/malloc.m4: Update.
2566         * gnulib/import/m4/malloca.m4: Update.
2567         * gnulib/import/m4/math_h.m4: Update.
2568         * gnulib/import/m4/mbrtowc.m4: Update.
2569         * gnulib/import/m4/mbsinit.m4: Update.
2570         * gnulib/import/m4/mbsrtowcs.m4: Update.
2571         * gnulib/import/m4/mbstate_t.m4: Update.
2572         * gnulib/import/m4/memchr.m4: Update.
2573         * gnulib/import/m4/memmem.m4: Update.
2574         * gnulib/import/m4/mempcpy.m4: Update.
2575         * gnulib/import/m4/memrchr.m4: Update.
2576         * gnulib/import/m4/mkdir.m4: Update.
2577         * gnulib/import/m4/mkstemp.m4: Update.
2578         * gnulib/import/m4/mmap-anon.m4: Update.
2579         * gnulib/import/m4/mode_t.m4: Update.
2580         * gnulib/import/m4/msvc-inval.m4: Update.
2581         * gnulib/import/m4/msvc-nothrow.m4: Update.
2582         * gnulib/import/m4/multiarch.m4: Update.
2583         * gnulib/import/m4/nocrash.m4: Update.
2584         * gnulib/import/m4/off_t.m4: Update.
2585         * gnulib/import/m4/onceonly.m4: Update.
2586         * gnulib/import/m4/open-cloexec.m4: Update.
2587         * gnulib/import/m4/open.m4: Update.
2588         * gnulib/import/m4/openat.m4: Update.
2589         * gnulib/import/m4/opendir.m4: Update.
2590         * gnulib/import/m4/pathmax.m4: Update.
2591         * gnulib/import/m4/rawmemchr.m4: Update.
2592         * gnulib/import/m4/readdir.m4: Update.
2593         * gnulib/import/m4/readlink.m4: Update.
2594         * gnulib/import/m4/realloc.m4: Update.
2595         * gnulib/import/m4/rename.m4: Update.
2596         * gnulib/import/m4/rewinddir.m4: Update.
2597         * gnulib/import/m4/rmdir.m4: Update.
2598         * gnulib/import/m4/save-cwd.m4: Update.
2599         * gnulib/import/m4/secure_getenv.m4: Update.
2600         * gnulib/import/m4/setenv.m4: Update.
2601         * gnulib/import/m4/signal_h.m4: Update.
2602         * gnulib/import/m4/ssize_t.m4: Update.
2603         * gnulib/import/m4/stat-time.m4: Update.
2604         * gnulib/import/m4/stat.m4: Update.
2605         * gnulib/import/m4/std-gnu11.m4: Update.
2606         * gnulib/import/m4/stdbool.m4: Update.
2607         * gnulib/import/m4/stddef_h.m4: Update.
2608         * gnulib/import/m4/stdint.m4: Update.
2609         * gnulib/import/m4/stdio_h.m4: Update.
2610         * gnulib/import/m4/stdlib_h.m4: Update.
2611         * gnulib/import/m4/strchrnul.m4: Update.
2612         * gnulib/import/m4/strdup.m4: Update.
2613         * gnulib/import/m4/strerror.m4: Update.
2614         * gnulib/import/m4/string_h.m4: Update.
2615         * gnulib/import/m4/strstr.m4: Update.
2616         * gnulib/import/m4/strtok_r.m4: Update.
2617         * gnulib/import/m4/sys_socket_h.m4: Update.
2618         * gnulib/import/m4/sys_stat_h.m4: Update.
2619         * gnulib/import/m4/sys_time_h.m4: Update.
2620         * gnulib/import/m4/sys_types_h.m4: Update.
2621         * gnulib/import/m4/tempname.m4: Update.
2622         * gnulib/import/m4/time_h.m4: Update.
2623         * gnulib/import/m4/unistd-safer.m4: Update.
2624         * gnulib/import/m4/unistd_h.m4: Update.
2625         * gnulib/import/m4/warn-on-use.m4: Update.
2626         * gnulib/import/m4/wchar_h.m4: Update.
2627         * gnulib/import/m4/wchar_t.m4: Update.
2628         * gnulib/import/m4/wctype_h.m4: Update.
2629         * gnulib/import/m4/wint_t.m4: Update.
2630         * gnulib/import/malloc.c: Update.
2631         * gnulib/import/malloc/scratch_buffer.h: Update.
2632         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2633         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2634         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2635         * gnulib/import/malloca.c: Update.
2636         * gnulib/import/malloca.h: Update.
2637         * gnulib/import/malloca.valgrind: Update.
2638         * gnulib/import/math.in.h: Update.
2639         * gnulib/import/mbrtowc.c: Update.
2640         * gnulib/import/mbsinit.c: Update.
2641         * gnulib/import/mbsrtowcs-impl.h: Update.
2642         * gnulib/import/mbsrtowcs-state.c: Update.
2643         * gnulib/import/mbsrtowcs.c: Update.
2644         * gnulib/import/memchr.c: Update.
2645         * gnulib/import/memmem.c: Update.
2646         * gnulib/import/mempcpy.c: Update.
2647         * gnulib/import/memrchr.c: Update.
2648         * gnulib/import/mkdir.c: Update.
2649         * gnulib/import/mkstemp.c: Update.
2650         * gnulib/import/msvc-inval.c: Update.
2651         * gnulib/import/msvc-inval.h: Update.
2652         * gnulib/import/msvc-nothrow.c: Update.
2653         * gnulib/import/msvc-nothrow.h: Update.
2654         * gnulib/import/open.c: Update.
2655         * gnulib/import/openat-die.c: Update.
2656         * gnulib/import/openat-priv.h: Update.
2657         * gnulib/import/openat-proc.c: Update.
2658         * gnulib/import/openat.c: Update.
2659         * gnulib/import/openat.h: Update.
2660         * gnulib/import/opendir.c: Update.
2661         * gnulib/import/pathmax.h: Update.
2662         * gnulib/import/pipe-safer.c: Update.
2663         * gnulib/import/rawmemchr.c: Update.
2664         * gnulib/import/readdir.c: Update.
2665         * gnulib/import/readlink.c: Update.
2666         * gnulib/import/realloc.c: Update.
2667         * gnulib/import/ref-add.sin: Update.
2668         * gnulib/import/ref-del.sin: Update.
2669         * gnulib/import/rename.c: Update.
2670         * gnulib/import/rewinddir.c: Update.
2671         * gnulib/import/rmdir.c: Update.
2672         * gnulib/import/same-inode.h: Update.
2673         * gnulib/import/save-cwd.c: Update.
2674         * gnulib/import/save-cwd.h: Update.
2675         * gnulib/import/scratch_buffer.h: Update.
2676         * gnulib/import/secure_getenv.c: Update.
2677         * gnulib/import/setenv.c: Update.
2678         * gnulib/import/signal.in.h: Update.
2679         * gnulib/import/stat-time.c: Update.
2680         * gnulib/import/stat-time.h: Update.
2681         * gnulib/import/stat-w32.c: Update.
2682         * gnulib/import/stat-w32.h: Update.
2683         * gnulib/import/stat.c: Update.
2684         * gnulib/import/stdbool.in.h: Update.
2685         * gnulib/import/stddef.in.h: Update.
2686         * gnulib/import/stdint.in.h: Update.
2687         * gnulib/import/stdio.in.h: Update.
2688         * gnulib/import/stdlib.in.h: Update.
2689         * gnulib/import/str-two-way.h: Update.
2690         * gnulib/import/strchrnul.c: Update.
2691         * gnulib/import/strdup.c: Update.
2692         * gnulib/import/streq.h: Update.
2693         * gnulib/import/strerror-override.c: Update.
2694         * gnulib/import/strerror-override.h: Update.
2695         * gnulib/import/strerror.c: Update.
2696         * gnulib/import/string.in.h: Update.
2697         * gnulib/import/stripslash.c: Update.
2698         * gnulib/import/strnlen1.c: Update.
2699         * gnulib/import/strnlen1.h: Update.
2700         * gnulib/import/strstr.c: Update.
2701         * gnulib/import/strtok_r.c: Update.
2702         * gnulib/import/sys_stat.in.h: Update.
2703         * gnulib/import/sys_time.in.h: Update.
2704         * gnulib/import/sys_types.in.h: Update.
2705         * gnulib/import/tempname.c: Update.
2706         * gnulib/import/tempname.h: Update.
2707         * gnulib/import/time.in.h: Update.
2708         * gnulib/import/unistd--.h: Update.
2709         * gnulib/import/unistd-safer.h: Update.
2710         * gnulib/import/unistd.in.h: Update.
2711         * gnulib/import/unsetenv.c: Update.
2712         * gnulib/import/verify.h: Update.
2713         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2714         * gnulib/import/wchar.in.h: Update.
2715         * gnulib/import/wctype.in.h: Update.
2716         * gnulib/import/xalloc-oversized.h: Update.
2717         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2718         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2719
2720 2018-08-16  Gary Benson <gbenson@redhat.com>
2721
2722         PR gdb/13000:
2723         * gdb/main.c (captured_main_1): Exit with nonzero status
2724         in batch mode if the last command to be executed failed.
2725         * NEWS: Mention the above.
2726
2727 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
2728
2729         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
2730         end of warning message.
2731
2732 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2733
2734         PR gdb/22943:
2735         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
2736         (aarch64_extract_return_value): Use
2737         aapcs_is_vfp_call_or_return_candidate.
2738         (aarch64_return_in_memory): Likewise.
2739         (aarch64_store_return_value): Likewise.
2740
2741 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2742
2743         * aarch64-tdep.c
2744         (aapcs_is_vfp_call_or_return_candidate): Make static
2745         (pass_in_v_or_stack): Remove function.
2746         (pass_in_v_vfp_candidate): New function.
2747         (aarch64_push_dummy_call): Check for float register candidates.
2748
2749 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2750
2751         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
2752         (aapcs_is_vfp_call_or_return_candidate_1): New function.
2753         (aapcs_is_vfp_call_or_return_candidate): Likewise.
2754
2755 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
2756
2757         PR build/23399
2758         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
2759         (struct ipa_sym_addresses): Rename to...
2760         (struct ipa_sym_addresses_common): ... this.
2761         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
2762
2763 2018-08-28  Tom Tromey  <tom@tromey.com>
2764
2765         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2766         (token_fifo): Now a std::vector.
2767         (yylex, c_parse): Update.
2768         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2769         (token_fifo): Now a std::vector.
2770         (yylex, d_parse): Update.
2771         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2772         (token_fifo): Now a std::vector.
2773         (yylex, go_parse): Update.
2774
2775 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
2776
2777         * parser-defs.h (struct type_stack) <elements>: Change type to
2778         std::vector<union type_stack_elt>.
2779         <depth, size>: Remove.
2780         * parse.c (parse_exp_in_context_1): Adjust.
2781         (type_stack_reserve): Remove.
2782         (check_type_stack_depth): Remove.
2783         (insert_into_type_stack): Adjust to std::vector.
2784         (insert_type): Likewise.
2785         (push_type): Likewise.
2786         (push_type_int): Likewise.
2787         (insert_type_address_space): Likewise.
2788         (pop_type): Likewise.
2789         (pop_type_int): Likewise.
2790         (pop_typelist): Likewise.
2791         (pop_type_stack): Likewise.
2792         (append_type_stack): Likewise.
2793         (push_type_stack): Likewise.
2794         (get_type_stack): Likewise.
2795         (type_stack_cleanup): Likewise.
2796         (push_typelist): Likewise.
2797         (follow_types): Likewise.
2798         (_initialize_parse): Likewise.
2799
2800 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2801
2802         * NEWS: Mention csky target.
2803
2804 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
2805             Hafiz Abid Qadeer  <abidh@codesourcery.com>
2806             Don Breazeal  <donb@codesourcery.com>
2807
2808         * csky-linux-tdep.c: New file.
2809         * csky-tdep.c: Likewise.
2810         * csky-tdep.h: Likewise.
2811         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
2812         csky-tdep.o.
2813         (HFILES_NO_SRCDIR): Add csky-tdep.h.
2814         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
2815         * configure.tgt: Add csky support.
2816
2817 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
2818
2819         * python/py-framefilter.c (py_print_frame): Print frame architecture
2820         when printing on an MI output.
2821
2822 2018-08-27  Tom Tromey  <tom@tromey.com>
2823
2824         PR build/23087:
2825         * configure: Rebuild.
2826         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
2827
2828 2018-08-27  Tom Tromey  <tom@tromey.com>
2829
2830         * aarch64-linux-tdep.c
2831         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
2832         casts to int.
2833
2834 2018-08-27  Tom Tromey  <tom@tromey.com>
2835
2836         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
2837         unsigned.
2838         (ppc64_standard_linkage1, ppc64_standard_linkage2)
2839         (ppc64_standard_linkage3, ppc64_standard_linkage4)
2840         (ppc64_standard_linkage5, ppc64_standard_linkage6)
2841         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
2842         unsigned.
2843
2844 2018-08-27  Tom Tromey  <tom@tromey.com>
2845
2846         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
2847         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
2848
2849 2018-08-27  Tom Tromey  <tom@tromey.com>
2850
2851         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
2852         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
2853         ULONGEST_MAX.
2854         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
2855         ULONGEST_MAX.
2856         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
2857         ULONGEST_MAX.
2858         * sparc-linux-tdep.c (sparc32_linux_sigframe)
2859         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
2860         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
2861         ULONGEST_MAX.
2862         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
2863         (ppc64_linux_sigaction_tramp_frame)
2864         (ppc32_linux_sighandler_tramp_frame)
2865         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2866         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
2867         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
2868         * mn10300-linux-tdep.c (am33_linux_sigframe)
2869         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
2870         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
2871         * mips-linux-tdep.c (mips_linux_o32_sigframe)
2872         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
2873         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
2874         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
2875         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
2876         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
2877         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
2878         * microblaze-linux-tdep.c
2879         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2880         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
2881         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
2882         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
2883         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
2884         * common/common-types.h (ULONGEST_MAX): New define.
2885         (CORE_ADDR_MAX): Fix formatting.
2886         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
2887         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
2888         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
2889         (arm_linux_rt_sigreturn_tramp_frame)
2890         (arm_eabi_linux_sigreturn_tramp_frame)
2891         (arm_eabi_linux_rt_sigreturn_tramp_frame)
2892         (thumb2_eabi_linux_sigreturn_tramp_frame)
2893         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
2894         (arm_linux_restart_syscall_tramp_frame)
2895         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
2896         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
2897         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
2898         ULONGEST_MAX.
2899         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
2900
2901 2018-08-27  Tom Tromey  <tom@tromey.com>
2902
2903         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
2904         CORE_ADDR_MAX.
2905         * mips-tdep.c (mips_deal_with_atomic_sequence)
2906         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
2907         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
2908         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
2909         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
2910         CORE_ADDR_MAX.
2911         * aarch64-tdep.c (aarch64_software_single_step): Use
2912         CORE_ADDR_MAX.
2913
2914 2018-08-27  Tom Tromey  <tom@tromey.com>
2915
2916         * linespec.c (complete_linespec_component): Add cast to "char".
2917         * completer.c (completion_tracker::build_completion_result): Add
2918         cast to "char".
2919
2920 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2921
2922         * solist.h (struct solist, struct target_so_ops): Fix
2923         indentation.
2924
2925 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2926
2927         * ada-tasks.c (ada_task_info_s): Remove typedef.
2928         (DEF_VEC_O(ada_task_info_s)): Remove.
2929         (struct ada_tasks_inferior_data): Initialize fields.
2930         <task_list>: Make an std::vector.
2931         (get_ada_tasks_inferior_data): Allocate with new.
2932         (ada_get_task_number): Adjust.
2933         (get_task_number_from_id): Likewise.
2934         (valid_task_id): Likewise.
2935         (ada_get_task_info_from_ptid): Likewise.
2936         (iterate_over_live_ada_tasks): Likewise.
2937         (add_ada_task): Likewise.
2938         (read_known_tasks): Likewise.
2939         (ada_build_task_list): Likewise.
2940         (print_ada_task_info): Likewise.
2941         (info_task): Likewise.
2942         (task_command_1): Likewise.
2943
2944 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2945
2946         * ada-lang.c (add_angle_brackets): Return std::string.
2947
2948 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
2949
2950         * python/py-threadevent.c (py_get_event_thread): Initialize
2951         pythread.
2952
2953 2018-08-24  Pedro Alves  <palves@redhat.com>
2954
2955         * python/py-bpevent.c (create_breakpoint_event_object): Use
2956         copy-initialization.
2957         * python/py-continueevent.c (emit_continue_event): Use
2958         copy-initialization.
2959         * python/py-exitedevent.c (create_exited_event_object): Return a
2960         gdbpy_ref<>.
2961         (emit_exited_event): Use copy-initialization.
2962         * python/py-inferior.c (python_new_inferior)
2963         (python_inferior_deleted, add_thread_object): Use
2964         copy-initialization.
2965         * python/py-infevents.c (create_inferior_call_event_object)
2966         (create_register_changed_event_object)
2967         (create_memory_changed_event_object): Return a gdbpy_ref<>.
2968         (emit_inferior_call_event, emit_memory_changed_event)
2969         (emit_register_changed_event): Use copy-initialization.
2970         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2971         Return a gdbpy_ref<>.
2972         (emit_new_objfile_event): Use copy-initialization.
2973         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
2974         (emit_clear_objfiles_event): Use copy-initialization.
2975         * python/py-signalevent.c (create_signal_event_object): Use
2976         copy-initialization.
2977         * python/py-threadevent.c (create_thread_event_object): Use
2978         copy-initialization.
2979
2980 2018-08-24  Pedro Alves  <palves@redhat.com>
2981             Simon Marchi  <simon.marchi@ericsson.com>
2982
2983         PR gdb/23379
2984         * python/py-continueevent.c: Include "gdbthread.h".
2985         (create_continue_event_object): Add intro comment.  Add 'ptid'
2986         parameter.  Use it to find thread to pass to
2987         create_thread_event_object.
2988         (emit_continue_event): Pass PTID down to
2989         create_continue_event_object.
2990         * python/py-event.h (py_get_event_thread): Declare.
2991         (create_thread_event_object): Remove default from 'thread'
2992         parameter.
2993         * python/py-stopevent.c (create_stop_event_object): Use
2994         py_get_event_thread.
2995         * python/py-threadevent.c (get_event_thread): Rename to ...
2996         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
2997         and use it to find the thread.
2998         (create_thread_event_object): Assert that THREAD isn't null.
2999         Don't find the event thread here.
3000
3001 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3002
3003         * block.h (blockrange, blockranges): New struct declarations.
3004         (struct block): Add new field named `ranges'.
3005         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3006         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3007         macros for accessing ranges in struct block.
3008         (make_blockranges): New declaration.
3009         block.c (make_blockranges): New function.
3010         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3011         for block.
3012         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3013         * blockframe.c (cache_pc_function_block): New static global.
3014         (clear_pc_function_cache): Clear cache_pc_function_block.
3015         (find_pc_partial_function): Move comment to symtab.h.  Add
3016         support for non-contiguous blocks.
3017         * cli/cli-cmds.c (block.h): Include.
3018         (print_disassembly): Handle printing of non-contiguous blocks.
3019         (disassemble_current_function): Likewise.
3020         (disassemble_command): Likewise.
3021
3022         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3023         BLOCK_START.
3024         * blockframe.c (get_pc_function_start): Likewise.
3025         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3026         (gcc_symbol_address): Likewise.
3027         * compile/compile-object-run.c (compile_object_run): Likewise.
3028         * compile/compile.c (get_expr_block_and_pc): Likewise.
3029         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3030         (func_addr_to_tail_call_list): Likewise.
3031         * findvar.c (default_read_var_value): Likewise.
3032         * inline-frame.c (inline_frame_this_id): Likewise.
3033         (skip-inline_frames): Likewise.
3034         * infcmd.c (until_next_command): Likewise.
3035         * linespec.c (convert_linespec_to_sals): Likewise.
3036         * parse.c (parse_exp_in_context_1): Likewise.
3037         * printcmd.c (build_address_symbolic): likewise.
3038         (info_address_command): Likewise.
3039         symtab.c (find_function_start_sal): Likewise.
3040         (skip_prologue_sal): Likewise.
3041         (find_function_alias_target): Likewise.
3042         (find_gnu_ifunc): Likewise.
3043         * stack.c (find_frame_funname): Likewise.
3044         * symtab.c (fixup_symbol_section): Likewise.
3045         (find_function_start_sal): Likewise.
3046         (skip_prologue_sal): Likewsie.
3047         (find_function_alias_target): Likewise.
3048         (find_gnu_ifunc): Likewise.
3049         * tracepoint.c (info_scope_command): Likewise.
3050         * value.c (value_fn_field): Likewise.
3051
3052         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3053         in place of find_pc_partial_function.
3054         * blockframe.c (find_function_entry_range_from_pc): New function.
3055         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3056         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3057         for each range in a block.
3058
3059
3060 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3061
3062         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3063         incrementation.
3064
3065 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3066
3067         * solib-svr4.c (read_program_headers_from_bfd): Return
3068         gdb::optional<gdb::byte_vector>.
3069         (svr4_exec_displacement): Adjust.
3070
3071 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3072
3073         * solib-svr4.c (read_program_header): Return
3074         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3075         (find_program_interpreter): Return
3076         gdb::optional<gdb::byte_vector>.
3077         (scan_dyntag_auxv): Adjust.
3078         (enable_break): Adjust.
3079         (svr4_exec_displacement): Adjust.
3080
3081 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3082
3083         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3084         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3085
3086 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3087
3088         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3089         string_vprintf.
3090         * guile/scm-utils.c (gdbscm_printf): Likewise.
3091         * serial.c (serial_printf): Likewise.
3092         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3093
3094 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3095
3096         * stack.c (print_frame): Print frame architecture when printing on
3097         an MI output.
3098         * NEWS: Mention new "arch" attribute in frame output.
3099
3100 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3101
3102         * arch/aarch64.h (aarch64_regnum): Update comment.
3103
3104 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3105
3106         * NEWS: Add SVE to 8.2 section.
3107
3108 2018-08-21  Pedro Alves  <palves@redhat.com>
3109
3110         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3111         out from gdbscm_parse_function_args.
3112         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3113         gdbscm_parse_function_args_1.
3114
3115 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3116
3117         PR gdb/17816
3118         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3119         operator.
3120
3121 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3122
3123         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3124
3125 2018-08-19  Michael Spang  <spang@google.com>
3126
3127         PR gdb/11786
3128         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3129         for PT_TLS segments.
3130
3131 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3132
3133         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3134         dwarf_variable_value.
3135         * dwarf2-frame.c (class dwarf_expr_executor):
3136         Add override for dwarf_variable_value.
3137         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3138         (class symbol_needs_eval_context): Likewise.
3139         (indirect_synthetic_pointer): Add forward declaration.
3140         (sect_variable_value): New function.
3141         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3142         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3143         for DW_OP_GNU_variable_value.
3144
3145 2018-08-16  Tom Tromey  <tom@tromey.com>
3146
3147         * top.c (read_command_file): Update.
3148         (command_line_input): Remove "repeat" argument.
3149         * ada-lang.c (get_selections): Update.
3150         * linespec.c (decode_line_2): Update.
3151         * defs.h (command_line_input): Remove argument.
3152         * cli/cli-script.c (read_next_line): Update.
3153         * python/py-gdb-readline.c: Update.
3154
3155 2018-08-17  Tom Tromey  <tom@tromey.com>
3156
3157         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3158         command_line_input.
3159
3160 2018-08-15  Tom Tromey  <tom@tromey.com>
3161
3162         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3163
3164 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3165
3166         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3167         If used, use find_pc_partial_function to find address range
3168         to disassemble.
3169         * mi/mi-main.c (mi_cmd_list_features): Report
3170         "data-disassemble-a-option" feature.
3171         * NEWS: Mention new -data-disassemble option -a.
3172
3173 2018-08-13  Tom Tromey  <tom@tromey.com>
3174
3175         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3176
3177 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3178
3179         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3180         (aarch64_linux_collect_sve_regset): Likewise.
3181         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3182         * regcache.h (regcache_map_entry_size): New function.
3183
3184 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3185
3186         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3187         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3188         (SVE_HEADER_VL_LENGTH): Likewise.
3189         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3190         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3191         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3192         (SVE_HEADER_SIZE_OFFSET): Likewise.
3193         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3194         (SVE_HEADER_VL_OFFSET): Likewise.
3195         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3196         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3197         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3198         (SVE_HEADER_SIZE): Likewise.
3199         (aarch64_linux_core_read_vq): Add function.
3200         (aarch64_linux_core_read_description): Check for SVE section.
3201
3202 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3203
3204         * aarch64-fbsd-tdep.c
3205         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3206         collect_size.
3207         * aarch64-linux-tdep.c
3208         (aarch64_linux_iterate_over_regset_sections): Likewise.
3209         * alpha-linux-tdep.c
3210         (alpha_linux_iterate_over_regset_sections):
3211         * alpha-nbsd-tdep.c
3212         (alphanbsd_iterate_over_regset_sections): Likewise.
3213         * amd64-fbsd-tdep.c
3214         (amd64fbsd_iterate_over_regset_sections): Likewise.
3215         * amd64-linux-tdep.c
3216         (amd64_linux_iterate_over_regset_sections): Likewise.
3217         * arm-bsd-tdep.c
3218         (armbsd_iterate_over_regset_sections): Likewise.
3219         * arm-fbsd-tdep.c
3220         (arm_fbsd_iterate_over_regset_sections): Likewise.
3221         * arm-linux-tdep.c
3222         (arm_linux_iterate_over_regset_sections): Likewise.
3223         * corelow.c (get_core_registers_cb): Likewise.
3224         (core_target::fetch_registers): Likewise.
3225         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3226         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3227         * gdbarch.h (void): Regenerate.
3228         * gdbarch.sh: Add supply_size and collect_size.
3229         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3230         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3231         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3232         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3233         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3234         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3235         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3236         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3237         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3238         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3239         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3240         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3241         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3242         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3243         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3244         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3245         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3246         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3247         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3248         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3249         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3250         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3251         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3252         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3253         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3254         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3255         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3256         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3257         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3258         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3259
3260 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3261
3262         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3263         with string_printf.
3264
3265 2018-08-10  Keith Seitz  <keiths@redhat.com>
3266
3267         * compile/compile-c-support.c (add_code_header, add_code_footer):
3268         Move into policy class.
3269         (c_push_user_expression, pop_user_expression_nop)
3270         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3271         (compile_program): New host class.
3272         (c_compile_program): New typedef.
3273         (c_compute_porgram): Use c_compile_program.
3274
3275 2018-08-10  Keith Seitz  <keiths@redhat.com>
3276
3277         * compile/compile-internal.h (compile_instance::~compile_instance):
3278         Remove calls to htab_delete.
3279         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3280         * compile.c (compile_instance::compile_instance): Initialize
3281         htab unique pointers.
3282         (compile_instance::get_cached_type, compile_instance::insert_type)
3283         (compile_instance::error_symbol_once): Update for unique_ptr.
3284
3285 2018-08-10  Keith Seitz  <keiths@redhat.com>
3286
3287         * compile/compile-c-symbols.c (struct symbol_error)
3288         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3289         (compile_instance::insert_symbol_error)
3290         (compile_instance::error_symbol_once): Move to ...
3291         * compile/compile.c: ... here.
3292
3293 2018-08-10  Keith Seitz  <keiths@redhat.com>
3294
3295         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3296         instead of `new_compile_instance'.
3297         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3298         Update description.
3299         If the symbol error map is not initialized, create it.
3300         (generate_c_for_for_one_symbol): Do not check/initialize
3301         the symbol error map.
3302         * compile/compile-c-types.c (compile_c_instance): Make a class.
3303         Update all callers.
3304         (compile_instance::compile_instance): Initialize the type cache.
3305         (get_cached_type): New function.
3306         (insert_type): Update description.
3307         (compile_c_instance::m_default_cflags): Define.
3308         (convert_type): Update description.  Use get_cached_type.
3309         (delete_instance): Moved to destructor.
3310         (new_compile_instance): Moved to constructor.
3311         * compile/compile-c.h (compile_c_instance): Make class inheriting
3312         from compile_instance.
3313         <base>: Remove field.
3314         <type_map, symbol_err_map>: Move to base class.
3315         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3316         * compile/compile-internal.h (compile_instance): Make class.
3317         <type_map_t, symbol_err_map_t>: Define.
3318         <fe>: Rename to `m_gcc_fe'.
3319         <scope, block, gcc_target_options>: Add `m_' prefix.
3320         <m_type_map, m_symbol_err_map>: New fields, moved from
3321         compile_c_instance.
3322         <destroy>: Remove.
3323         (convert_type, new_compile_instance): Remove.
3324         * compile/compile.c (cleanup_compile_instance): Remove.
3325         (compile_to_object): Use unique_ptr to eliminate cleanups.
3326         (compile_instance::set_print_callback, compile_instance::version)
3327         (compile_instance::set_verbose)
3328         (compile_instance::set_driver_filename)
3329         (compile_instance::set_triplet_regexp)
3330         (compile_instance::set_arguments)
3331         (compile_instance::set_source_file)
3332         (compile_instance::compile): Define.
3333
3334 2018-08-10  Keith Seitz  <keiths@redhat.com>
3335
3336         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3337         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3338         gcc-c-fe.def to define C plugin.
3339         (delete_instance): Delete `c_plugin'.
3340         (new_compile_instance): Initialize `c_plugin'.
3341         * compile/compile-c.h: Include gcc_c_plugin.h.
3342         (struct compile_c_instance) <c_plugin>: New member.
3343         * gcc-c-plugin.h: New file.
3344         Update all callers with API change.
3345
3346 2018-08-10  Keith Seitz  <keiths@redhat.com>
3347
3348         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3349         (HFILES_NO_SRCDIR): ... to here.
3350         Add compile-internal.h and compile-c.h.
3351         * compile/compile-c-support.c: Include compile-c.h.
3352         * compile/compile-c-symbols.c: Include compile-c.h.
3353         (generate_c_for_variable_locations): Update comment.
3354         * compile/compile-c-types.c: Include compile-c.h.
3355         * compile/compile-c.h: New file -- moved C language declarations
3356         from other files here.
3357         * compile/compile-internal.h: Do not include hashtab.h or
3358         common/enum-flags.h.
3359         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3360         (gcc_convert_symbol, gcc_symbol_address)
3361         (generate_c_for_variable_locations, c_get_mode_for_size)
3362         (c_get_range_decl_name): Definitions moved to compile-c.h.
3363         * compile/compile-loc2c.c: Include compile-c.h.
3364
3365 2018-08-10  Keith Seitz  <keiths@redhat.com>
3366
3367         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3368         (c_symbol_substitution_name): ... this.
3369         Update all callers.
3370
3371 2018-08-10  Keith Seitz  <keiths@redhat.com>
3372
3373         * compile/compile-c-support.c (c_compute_program): Use
3374         unique_xmalloc_ptr to eliminate cleanup.
3375         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3376         Return a unique_xmalloc_ptr and eliminate cleanup.
3377         * compile/compile-internal.h (generate_c_for_variable_locations):
3378         Return unique_xmalloc_ptr and update description.
3379
3380 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3381
3382         * corelow.c (core_target::get_core_register_section): Rename
3383         min_size to section_min_size.
3384
3385 2018-08-09  Jim Wilson  <jimw@sifive.com>
3386
3387         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3388         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3389         * NEWS: Mention new GNU/Linux RISC-V target.
3390         * configure.host: Add riscv*-*-linux*.
3391         * configure.nat: Add riscv*.
3392         * configure.tgt: Add riscv*-*-linux*.
3393         * riscv-linux-nat.c: New file.
3394         * riscv-linux-tdep.c: New file.
3395
3396 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3397
3398         * infrun.c (resume): Make static, add forward declaration.
3399         (proceed): Update header comment.
3400         * infrun.h (resume): Delete declaration.
3401
3402 2018-08-09  Tom Tromey  <tom@tromey.com>
3403
3404         * riscv-tdep.h: Minor formatting fixes.
3405
3406 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3407
3408         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3409         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3410         (test_mkdir_recursive): Likewise.
3411         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3412
3413 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3414
3415         * valarith.c (value_subscripted_rvalue): If an array is not in
3416         memory, and we don't know the upper bound, then we can't know that
3417         the requested element exists or not.
3418
3419 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3420
3421         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3422         (target_options_to_string): Add comment.
3423
3424 2018-08-08  Tom Tromey  <tom@tromey.com>
3425
3426         * unittests/scoped_mmap-selftests.c: Check result of "write".
3427
3428 2018-08-08  Jim Wilson  <jimw@sifive.com>
3429
3430         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3431         (decode_register_index_short): New.
3432         (decode_j_type_insn, decode_cj_type_insn): New.
3433         (decode_b_type_insn, decode_cb_type_insn): New.
3434         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3435         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3436         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3437         is_c_sw_insn instead of is_sw_insn.
3438         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3439         (riscv_software_single_step): New.
3440         * riscv-tdep.h (riscv_software_single_step): Declare.
3441
3442         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3443         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3444
3445 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3446
3447         PR gdb/18050:
3448         * target.c (dispose_inferior): Don't dispose of inferiors that are
3449         already killed.
3450
3451 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3452
3453         * remote.c (remote_target::download_tracepoint): Change char* to
3454         const char*.
3455
3456 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3457
3458         * target.h (target_options_to_string): Return an std::string.
3459         * target.c (str_comma_list_concat_elem): Return void, use
3460         std::string.
3461         (do_option): Likewise.
3462         (target_options_to_string): Return an std::string.
3463         * linux-nat.c (linux_nat_target::wait): Adjust.
3464         * target-debug.h (target_debug_print_options): Adjust.
3465
3466 2018-08-07  Tom Tromey  <tom@tromey.com>
3467
3468         * Makefile.in (CPPFLAGS): New variable.
3469         (INTERNAL_CPPFLAGS): Use it.
3470
3471 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3472
3473         * NEWS: Mention the index cache.
3474
3475 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3476
3477         * common/pathstuff.h (get_standard_cache_dir): New.
3478         * common/pathstuff.c (get_standard_cache_dir): New.
3479         * build-id.h (build_id_to_string): New.
3480         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
3481         DEBUG_STR_SUFFIX): Move to here.
3482         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
3483         DEBUG_STR_SUFFIX): Move from there.
3484         (write_psymtabs_to_index): Make non-static, add basename
3485         parameter.  Write to temporary files, rename when done.
3486         (save_gdb_index_command): Adjust call to
3487         write_psymtabs_to_index.
3488         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
3489         field.
3490         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
3491         (get_gdb_index_contents_from_cache): New.
3492         (get_gdb_index_contents_from_cache_dwz): New.
3493         (dwarf2_initialize_objfile): Read index from cache.
3494         (dwarf2_build_psymtabs): Save to index.
3495         * dwarf-index-cache.h: New file.
3496         * dwarf-index-cache.c: New file.
3497         * dwarf-index-write.h: New file.
3498
3499 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3500
3501         * gnulib/aclocal.m4: Re-generate.
3502         * gnulib/config.in: Re-generate.
3503         * gnulib/configure: Re-generate.
3504         * gnulib/import/Makefile.am: Re-generate.
3505         * gnulib/import/Makefile.in: Re-generate.
3506         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3507         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3508         * gnulib/import/m4/mkdir.m4: New file.
3509         * gnulib/import/mkdir.c: New file.
3510         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
3511         module.
3512
3513 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3514
3515         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
3516         * common/scoped_mmap.c: New file.
3517         * common/scoped_mmap.h (destroy): New method.
3518         (~scoped_mmap, reset): Use destroy.
3519         (scoped_mmap): New move constructor.
3520         (mmap_file): New declaration.
3521         * unittests/scoped_mmap-selftests.c (test_normal,
3522         test_invalid_filename, run_tests): New functions.
3523         (_initialize_scoped_mmap_selftests): Register selftest.
3524
3525 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3526
3527         * dwarf2read.c (read_gdb_index_from_section): Rename to...
3528         (read_gdb_index_from_buffer): ... this.  Remove section
3529         parameter, add buffer parameter.
3530         (get_gdb_index_contents_ftype,
3531         get_gdb_index_contents_dwz_ftype): New typedefs.
3532         (dwarf2_read_gdb_index): Add callback parameters to get the
3533         index contents.
3534         (get_gdb_index_contents_from_section): New.
3535         (dwarf2_initialize_objfile): Update call to
3536         dwarf2_read_gdb_index.
3537
3538 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3539
3540         * common/filestuff.h (gdb_fopen_cloexec): New overload.
3541         (gdb_open_cloexec): Likewise.
3542         * nat/linux-osdata.c (command_from_pid): Use string_printf.
3543         (commandline_from_pid): Likewise.
3544         (linux_xfer_osdata_threads): Likewise.
3545         (linux_xfer_osdata_fds): Likewise.
3546         * ada-lang.c (is_package_name): Likewise.
3547         * auxv.c (procfs_xfer_auxv): Likewise.
3548         * breakpoint.c (print_one_breakpoint_location): Use
3549         uiout::field_fmt.
3550         (print_one_catch_solib): Use string_printf.
3551         * coff-pe-read.c (add_pe_exported_sym): Likewise.
3552         (add_pe_forwarded_sym): Likewise.
3553         * dwarf2read.c (create_type_unit_group): Likewise.
3554         (build_error_marker_type): Likewise.
3555         * infcall.c (get_function_name): Likewise.
3556         * valprint.c (print_converted_chars_to_obstack): Likewise.
3557         * xtensa-tdep.c (xtensa_register_type): Likewise.
3558
3559 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
3560
3561         * remote.c (remote_target::download_tracepoint): Fix format
3562         string errors.
3563
3564 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3565
3566         * tracefile.c: Include common/byte-vector.h.
3567         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
3568         with trace_regblock_size if needed.  Update uses of buf.
3569
3570 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3571
3572         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
3573         std::vector<unsigned char>.
3574         * tracepoint.c (collection_list::collection_list): Remove
3575         m_regs_mask initializer from initializer list.  Resize
3576         m_regs_mask using the largest remote register number.
3577         (collection_list::add_remote_register): Remove size check on
3578         m_regs_mask.  Use at to access element.
3579         (collection_list::stringify): Change type of temp_buf to
3580         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
3581         stringify the register mask.  Use pack_hex_byte for the register
3582         mask.
3583
3584 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3585
3586         * tracepoint.h (class collection_list) <add_register>: Remove.
3587         <add_remote_register, add_ax_registers, add_local_register>:
3588         Declare.
3589         <add_memrange>: Add scope parameter.
3590         * tracepoint.c (encode_actions_1): Likewise.
3591         (collection_list::add_register): Rename to ...
3592         (collection_list::add_remote_register): ... this.  Update
3593         comment.
3594         (collection_list::add_ax_registers, add_local_register): New
3595         methods.
3596         (collection_list::add_memrange): Add scope parameter.  Call
3597         add_local_register instead of add_register.
3598         (finalize_tracepoint_aexpr): New function.
3599         (collection_list::collect_symbol): Update calls to add_memrange.
3600         Call add_local_register instead of add_register.  Call
3601         add_ax_registers.  Call finalize_tracepoint_aexpr.
3602         (encode_actions_1): Get remote regnos for $reg action.  Call
3603         add_remote_register, add_ax_registers, and add_local_register.
3604         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
3605         (validate_actionline): Call finalize_tracepoint_aexpr.
3606
3607 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3608
3609         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
3610         Replace array buf with gdb::char_vector buf, of size
3611         get_remote_packet_size ().  Replace references to buf and
3612         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
3613         and xsnprintf with snprintf.  Raise errors if the buffer is too
3614         small.
3615
3616 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3617
3618         * remote.c (remote_target::download_tracepoint): Fix the has_more
3619         predicate in the QTDP action list iteration.
3620
3621 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3622
3623         * remote.c (remote_target::download_tracepoint): Fix indentation
3624         in for block.
3625
3626 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3627
3628         * proc-api.c (_initialize_proc_api): Remove c, unused.
3629         * procfs.c (procfs_init_inferior): Remove signals, unused.
3630         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
3631         unused.
3632
3633 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
3634             Andrew Burgess  <andrew.burgess@embecosm.com>
3635
3636         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
3637         'W_STOPCODE (0)' as this could be ambiguous.
3638
3639 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
3640
3641         * ser-tcp.c (net_open): Fix thinko when deciding whether to
3642         disable TCP's Nagle algorithm (use "ai_protocol" instead of
3643         "ai_socktype").
3644
3645 2018-08-02  Tom Tromey  <tom@tromey.com>
3646
3647         PR symtab/16842.
3648         * dwarf2read.c (read_func_scope): Set symtab on template parameter
3649         symbols.
3650         (process_structure_scope): Likewise.
3651
3652 2018-08-02  Xavier Roirand  <roirand@adacore.com>
3653
3654         PR gdb/22629:
3655         * darwin-nat.c (darwin_kill_inferior): Fix handling of
3656         kill inferior.
3657
3658 2018-08-02  Tom Tromey  <tom@tromey.com>
3659
3660         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
3661         (darwin_suspend_inferior, darwin_resume_inferior)
3662         (darwin_decode_notify_message, darwin_resume_inferior_threads)
3663         (darwin_check_new_threads): Check result of get_darwin_inferior.
3664
3665 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
3666
3667         GDB 8.1.1 released.
3668
3669 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
3670
3671         * varobj.c (varobj_get_path_expr_parent): Report an error if
3672         parent is a dynamic varobj.
3673
3674 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3675
3676         * gnulib/aclocal.m4: Re-generate.
3677         * gnulib/config.in: Re-generate.
3678         * gnulib/configure: Re-generate.
3679         * gnulib/import/Makefile.in: Re-generate.
3680         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3681         * gnulib/import/m4/onceonly.m4: Re-generate.
3682
3683 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3684
3685         * target-descriptions.c (struct xml_test_tdesc): New.
3686         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
3687         (record_xml_tdesc): Update.
3688         (maintenance_check_xml_descriptions): Update.
3689         * target-descriptions.h (record_xml_tdesc): Update comment.
3690
3691 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3692
3693         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
3694         checking array bounds are defined.
3695
3696 2018-07-30  Tom Tromey  <tom@tromey.com>
3697
3698         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
3699         irreflexivity violation.
3700
3701 2018-07-30  Tom Tromey  <tom@tromey.com>
3702
3703         * cli/cli-decode.c (lookup_cmd): Remove lint code.
3704         * value.c (unpack_long): Remove lint code.
3705         * valops.c (value_ind): Remove lint code.
3706         * valarith.c (value_x_binop, value_x_unop, value_equal)
3707         (value_pos): Remove lint code.
3708
3709 2018-07-28  Tom de Vries  <tdevries@suse.de>
3710
3711         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
3712         with undefined upper bound as <optimized out>.
3713
3714 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
3715
3716         * gcore.in: Rename variable "name" to "prefix".  Expand
3717         "usage" text.
3718
3719 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
3720
3721         * windows-nat.c (windows_nat_target::create_inferior): Update to
3722         call close() in global namespace.
3723
3724 2018-07-26  Tom Tromey  <tom@tromey.com>
3725
3726         * dwarf-index-write.c (add_address_entry): Don't add objfile
3727         offsets.
3728         * dbxread.c (find_stab_function): Rename from
3729         find_stab_function_addr.  Return a bound_minimal_symbol.
3730         (read_dbx_symtab): Use raw_text_low, raw_text_high.
3731         Don't add objfile offsets.
3732         (end_psymtab): Use raw_text_low, raw_text_high,
3733         MSYMBOL_VALUE_RAW_ADDRESS.
3734         (read_ofile_symtab): Update.
3735         (process_one_symbol): Update.
3736         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
3737         offsets.
3738         (dw2_relocate): Remove.
3739         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
3740         searching addrmap.
3741         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
3742         Update.
3743         (process_psymtab_comp_unit_reader, add_partial_symbol)
3744         (add_partial_subprogram, dwarf2_ranges_read): Update.
3745         (load_partial_dies): Update.
3746         (add_address_entry): Don't add objfile offsets.
3747         (dwarf2_build_include_psymtabs): Update.
3748         (create_addrmap_from_aranges): Don't add objfile offsets.
3749         (dw2_find_pc_sect_compunit_symtab): Update.
3750         * mdebugread.c (parse_symbol): Don't add objfile offsets.
3751         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
3752         Update.
3753         (parse_partial_symbols): Don't add objfile offsets.  Use
3754         raw_text_low, raw_text_high.  Update.
3755         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
3756         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
3757         or call 'relocate' quick function.  Clear psymbol_map.
3758         * psympriv.h (struct partial_symbol) <address>: Add section
3759         offset.
3760         <set_unrelocated_address>: Rename from set_address.
3761         <raw_text_low, raw_text_high>: New methods.
3762         <text_low, text_high>: Add objfile parameter.
3763         (add_psymbol_to_bcache): Add 'section' parameter.  Call
3764         set_unrelocated_address.
3765         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3766         (find_pc_psymbol): Update.
3767         (fixup_psymbol_section, relocate_psymtabs): Remove.
3768         (dump_psymtab, psym_functions): Update.
3769         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
3770         parameter.
3771         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
3772         (start_psymtab_common): Update.
3773         * symfile-debug.c (debug_qf_relocate): Remove.
3774         (debug_sym_quick_functions): Update.
3775         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
3776         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
3777         Update.
3778
3779 2018-07-26  Tom Tromey  <tromey@redhat.com>
3780
3781         * dbxread.c (end_psymtab): Use text_high_valid and
3782         text_low_valid.
3783         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
3784         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
3785         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3786         Update comment.
3787         <text_low_valid, text_high_valid>: New fields.
3788         <set_text_low, set_text_high>: Update.
3789         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
3790
3791 2018-07-26  Tom Tromey  <tom@tromey.com>
3792
3793         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
3794         Update.
3795         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
3796         textlow and texthigh fields.
3797         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
3798         Update.
3799         * mdebugread.c (parse_lines, parse_partial_symbols)
3800         (psymtab_to_symtab_1): Update.
3801         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3802         Rename fields.  Update comment.  Now private.
3803         <text_low, text_high, set_text_low, set_text_high>: New methods.
3804         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3805         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
3806         (start_psymtab_common, maintenance_info_psymtabs)
3807         (maintenance_check_psymtabs): Update.
3808         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
3809         texthigh fields.
3810         (scan_xcoff_symtab): Update.
3811
3812 2018-07-26  Tom Tromey  <tromey@redhat.com>
3813
3814         * psympriv.h (struct partial_symbol) <unrelocated_address,
3815         address, set_address>: New methods.
3816         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
3817         (fixup_psymbol_section, relocate_psymtabs): Update.
3818         (print_partial_symbols): Add 'objfile' parameter.  Update.
3819         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
3820         Update.
3821
3822 2018-07-26  Tom Tromey  <tom@tromey.com>
3823
3824         * dwarf-index-write.c (write_psymbols, debug_names::insert)
3825         (debug_names::write_psymbols): Update.
3826         * psympriv.h (struct partial_symbol): Derive from
3827         general_symbol_info.
3828         <obj_section>: New method.
3829         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
3830         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3831         (find_pc_sect_psymbol, fixup_psymbol_section)
3832         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
3833         (print_partial_symbols, recursively_search_psymtabs)
3834         (compare_psymbols, psymbol_hash, psymbol_compare)
3835         (add_psymbol_to_bcache, maintenance_check_psymtabs)
3836         (psymbol_name_matches, psym_fill_psymbol_map): Update.
3837
3838 2018-07-26  Tom Tromey  <tromey@redhat.com>
3839
3840         * dbxread.c (end_psymtab): Remove dead code.
3841
3842 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
3843
3844         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
3845         DWARF unwinders are disabled.
3846         * dwarf2-frame.c: Add dwarf2read.h include.
3847         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
3848         disabled.
3849         (dwarf2_frame_unwinders_enabled_p): Define.
3850         (show_dwarf_unwinders_enabled_p): New function.
3851         (_initialize_dwarf2_frame): Register switch to control DWARF
3852         unwinder use.
3853         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
3854         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
3855         (show_dwarf_cmdlist): Remove static keyword.
3856         * dwarf2read.h (set_dwarf_cmdlist): Declare.
3857         (show_dwarf_cmdlist): Declare.
3858         * NEWS: Document new feature.
3859
3860 2018-07-26  Tom de Vries  <tdevries@suse.de>
3861
3862         PR breakpoints/23366
3863         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
3864
3865 2018-07-26  Tom de Vries  <tdevries@suse.de>
3866
3867         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
3868         DW_AT_count can't be translated to a dynamic prop.
3869
3870 2018-07-25  Tom de Vries  <tdevries@suse.de>
3871
3872         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
3873         try/catch.
3874
3875 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
3876
3877         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
3878
3879 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
3880
3881         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
3882
3883 2018-07-24  Keith Seitz  <keiths@redhat.comt
3884
3885         PR symtab/23010
3886         * dwarf2read.c (dw2_add_symbol_to_list): New function.
3887         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
3888         instead of add_symbol_to_list.
3889         (read_file_scope): Call prepare_one_comp_unit before reading
3890         any other DIEs.
3891
3892 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
3893
3894         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
3895
3896 2018-07-24  Tom Tromey  <tom@tromey.com>
3897
3898         * utils.c (malloc, realloc, free): Don't declare.
3899         * configure, config.in: Rebuild.
3900         * configure.ac: Don't check for declarations of free, malloc, or
3901         realloc.
3902
3903 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3904
3905         * aarch64-linux-nat.c
3906         (aarch64_linux_nat_target::stopped_data_address): Remove unused
3907         variable.
3908         * arm-linux-nat.c (fetch_regs): Likewise.
3909         (store_regs): Likewise.
3910         (fetch_vfp_regs): Likewise.
3911         (store_vfp_regs): Likewise.
3912         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
3913         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
3914         (arm_linux_nat_target::insert_watchpoint): Likewise.
3915         (arm_linux_nat_target::remove_watchpoint): Likewise.
3916         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
3917         Likewise.
3918         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
3919         Likewise.
3920         * ppc-linux-nat.c (fetch_register): Likewise.
3921         (fetch_all_gp_regs): Likewise.
3922         (fetch_ppc_registers): Likewise.
3923         (store_all_gp_regs): Likewise.
3924         (store_ppc_registers): Likewise.
3925         (hwdebug_insert_point): Likewise.
3926         (can_use_watchpoint_cond_accel): Likewise.
3927         * remote-sim.c (gdb_os_write_stdout): Likewise.
3928
3929 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3930             Tom Tromey  <tom@tromey.com>
3931
3932         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
3933         test for it.
3934         * configure: Rebuild.
3935
3936 2018-07-22  Tom Tromey  <tom@tromey.com>
3937
3938         * regformats/regdat.sh: Define xmltarget_${name} inside
3939         #ifndef IN_PROCESS_AGENT.
3940
3941 2018-07-22  Tom Tromey  <tom@tromey.com>
3942
3943         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
3944
3945 2018-07-22  Tom Tromey  <tom@tromey.com>
3946
3947         * symfile.c (reread_symbols): Notify iter, not objfile.
3948
3949 2018-07-22  Tom Tromey  <tom@tromey.com>
3950
3951         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
3952         Use arch_ops.
3953         (ravenscar_thread_target::prepare_to_store): Likewise.
3954
3955 2018-07-22  Tom Tromey  <tom@tromey.com>
3956
3957         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
3958         unused variable.  Call value_fetch_lazy when needed.
3959         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
3960         Remove unused variable.  Call value_fetch_lazy when needed.
3961
3962 2018-07-22  Tom Tromey  <tom@tromey.com>
3963
3964         * m32c-tdep.c (mark_dma): Return void.
3965         (make_regs): Remove unused declarations.
3966
3967 2018-07-22  Tom Tromey  <tom@tromey.com>
3968
3969         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
3970         cmdscm_get_valid_command_smob_arg_unsafe for effect.
3971         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
3972         bkscm_get_valid_block_smob_arg_unsafe for effect.
3973
3974 2018-07-22  Tom Tromey  <tom@tromey.com>
3975
3976         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
3977         value_type.
3978
3979 2018-07-22  Tom Tromey  <tom@tromey.com>
3980
3981         * windows-nat.c (saved_context): Conditionally define.
3982         * remote.c (remote_target::remote_btrace_maybe_reopen):
3983         Conditionally declare "warned".
3984         * inflow.c (sigquit_ours): Conditionally define.
3985         (new_tty): Move "tty" declaration inside #if.
3986         * guile/guile.c (guile_datadir): Conditionally define.
3987         * charset.c (set_be_le_names): Move some declarations inside #if.
3988         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
3989         #if.
3990         (parse_xml_btrace_conf): Likewise.
3991
3992 2018-07-22  Tom Tromey  <tom@tromey.com>
3993
3994         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
3995
3996 2018-07-22  Tom Tromey  <tom@tromey.com>
3997
3998         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
3999         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4000         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4001         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4002         * stack.c (frame_apply_level_command): Remove unused variable.
4003         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4004         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4005         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4006         unused variable.
4007         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4008         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4009         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4010         variable.
4011         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4012         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4013         variable.
4014         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4015         Remove unused variable.
4016         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4017         variable.
4018         * common/tdesc.c (print_xml_feature::visit): Remove unused
4019         variable.
4020         * compile/compile-object-load.c (store_regs): Remove unused
4021         variables.
4022         * complaints.c (clear_complaints): Remove unused variable.
4023         * corelow.c (core_target_open): Remove unused variable.
4024         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4025         variable.
4026         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4027         variable.
4028         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4029         variable.
4030         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4031         variable.
4032         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4033         variable.
4034         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4035         variable.
4036         * ia64-tdep.c (examine_prologue): Remove unused variable.
4037         * infcall.c (run_inferior_call): Remove unused variable.
4038         * inferior.c (exit_inferior): Remove unused variable.
4039         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4040         * linespec.c (decode_line_2): Remove unused variable.
4041         * linux-nat.c (super_close): Remove.
4042         * linux-tdep.c (linux_info_proc): Remove unused variable.
4043         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4044         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4045         Remove unused variable.
4046         * parse.c (find_minsym_type_and_address): Remove unused variable.
4047         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4048         variable.
4049         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4050         variable.
4051         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4052         variables.
4053         * record-btrace.c (record_btrace_target::store_registers): Remove
4054         unused variable.
4055         (cmd_show_record_btrace_cpu): Remove unused variable.
4056         * riscv-tdep.c (riscv_register_reggroup_p)
4057         (riscv_push_dummy_call, riscv_return_value): Remove unused
4058         variable.
4059         * rust-exp.y (literal): Remove unused variable.
4060         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4061         unused variable.
4062         <STRUCTOP_ANONYMOUS>: Likewise.
4063         * s390-linux-tdep.c (s390_linux_init_abi_31)
4064         (s390_linux_init_abi_64): Remove unused variable.
4065         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4066         (file_select_thread, net_windows_open, _initialize_ser_windows):
4067         Remove unused variables.
4068         * symtab.c (find_pc_sect_line): Remove unused variable.
4069         * target-memory.c (compute_garbled_blocks): Remove unused
4070         variable.
4071         (target_write_memory_blocks): Remove unused variable.
4072         * target.c (target_stack::unpush): Remove unused variables.
4073         * tracepoint.c (start_tracing, all_tracepoint_actions)
4074         (merge_uploaded_trace_state_variables)
4075         (print_one_static_tracepoint_marker): Remove unused variable.
4076         * unittests/basic_string_view/element_access/char/1.cc (test01):
4077         Remove unused variable.
4078         * windows-nat.c (windows_continue, windows_add_all_dlls)
4079         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4080         Remove unused variables.
4081
4082 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4083
4084         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4085         attr_profile in HAVE_ELF.
4086         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4087         HAVE_ELF.
4088
4089 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4090
4091         * frame.c (frame_register_unwind): Change parameter name.
4092         (frame_unwind_register): Likewise.
4093         (frame_unwind_register_value): Likewise.
4094         (frame_unwind_register_signed): Likewise.
4095         (frame_unwind_register_unsigned): Likewise.
4096         * frame.h (frame_register_unwind): Likewise.
4097         (frame_unwind_register): Likewise.
4098         (frame_unwind_register_value): Likewise.
4099         (frame_unwind_register_signed): Likewise.
4100         (frame_unwind_register_unsigned): Likewise.
4101         (frame_unwind_arch): Likewise.
4102
4103 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4104
4105         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4106         ISA maintenance.
4107
4108 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4109
4110         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4111         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4112         hand.
4113
4114 2018-07-20  Keith Seitz  <keiths@redhat.com>
4115
4116         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4117         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4118         m_compunit_symtab, m_language>: Add "m_" prefix.
4119         Update all uses.
4120         * buildsym.c: Update all uses.
4121
4122 2018-07-20  Tom Tromey  <tom@tromey.com>
4123
4124         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4125         * buildsym.h (record_line_ftype): Remove typedef.
4126
4127 2018-07-20  Tom Tromey  <tom@tromey.com>
4128
4129         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4130         (end_expandable_symtab): Likewise.
4131         (end_symtab_get_static_block): Likewise.
4132         (end_symtab_from_static_block): Likewise.
4133         * buildsym-legacy.c (augment_type_symtab): Remove.
4134         (end_expandable_symtab): Remove.
4135         (end_symtab_get_static_block): Remove.
4136         (end_symtab_from_static_block): Remove.
4137
4138 2018-07-20  Tom Tromey  <tom@tromey.com>
4139
4140         * dwarf2read.c: Include buildsym.h.
4141         (struct dwarf2_cu) <builder>: New method.
4142         (fixup_go_packaging): Update.
4143         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4144         use scoped_free_pendings.
4145         (using_directives): Add "cu" parameter, remove "language".
4146         (read_import_statement, setup_type_unit_groups, )
4147         (read_func_scope, read_lexical_block_scope)
4148         (dwarf2_record_block_ranges, read_namespace): Update.
4149         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4150         (lnp_state_machine::handle_end_sequence): Update.
4151         (class lnp_state_machine) <m_cu>: New member.
4152         <m_record_line_callback>: Remove.
4153         <m_currently_recording_lines>: New member.
4154         (lnp_state_machine::handle_set_file): Update.
4155         (noop_record_line): Remove.
4156         (dwarf_record_line_p): Add cu parameter.
4157         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4158         (lnp_state_machine::record_line)
4159         (lnp_state_machine::lnp_state_machine)
4160         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4161         (dwarf_decode_lines): Update.
4162         (dwarf2_start_subfile): Add cu parameter.
4163         (dwarf2_start_symtab, new_symbol): Update.
4164         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4165         Remove dwarf2_per_objfile parameter.
4166         (dwarf_decode_macros): Update.
4167
4168 2018-07-20  Tom Tromey  <tom@tromey.com>
4169
4170         * stabsread.c (define_symbol): Update.
4171         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4172         * dwarf2read.c (new_symbol): Update.
4173         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4174         * cp-namespace.c: Include buildsym.h.
4175         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4176         * buildsym-legacy.c (get_buildsym_compunit): New function.
4177
4178 2018-07-20  Tom Tromey  <tom@tromey.com>
4179
4180         * xcoffread.c: Include buildsym-legacy.h.
4181         * windows-nat.c: Include buildsym-legacy.h.
4182         * stabsread.c: Include buildsym-legacy.h.
4183         * mdebugread.c: Include buildsym-legacy.h.
4184         * buildsym-legacy.h: New file.
4185         * buildsym-legacy.c: New file, from buildsym.c.
4186         * go32-nat.c: Include buildsym-legacy.h.
4187         * dwarf2read.c: Include buildsym-legacy.h.
4188         * dbxread.c: Include buildsym-legacy.h.
4189         * cp-namespace.c: Include buildsym-legacy.h.
4190         * coffread.c: Include buildsym-legacy.h.
4191         * buildsym.h: Move some contents to buildsym-legacy.h.
4192         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4193         buildsym-legacy.c.
4194         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4195
4196 2018-07-20  Tom Tromey  <tom@tromey.com>
4197
4198         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4199         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4200         (buildsym_compunit::buildsym_compunit)
4201         (buildsym_compunit::~buildsym_compunit)
4202         (buildsym_compunit::get_macro_table): Define.
4203
4204 2018-07-20  Tom Tromey  <tom@tromey.com>
4205
4206         * buildsym.c (reset_symtab_globals): Remove.
4207         (buildsym_compunit::end_symtab_from_static_block): Update.
4208         (buildsym_compunit::augment_type_symtab): Update.
4209         (end_symtab_from_static_block): Call free_buildsym_compunit.
4210         (augment_type_symtab, end_symtab, end_expandable_symtab):
4211         Likewise.
4212
4213 2018-07-20  Tom Tromey  <tom@tromey.com>
4214
4215         * arch-utils.c: Do not include buildsym.h.
4216         * mipsread.c: Do not include buildsym.h.
4217         * machoread.c: Do not include buildsym.h.
4218         * elfread.c: Do not include buildsym.h.
4219
4220 2018-07-20  Tom Tromey  <tom@tromey.com>
4221
4222         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4223         initialization.
4224         (buildsym_compunit): Add new constructor.
4225         (struct buildsym_compunit) <get_last_source_file, finish_block,
4226         record_block_range, start_subfile, patch_subfile_names,
4227         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4228         set_last_source_start_addr, get_last_source_start_addr,
4229         get_local_using_directives, set_local_using_directives,
4230         get_global_using_directives, outermost_context_p,
4231         get_current_context_stack, get_context_stack_depth,
4232         get_current_subfile, get_local_symbols, get_file_symbols,
4233         get_global_symbols, record_debugformat, record_producer,
4234         push_context, pop_context, end_symtab_get_static_block,
4235         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4236         New public methods.
4237         <record_pending_block, finish_block_internal, make_blockvector,
4238         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4239         private methods.
4240         Update all users.
4241
4242 2018-05-22  Tom Tromey  <tom@tromey.com>
4243
4244         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4245         parameter.
4246         (finish_block_internal): Update.
4247
4248 2018-07-20  Tom Tromey  <tom@tromey.com>
4249
4250         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4251         parameter.
4252         (finish_block_internal): Update.
4253
4254 2018-07-20  Tom Tromey  <tom@tromey.com>
4255
4256         * buildsym.h (EXTERN): Don't define or undef.
4257         * buildsym.c (EXTERN): Don't define.
4258
4259 2018-07-20  Tom Tromey  <tom@tromey.com>
4260
4261         * buildsym.c: Remove TODO comment.
4262
4263 2018-07-20  Tom Tromey  <tom@tromey.com>
4264
4265         * coffread.c (coff_symtab_read): Update.
4266         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4267         (xcoff_new_init): Update.
4268         * mipsread.c (mipscoff_new_init): Update.
4269         * mdebugread.c (mdebug_build_psymtabs): Update.
4270         * elfread.c (elf_new_init): Update.
4271         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4272         Update.
4273         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4274         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4275         (stabsect_build_psymtabs): Update.
4276         * buildsym.h (buildsym_init): Don't declare.
4277         * buildsym.c: Update comment.
4278         (prepare_for_building): Remove.
4279         (start_symtab, restart_symtab): Update.
4280         (reset_symtab_globals): Update comment.
4281         (buildsym_init): Remove.
4282
4283 2018-07-20  Tom Tromey  <tom@tromey.com>
4284
4285         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4286         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4287         (read_enum_type, common_block_start, common_block_end)
4288         (cleanup_undefined_types_1, finish_global_stabs): Update.
4289         * mdebugread.c (psymtab_to_symtab_1): Update.
4290         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4291         (read_lexical_block_scope, new_symbol): Update.
4292         * dbxread.c (process_one_symbol): Update.
4293         * coffread.c (coff_symtab_read, process_coff_symbol)
4294         (coff_read_enum_type): Update.
4295         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4296         declare.
4297         (get_local_symbols, get_file_symbols, get_global_symbols): New
4298         functions.
4299         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4300         m_global_symbols.
4301         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4302         (~scoped_free_pendings): Update.
4303         (finish_block, prepare_for_building, reset_symtab_globals)
4304         (end_symtab_get_static_block, end_symtab_with_blockvector)
4305         (augment_type_symtab, push_context): Update.
4306         (get_local_symbols, get_file_symbols, get_global_symbols): New
4307         functions.
4308         (buildsym_init): Update.
4309
4310 2018-07-20  Tom Tromey  <tom@tromey.com>
4311
4312         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4313         (process_full_type_unit): Likewise.
4314         (dwarf2_start_symtab): Set list_in_scope.
4315
4316 2018-07-20  Tom Tromey  <tom@tromey.com>
4317
4318         * dwarf2read.c (process_psymtab_comp_unit_reader)
4319         (build_type_psymtabs_reader): Do not set list_in_scope.
4320
4321 2018-07-20  Tom Tromey  <tom@tromey.com>
4322
4323         * buildsym.c (free_pendings): Remove.
4324         (add_symbol_to_list, scoped_free_pendings)
4325         (finish_block_internal, buildsym_init): Update.
4326
4327 2018-07-20  Tom Tromey  <tom@tromey.com>
4328
4329         * xcoffread.c (read_xcoff_symtab): Update.
4330         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4331         Update.
4332         * dbxread.c (process_one_symbol): Update.
4333         * coffread.c (coff_symtab_read): Update.
4334         * buildsym.h (finish_block): Update.
4335         * buildsym.c (finish_block): Remove "listhead" argument.
4336         (end_symtab_get_static_block): Update.
4337
4338 2018-07-20  Tom Tromey  <tom@tromey.com>
4339
4340         * buildsym.h (class scoped_free_pendings): Remove constructor.
4341         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4342         method.
4343         <m_pending_block_obstack, m_pending_blocks>: New members.
4344         (pending_block_obstack, pending_blocks): Remove.
4345         (scoped_free_pendings::scoped_free_pendings): Default.
4346         (~scoped_free_pendings): Update.
4347         (free_pending_blocks): Remove.
4348         (finish_block_internal, record_pending_block, make_blockvector)
4349         (end_symtab_get_static_block, augment_type_symtab, push_context)
4350         (buildsym_init): Update.
4351
4352 2018-07-20  Tom Tromey  <tom@tromey.com>
4353
4354         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4355         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4356         members.
4357         (pending_addrmap, pending_addrmap_obstack)
4358         (pending_addrmap_interesting): Remove.
4359         (scoped_free_pendings, record_block_range, make_blockvector)
4360         (prepare_for_building, reset_symtab_globals, buildsym_init):
4361         Update.
4362
4363 2018-07-20  Tom Tromey  <tom@tromey.com>
4364
4365         * xcoffread.c (process_linenos): Update.
4366         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4367         * mdebugread.c (psymtab_to_symtab_1): Update.
4368         * dwarf2read.c (setup_type_unit_groups)
4369         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4370         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4371         * dbxread.c (process_one_symbol): Update.
4372         * coffread.c (coff_symtab_read, enter_linenos)
4373         (process_coff_symbol): Update.
4374         * buildsym.h (current_subfile): Don't declare.
4375         (get_current_subfile): Declare.
4376         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4377         member.
4378         (start_subfile, free_buildsym_compunit, push_subfile)
4379         (prepare_for_building, start_symtab): Update.
4380         (get_current_subfile): New function.
4381
4382 2018-07-20  Tom Tromey  <tom@tromey.com>
4383
4384         * coffread.c (coff_symtab_read): Update.
4385         * xcoffread.c (read_xcoff_symtab): Update.
4386         * dwarf2read.c (new_symbol): Update.
4387         (read_func_scope, read_lexical_block_scope): Update.
4388         * dbxread.c (process_one_symbol): Update.
4389         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4390         (outermost_context_p): Remove macro.
4391         (outermost_context_p, get_current_context_stack)
4392         (get_context_stack_depth): Declare.
4393         (pop_context): Return struct context_stack.
4394         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4395         member.
4396         (context_stack_size): Remove.
4397         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4398         (prepare_for_building, end_symtab_get_static_block)
4399         (augment_type_symtab, push_context): Update.
4400         (pop_context): Return struct context_stack.
4401         (outermost_context_p, get_current_context_stack)
4402         (get_context_stack_depth): New functions.
4403         (buildsym_init): Update.
4404
4405 2018-07-20  Tom Tromey  <tom@tromey.com>
4406
4407         * rust-exp.y: Now a pure parser.  Update all rules.
4408         (%union): Move earlier.
4409         (current_parser, work_obstack): Remove globals.
4410         (rust_parser, ~rust_parser): Update.
4411         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4412         lex_character, lex_number, lex_string, lex_identifier,
4413         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4414         convert_name, convert_params_to_expression,
4415         convert_ast_to_expression, ast_basic_type, ast_operation,
4416         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4417         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4418         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4419         ast_array_type, ast_slice_type, ast_reference_type,
4420         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4421         (rust_parse): Update.
4422         (rustyyerror, rustyylex): Add parser parameter.
4423         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4424         (rust_lex_stringish_test, rust_lex_test_sequence)
4425         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4426         (rust_lex_test_push_back, rust_lex_tests): Update.
4427
4428 2018-07-19  Pedro Alves  <palves@redhat.com>
4429
4430         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4431         gdb::unique_xmalloc_ptr.
4432         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4433         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4434         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4435         copy-initialization.
4436         * guile/scm-pretty-print.c (ppscm_print_children): Use
4437         gdb::unique_xmalloc_ptr instead of cleanups.
4438         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4439         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4440         gdb::unique_xmalloc_ptr.
4441         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4442         Adjust to use gdb::unique_xmalloc_ptr.
4443         * guile/scm-utils.c (extract_arg): Adjust.
4444         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4445         gdb::unique_xmalloc_ptr instead of a cleanup.
4446
4447 2018-07-19  Tom Tromey  <tom@tromey.com>
4448
4449         * utils.c (do_value_free_to_mark)
4450         (make_cleanup_value_free_to_mark): Remove.
4451         * utils.h (make_cleanup_value_free_to_mark): Remove.
4452
4453 2018-07-19  Pedro Alves  <palves@redhat.com>
4454
4455         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4456         forwarding reference.
4457
4458 2018-07-18  Pedro Alves  <palves@redhat.com>
4459
4460         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4461         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4462         cleanup.
4463
4464 2018-07-18  Pedro Alves  <palves@redhat.com>
4465
4466         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4467         exceptions.
4468         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4469         (gdbscm_wrap): New.
4470         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4471         directly instead of a cleanup.
4472         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4473         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
4474         (vlscm_binop_gdbthrow): New, factored out from ...
4475         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
4476         (vlscm_rich_compare): Use gdbscm_wrap.
4477         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
4478         instead of a cleanup.
4479         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
4480         cleanup.
4481         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4482         Use xfree directly instead of a cleanup.
4483         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
4484         Adjust to use gdbscm_wrap and scoped_value_mark.
4485         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
4486         (gdbscm_value_address, gdbscm_value_dereference)
4487         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
4488         scoped_value_mark.
4489         (gdbscm_value_dynamic_type): Use scoped_value_mark.
4490         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
4491         scoped_value_mark.
4492         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
4493         gdbscm_wrap and scoped_value_mark.
4494         (gdbscm_value_to_string): Use xfree directly instead of a
4495         cleanup.  Move 'buffer' unique_ptr to TRY scope.
4496         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
4497         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
4498         scoped_value_mark.
4499         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
4500         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
4501         scoped_value_mark.
4502         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
4503         gdbscm_wrap.
4504
4505 2018-07-18  Tom de Vries  <tdevries@suse.de>
4506
4507         * findvar.c (default_read_var_value): Also resolve dynamic type for
4508         LOC_OPTIMIZED_OUT vars.
4509
4510 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
4511
4512         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
4513         decoding.
4514
4515 2018-07-17  Tom Tromey  <tom@tromey.com>
4516
4517         * guile/scm-param.c (pascm_set_func, pascm_show_func)
4518         (compute_enum_list, pascm_set_param_value_x)
4519         (gdbscm_parameter_value): Update.
4520         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
4521         (gdbscm_scm_to_host_string): Update.
4522         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
4523         Update.
4524         * guile/scm-cmd.c (cmdscm_add_completion): Update.
4525         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
4526         * guile/scm-string.c (gdbscm_scm_to_string): Return
4527         unique_xmalloc_ptr.
4528         (gdbscm_scm_to_host_string): Likewise.
4529
4530 2018-07-17  Tom Tromey  <tom@tromey.com>
4531
4532         * guile/guile.c (gdbscm_eval_from_control_command): Update.
4533         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
4534         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
4535         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
4536         unique_xmalloc_ptr.
4537
4538 2018-07-17  Tom Tromey  <tom@tromey.com>
4539
4540         * guile/scm-param.c (pascm_signal_setshow_error): Update.
4541         * guile/guile-internal.h (gdbscm_exception_message_to_string):
4542         Update.
4543         * guile/scm-cmd.c (cmdscm_function): Update.
4544         * guile/scm-pretty-print.c
4545         (ppscm_print_exception_unless_memory_error): Update.
4546         * guile/scm-exception.c (gdbscm_exception_message_to_string):
4547         Return unique_xmalloc_ptr.
4548
4549 2018-07-17  Tom Tromey  <tom@tromey.com>
4550
4551         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
4552         Use string_printf.
4553
4554 2018-07-17  Jim Wilson  <jimw@sifive.com>
4555
4556         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
4557         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
4558         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
4559         unecessary braces after EF_RISCV_RVC test.  Delete call to
4560         set_gdbarch_decr_pc_after_break.
4561
4562         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
4563         RISCV_LAST_FP_REGNUM + 1.
4564         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
4565
4566 2018-07-17  Tom Tromey  <tom@tromey.com>
4567
4568         * configure.ac: Remove --disable-gdbcli.
4569         * configure: Rebuild.
4570         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
4571         (SUBDIR_CLI_CFLAGS): Remove.
4572         (SFILES): Use SUBDIR_CLI_SRCS.
4573         (COMMON_OBS): Use SUBDIR_CLI_OBS.
4574
4575 2018-07-17  Tom Tromey  <tom@tromey.com>
4576
4577         PR gdb/18624:
4578         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
4579
4580 2018-07-16  Jim Wilson  <jimw@sifive.com>
4581
4582         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
4583
4584 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4585
4586         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
4587         variable.
4588         (libunwind_frame_sniffer): Likewise.
4589         (libunwind_frame_prev_register): Likewise.
4590         (libunwind_sigtramp_frame_sniffer): Likewise.
4591         * ia64-tdep.c (ia64_access_reg): Likewise.
4592         (ia64_access_rse_reg): Likewise.
4593         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
4594         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
4595
4596 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4597
4598         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
4599
4600 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4601
4602         * remote-sim.c (gdbsim_target::close,
4603         gdbsim_target::mourn_inferior): Remove unused variables.
4604
4605 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
4606
4607         * ia64-tdep.c (ktab_buf): New global.
4608         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
4609         (get_kernel_table): Adjust.
4610
4611 2018-07-16  Tom Tromey  <tom@tromey.com>
4612
4613         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
4614         * dwarf2read.c (using_directives, new_symbol): Use
4615         outermost_context_p.
4616         * dbxread.c (process_one_symbol): Use outermost_context_p.
4617         * coffread.c (coff_symtab_read): Use outermost_context_p.
4618
4619 2018-07-16  Tom Tromey  <tom@tromey.com>
4620
4621         * dwarf2read.c (using_directives, read_func_scope)
4622         (read_lexical_block_scope): Update.
4623         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
4624         * buildsym.h (local_using_directives, global_using_directives):
4625         Don't declare.
4626         (get_local_using_directives, set_local_using_directives)
4627         (get_global_using_directives): Declare.
4628         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
4629         m_global_using_directives>: New members.
4630         (finish_block_internal, prepare_for_building)
4631         (reset_symtab_globals, end_symtab_get_static_block)
4632         (push_context): Update.
4633         (get_local_using_directives, set_local_using_directives)
4634         (get_global_using_directives): New functions.
4635         (buildsym_init): Update.
4636
4637 2018-07-16  Tom Tromey  <tom@tromey.com>
4638
4639         * xcoffread.c (xcoff_initial_scan): Don't call
4640         free_pending_blocks.
4641         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
4642         * buildsym.h (class scoped_free_pendings): Add constructor.
4643         (free_pending_blocks): Don't declare.
4644         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
4645         (free_pending_blocks): Now static.
4646
4647 2018-07-16  Tom Tromey  <tom@tromey.com>
4648
4649         * buildsym.h (push_subfile, pop_subfile): Update declarations.
4650         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
4651         member.
4652         (struct subfile_stack): Remove.
4653         (subfile_stack): Remove.
4654         (push_subfile, pop_subfile, buildsym_init): Update.
4655
4656 2018-07-16  Tom Tromey  <tom@tromey.com>
4657
4658         * buildsym.c (push_subfile): Use gdb_assert.
4659         (pop_subfile): Use gdb_assert.
4660
4661 2018-07-16  Tom Tromey  <tom@tromey.com>
4662
4663         * buildsym.h (merge_symbol_lists): Remove.
4664         * buildsym.c (merge_symbol_lists): Remove.
4665
4666 2018-07-16  Tom Tromey  <tom@tromey.com>
4667
4668         * stabsread.c (scan_file_globals): Update comment.
4669         * stabsread.h (scan_file_globals): Move from buildsym.h.
4670         * buildsym.h (scan_file_globals): Move to stabsread.h.
4671
4672 2018-07-16  Tom Tromey  <tom@tromey.com>
4673
4674         * xcoffread.c (xcoff_new_init): Update.
4675         * mipsread.c (mipscoff_new_init): Update.
4676         * mdebugread.c (mdebug_build_psymtabs): Update.
4677         * elfread.c (elf_new_init): Update.
4678         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
4679         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
4680         * buildsym.h (buildsym_new_init): Don't declare.
4681         * buildsym.c (buildsym_new_init): Remove.
4682
4683 2018-07-16  Tom Tromey  <tom@tromey.com>
4684
4685         * stabsread.h (within_function): Move from buildsym.h.
4686         * stabsread.c (start_stabs): Clear within_function.
4687         * coffread.c (coff_start_symtab): Clear within_function.
4688         * buildsym.h (within_function): Move to stabsread.h.
4689         * buildsym.c (prepare_for_building): Update.
4690
4691 2018-07-16  Tom Tromey  <tom@tromey.com>
4692
4693         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
4694         * dwarf2read.c (dwarf2_start_symtab): Don't set
4695         processing_gcc_compilation.
4696         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
4697
4698 2018-07-16  Tom Tromey  <tom@tromey.com>
4699
4700         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
4701         (next_symbol_text_func): Move from buildsym.h.
4702         * stabsread.c (hashname): Move from buildsym.c.
4703         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
4704         (next_symbol_text_func, hashname): Move to stabsread.h.
4705         * buildsym.c: Don't include bcache.h
4706         (hashname): Move to stasbread.c.
4707
4708 2018-07-16  Tom Tromey  <tom@tromey.com>
4709
4710         * buildsym.h (context_stack_size): Don't declare.
4711         * buildsym.c (context_stack_size): New global.
4712
4713 2018-07-16  Tom Tromey  <tom@tromey.com>
4714
4715         * dbxread.c (processing_acc_compilation): New global.
4716         * buildsym.h (processing_acc_compilation): Don't declare.
4717
4718 2018-07-16  Tom Tromey  <tom@tromey.com>
4719
4720         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
4721         * dbxread.c (read_ofile_symtab): Update.
4722         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
4723         * buildsym.h (last_source_start_addr): Remove.
4724         (set_last_source_start_addr, get_last_source_start_addr):
4725         Declare.
4726         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
4727         parameter.
4728         (struct buildsym_compunit) <m_last_source_start_addr>: New
4729         member.
4730         (prepare_for_building): Remove start_addr parameter.
4731         (start_symtab, restart_symtab, end_symtab_get_static_block)
4732         (end_symtab_with_blockvector): Update.
4733         (set_last_source_start_addr, get_last_source_start_addr): New
4734         functions.
4735
4736 2018-07-16  Tom Tromey  <tom@tromey.com>
4737
4738         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
4739         member.
4740         (have_line_numbers): Remove.
4741         (record_line, prepare_for_building, end_symtab_get_static_block)
4742         (augment_type_symtab): Update.
4743
4744 2018-07-16  Tom Tromey  <tom@tromey.com>
4745
4746         * buildsym.c (~buildsym_compunit): Free the macro table.
4747         (struct buildsym_compunit) <get_macro_table, release_macros>: New
4748         methods.
4749         <m_pending_macros>: New member.
4750         (pending_macros): Remove.
4751         (~scoped_free_pendings, get_macro_table, prepare_for_building)
4752         (reset_symtab_globals, end_symtab_get_static_block)
4753         (end_symtab_with_blockvector, augment_type_symtab)
4754         (buildsym_init): Update.
4755
4756 2018-07-16  Tom Tromey  <tom@tromey.com>
4757
4758         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
4759         parameter.
4760         (buildsym_compunit::set_last_source_file): New method.
4761         <m_last_source_file>: New member.
4762         (prepare_for_building): Remove "name" parameter.
4763         (start_symtab, restart_symtab, reset_symtab_globals): Update.
4764         (last_source_file): Remove.
4765         (set_last_source_file, get_last_source_file): Update.
4766
4767 2018-07-16  Tom Tromey  <tom@tromey.com>
4768
4769         * buildsym.c (prepare_for_building): Add assert.
4770
4771 2018-07-16  Tom Tromey  <tom@tromey.com>
4772
4773         * buildsym.c (~buildsym_compunit): Update.
4774         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
4775         (start_subfile, patch_subfile_names)
4776         (end_symtab_with_blockvector): Update.
4777
4778 2018-07-16  Tom Tromey  <tom@tromey.com>
4779
4780         * buildsym.c (struct buildsym_compunit): Add constructor,
4781         destructor, initializers.
4782         (start_buildsym_compunit): Remove.
4783         (free_buildsym_compunit): Use "delete".
4784         (start_symtab, restart_symtab): Use "new".
4785
4786 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
4787
4788         * symfile.c (set_objfile_default_section_offset): Remove struct
4789         keyword.
4790
4791 2018-07-14  Stafford Horne  <shorne@gmail.com>
4792
4793         * (Responsible Maintainers): Add myself as or1k maintainer.
4794
4795 2018-07-13  Tom Tromey  <tom@tromey.com>
4796
4797         * symfile.c (set_objfile_default_section_offset): Use extra braces
4798         around initializer.
4799
4800 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
4801
4802         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
4803         non-branching basr.
4804
4805 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4806
4807         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4808         unittests/cli-utils-selftests.c
4809         * unittests/cli-utils-selftests.c: New file.
4810
4811 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4812
4813         * NEWS: Mention new commands. Mention change to 'thread apply'.
4814
4815 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4816
4817         * thread.c (thr_try_catch_cmd): New function.
4818         (thread_apply_all_command): Handle qcs flags.
4819         (thread_apply_command): Handle qcs flags.
4820         (taas_command): New function.
4821         (tfaas_command): New function.
4822         (_initialize_thread): Update to setup the new commands 'taas
4823         and 'tfaas'. Change doc string for 'thread apply'.
4824
4825 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4826
4827         * stack.c: (trailing_outermost_frame): New function, mostly
4828         extracted from backtrace_command_1.
4829         (leading_innermost_frame): New function.
4830         (backtrace_command_1): Update to call trailing_outermost_frame.
4831         (frame_apply_command_count): New function.
4832         (frame_apply_level_command): New function.
4833         (frame_apply_all_command): New function.
4834         (frame_apply_command): New function.
4835         (faas_command): New function.
4836         (frame_cmd_list): New variable.
4837         (_initialize_stack): Update to setup the new commands 'frame apply'
4838         and 'faas'.
4839
4840 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4841
4842         * cli-utils.c (number_or_range_parser::get_number): Only handle
4843         numbers or convenience var as numbers.
4844         (parse_flags): New function.
4845         (parse_flags_qcs): New function.
4846         (number_or_range_parser::finished): Ensure parsing end is detected
4847         before end of string.
4848         * cli-utils.h (parse_flags): New function.
4849         (parse_flags_qcs): New function.
4850         (number_or_range_parser): Remove m_finished bool.
4851         (number_or_range_parser::skip_range): Set m_in_range to false.
4852
4853 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
4854
4855         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
4856         on Windows.
4857
4858 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4859             Jan Kratochvil  <jan.kratochvil@redhat.com>
4860             Paul Fertser  <fercerpav@gmail.com>
4861             Tsutomu Seki  <sekiriki@gmail.com>
4862             Pedro Alves  <palves@redhat.com>
4863
4864         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4865         'unittests/parse-connection-spec-selftests.c'.
4866         (COMMON_SFILES): Add 'common/netstuff.c'.
4867         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
4868         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
4869         * common/netstuff.c: New file.
4870         * common/netstuff.h: New file.
4871         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
4872         (wait_for_connect): Update comment.  New parameter
4873         'gdb::optional<int> sock' instead of 'struct serial *scb'.
4874         Use 'sock' directly instead of 'scb->fd'.
4875         (try_connect): New function, with code from 'net_open'.
4876         (net_open): Rewrite main loop to deal with multiple
4877         sockets/addresses.  Handle IPv6-style hostnames; implement
4878         support for IPv6 connections.
4879         * unittests/parse-connection-spec-selftests.c: New file.
4880
4881 2018-07-11  Pedro Alves  <palves@redhat.com>
4882
4883         PR gdb/23377
4884         * remote.c (remote_target::remote_detach_pid): Call
4885         set_current_process.
4886
4887 2018-07-11  Pedro Alves  <palves@redhat.com>
4888
4889         * h8300-tdep.c (h8300_gdbarch_init): Remove
4890         set_gdbarch_ecoff_reg_to_regnum calls.
4891
4892 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4893
4894         PR c++/23373
4895         * c-typeprint.c (c_type_print_base_struct_union): Don't print
4896         offsets/sizes for static members of a class/struct.
4897
4898 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
4899
4900         * target-descriptions.c (tdesc_register_bitsize): Rename.
4901         * target-descriptions.h (tdesc_register_bitsize): Likewise.
4902         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
4903         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
4904
4905 2018-07-10  Tom Tromey  <tom@tromey.com>
4906
4907         * breakpoint.c (moribund_locations): Now static and a
4908         std::vector.
4909         (breakpoint_init_inferior, moribund_breakpoint_here_p)
4910         (build_bpstat_chain, update_global_location_list)
4911         (breakpoint_retire_moribund): Update.
4912         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
4913         VEC.
4914
4915 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4916
4917         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
4918         (riscv_register_reggroup_p): Use new function, remove unneeded
4919         parenthesis.
4920         (riscv_push_dummy_call): Extend assert to compare against xlen or
4921         flen based on register type.
4922
4923 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4924
4925         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
4926
4927 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4928
4929         * remote.c (show_hardware_watchpoint_limit): New function.
4930         (show_hardware_watchpoint_length_limit): New function.
4931         (show_hardware_breakpoint_limit): New function.
4932         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
4933         where appropriate, update help text.
4934
4935 2018-07-09  Tom Tromey  <tom@tromey.com>
4936
4937         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
4938         (CLIBS): Don't mention NAT_CLIBS.
4939
4940 2018-07-09  Tom Tromey  <tom@tromey.com>
4941
4942         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
4943         (LIBGDB_OBS, clean mostlyclean): Update.
4944         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
4945
4946 2018-07-09  Tom Tromey  <tom@tromey.com>
4947
4948         * Makefile.in (%.c: %.y): Use ECHO_YACC.
4949         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
4950         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
4951
4952 2018-07-09  Tom Tromey  <tom@tromey.com>
4953
4954         * Makefile.in (ALLDEPFILES): Remove exec.c.
4955         (COMMON_OBS): Remove exec.o.
4956         (COMMON_SFILES): Add exec.c.
4957
4958 2018-07-09  Tom Tromey  <tom@tromey.com>
4959
4960         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
4961
4962 2018-07-09  Tom Tromey  <tom@tromey.com>
4963
4964         * Makefile.in (clean mostlyclean): Remove stamp-version.
4965         (version.c): Depend on stamp-version.
4966         (stamp-version): New rule, from version.c rule.
4967
4968 2018-07-09  Tom Tromey  <tom@tromey.com>
4969
4970         * Makefile.in (init.c): Depend on stamp-init.
4971         (stamp-init): New rule, from init.c rule.
4972         (clean mostlyclean): Remove stamp-init.
4973
4974 2018-07-09  Tom Tromey  <tom@tromey.com>
4975
4976         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
4977         SUBDIR_GCC_COMPILE_SRCS.
4978
4979 2018-07-09  Tom Tromey  <tom@tromey.com>
4980
4981         * Makefile.in (init.c): Remove some unused sed rules.
4982
4983 2018-07-09  Tom Tromey  <tom@tromey.com>
4984
4985         * Makefile.in (TSOBS): Remove.
4986         (INIT_FILES): Update.
4987         (LIBGDB_OBS): Update.
4988         (COMMON_SFILES): Add inflow.c.
4989         (SFILES): Remove inflow.c.
4990
4991 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
4992
4993         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
4994
4995 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
4996
4997         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
4998         get_saveloc_name, is_signal_frame_name, step_name,
4999         init_remote_name, create_addr_space_name,
5000         destroy_addr_space_name, search_unwind_table_name,
5001         find_dyn_list_name): Constify.
5002
5003 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5004
5005         * darwin-nat.c (darwin_pthread_kill): New function.
5006         (darwin_resume_thread): Use darwin_pthread_kill.
5007
5008 2018-07-05  Tom de Vries  <tdevries@suse.de>
5009
5010         * macroexp.c (macro_buffer) <operator=>: New member function.
5011
5012 2018-07-04  Tom Tromey  <tom@tromey.com>
5013
5014         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5015
5016 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5017
5018         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5019         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5020         * maint.c: Likewise.
5021         * top.c: Likewise.
5022
5023 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5024
5025         * NEWS: Create a new section for the next release branch.
5026         Rename the section of the current branch, now that it has
5027         been cut.
5028
5029 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5030
5031         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5032         * version.in: Bump version to 8.2.50.DATE-git.
5033
5034 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5035             Pedro Alves  <palves@redhat.com>
5036
5037         * linux-nat.c (linux_init_ptrace): Rename to ...
5038         (linux_init_ptrace_procfs): ... this.  Call
5039         linux_proc_init_warnings.
5040         (linux_nat_target::post_attach)
5041         (linux_nat_target::post_startup_inferior): Adjust.
5042         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5043         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5044
5045 2018-07-04  Tom de Vries  <tdevries@suse.de>
5046
5047         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5048         check ...
5049         (read_comp_unit_head): ... here.
5050
5051 2018-07-03  Tom Tromey  <tom@tromey.com>
5052
5053         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5054         (stop_tracing, tstatus_command)
5055         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5056         (print_one_static_tracepoint_marker): Update.
5057         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5058         std::vector.
5059         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5060         VEC.
5061         (all_tracepoints, static_tracepoints_here): Return std::vector.
5062
5063 2018-07-03  Tom Tromey  <tom@tromey.com>
5064
5065         * common/ptid.c (ptid_equal): Remove.
5066         * common/ptid.h (ptid_equal): Don't declare.
5067         * ada-tasks.c: Update.
5068         * breakpoint.c: Update.
5069         * common/agent.c: Update.
5070         * corelow.c: Update.
5071         * darwin-nat-info.c: Update.
5072         * darwin-nat.c: Update.
5073         * dcache.c: Update.
5074         * dtrace-probe.c: Update.
5075         * dummy-frame.c: Update.
5076         * fbsd-nat.c: Update.
5077         * frame.c: Update.
5078         * gdbthread.h: Update.
5079         * gnu-nat.c: Update.
5080         * go32-nat.c: Update.
5081         * inf-loop.c: Update.
5082         * inf-ptrace.c: Update.
5083         * infcall.c: Update.
5084         * infcmd.c: Update.
5085         * inflow.c: Update.
5086         * infrun.c: Update.
5087         * linux-fork.c: Update.
5088         * linux-nat.c: Update.
5089         * linux-thread-db.c: Update.
5090         * mi/mi-cmd-var.c: Update.
5091         * mi/mi-interp.c: Update.
5092         * mi/mi-main.c: Update.
5093         * nto-procfs.c: Update.
5094         * ppc-linux-tdep.c: Update.
5095         * procfs.c: Update.
5096         * python/py-inferior.c: Update.
5097         * python/py-record-btrace.c: Update.
5098         * python/py-record.c: Update.
5099         * ravenscar-thread.c: Update.
5100         * regcache.c: Update.
5101         * remote-sim.c: Update.
5102         * remote.c: Update.
5103         * sol-thread.c: Update.
5104         * solib.c: Update.
5105         * target.c: Update.
5106         * tui/tui-stack.c: Update.
5107         * varobj.c: Update.
5108         * windows-nat.c: Update.
5109         * windows-tdep.c: Update.
5110
5111 2018-07-03  Tom Tromey  <tom@tromey.com>
5112
5113         * common/ptid.c (ptid_match): Remove.
5114         * common/ptid.h (ptid_match): Don't declare.
5115         * fbsd-nat.c: Update.
5116         * infcmd.c: Update.
5117         * infrun.c: Update.
5118         * linux-nat.c: Update.
5119         * record-btrace.c: Update.
5120         * regcache.c: Update.
5121         * remote.c: Update.
5122
5123 2018-07-03  Tom Tromey  <tom@tromey.com>
5124
5125         * common/ptid.c (ptid_tid_p): Remove.
5126         * common/ptid.h (ptid_tid_p): Don't declare.
5127         * sol-thread.c: Update.
5128
5129 2018-07-03  Tom Tromey  <tom@tromey.com>
5130
5131         * common/ptid.c (ptid_lwp_p): Remove.
5132         * common/ptid.h (ptid_lwp_p): Don't declare.
5133         * fbsd-nat.c: Update.
5134         * linux-nat.c: Update.
5135         * nat/linux-procfs.c: Update.
5136         * nat/x86-linux-dregs.c: Update.
5137         * sol-thread.c: Update.
5138
5139 2018-07-03  Tom Tromey  <tom@tromey.com>
5140
5141         * common/ptid.c (ptid_is_pid): Remove.
5142         * common/ptid.h (ptid_is_pid): Don't declare.
5143         * infrun.c: Update.
5144         * linux-nat.c: Update.
5145         * mi/mi-interp.c: Update.
5146         * remote.c: Update.
5147         * thread.c: Update.
5148
5149 2018-07-03  Tom Tromey  <tom@tromey.com>
5150
5151         * common/ptid.c (ptid_get_tid): Remove.
5152         * common/ptid.h (ptid_get_tid): Don't declare.
5153         * ada-tasks.c: Update.
5154         * aix-thread.c: Update.
5155         * bsd-uthread.c: Update.
5156         * darwin-nat.c: Update.
5157         * fbsd-nat.c: Update.
5158         * i386-darwin-nat.c: Update.
5159         * infrun.c: Update.
5160         * linux-tdep.c: Update.
5161         * nto-procfs.c: Update.
5162         * ppc-ravenscar-thread.c: Update.
5163         * python/py-infthread.c: Update.
5164         * ravenscar-thread.c: Update.
5165         * sol-thread.c: Update.
5166         * sparc-ravenscar-thread.c: Update.
5167         * windows-nat.c: Update.
5168
5169 2018-07-03  Tom Tromey  <tom@tromey.com>
5170
5171         * common/ptid.c (ptid_get_lwp): Remove.
5172         * common/ptid.h (ptid_get_lwp): Don't declare.
5173         * aarch64-linux-nat.c: Update.
5174         * ada-tasks.c: Update.
5175         * aix-thread.c: Update.
5176         * amd64-linux-nat.c: Update.
5177         * arm-linux-nat.c: Update.
5178         * corelow.c: Update.
5179         * fbsd-nat.c: Update.
5180         * fbsd-tdep.c: Update.
5181         * gnu-nat.c: Update.
5182         * i386-cygwin-tdep.c: Update.
5183         * i386-gnu-nat.c: Update.
5184         * i386-linux-nat.c: Update.
5185         * ia64-linux-nat.c: Update.
5186         * inf-ptrace.c: Update.
5187         * infrun.c: Update.
5188         * linux-fork.c: Update.
5189         * linux-nat.c: Update.
5190         * linux-tdep.c: Update.
5191         * linux-thread-db.c: Update.
5192         * mips-linux-nat.c: Update.
5193         * nat/aarch64-linux-hw-point.c: Update.
5194         * nat/aarch64-linux.c: Update.
5195         * nat/linux-btrace.c: Update.
5196         * nat/linux-osdata.c: Update.
5197         * nat/linux-procfs.c: Update.
5198         * nat/x86-linux-dregs.c: Update.
5199         * obsd-nat.c: Update.
5200         * ppc-fbsd-nat.c: Update.
5201         * ppc-linux-nat.c: Update.
5202         * procfs.c: Update.
5203         * python/py-infthread.c: Update.
5204         * ravenscar-thread.c: Update.
5205         * remote.c: Update.
5206         * s390-linux-nat.c: Update.
5207         * sol-thread.c: Update.
5208         * sol2-tdep.c: Update.
5209         * spu-linux-nat.c: Update.
5210         * x86-linux-nat.c: Update.
5211         * xtensa-linux-nat.c: Update.
5212
5213 2018-07-03  Tom Tromey  <tom@tromey.com>
5214
5215         * common/ptid.c (ptid_get_pid): Remove.
5216         * common/ptid.h (ptid_get_pid): Don't declare.
5217         * aarch64-linux-nat.c: Update.
5218         * ada-lang.c: Update.
5219         * aix-thread.c: Update.
5220         * alpha-bsd-nat.c: Update.
5221         * amd64-fbsd-nat.c: Update.
5222         * amd64-linux-nat.c: Update.
5223         * arm-linux-nat.c: Update.
5224         * arm-nbsd-nat.c: Update.
5225         * auxv.c: Update.
5226         * break-catch-syscall.c: Update.
5227         * breakpoint.c: Update.
5228         * bsd-uthread.c: Update.
5229         * corelow.c: Update.
5230         * ctf.c: Update.
5231         * darwin-nat.c: Update.
5232         * fbsd-nat.c: Update.
5233         * fbsd-tdep.c: Update.
5234         * gcore.c: Update.
5235         * gnu-nat.c: Update.
5236         * hppa-nbsd-nat.c: Update.
5237         * hppa-obsd-nat.c: Update.
5238         * i386-fbsd-nat.c: Update.
5239         * ia64-linux-nat.c: Update.
5240         * inf-ptrace.c: Update.
5241         * infcmd.c: Update.
5242         * inferior.c: Update.
5243         * inferior.h: Update.
5244         * inflow.c: Update.
5245         * infrun.c: Update.
5246         * linux-fork.c: Update.
5247         * linux-nat.c: Update.
5248         * linux-tdep.c: Update.
5249         * linux-thread-db.c: Update.
5250         * m68k-bsd-nat.c: Update.
5251         * mi/mi-interp.c: Update.
5252         * mi/mi-main.c: Update.
5253         * mips-linux-nat.c: Update.
5254         * mips-nbsd-nat.c: Update.
5255         * mips64-obsd-nat.c: Update.
5256         * nat/aarch64-linux-hw-point.c: Update.
5257         * nat/aarch64-linux.c: Update.
5258         * nat/linux-btrace.c: Update.
5259         * nat/linux-osdata.c: Update.
5260         * nat/linux-procfs.c: Update.
5261         * nat/x86-linux-dregs.c: Update.
5262         * nto-procfs.c: Update.
5263         * obsd-nat.c: Update.
5264         * ppc-linux-nat.c: Update.
5265         * ppc-nbsd-nat.c: Update.
5266         * ppc-obsd-nat.c: Update.
5267         * proc-service.c: Update.
5268         * procfs.c: Update.
5269         * python/py-inferior.c: Update.
5270         * python/py-infthread.c: Update.
5271         * ravenscar-thread.c: Update.
5272         * record.c: Update.
5273         * remote-sim.c: Update.
5274         * remote.c: Update.
5275         * rs6000-nat.c: Update.
5276         * s390-linux-nat.c: Update.
5277         * sh-nbsd-nat.c: Update.
5278         * sol-thread.c: Update.
5279         * sparc-nat.c: Update.
5280         * sparc64-tdep.c: Update.
5281         * spu-linux-nat.c: Update.
5282         * spu-tdep.c: Update.
5283         * target-debug.h: Update.
5284         * target.c: Update.
5285         * thread.c: Update.
5286         * tid-parse.c: Update.
5287         * tracefile-tfile.c: Update.
5288         * vax-bsd-nat.c: Update.
5289         * windows-nat.c: Update.
5290         * x86-linux-nat.c: Update.
5291         * x86-nat.c: Update.
5292
5293 2018-07-03  Tom Tromey  <tom@tromey.com>
5294
5295         * common/ptid.c (pid_to_ptid): Remove.
5296         * common/ptid.h (pid_to_ptid): Don't declare.
5297         * aix-thread.c: Update.
5298         * arm-linux-nat.c: Update.
5299         * common/ptid.c: Update.
5300         * common/ptid.h: Update.
5301         * corelow.c: Update.
5302         * ctf.c: Update.
5303         * darwin-nat.c: Update.
5304         * fbsd-nat.c: Update.
5305         * fork-child.c: Update.
5306         * gnu-nat.c: Update.
5307         * go32-nat.c: Update.
5308         * inf-ptrace.c: Update.
5309         * infcmd.c: Update.
5310         * inferior.c: Update.
5311         * infrun.c: Update.
5312         * linux-fork.c: Update.
5313         * linux-nat.c: Update.
5314         * nat/aarch64-linux-hw-point.c: Update.
5315         * nat/fork-inferior.c: Update.
5316         * nat/x86-linux-dregs.c: Update.
5317         * nto-procfs.c: Update.
5318         * obsd-nat.c: Update.
5319         * procfs.c: Update.
5320         * progspace.c: Update.
5321         * remote.c: Update.
5322         * rs6000-nat.c: Update.
5323         * s390-linux-nat.c: Update.
5324         * sol-thread.c: Update.
5325         * spu-linux-nat.c: Update.
5326         * target.c: Update.
5327         * top.c: Update.
5328         * tracefile-tfile.c: Update.
5329         * windows-nat.c: Update.
5330
5331 2018-07-03  Tom Tromey  <tom@tromey.com>
5332
5333         * common/ptid.h (ptid_build): Don't declare.
5334         * common/ptid.c (ptid_build): Remove.
5335         * aix-thread.c: Update.
5336         * bsd-kvm.c: Update.
5337         * bsd-uthread.c: Update.
5338         * common/agent.c: Update.
5339         * common/ptid.c: Update.
5340         * common/ptid.h: Update.
5341         * corelow.c: Update.
5342         * darwin-nat.c: Update.
5343         * fbsd-nat.c: Update.
5344         * gnu-nat.c: Update.
5345         * linux-fork.c: Update.
5346         * linux-nat.c: Update.
5347         * linux-thread-db.c: Update.
5348         * nat/linux-osdata.c: Update.
5349         * nat/linux-procfs.c: Update.
5350         * nto-procfs.c: Update.
5351         * obsd-nat.c: Update.
5352         * proc-service.c: Update.
5353         * procfs.c: Update.
5354         * ravenscar-thread.c: Update.
5355         * remote-sim.c: Update.
5356         * remote.c: Update.
5357         * sol-thread.c: Update.
5358         * target.c: Update.
5359         * windows-nat.c: Update.
5360
5361 2018-07-03  Tom Tromey  <tom@tromey.com>
5362
5363         * infrun.c (follow_exec): Use exit_inferior_silent.
5364         * inferior.c (exit_inferior_num_silent): Remove.
5365         * inferior.h (exit_inferior_num_silent): Don't declare.
5366
5367 2018-07-03  Tom Tromey  <tom@tromey.com>
5368
5369         PR cli/23340:
5370         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5371         inferior_ptid on error.
5372
5373 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5374             Simon Marchi  <simon.marchi@polymtl.ca>
5375
5376         PR tdep/8282
5377         * disasm.h (gdb_disassembler): Add
5378         `m_disassembler_options_holder'. member
5379         * disasm.c (get_all_disassembler_options): New function.
5380         (gdb_disassembler::gdb_disassembler): Use it.
5381         (gdb_buffered_insn_length_init_dis): Likewise.
5382         (gdb_buffered_insn_length): Adjust accordingly.
5383         (set_disassembler_options): Handle options with arguments.
5384         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5385         line if showing options with descriptions.
5386         (disassembler_options_completer): Adapt to using the
5387         `disasm_options_and_args_t' structure.
5388         * mips-tdep.c (mips_disassembler_options): New variable.
5389         (mips_disassembler_options_o32): Likewise.
5390         (mips_disassembler_options_n32): Likewise.
5391         (mips_disassembler_options_n64): Likewise.
5392         (gdb_print_insn_mips): Don't set `disassembler_options'.
5393         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5394         functions.
5395         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5396         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5397         `gdbarch_disassembler_options_implicit' and
5398         `gdbarch_valid_disassembler_options'.
5399         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5400         `disasm_options_and_args_t' structure.
5401         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5402         method.
5403         (valid_disassembler_options): Switch from `disasm_options_t' to
5404         the `disasm_options_and_args_t' structure.
5405         * NEWS: Document `set disassembler-options' support for the MIPS
5406         target.
5407         * gdbarch.h: Regenerate.
5408         * gdbarch.c: Regenerate.
5409
5410 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5411
5412         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5413
5414 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5415
5416         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5417         parameter in call to amd64_target_description.
5418         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5419         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5420         (amd64fbsd_init_abi): Likewise.
5421         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5422         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5423         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5424         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5425
5426 2018-06-29  Pedro Alves  <palves@redhat.com>
5427
5428         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5429         "segments" parameter.
5430         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5431         (_initialize_amd64_tdep): Update call to
5432         amd64_create_target_description.
5433         (amd64_target_description): Add "segments" parameter.  Adjust
5434         the implementation to use it.
5435         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5436         call to amd64_create_target_description.
5437         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5438         * gdb/arch/amd64.h (amd64_create_target_description): Add
5439         "segments" register.
5440         * gdb/arch/amd64.c (amd64_create_target_description): Add
5441         "segments" parameter.  Call create_feature_i386_64bit_segments
5442         only if SEGMENTS is true.
5443         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5444         call to amd64_create_target_description.
5445
5446 2018-06-29  Pedro Alves  <palves@redhat.com>
5447
5448         * thread.c (thread_target_id_str): New, factored out from ...
5449         (print_thread_info_1): ... here.  Use it to compute the max
5450         "Target Id" column width.
5451
5452 2018-06-29  Pedro Alves  <palves@redhat.com>
5453
5454         * remote.c (remote_target::extra_thread_info): Delete
5455         'display_buf' and 'n' locals.  from the cache, regardless of
5456         packet mechanims is in use.  Use cache for qThreadExtra and qP
5457         methods too.
5458
5459 2018-06-29  Pedro Alves  <palves@redhat.com>
5460
5461         * blockframe.c (find_pc_sect_containing_function): New function.
5462         * breakpoint.c (print_breakpoint_location): Don't call
5463         find_pc_sect_function.
5464         * linespec.c (create_sals_line_offset): Record the location's
5465         symbol in the sal.
5466         * linespec.c (convert_address_location_to_sals): Fill in sal's
5467         symbol with find_pc_sect_containing_function.
5468         * symtab.c (find_function_start_sal): Rename to ...
5469         (find_function_start_sal_1): ... this.
5470         (find_function_start_sal): Reimplement as wrapper around
5471         find_function_start_sal_1, and use
5472         find_pc_sect_containing_function to fill in the sal's symbol.
5473         (find_function_start_sal(symbol*, bool)): Adjust.
5474         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
5475         comments.
5476         (find_pc_sect_containing_function): Declare.
5477
5478 2018-06-29  Pedro Alves  <palves@redhat.com>
5479
5480         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
5481         true if the the location has no symbol.
5482
5483 2018-06-28  Tom Tromey  <tom@tromey.com>
5484
5485         * NEWS: Mention --enable-codesign.
5486         * silent-rules.mk (ECHO_SIGN): New variable.
5487         * configure.ac: Add --enable-codesign.
5488         * configure: Rebuild.
5489         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
5490         (gdb$(EXEEXT)): Optionally invoke codesign.
5491
5492 2018-06-28  Pedro Alves  <palves@redhat.com>
5493
5494         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
5495         comments.
5496         (switch_to_thread_no_regs): Adjust comment.
5497         * infcmd.c (stop_pc): Delete.
5498         (post_create_inferior, info_program_command): Replace references
5499         to stop_pc with references to thread_info->suspend.stop_pc.
5500         * inferior.h (stop_pc): Delete declaration.
5501         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
5502         (handle_inferior_event_1, handle_signal_stop)
5503         (process_event_stop_test, keep_going_stepped_thread)
5504         (handle_step_into_function, handle_step_into_function_backward)
5505         (print_stop_location): Replace references to stop_pc with
5506         references to thread_info->suspend.stop_pc.
5507         (struct infcall_suspend_state) <stop_pc>: Delete field.
5508         (save_infcall_suspend_state, restore_infcall_suspend_state):
5509         Remove references to inf_stat->stop_pc.
5510         * linux-fork.c (fork_load_infrun_state): Likewise.
5511         * record-btrace.c (record_btrace_set_replay): Likewise.
5512         * record-full.c (record_full_goto_entry): Likewise.
5513         * remote.c (print_one_stopped_thread): Likewise.
5514         * target.c (target_resume): Extend comment.
5515         * thread.c (set_executing_thread): New.
5516         (set_executing): Use it.
5517         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
5518         Remove references to stop_pc.
5519
5520 2018-06-28  Pedro Alves  <palves@redhat.com>
5521
5522         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
5523         Moving fetching stop_pc until after ecs->event_thread is refreshed.
5524
5525 2018-06-28  Tom Tromey  <tom@tromey.com>
5526
5527         * coffread.c (coff_symfile_finish): Update.
5528         * xcoffread.c (xcoff_symfile_finish): Update.
5529         * elfread.c (elf_symfile_finish): Update.
5530         * symfile.h (dwarf2_free_objfile): Don't declare.
5531         * dwarf2read.c (_initialize_dwarf2_read): Use
5532         register_objfile_data_with_cleanup.
5533         (dwarf2_free_objfile): Now static.  Change signature.
5534
5535 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5536
5537         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
5538         option "-o" to add-symbol-file-load to add an offset to each
5539         section's load address.
5540         * symfile.c (set_objfile_default_section_offset): New function.
5541
5542 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5543
5544         * symfile.c (add_symbol_file_command): Make sure that sections
5545         with the same name are sorted in the same order.
5546
5547 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5548
5549         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
5550         require the second argument.  If omitted, load sections at the
5551         addresses specified in the file.
5552
5553 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5554
5555         * symfile.c (symbol_file_command, symbol_file_add_main_1)
5556         (_initialize_symfile): Add option "-o" to symbol-file to add an
5557         offset to each section of the symbol file.
5558
5559 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5560
5561         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
5562
5563 2018-06-27  Tom Tromey  <tom@tromey.com>
5564
5565         * stack.c (_initialize_stack): Update "func" help text.
5566
5567 2018-06-27  Tom Tromey  <tom@tromey.com>
5568
5569         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
5570         std::vector.
5571         (unwind_infopy_str, pyuw_create_unwind_info)
5572         (unwind_infopy_add_saved_register, pyuw_sniffer)
5573         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
5574         Update.
5575         (struct saved_reg): Add constructor.
5576         <value>: Now a gdbpy_ref<>.
5577
5578 2018-06-27  Tom Tromey  <tom@tromey.com>
5579
5580         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
5581
5582 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5583
5584         * gdb-gdb.py.in: Format using autopep8.
5585
5586 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5587
5588         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
5589         (type_lookup_function): Recognize CORE_ADDR values.
5590
5591 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5592
5593         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
5594         print tag_name.
5595
5596 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5597
5598         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
5599         <__lt__>: Add.
5600
5601 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5602
5603         * gdb-gdb.py: Move to...
5604         * gdb-gdb.py.in: ... here.
5605         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
5606         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
5607         dependencies.
5608         (distclean): Remove gdb-gdb.py when cleaning.
5609         (gdb-gdb.py, gdb-gdb.gdb): New rules.
5610         * configure: Re-generate.
5611
5612 2018-06-27  Pedro Alves  <palves@redhat.com>
5613
5614         * proc-service.c (get_ps_regcache): New.
5615         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
5616         (ps_lsetfpregs): Use it.
5617
5618 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
5619
5620         PR gdb/21695
5621         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
5622         (dwarf_decode_lines_1): Adjust.
5623
5624 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5625
5626         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
5627         override.
5628         <info_proc>: Likewise.
5629
5630 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
5631
5632         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
5633         to windows_fetch_one_register, and only handle the case of
5634         fetching one register.  Move the code that reloads the context
5635         and iterates over all registers if R is negative to...
5636         (windows_nat_target::fetch_registers): ... here.
5637         (do_windows_store_inferior_registers): Rename to
5638         windows_store_one_register, and only handle the case of storing
5639         one register.  Move the code that handles the case where r is
5640         negative to...
5641         (windows_nat_target::store_registers) ... here.
5642
5643 2018-06-26  Tom Tromey  <tom@tromey.com>
5644
5645         PR rust/22574:
5646         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
5647         * rust-lang.c (rust_print_struct_def): Add podata parameter.
5648         Update.
5649         (rust_internal_print_type): Add podata parameter.
5650         (rust_print_type): Update.
5651
5652 2018-06-26  Tom Tromey  <tom@tromey.com>
5653
5654         * typeprint.h (struct print_offset_data) <update, finish,
5655         maybe_print_hole>: New methods.
5656         <indentation>: New constant.
5657         * typeprint.c (print_offset_data::indentation): Define.
5658         (print_offset_data::maybe_print_hole, print_offset_data::update)
5659         (print_offset_data::finish): Move from c-typeprint.c and rename.
5660         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
5661         (print_spaces_filtered_with_print_options): Update.
5662         (c_print_type_union_field_offset, maybe_print_hole)
5663         (c_print_type_struct_field_offset): Move to typeprint.c and
5664         rename.
5665         (c_type_print_base_struct_union): Update.
5666
5667 2018-06-25  Pedro Alves  <palves@redhat.com>
5668
5669         * gdbthread.h (thread_info_ref, delete_thread)
5670         (delete_thread_silent, first_thread_of_inferior)
5671         (any_thread_of_inferior, switch_to_thread)
5672         (enable_thread_stack_temporaries)
5673         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5674         (get_last_thread_stack_temporary)
5675         (value_in_thread_stack_temporaries, can_access_registers_thread):
5676         Spell out "struct thread_info" instead of just "thread_info".
5677         * inferior.h (notice_new_inferior): Likewise.
5678
5679 2018-06-25  Pedro Alves  <palves@redhat.com>
5680
5681         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5682         pass thread_info pointer to delete_thread.
5683         (windows_nat_target::detach): Pass inferior pointer to
5684         detach_inferior.
5685         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
5686         delete_thread.
5687         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
5688         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
5689         and pass a thread_info pointer to delete_thread.
5690         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
5691         pass thread_info pointer to delete_thread.
5692         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
5693         delete_thread_silent call.
5694         * procfs.c (procfs_target::detach): Pass inferior pointer to
5695         detach_inferior.
5696         (procfs_target::wait): Pass thread_info pointer to delete_thread.
5697         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
5698         delete_thread_silent call.
5699         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5700         pass thread_info pointer to delete_thread.
5701         (windows_nat_target::detach): Pass inferior pointer to
5702         delete_inferior.
5703
5704 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5705
5706         * regcache.c (readable_regcache::read_part): Fix asserts.
5707         (reg_buffer::raw_collect_part): New function.
5708         (regcache::write_part): Fix asserts.
5709         (reg_buffer::raw_supply_part): New function.
5710         (regcache::transfer_regset_register): New helper function.
5711         (regcache::transfer_regset): Call new functions.
5712         (regcache_supply_regset): Use gdb_byte*.
5713         (regcache::supply_regset): Likewise.
5714         (regcache_collect_regset): Likewise.
5715         (regcache::collect_regset): Likewise.
5716         * regcache.h (reg_buffer::raw_collect_part): New declaration.
5717         (reg_buffer::raw_supply_part): Likewise.
5718         (regcache::transfer_regset_register): Likewise.
5719         (regcache::transfer_regset): Use gdb_byte*.
5720
5721 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5722
5723         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
5724
5725 2018-06-21  Pedro Alves  <palves@redhat.com>
5726
5727         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
5728         instead of a ptid_t.  All callers adjusted.
5729         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
5730         adjusted.
5731         (print_ada_task_info, display_current_task_id, task_command_1):
5732         Adjust.
5733         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
5734         inferior_thread.
5735         (breakpoint_kind): Adjust.
5736         (remove_breakpoints_pid): Rename to ...
5737         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
5738         pointer.  All callers adjusted.
5739         (bpstat_clear_actions): Use inferior_thread.
5740         (get_bpstat_thread): New.
5741         (bpstat_do_actions): Use it.
5742         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
5743         to take a thread_info pointer.  All callers adjusted.
5744         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
5745         (breakpoint_re_set_thread): Use inferior_thread.
5746         * breakpoint.h (struct inferior): Forward declare.
5747         (bpstat_stop_status): Update.
5748         (remove_breakpoints_pid): Delete.
5749         (remove_breakpoints_inf): New.
5750         * bsd-uthread.c (bsd_uthread_target::wait)
5751         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
5752         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
5753         (maint_btrace_packet_history_cmd)
5754         (maint_btrace_clear_packet_history_cmd): Adjust.
5755         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
5756         inferior_thread.
5757         * cli/cli-interp.c: Include "inferior.h".
5758         * common/refcounted-object.h (struct
5759         refcounted_object_ref_policy): New.
5760         * compile/compile-object-load.c: Include gdbthread.h.
5761         (store_regs): Use inferior_thread.
5762         * corelow.c (core_target::close): Use current_inferior.
5763         (core_target_open): Adjust to use first_thread_of_inferior and use
5764         the current inferior.
5765         * ctf.c (ctf_target::close): Adjust to use current_inferior.
5766         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
5767         <thread>: ... this new field.  All references adjusted.
5768         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
5769         Take a thread_info pointer instead of a ptid_t.
5770         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
5771         (dummy_frame_discard, register_dummy_frame_dtor): Take a
5772         thread_info pointer instead of a ptid_t.
5773         * elfread.c: Include "inferior.h".
5774         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
5775         Use inferior_thread.
5776         * eval.c (evaluate_subexp): Likewise.
5777         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
5778         inferior_thread.
5779         * gdb_proc_service.h (struct thread_info): Forward declare.
5780         (struct ps_prochandle) <ptid>: Delete, replaced by ...
5781         <thread>: ... this new field.  All references adjusted.
5782         * gdbarch.h, gdbarch.c: Regenerate.
5783         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
5784         'thread' parameter.  All implementations and callers adjusted.
5785         * gdbthread.h (thread_info) <set_running>: New method.
5786         (delete_thread, delete_thread_silent): Take a thread_info pointer
5787         instead of a ptid.
5788         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
5789         (first_thread_of_process): Delete, replaced by ...
5790         (first_thread_of_inferior): ... this new function.  All callers
5791         adjusted.
5792         (any_live_thread_of_process): Delete, replaced by ...
5793         (any_live_thread_of_inferior): ... this new function.  All callers
5794         adjusted.
5795         (switch_to_thread, switch_to_no_thread): Declare.
5796         (is_executing): Delete.
5797         (enable_thread_stack_temporaries): Update comment.
5798         <enable_thread_stack_temporaries>: Take a thread_info pointer
5799         instead of a ptid_t.  Incref the thread.
5800         <~enable_thread_stack_temporaries>: Decref the thread.
5801         <m_ptid>: Delete
5802         <m_thr>: New.
5803         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5804         (get_last_thread_stack_temporary)
5805         (value_in_thread_stack_temporaries, can_access_registers_thread):
5806         Take a thread_info pointer instead of a ptid_t.  All callers
5807         adjusted.
5808         * infcall.c (get_call_return_value): Use inferior_thread.
5809         (run_inferior_call): Work with thread pointers instead of ptid_t.
5810         (call_function_by_hand_dummy): Work with thread pointers instead
5811         of ptid_t.  Use thread_info_ref.
5812         * infcmd.c (proceed_thread_callback): Access thread's state
5813         directly.
5814         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
5815         access thread's state directly.
5816         (continue_command): Use inferior_thread.
5817         (info_program_command): Use find_thread_ptid and access thread
5818         state directly.
5819         (proceed_after_attach_callback): Use thread state directly.
5820         (notice_new_inferior): Take a thread_info pointer instead of a
5821         ptid_t.  All callers adjusted.
5822         (exit_inferior): Take an inferior pointer instead of a pid.  All
5823         callers adjusted.
5824         (exit_inferior_silent): New.
5825         (detach_inferior): Delete.
5826         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
5827         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
5828         (detach_inferior_command, kill_inferior_command): Use
5829         find_inferior_id instead of valid_gdb_inferior_id and
5830         gdb_inferior_id_to_pid.
5831         (inferior_command): Use inferior and thread pointers.
5832         * inferior.h (struct thread_info): Forward declare.
5833         (notice_new_inferior): Take a thread_info pointer instead of a
5834         ptid_t.  All callers adjusted.
5835         (detach_inferior): Delete declaration.
5836         (exit_inferior, exit_inferior_silent): Take an inferior pointer
5837         instead of a pid.  All callers adjusted.
5838         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
5839         (valid_gdb_inferior_id): Delete.
5840         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
5841         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
5842         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
5843         ...
5844         <inf>: ... this new field.
5845         <step_ptid>: Delete, replaced by ...
5846         <step_thread>: ... this new field.
5847         (get_displaced_stepping_state): Take an inferior pointer instead
5848         of a pid.  All callers adjusted.
5849         (displaced_step_in_progress_any_inferior): Adjust.
5850         (displaced_step_in_progress_thread): Take a thread pointer instead
5851         of a ptid_t.  All callers adjusted.
5852         (displaced_step_in_progress, add_displaced_stepping_state): Take
5853         an inferior pointer instead of a pid.  All callers adjusted.
5854         (get_displaced_step_closure_by_addr): Adjust.
5855         (remove_displaced_stepping_state): Take an inferior pointer
5856         instead of a pid.  All callers adjusted.
5857         (displaced_step_prepare_throw, displaced_step_prepare)
5858         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
5859         All callers adjusted.
5860         (start_step_over): Adjust.
5861         (infrun_thread_ptid_changed): Remove bit updating ptids in the
5862         displaced step queue.
5863         (do_target_resume): Adjust.
5864         (fetch_inferior_event): Use inferior_thread.
5865         (context_switch, get_inferior_stop_soon): Take an
5866         execution_control_state pointer instead of a ptid_t.  All callers
5867         adjusted.
5868         (switch_to_thread_cleanup): Delete.
5869         (stop_all_threads): Use scoped_restore_current_thread.
5870         * inline-frame.c: Include "gdbthread.h".
5871         (inline_state) <inline_state>: Take a thread pointer instead of a
5872         ptid_t.  All callers adjusted.
5873         <ptid>: Delete, replaced by ...
5874         <thread>: ... this new field.
5875         (find_inline_frame_state): Take a thread pointer instead of a
5876         ptid_t.  All callers adjusted.
5877         (skip_inline_frames, step_into_inline_frame)
5878         (inline_skipped_frames, inline_skipped_symbol): Take a thread
5879         pointer instead of a ptid_t.  All callers adjusted.
5880         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
5881         (inline_skipped_frames, inline_skipped_symbol): Likewise.
5882         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
5883         pointers directly.
5884         * linux-nat.c (get_detach_signal): Likewise.
5885         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
5886         (thread_db_notice_clone): Adjust.
5887         (thread_db_find_new_threads_silently)
5888         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
5889         a thread pointer instead of a ptid_t.  All callers adjusted.
5890         * mi/mi-cmd-var.c: Include "inferior.h".
5891         (mi_cmd_var_update_iter): Update to use thread pointers.
5892         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
5893         inferior directly.
5894         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
5895         out to ...
5896         (mi_output_running): ... this new function.
5897         (mi_on_resume_1): Adjust to use it.
5898         (mi_user_selected_context_changed): Adjust to use inferior_thread.
5899         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
5900         directly.
5901         (interrupt_thread_callback): : Adjust to use thread and inferior
5902         pointers.
5903         * proc-service.c: Include "gdbthread.h".
5904         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
5905         * progspace-and-thread.c: Include "inferior.h".
5906         * progspace.c: Include "inferior.h".
5907         * python/py-exitedevent.c (create_exited_event_object): Adjust to
5908         hold a reference to an inferior_object.
5909         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
5910         inferior_thread.
5911         * python/py-inferior.c (struct inferior_object): Give the type a
5912         tag name instead of a typedef.
5913         (python_on_normal_stop): No need to check if the current thread is
5914         listed.
5915         (inferior_to_inferior_object): Change return type to
5916         inferior_object.  All callers adjusted.
5917         (find_thread_object): Delete, bits factored out to ...
5918         (thread_to_thread_object): ... this new function.
5919         * python/py-infthread.c (create_thread_object): Use
5920         inferior_to_inferior_object.
5921         (thpy_is_stopped): Use thread pointer directly.
5922         (gdbpy_selected_thread): Use inferior_thread.
5923         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
5924         field, replaced with ...
5925         <thread>: ... this new field.  All users adjusted.
5926         (btpy_insn_or_gap_new): Drop const.
5927         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
5928         callers adjusted.
5929         * python/py-record.c: Include "gdbthread.h".
5930         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5931         a ptid_t.  All callers adjusted.
5932         (gdbpy_current_recording): Use inferior_thread.
5933         * python/py-record.h (recpy_record_object) <ptid>: Delete
5934         field, replaced with ...
5935         <thread>: ... this new field.  All users adjusted.
5936         (recpy_element_object) <ptid>: Delete
5937         field, replaced with ...
5938         <thread>: ... this new field.  All users adjusted.
5939         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5940         a ptid_t.  All callers adjusted.
5941         * python/py-threadevent.c: Include "gdbthread.h".
5942         (get_event_thread): Use thread_to_thread_object.
5943         * python/python-internal.h (struct inferior_object): Forward
5944         declare.
5945         (find_thread_object, find_inferior_object): Delete declarations.
5946         (thread_to_thread_object, inferior_to_inferior_object): New
5947         declarations.
5948         * record-btrace.c: Include "inferior.h".
5949         (require_btrace_thread): Use inferior_thread.
5950         (record_btrace_frame_sniffer)
5951         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
5952         (get_thread_current_frame): Use scoped_restore_current_thread and
5953         switch_to_thread.
5954         (get_thread_current_frame): Use thread pointer directly.
5955         (record_btrace_replay_at_breakpoint): Use thread's inferior
5956         pointer directly.
5957         * record-full.c: Include "inferior.h".
5958         * regcache.c: Include "gdbthread.h".
5959         (get_thread_arch_regcache): Use the inferior's address space
5960         directly.
5961         (get_thread_regcache, registers_changed_thread): New.
5962         * regcache.h (get_thread_regcache(thread_info *thread)): New
5963         overload.
5964         (registers_changed_thread): New.
5965         (remote_target) <remote_detach_1>: Swap order of parameters.
5966         (remote_add_thread): <remote_add_thread>: Return the new thread.
5967         (get_remote_thread_info(ptid_t)): New overload.
5968         (remote_target::remote_notice_new_inferior): Use thread pointers
5969         directly.
5970         (remote_target::process_initial_stop_replies): Use
5971         thread_info::set_running.
5972         (remote_target::remote_detach_1, remote_target::detach)
5973         (extended_remote_target::detach): Adjust.
5974         * stack.c (frame_show_address): Use inferior_thread.
5975         * target-debug.h (target_debug_print_thread_info_pp): New.
5976         * target-delegates.c: Regenerate.
5977         * target.c (default_thread_address_space): Delete.
5978         (memory_xfer_partial_1): Use current_inferior.
5979         (target_detach): Use current_inferior.
5980         (target_thread_address_space): Delete.
5981         (generic_mourn_inferior): Use current_inferior.
5982         * target.h (struct target_ops) <thread_address_space>: Delete.
5983         (target_thread_address_space): Delete.
5984         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
5985         pointers directly.
5986         (delete_thread_1, delete_thread, delete_thread_silent): Take a
5987         thread pointer instead of a ptid_t.  Adjust all callers.
5988         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
5989         (first_thread_of_process): Delete, replaced by ...
5990         (first_thread_of_inferior): ... this new function.  All callers
5991         adjusted.
5992         (any_thread_of_process): Rename to ...
5993         (any_thread_of_inferior): ... this, and take an inferior pointer.
5994         (any_live_thread_of_process): Rename to ...
5995         (any_live_thread_of_inferior): ... this, and take an inferior
5996         pointer.
5997         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5998         (value_in_thread_stack_temporaries)
5999         (get_last_thread_stack_temporary): Take a thread pointer instead
6000         of a ptid_t.  Adjust all callers.
6001         (thread_info::set_running): New.
6002         (validate_registers_access): Use inferior_thread.
6003         (can_access_registers_ptid): Rename to ...
6004         (can_access_registers_thread): ... this, and take a thread
6005         pointer.
6006         (print_thread_info_1): Adjust to compare thread pointers instead
6007         of ptids.
6008         (switch_to_no_thread, switch_to_thread): Make extern.
6009         (scoped_restore_current_thread::~scoped_restore_current_thread):
6010         Use m_thread pointer directly.
6011         (scoped_restore_current_thread::scoped_restore_current_thread):
6012         Use inferior_thread.
6013         (thread_command): Use thread pointer directly.
6014         (thread_num_make_value_helper): Use inferior_thread.
6015         * top.c (execute_command): Use inferior_thread.
6016         * tui/tui-interp.c: Include "inferior.h".
6017         * varobj.c (varobj_create): Use inferior_thread.
6018         (value_of_root_1): Use find_thread_global_id instead of
6019         global_thread_id_to_ptid.
6020
6021 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6022
6023         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6024         possible.
6025         (regcache::write_part): Likewise.
6026         (readable_regcache::cooked_read_part): Update comment.
6027         (readable_regcache::cooked_write_part): Likewise.
6028         * regcache.h: (readable_regcache::read_part): Likewise.
6029         (regcache::write_part): Likewise.
6030
6031 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6032             Dirk Schubert  <dirk.schubert@arm.com>
6033
6034         * aarch64-linux-nat.c (post_attach): New.
6035         (aarch64_linux_nat_target::post_attach): Override post_attach to
6036         record the number of hardware debug registers.
6037
6038 2018-06-20  Tom Tromey  <tom@tromey.com>
6039
6040         * python/py-param.c (add_setshow_generic): Make parameters const.
6041         (parmpy_init): Update.
6042
6043 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6044
6045         * regcache.h (regcache_cooked_read_ftype): Rename to...
6046         (register_read_ftype): ...this, change type to function_view.
6047         (class reg_buffer) <save>: Remove src parameter.
6048         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6049         parameter non-const in first overload.  Remove src parameter in
6050         second overload.
6051         * regcache.c (do_cooked_read): Remove.
6052         (readonly_detached_regcache::readonly_detached_regcache): Make
6053         parameter non-const, adjust call to other constructor.
6054         (reg_buffer::save): Remove src parameter.
6055         * frame.c (do_frame_register_read): Remove.
6056         (frame_save_as_regcache): Use lambda function.
6057         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6058         parameter to ppu2spu_data *.
6059         (ppu2spu_sniffer): Use lambda function.
6060
6061 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6062
6063         * record-full.c (record_full_target::insert_breakpoint): Remove
6064         "struct" keyword, add const.
6065
6066 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6067
6068         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6069         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6070         * configure.ac: Remove AC_PREREQ, add missing quoting.
6071         * gnulib/configure.ac: Modernize usage of
6072         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6073         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6074         (AUTOMAKE_VERSION): Bump to 1.15.1.
6075         * configure: Re-generate.
6076         * config.in: Re-generate.
6077         * aclocal.m4: Re-generate.
6078         * gnulib/aclocal.m4: Re-generate.
6079         * gnulib/config.in: Re-generate.
6080         * gnulib/configure: Re-generate.
6081         * gnulib/import/Makefile.in: Re-generate.
6082
6083 2018-06-19  Pedro Alves  <palves@redhat.com>
6084
6085         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6086         (lookup_minimal_symbol_by_pc_section): ... here with
6087         gdb_assert_not_reached added.
6088
6089 2018-06-19  Pedro Alves  <palves@redhat.com>
6090
6091         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6092         parameter with a block parameter.  Compare location's block symbol
6093         with the frame's block instead of addresses.
6094         (skip_inline_frames): Pass the current block instead of the
6095         frame's address.  Break out as soon as we determine the frame
6096         should not be skipped.
6097
6098 2018-06-18  Tom Tromey  <tom@tromey.com>
6099
6100         * solib-aix.c (solib_aix_get_section_offsets): Return
6101         unique_xmalloc_ptr.
6102         (solib_aix_solib_create_inferior_hook): Update.
6103
6104 2018-06-18  Tom Tromey  <tom@tromey.com>
6105
6106         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6107
6108 2018-06-18  Tom Tromey  <tom@tromey.com>
6109
6110         * solib-frv.c (frv_relocate_main_executable): Use
6111         unique_xmalloc_ptr.
6112         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6113         unique_xmalloc_ptr.
6114
6115 2018-06-18  Tom Tromey  <tom@tromey.com>
6116
6117         * objfiles.h (inhibit_section_map_updates): Update.
6118         (resume_section_map_updates, resume_section_map_updates_cleanup):
6119         Remove.
6120         * solib-svr4.c (svr4_handle_solib_event): Update.
6121         * objfiles.c (inhibit_section_map_updates): Return
6122         scoped_restore_tmpl<int>.
6123         (resume_section_map_updates, resume_section_map_updates_cleanup):
6124         Remove.
6125
6126 2018-06-18  Tom Tromey  <tom@tromey.com>
6127
6128         * valprint.h (read_string): Update.
6129         * valprint.c (read_string): Change type of "buffer".
6130         (val_print_string): Update.
6131         * python/py-value.c (valpy_string): Update.
6132         * language.h (struct language_defn) <la_get_string>: Change
6133         type of "buffer".
6134         (default_get_string, c_get_string): Update.
6135         * language.c (default_get_string): Change type of "buffer".
6136         * guile/scm-value.c (gdbscm_value_to_string): Update.
6137         * c-lang.c (c_get_string): Change type of "buffer".
6138
6139 2018-06-18  Tom Tromey  <tom@tromey.com>
6140
6141         * ser-mingw.c (struct pipe_state_destroyer): New.
6142         (pipe_state_up): New typedef.
6143         (cleanup_pipe_state): Remove.
6144         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6145
6146 2018-06-18  Tom Tromey  <tom@tromey.com>
6147
6148         * rust-lang.h (rust_yyerror): Don't declare.
6149         * rust-lang.c (rust_language_defn): Update.
6150         * rust-exp.y (yyerror): Now static.
6151         * parse.c (parse_exp_in_context_1): Update.
6152         * p-lang.h (p_yyerror): Don't declare.
6153         * p-lang.c (p_language_defn): Update.
6154         * p-exp.y (yyerror): Now static.
6155         * opencl-lang.c (opencl_language_defn): Update.
6156         * objc-lang.c (objc_language_defn): Update.
6157         * m2-lang.h (m2_yyerror): Don't declare.
6158         * m2-lang.c (m2_language_defn): Update.
6159         * m2-exp.y (yyerror): Now static.
6160         * language.h (struct language_defn) <la_error>: Remove.
6161         * language.c (unk_lang_error): Remove.
6162         (unknown_language_defn, auto_language_defn): Remove.
6163         * go-lang.h (go_yyerror): Don't declare.
6164         * go-lang.c (go_language_defn): Update.
6165         * go-exp.y (yyerror): Now static.
6166         * f-lang.h (f_yyerror): Don't declare.
6167         * f-lang.c (f_language_defn): Update.
6168         * f-exp.y (yyerror): Now static.
6169         * d-lang.h (d_yyerror): Don't declare.
6170         * d-lang.c (d_language_defn): Update.
6171         * d-exp.y (yyerror): Now static.
6172         * c-lang.h (c_yyerror): Don't declare.
6173         * c-lang.c (c_language_defn, cplus_language_defn)
6174         (asm_language_defn, minimal_language_defn): Update.
6175         * c-exp.y (yyerror): Now static.
6176         * ada-lang.h (ada_yyerror): Don't declare.
6177         * ada-lang.c (ada_language_defn): Update.
6178         * ada-exp.y (yyerror): Now static.
6179
6180 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6181
6182         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6183         (store_sveregs_to_thread): Likewise.
6184         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6185         (aarch64_linux_store_inferior_registers): Likewise.
6186         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6187         function.
6188         (aarch64_sve_regs_copy_to_regcache): Likewise.
6189         (aarch64_sve_regs_copy_from_regcache): Likewise.
6190         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6191         declaration.
6192         (aarch64_sve_regs_copy_to_regcache): Likewise.
6193         (aarch64_sve_regs_copy_from_regcache): Likewise.
6194         (sve_context): Structure from Linux headers.
6195         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6196         (SVE_SIG_ZREG_SIZE): Likewise.
6197         (SVE_SIG_PREG_SIZE): Likewise.
6198         (SVE_SIG_FFR_SIZE): Likewise.
6199         (SVE_SIG_REGS_OFFSET): Likewise.
6200         (SVE_SIG_ZREGS_OFFSET): Likewise.
6201         (SVE_SIG_ZREG_OFFSET): Likewise.
6202         (SVE_SIG_ZREGS_SIZE): Likewise.
6203         (SVE_SIG_PREGS_OFFSET): Likewise.
6204         (SVE_SIG_PREG_OFFSET): Likewise.
6205         (SVE_SIG_PREGS_SIZE): Likewise.
6206         (SVE_SIG_FFR_OFFSET): Likewise.
6207         (SVE_SIG_REGS_SIZE): Likewise.
6208         (SVE_SIG_CONTEXT_SIZE): Likewise.
6209         (SVE_PT_REGS_MASK): Likewise.
6210         (SVE_PT_REGS_FPSIMD): Likewise.
6211         (SVE_PT_REGS_SVE): Likewise.
6212         (SVE_PT_VL_INHERIT): Likewise.
6213         (SVE_PT_VL_ONEXEC): Likewise.
6214         (SVE_PT_REGS_OFFSET): Likewise.
6215         (SVE_PT_FPSIMD_OFFSET): Likewise.
6216         (SVE_PT_FPSIMD_SIZE): Likewise.
6217         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6218         (SVE_PT_SVE_PREG_SIZE): Likewise.
6219         (SVE_PT_SVE_FFR_SIZE): Likewise.
6220         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6221         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6222         (__SVE_SIG_TO_PT): Likewise.
6223         (SVE_PT_SVE_OFFSET): Likewise.
6224         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6225         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6226         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6227         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6228         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6229         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6230         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6231         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6232         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6233         (SVE_PT_SVE_SIZE): Likewise.
6234         (SVE_PT_SIZE): Likewise.
6235         (HAS_SVE_STATE): New define.
6236
6237 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6238
6239         * nat/aarch64-sve-linux-sigcontext.h: New file.
6240         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6241         new files.
6242         (SVE_VQ_MIN): Likewise.
6243         (SVE_VQ_MAX): Likewise.
6244         (SVE_VL_MIN): Likewise.
6245         (SVE_VL_MAX): Likewise.
6246         (SVE_NUM_ZREGS): Likewise.
6247         (SVE_NUM_PREGS): Likewise.
6248         (sve_vl_valid): Likewise.
6249         (struct user_sve_header): Likewise.
6250
6251 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6252             Richard Bunt <Richard.Bunt@arm.com>
6253
6254         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6255         was requested by GDB.
6256
6257 2018-06-15  Tom de Vries  <tdevries@suse.de>
6258
6259         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6260
6261 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6262
6263         * gnulib/update-gnulib.sh: Print expected versions of
6264         autoconf/aclocal.
6265
6266 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6267
6268         * arch-utils.c (default_type_align): Use type_length_units.
6269         * gdbtypes.c (type_align): Use type_length_units.
6270
6271 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6272
6273         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6274         of 'define' command.
6275
6276 2018-06-14  Tom de Vries  <tdevries@suse.de>
6277
6278         PR cli/22573
6279         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6280         get_no_prettyformat_print_options.
6281
6282 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6283
6284         * sparc-nat.h: Include target.h.
6285         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6286         <fetch_registers>: Remove this argument in function call.
6287         <store_registers>: Remove this argument in function call, remove
6288         extra semicolon.
6289         <low_forget_process>: Call sparc64_forget_process instead of
6290         sparc_forget_process.
6291
6292 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6293
6294         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6295         (procfs_target::make_corefile_notes): Adjust to new
6296         target_read_alloc return type.
6297
6298 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6299             Stephen Roberts  <stephen.roberts@arm.com>
6300
6301         PR gdb/22882
6302         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6303         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6304         Move should_notify_stop local into more inner scope.
6305
6306 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6307             Stephen Roberts  <stephen.roberts@arm.com>
6308
6309         PR gdb/22882
6310         * infrun.c (resume_1): Add call to mark_async_event_handler.
6311
6312 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6313
6314         * infrun.c (do_target_wait): Change old version of $pc printed.
6315
6316 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6317
6318         * dwarf2read.c (read_index_from_section): Rename to...
6319         (read_gdb_index_from_section): ... this, update all callers.
6320         (dwarf2_read_index): Rename to...
6321         (dwarf2_read_gdb_index): ... this, update all callers.
6322
6323 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6324
6325         * gdb/hppa-linux-nat.c
6326         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6327         hppa_linux_nat_target::fetch_registers.
6328
6329 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6330
6331         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6332         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6333         (AARCH64_DWARF_SVE_FFR): Likewise.
6334         (AARCH64_DWARF_SVE_P0): Likewise.
6335         (AARCH64_DWARF_SVE_Z0): Likewise.
6336
6337 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6338
6339         * common/common-regcache.h (raw_compare): New function.
6340         * regcache.c (regcache::raw_compare): Likewise.
6341         * regcache.h (regcache::raw_compare): New declaration.
6342
6343 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6344
6345         * common/common-regcache.h (reg_buffer_common): New structure.
6346         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6347         (reg_buffer::raw_supply): Likewise.
6348         (reg_buffer::raw_supply_integer): Likewise.
6349         (reg_buffer::raw_supply_zeroed): Likewise.
6350         (reg_buffer::raw_collect): Likewise.
6351         (reg_buffer::raw_collect_integer): Likewise.
6352         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6353         (reg_buffer::raw_supply): Likewise.
6354         (reg_buffer::raw_supply_integer): Likewise.
6355         (reg_buffer::raw_supply_zeroed): Likewise.
6356         (reg_buffer::raw_collect): Likewise.
6357         (reg_buffer::raw_collect_integer): Likewise.
6358
6359 2018-06-10  Tom Tromey  <tom@tromey.com>
6360
6361         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6362         (class remote_state) <stop_reply_queue>: Now std::vector.
6363         (remote_state::~remote_state)
6364         (remote_target::stop_reply_queue_length): Update.
6365         (struct queue_iter_param, remove_child_of_pending_fork)
6366         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6367         (check_pending_event_prevents_wildcard_vcont_callback)
6368         (remove_stop_reply_for_inferior)
6369         (remove_stop_reply_of_remote_state)
6370         (remote_notif_remove_once_on_match)
6371         (stop_reply_match_ptid_and_ws)
6372         (remote_kill_child_of_pending_fork): Remove.
6373         (remote_target::remove_new_fork_children)
6374         (remote_target::check_pending_events_prevent_wildcard_vcont)
6375         (remote_target::discard_pending_stop_replies)
6376         (remote_target::discard_pending_stop_replies_in_queue)
6377         (remote_target::remote_notif_remove_queued_reply)
6378         (remote_target::queued_stop_reply)
6379         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6380         (remote_target::wait, remote_target::kill_new_fork_children)
6381         (remote_target::async): Update.
6382
6383 2018-06-10  Tom Tromey  <tom@tromey.com>
6384
6385         * record-full.c (record_full_arch_list_cleanups): Remove.
6386         (record_full_message): Use try/catch.
6387         (record_full_wait_cleanups): Remove.
6388         (record_full_wait_1): Use try/catch.
6389         (record_full_restore): Likewise.
6390
6391 2018-06-10  Tom Tromey  <tom@tromey.com>
6392
6393         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6394         declare VEC.  Add constructor.
6395         <in_target_beneath>: Now bool.
6396         (record_full_breakpoints): Now a std::vector, static.
6397         (record_full_sync_record_breakpoints)
6398         (record_full_init_record_breakpoints)
6399         (record_full_target::insert_breakpoint)
6400         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6401
6402 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6403
6404         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6405         * serial.c (serial_interface_lookup): Remove struct keyword.
6406
6407 2018-06-10  Tom Tromey  <tom@tromey.com>
6408
6409         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6410         method.
6411         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6412         a method.
6413         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6414         method.
6415         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6416         "beneath" as a method.
6417         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6418         Use "beneath" as a method.
6419
6420 2018-06-10  Tom Tromey  <tom@tromey.com>
6421
6422         * tracefile.c (struct trace_file_writer_deleter): New.
6423         <operator()>: Rename from trace_file_writer_xfree.
6424         (trace_file_writer_up): New typedef.
6425         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6426
6427 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6428
6429         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6430         <m_registers, m_register_status>: Change type to
6431         std::unique_ptr.
6432         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6433         XCNEWVEC.
6434
6435 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6436
6437         * common/common-regcache.h (enum register_status): Add
6438         underlying type "signed char".
6439         * regcache.h (reg_buffer) <m_register_status>: Change type to
6440         register_status *.
6441         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6442         register_status instead of signed char.
6443         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6444         (reg_buffer::get_register_status): Remove cast.
6445         (readable_regcache::raw_read): Remove cast.
6446         (readable_regcache::cooked_read): Remove cast.
6447
6448 2018-06-09  Tom Tromey  <tom@tromey.com>
6449
6450         * source.c (reverse_search_command, forward_search_command): Use
6451         scoped_fd.
6452
6453 2018-06-09  Tom Tromey  <tom@tromey.com>
6454
6455         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6456         (serial_ops_list): Now static, std::vector.
6457         (serial_interface_lookup, serial_add_interface): Update.
6458
6459 2018-06-09  Tom Tromey  <tom@tromey.com>
6460
6461         * dwarf2read.c (process_cu_includes): Update.
6462         (process_full_comp_unit): Update.
6463         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6464         std::vector.
6465
6466 2018-06-08  Paul Koning  <paul_koning@dell.com>
6467
6468         PR gdb/23252
6469
6470         * python/python.c (do_start_initialization):
6471         Avoid call to internal Python API.
6472         (init__gdb_module): New function.
6473
6474 2018-06-08  Gary Benson <gbenson@redhat.com>
6475
6476         * linux-thread-db.c (valprint.h): New include.
6477         (struct check_thread_db_info): New structure.
6478         (check_thread_db_on_load, tdb_testinfo): New static globals.
6479         (check_thread_db, check_thread_db_callback): New functions.
6480         (try_thread_db_load_1): Run integrity checks if requested.
6481         (maintenance_check_libthread_db): New function.
6482         (_initialize_thread_db): Register "maint check libthread-db"
6483         and "maint set/show check-libthread-db".
6484         * NEWS: Mention the above new commands.
6485
6486 2018-06-08  Tom Tromey  <tom@tromey.com>
6487
6488         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
6489         now a method.
6490
6491 2018-06-08  Tom Tromey  <tom@tromey.com>
6492
6493         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
6494
6495 2018-06-08  Tom Tromey  <tom@tromey.com>
6496
6497         * common/btrace-common.h (struct btrace_data): Add constructor,
6498         destructor, move assignment operator.
6499         <empty, clear, fini>: New methods.
6500         <format>: Initialize.
6501         (btrace_data_init, btrace_data_fini, btrace_data_clear)
6502         (btrace_data_empty): Don't declare.
6503         * common/btrace-common.c (btrace_data_init): Remove.
6504         (btrace_data::fini): Rename from btrace_data_fini.
6505         (btrace_data::empty): Rename from btrace_data_empty.
6506         (btrace_data::clear): Rename from btrace_data_clear.  Return
6507         bool.
6508         * btrace.h (make_cleanup_btrace_data): Don't declare.
6509         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
6510         (parse_xml_btrace): Update.
6511         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
6512         (maint_btrace_clear_packet_history_cmd): Update.
6513
6514 2018-06-07  Pedro Alves  <palves@redhat.com>
6515
6516         * target.h (target_ops) <beneath>: Now a method.  All references
6517         updated.
6518         (class target_stack): New.
6519         * target.c (g_target_stack): New.
6520         (g_current_top_target): Delete.
6521         (current_top_target): Get the top target out of g_target_stack.
6522         (target_stack::push, target_stack::unpush): New.
6523         (push_target, unpush_target): Reimplement.
6524         (target_is_pushed): Reimplement in terms of g_target_stack.
6525         (target_ops::beneath, target_stack::find_beneath): New.
6526
6527 2018-06-07  Pedro Alves  <palves@redhat.com>
6528
6529         * target.h (find_target_beneath): Delete declaration.
6530         * target.c (find_target_beneath): Delete definition.
6531         * aix-thread.c: All callers of find_target_beneath adjusted to
6532         call target_ops::beneath instead.
6533         * bsd-uthread.c: Likewise.
6534         * linux-thread-db.c: Likewise.
6535         * ravenscar-thread.c: Likewise.
6536         * sol-thread.c: Likewise.
6537         * spu-multiarch.c: Likewise.
6538
6539 2018-06-07  Pedro Alves  <palves@redhat.com>
6540
6541         * target.h (target_ops) <beneath>: Now a method.  All references
6542         updated.
6543         (target_ops) <m_beneath>: New.
6544         * target.c (target_ops::beneath): New.
6545         * corelow.c: Adjust all references to target_ops::beneath.
6546         * linux-thread-db.c: Likewise.
6547         * make-target-delegates: Likewise.
6548         * record-btrace.c: Likewise.
6549         * record-full.c: Likewise.
6550         * remote.c: Likewise.
6551         * target.c: Likewise.
6552         * target-delegates.c: Regenerate.
6553
6554 2018-06-07  Pedro Alves  <palves@redhat.com>
6555
6556         * target.h (target_stack): Delete.
6557         (current_top_target): Declare function.
6558         * target.c (target_stack): Delete.
6559         (g_current_top_target): New.
6560         (current_top_target): New function.
6561         * auxv.c: Use current_top_target instead of target_stack
6562         throughout.
6563         * avr-tdep.c: Likewise.
6564         * breakpoint.c: Likewise.
6565         * corefile.c: Likewise.
6566         * elfread.c: Likewise.
6567         * eval.c: Likewise.
6568         * exceptions.c: Likewise.
6569         * frame.c: Likewise.
6570         * gdbarch-selftests.c: Likewise.
6571         * gnu-v3-abi.c: Likewise.
6572         * ia64-tdep.c: Likewise.
6573         * ia64-vms-tdep.c: Likewise.
6574         * infcall.c: Likewise.
6575         * infcmd.c: Likewise.
6576         * infrun.c: Likewise.
6577         * linespec.c: Likewise.
6578         * linux-tdep.c: Likewise.
6579         * minsyms.c: Likewise.
6580         * ppc-linux-nat.c: Likewise.
6581         * ppc-linux-tdep.c: Likewise.
6582         * procfs.c: Likewise.
6583         * regcache.c: Likewise.
6584         * remote.c: Likewise.
6585         * rs6000-tdep.c: Likewise.
6586         * s390-linux-nat.c: Likewise.
6587         * s390-tdep.c: Likewise.
6588         * solib-aix.c: Likewise.
6589         * solib-darwin.c: Likewise.
6590         * solib-dsbt.c: Likewise.
6591         * solib-spu.c: Likewise.
6592         * solib-svr4.c: Likewise.
6593         * solib-target.c: Likewise.
6594         * sparc-tdep.c: Likewise.
6595         * sparc64-tdep.c: Likewise.
6596         * spu-tdep.c: Likewise.
6597         * symfile.c: Likewise.
6598         * symtab.c: Likewise.
6599         * target-descriptions.c: Likewise.
6600         * target-memory.c: Likewise.
6601         * target.c: Likewise.
6602         * target.h: Likewise.
6603         * tracefile-tfile.c: Likewise.
6604         * tracepoint.c: Likewise.
6605         * valops.c: Likewise.
6606         * valprint.c: Likewise.
6607         * value.c: Likewise.
6608         * windows-tdep.c: Likewise.
6609         * mi/mi-main.c: Likewise.
6610
6611 2018-06-07  Tom Tromey  <tom@tromey.com>
6612
6613         * valprint.h (build_address_symbolic): Declare.
6614         * printcmd.c (print_address_symbolic): Update.
6615         (build_address_symbolic): Change "name" and "filename" to
6616         std::string.
6617         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
6618         Update.
6619         * defs.h (build_address_symbolic): Remove declaration.
6620
6621 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
6622
6623         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
6624         (aarch64_vnv_type): Add function.
6625         (aarch64_pseudo_register_name): Add V regs for SVE.
6626         (aarch64_pseudo_register_type): Likewise.
6627         (aarch64_pseudo_register_reggroup_p): Likewise.
6628         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
6629         (aarch64_pseudo_read_value): Add V regs for SVE.
6630         (aarch64_pseudo_write_2): Use V0 offset for SVE
6631         (aarch64_pseudo_write): Add V regs for SVE.
6632         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
6633
6634 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
6635
6636         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
6637         (sve_vl_from_vq): Likewise.
6638
6639 2018-06-05  Tom Tromey  <tom@tromey.com>
6640
6641         * cli/cli-cmds.c (show_version): Update.
6642         * top.c (print_gdb_version): Add "interactive" parameter.
6643         Update.
6644         * main.c (captured_main_1): Update.
6645         * top.h (print_gdb_version): Add "interactive" parameter and a
6646         comment.
6647
6648 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
6649
6650         * common/enum-flags.h: Add trailing semicolon to example in
6651         comment.
6652
6653 2018-06-05  Tom Tromey  <tom@tromey.com>
6654
6655         PR cli/12326:
6656         * NEWS: Add entry about pager.
6657         * utils.c (pagination_disabled_for_command): New global.
6658         (prompt_for_continue): Allow "c" response to prompt.
6659         (reinitialize_more_filter): Clear
6660         pagination_disabled_for_command.
6661         (fputs_maybe_filtered): Check pagination_disabled_for_command.
6662
6663 2018-06-04  Tom Tromey  <tom@tromey.com>
6664
6665         * ada-lang.h (ada_lookup_symbol_list): Update.
6666         * ada-lang.c (resolve_subexp): Update.
6667         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
6668         parameter.
6669         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
6670         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
6671         results parameter to std::vector.
6672         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
6673         Update.
6674         * ada-exp.y (block_lookup): Update.
6675         (select_possible_type_sym): Change type of syms.  Remove nsyms
6676         parameter.
6677         (write_var_or_type, write_name_assoc): Update.
6678
6679 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
6680
6681         * windows-nat.c (windows_nat_target::xfer_partial): Return
6682         TARGET_XFER_E_IO if we need to delegate to the target beneath
6683         but BENEATH is NULL.
6684
6685 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
6686
6687         * Makefile.in (config.status): Add configure.nat as a
6688         dependency.
6689
6690 2018-06-04  Tom Tromey  <tom@tromey.com>
6691
6692         * cp-name-parser.y (cpname_state): Add method declarations.
6693         (HANDLE_QUAL): Update.
6694         (cpname_state::d_grab, cpname_state::fill_comp)
6695         (cpname_state::make_operator, cpname_state::make_dtor)
6696         (cpname_state::make_builtin_type, cpname_state::make_name)
6697         (cpname_state::d_qualify, cpname_state::d_int_type)
6698         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
6699         (%union): Move earlier.
6700
6701 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6702
6703         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
6704
6705 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6706
6707         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
6708         (aarch64_pseudo_write_1): Likewise.
6709         (aarch64_pseudo_read_value): Use helper.
6710         (aarch64_pseudo_write): Likewise.
6711
6712 2018-06-04  Pedro Alves  <palves@redhat.com>
6713
6714         * darwin-nat.c (darwin_ops): Delete.
6715         (darwin_attach_pid): Use get_native_target.
6716
6717 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6718
6719         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
6720         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
6721
6722 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6723
6724         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
6725         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
6726         (aarch64_gdbarch_init): Check for SVE.
6727         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
6728
6729 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6730
6731         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
6732         * aarch64-tdep.h (aarch64_read_description): Likewise.
6733         * arch/aarch64.c (aarch64_create_target_description): Likewise.
6734         * arch/aarch64.h (aarch64_create_target_description): Likewise.
6735         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
6736         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
6737         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
6738
6739 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
6740
6741         * value.c (value_fetch_lazy_bitfield): New.
6742         (value_fetch_lazy_memory): New.
6743         (value_fetch_lazy_register): New.
6744         (value_fetch_lazy): Factor out to smaller functions.
6745
6746 2018-06-01  Tom Tromey  <tom@tromey.com>
6747
6748         * cp-name-parser.y (backslashable, represented): Now const.
6749
6750 2018-06-01  Tom Tromey  <tom@tromey.com>
6751
6752         * cp-name-parser.y: Include parser-defs.h.
6753         (parser_fprintf): Remove declaration.
6754
6755 2018-06-01  Tom Tromey  <tom@tromey.com>
6756
6757         * cp-name-parser.y: Use %pure-parser, %lex-param, and
6758         %parse-param.
6759         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
6760         (global_result): Remove globals.
6761         (struct cpname_state): New.
6762         (yyparse): Don't declare.
6763         (yylex, yyerror): Move declarations after %union.
6764         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
6765         (make_name): Add state parameter.
6766         Update all callers.
6767         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
6768         parameter.
6769         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
6770         Update.
6771         (yylex): Add lvalp, state parameters.
6772         (yyerror): Add state parameter.
6773         (cp_demangled_name_to_comp): Update.
6774
6775 2018-06-01  Tom Tromey  <tom@tromey.com>
6776
6777         * cp-name-parser.y (parser_fprintf): Declare.
6778         (GDB_YY_REMAP_PREFIX): Define.
6779         Include yy-remap.h.  Don't redefine yy* identifiers.
6780
6781 2018-06-01  Tom Tromey  <tom@tromey.com>
6782
6783         * python/py-type.c (typy_legacy_template_argument): Update.
6784         * cp-support.h (cp_demangled_name_to_comp): Update.
6785         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
6786         parameter to be a "std::string *".
6787         (main): Update.
6788
6789 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
6790
6791         * ada-lex.l: Include "diagnostics.h" instead of
6792         "common/diagnostics.h".
6793         * unittests/environ-selftests.c: Likewise.
6794         * common/diagnostics.h: Moved to ../include.
6795
6796 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
6797
6798         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
6799         to language_mode_manual while calling breakpoint_re_set_one.
6800
6801 2018-06-01  Tom Tromey  <tom@tromey.com>
6802
6803         * valops.c (value_cast_structs, destructor_name_p): Update.
6804         * symtab.c (gdb_mangle_name): Update.
6805         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
6806         Update.
6807         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
6808         (pascal_object_print_value_fields, pascal_object_print_value):
6809         Update.
6810         * p-typeprint.c (pascal_type_print_derivation_info): Update.
6811         * linespec.c (find_methods): Update.
6812         * gdbtypes.h (type_name_no_tag): Remove.
6813         (type_name_or_error): Rename from type_name_no_tag_or_error.
6814         * gdbtypes.c (type_name_no_tag): Remove.
6815         (type_name_or_error): Rename from type_name_no_tag_or_error.
6816         (lookup_struct_elt_type, check_typedef): Update.
6817         * expprint.c (print_subexp_standard): Update.
6818         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
6819         * d-namespace.c (d_lookup_nested_symbol): Update.
6820         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
6821         (cp_print_class_member): Update.
6822         * cp-namespace.c (cp_lookup_nested_symbol): Update.
6823         * completer.c (add_struct_fields): Update.
6824         * c-typeprint.c (cp_type_print_derivation_info)
6825         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
6826         Update.
6827         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
6828         (ada_prefer_type, ada_is_exception_sym): Update.
6829
6830 2018-06-01  Tom Tromey  <tom@tromey.com>
6831
6832         * valops.c (enum_constant_from_type, value_namespace_elt)
6833         (value_maybe_namespace_elt): Update.
6834         * valarith.c (find_size_for_pointer_math): Update.
6835         * target-descriptions.c (make_gdb_type): Update.
6836         * symmisc.c (print_symbol): Update.
6837         * stabsread.c (define_symbol, read_type)
6838         (complain_about_struct_wipeout, add_undefined_type)
6839         (cleanup_undefined_types_1): Update.
6840         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
6841         (rust_range_type_p, val_print_struct, rust_print_struct_def)
6842         (rust_internal_print_type, rust_composite_type)
6843         (rust_evaluate_funcall, rust_evaluate_subexp)
6844         (rust_inclusive_range_type_p): Update.
6845         * python/py-type.c (typy_get_tag): Update.
6846         * p-typeprint.c (pascal_type_print_base): Update.
6847         * mdebugread.c (parse_symbol, parse_type): Update.
6848         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
6849         Update.
6850         * guile/scm-type.c (gdbscm_type_tag): Update.
6851         * go-lang.c (sixg_string_p): Update.
6852         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
6853         Update.
6854         * gdbtypes.h (struct main_type) <tag_name>: Remove.
6855         (TYPE_TAG_NAME): Remove.
6856         * gdbtypes.c (type_name_no_tag): Simplify.
6857         (check_typedef, check_types_equal, recursive_dump_type)
6858         (copy_type_recursive, arch_composite_type): Update.
6859         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
6860         in summary mode when needed.
6861         * eval.c (evaluate_funcall): Update.
6862         * dwarf2read.c (fixup_go_packaging, read_structure_type)
6863         (process_structure_scope, read_enumeration_type)
6864         (read_namespace_type, read_module_type, determine_prefix): Update.
6865         * cp-support.c (inspect_type): Update.
6866         * coffread.c (process_coff_symbol, decode_base_type): Update.
6867         * c-varobj.c (c_is_path_expr_parent): Update.
6868         * c-typeprint.c (c_type_print_base_struct_union): Update.
6869         (c_type_print_base_1): Update.  Print struct/class/union/enum in
6870         summary when using C language.
6871         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
6872         (gen_maybe_namespace_elt): Update.
6873         * ada-lang.c (ada_type_name): Simplify.
6874         (empty_record, ada_template_to_fixed_record_type_1)
6875         (template_to_static_fixed_type)
6876         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
6877
6878 2018-06-01  Tom Tromey  <tom@tromey.com>
6879
6880         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
6881         c_print_type.
6882         * c-typeprint.c (c_print_type_1): Add "language" parameter.
6883         (c_print_type): Update.
6884         (c_print_type): New overload.
6885         (c_type_print_varspec_prefix, c_type_print_args)
6886         (c_type_print_varspec_suffix, c_print_type_no_offsets)
6887         (c_type_print_base_struct_union, c_type_print_base_1)
6888         (cp_type_print_method_args): Add "language" parameter.
6889         (c_type_print_base): Update.
6890         * c-lang.h (c_print_type): Add new overload.
6891
6892 2018-06-01  Tom Tromey  <tom@tromey.com>
6893
6894         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
6895         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
6896
6897 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
6898
6899         * aarch64-tdep.c (aarch64_sve_register_names): New const
6900         var.
6901         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
6902         (AARCH64_SVE_Z_REGS_NUM): New define.
6903         (AARCH64_SVE_P_REGS_NUM): Likewise.
6904         (AARCH64_SVE_NUM_REGS): Likewise.
6905
6906 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
6907
6908         * nat/linux-ptrace.h [__alpha__]
6909         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
6910         definitions.
6911
6912 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
6913
6914         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
6915         the endianness selected.
6916         * NEWS: Document `set endian auto' mode operation update.
6917
6918 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6919
6920         * Makefile.in: Add new header.
6921         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
6922         (sve_vl_from_vg): Likewise.
6923         (sve_vq_from_vl): Likewise.
6924         (sve_vl_from_vq): Likewise.
6925         (sve_vq_from_vg): Likewise.
6926         (sve_vg_from_vq): Likewise.
6927         * configure.nat: Add new c file.
6928         * nat/aarch64-sve-linux-ptrace.c: New file.
6929         * nat/aarch64-sve-linux-ptrace.h: New file.
6930
6931 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6932
6933         * aarch64-linux-nat.c (aarch64_linux_read_description):
6934         Add parmeter zero.
6935         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
6936         Likewise.
6937         * aarch64-tdep.c (tdesc_aarch64_list): Add.
6938         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
6939         (aarch64_gdbarch_init): Add parmeter zero.
6940         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
6941         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
6942         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
6943         parmeter.
6944         * doc/gdb.texinfo: Describe SVE feature
6945         * features/aarch64-sve.c: New file.
6946
6947 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
6948
6949         PR gdb/23210
6950         * gdbarch.sh (significant_addr_bit): Default to zero when
6951         not set by target architecture.
6952         * gdbarch.c: Re-generated.
6953         * utils.c (address_significant): Update.
6954
6955 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
6956
6957         * stack.c (func_command): Remove trailing newline in call to error.
6958
6959 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6960
6961         * regcache.h (regcache_raw_collect): Remove, update callers to
6962         use regcache::raw_collect.
6963         * regcache.c (regcache_raw_collect): Remove.
6964
6965 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6966
6967         * regcache.h (regcache_raw_supply): Remove, update callers to
6968         use detached_regcache::raw_supply.
6969         * regcache.c (regcache_raw_supply): Remove.
6970
6971 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6972
6973         * regcache.h (regcache_cooked_write_part): Remove, update
6974         callers to use regcache::cooked_write_part.
6975         * regcache.c (regcache_cooked_write_part): Remove.
6976
6977 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6978
6979         * regcache.h (regcache_cooked_read_part): Remove, update callers
6980         to use readable_regcache::cooked_read_part.
6981         * regcache.c (regcache_cooked_read_part): Remove.
6982
6983 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6984
6985         * regcache.h (regcache_cooked_read_value): Remove, update
6986         callers to use readable_regcache::cooked_read_value.
6987         * regcache.c (regcache_cooked_read_value): Remove.
6988
6989 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6990
6991         * regcache.h (regcache_cooked_write): Remove, update callers to
6992         use regcache::cooked_write.
6993         * regcache.c (regcache_cooked_write): Remove.
6994
6995 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6996
6997         * regcache.h (regcache_invalidate): Remove, update callers to
6998         use detached_regcache::invalidate instead.
6999         * regcache.c (regcache_invalidate): Remove.
7000
7001 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7002
7003         * regcache.h (regcache_raw_write_part): Remove, update callers
7004         to use regcache::raw_write_part instead.
7005         * regcache.c (regcache_raw_write_part): Remove.
7006
7007 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7008
7009         * regcache.h (regcache_raw_read_part): Remove, update callers to
7010         use readable_regcache::raw_read_part instead.
7011         * regcache.c (regcache_raw_read_part): Remove.
7012
7013 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7014
7015         * regcache.h (regcache_cooked_read): Remove, update callers to
7016         use readable_regcache::cooked_read instead.
7017         * regcache.c (regcache_cooked_read): Remove.
7018
7019 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7020
7021         * regcache.h (regcache_raw_write): Remove, update callers to use
7022         regcache::raw_write instead.
7023         * regcache.c (regcache_raw_write): Remove.
7024
7025 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7026
7027         * regcache.h (regcache_raw_read): Remove, update callers to use
7028         readable_regcache::raw_read instead.
7029         * regcache.c (regcache_raw_read): Remove.
7030
7031 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7032
7033         * regcache.h (regcache_raw_update): Remove, update callers to
7034         use readable_regcache::raw_update instead.
7035         * regcache.c (regcache_raw_update): Remove.
7036
7037 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7038
7039         * regcache.h (regcache_register_status): Remove, update callers
7040         to use reg_buffer::get_register_status directly instead.
7041         * regcache.c (regcache_register_status): Remove.
7042
7043 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7044
7045         * regcache.h (regcache_get_ptid): Remove, update all callers to
7046         call regcache::ptid instead.
7047         * regcache.c (regcache_get_ptid): Remove.
7048
7049 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7050
7051         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7052
7053 2018-05-30  Pedro Alves  <palves@redhat.com>
7054
7055         * common/common-exceptions.h (exception_rethrow): Use
7056         ATTRIBUTE_NORETURN.
7057
7058 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7059
7060         * breakpoint.c (print_solib_event, check_status_catch_solib):
7061         Remove struct keyword in range-based for loops.
7062         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7063         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7064         Likewise.
7065         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7066         Likewise.
7067         * symfile.c (addr_info_make_relative): Likewise.
7068         * thread.c (value_in_thread_stack_temporaries): Likewise.
7069
7070 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7071
7072         PR gdb/16841
7073         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7074         aggregate type to get its real type before accessing it.
7075
7076 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7077
7078         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7079         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7080         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7081         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7082         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7083         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7084         * printcmd.c (info_address_command): Likewise.
7085
7086 2018-05-29  Tom Tromey  <tom@tromey.com>
7087
7088         * windows-nat.c (handle_exception): Update fall-through comment.
7089
7090 2018-05-29  Tom Tromey  <tom@tromey.com>
7091
7092         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7093         (struct program_space) <added_solibs>: Now a std::vector.
7094         * breakpoint.c (print_solib_event): Update.
7095         (check_status_catch_solib): Update.
7096         * progspace.c (clear_program_space_solib_cache): Update.
7097         * solib.c (update_solib_list): Update.
7098
7099 2018-05-29  Tom Tromey  <tom@tromey.com>
7100
7101         * python/py-type.c (typy_richcompare): Update.
7102         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7103         * gdbtypes.h (types_deeply_equal): Return bool.
7104         (types_equal): Likewise.
7105         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7106         declare VEC.
7107         (check_types_equal): Change worklist to std::vector.  Return
7108         bool.
7109         (struct type_equality_entry): Add constructor.
7110         (compare_maybe_null_strings): Return bool.
7111         (check_types_worklist): Return bool.  Change worklist to
7112         std::vector.
7113         (types_deeply_equal): Use std::vector.
7114         (types_equal): Return bool.
7115         (compare_maybe_null_strings): Simplify.
7116
7117 2018-05-29  Tom Tromey  <tom@tromey.com>
7118
7119         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7120
7121 2018-05-29  Tom Tromey  <tom@tromey.com>
7122
7123         * objc-lang.h: Don't include cp-support.h.
7124         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7125         declare VEC.
7126
7127 2018-05-27  Tom Tromey  <tom@tromey.com>
7128
7129         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7130
7131 2018-05-25  Tom Tromey  <tom@tromey.com>
7132
7133         * value.c (value::location): Initialize.
7134
7135 2018-05-25  Tom Tromey  <tom@tromey.com>
7136
7137         * dbxread.c (init_bincl_list): Remove.
7138         (bincl_list): Now a std::vector.
7139         (bincls_allocated, next_bincl): Remove.
7140         (free_bincl_list, do_free_bincl_list_cleanup)
7141         (make_cleanup_free_bincl_list): Remove.
7142         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7143         unique_xmalloc_ptr.
7144         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7145         (struct header_file_location): Add constructor.
7146         (add_bincl_to_list): Remove.
7147
7148 2018-05-25  Tom Tromey  <tom@tromey.com>
7149
7150         * tui/tui.c (tui_enable): Update.
7151         * mi/mi-interp.c (mi_interp::init): Update.
7152         * interps.h (class interp) <name>: New method.
7153         <m_name>: Rename from name.
7154         (~scoped_restore_interp): Update.
7155         * interps.c (interp::interp): Update.
7156         (interp_add, interp_set, interp_lookup_existing)
7157         (current_interp_named_p): Update.
7158
7159 2018-05-25  Tom Tromey  <tom@tromey.com>
7160
7161         * interps.c (interp_name): Remove.
7162         * mi/mi-interp.c (mi_interp::init): Update.
7163         * interps.h (interp_name): Remove.
7164         (~scoped_restore_interp): Update.
7165         * tui/tui.c (tui_enable): Update.
7166
7167 2018-05-25  Tom Tromey  <tom@tromey.com>
7168
7169         * utils.c (fputs_maybe_filtered): Update.
7170         * linespec.c (decode_line_full): Update.
7171         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7172         (mi_print_breakpoint_for_event, mi_solib_loaded)
7173         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7174         (mi_user_selected_context_changed): Update.
7175         * mi/mi-main.c (mi_execute_command): Update.
7176         * cli/cli-script.c (execute_control_command): Update.
7177         * python/python.c (execute_gdb_command): Update.
7178         * solib.c (info_sharedlibrary_command): Update.
7179         * interps.c (interp_ui_out): Remove.
7180         * interps.h (interp_ui_out): Remove.
7181
7182 2018-05-25  Tom Tromey  <tom@tromey.com>
7183
7184         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7185         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7186         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7187
7188 2018-05-25  Tom Tromey  <tom@tromey.com>
7189
7190         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7191         * interps.c (interp_exec): Use scoped_restore.
7192
7193 2018-05-25  Tom Tromey  <tom@tromey.com>
7194
7195         * remote.c (remote_target::remote_file_get): Use
7196         gdb::byte_vector.
7197         (remote_target::remote_file_put): Likewise.
7198
7199 2018-05-25  Tom Tromey  <tom@tromey.com>
7200
7201         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7202         a std::string.
7203         (get_pe_section_index, add_pe_exported_sym): Update.
7204         (read_pe_exported_syms): Use gdb::def_vector.
7205
7206 2018-05-25  Tom Tromey  <tom@tromey.com>
7207
7208         * frame.c (remove_prev_frame): Remove.
7209         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7210
7211 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7212
7213         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7214         Remove prototypes.
7215         * mips-linux-nat.c (supply_fpregset): Always call
7216         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7217         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7218         `mips_fill_fpregset'.
7219         * mips-linux-tdep.c (mips_supply_fpregset)
7220         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7221         (mips_fill_fpregset_wrapper): Remove functions.
7222         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7223         (mips_linux_fpregset): Remove variable.
7224         (mips_linux_iterate_over_regset_sections): Use
7225         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7226         (mips_linux_o32_sigframe_init): Remove comment.
7227
7228 2018-05-25  Pedro Alves  <palves@redhat.com>
7229
7230         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7231         (struct readahead_cache, struct packet_reg, struct
7232         remote_arch_state, class remote_state): Move higher up in the
7233         file.
7234         (remote_target::m_remote_state): Now an object instead of a pointer.
7235         (remote_target::get_remote_state): Adjust.
7236
7237 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7238
7239         * stack.c (select_and_print_frame): Delete.
7240         (struct function_bounds): Move struct within function.
7241         (func_command): Most content moved into new function
7242         find_frame_for_function, use new function, print result, add
7243         function comment.
7244         (find_frame_for_function): New function, now returns a result.
7245
7246 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7247
7248         * stack.c (iterate_over_block_arg_vars): Fix comment.
7249         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7250
7251 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7252
7253         PR gdb/23203
7254         * frame.c
7255         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7256         Define.
7257         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7258         Define.
7259         * frame.h (class scoped_restore_selected_frame): New class.
7260         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7261         of any exception, use scoped_restore_selected_frame to restore the
7262         frame instead.
7263
7264 2018-05-24  Pedro Alves  <palves@redhat.com>
7265
7266         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7267         override.
7268
7269 2018-05-23  Tom Tromey  <tom@tromey.com>
7270
7271         * complaints.c (struct complaints): Remove.
7272         (symfile_complaint_book): Remove.
7273         (series): New global.
7274         (complaint_internal): Update.
7275         (clear_complaints): Update.
7276
7277 2018-05-23  Tom Tromey  <tom@tromey.com>
7278
7279         * complaints.c (counters): New global.
7280         (struct complain): Remove.
7281         (struct complaints) <root>: Remove.
7282         (complaint_sentinel): Remove.
7283         (symfile_complaint_book): Update.
7284         (find_complaint) Remove.
7285         (complaint_internal, clear_complaints): Update.
7286
7287 2018-05-23  Tom Tromey  <tom@tromey.com>
7288
7289         * complaints.c (struct complain) <file, line>: Remove.
7290         (find_complaint): Remove file, line parameters.
7291         (complaint_internal): Update.
7292
7293 2018-05-23  Tom Tromey  <tom@tromey.com>
7294
7295         * complaints.c (vcomplaint): Remove.
7296         (complaint_internal) Merge in contents of vcomplaint.
7297
7298 2018-05-23  Tom Tromey  <tom@tromey.com>
7299
7300         * complaints.c (struct complaints) <explanation>: Remove.
7301         (symfile_explanations): Remove.
7302         (symfile_complaint_book): Update.
7303         (vcomplaint): Update.
7304         (struct explanation): Remove.
7305
7306 2018-05-23  Tom Tromey  <tom@tromey.com>
7307
7308         * complaints.c (symfile_complaints): Remove.
7309         (complaint_internal): Remove "complaints" parameter.
7310         (clear_complaints, vcomplaint): Remove "c" parameter.
7311         (get_complaints): Remove.
7312         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7313         (dwarf2_debug_line_missing_file_complaint)
7314         (dwarf2_debug_line_missing_end_sequence_complaint)
7315         (dwarf2_complex_location_expr_complaint)
7316         (dwarf2_const_value_length_mismatch_complaint)
7317         (dwarf2_section_buffer_overflow_complaint)
7318         (dwarf2_macro_malformed_definition_complaint)
7319         (dwarf2_invalid_attrib_class_complaint)
7320         (create_addrmap_from_index, dw2_symtab_iter_next)
7321         (dw2_expand_marked_cus)
7322         (dw2_debug_names_iterator::find_vec_in_debug_names)
7323         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7324         (create_debug_type_hash_table, init_cutu_and_read_dies)
7325         (partial_die_parent_scope, add_partial_enumeration)
7326         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7327         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7328         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7329         (create_cus_hash_table, create_dwp_hash_table)
7330         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7331         (dwarf2_rnglists_process, dwarf2_ranges_process)
7332         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7333         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7334         (handle_struct_member_die, process_structure_scope)
7335         (read_array_type, read_common_block, read_module_type)
7336         (read_tag_pointer_type, read_typedef, read_base_type)
7337         (read_subrange_type, load_partial_dies, partial_die_info::read)
7338         (partial_die_info::read, partial_die_info::read)
7339         (partial_die_info::read, read_checked_initial_length_and_offset)
7340         (dwarf2_string_attr, read_formatted_entries)
7341         (dwarf_decode_line_header)
7342         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7343         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7344         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7345         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7346         (get_signatured_type, get_DW_AT_signature_type)
7347         (decode_locdesc, file_file_name, consume_improper_spaces)
7348         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7349         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7350         (dwarf2_symbol_mark_computed, set_die_type)
7351         (read_attribute_value): Update.
7352         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7353         Update.
7354         * dbxread.c (unknown_symtype_complaint)
7355         (lbrac_mismatch_complaint, repeated_header_complaint)
7356         (set_namestring, function_outside_compilation_unit_complaint)
7357         (read_dbx_symtab, process_one_symbol): Update.
7358         * gdbtypes.c (stub_noname_complaint): Update.
7359         * windows-nat.c (handle_unload_dll): Update.
7360         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7361         (decode_base_type): Update.
7362         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7363         (eb_complaint, record_include_begin, record_include_end)
7364         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7365         (process_xcoff_symbol, read_symbol)
7366         (function_outside_compilation_unit_complaint)
7367         (scan_xcoff_symtab): Update.
7368         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7369         * buildsym.c (finish_block_internal, make_blockvector)
7370         (end_symtab_get_static_block, augment_type_symtab): Update.
7371         * dtrace-probe.c (dtrace_process_dof)
7372         (dtrace_static_probe_ops::get_probes): Update.
7373         * complaints.h (struct complaint): Don't declare.
7374         (symfile_complaints): Remove.
7375         (complaint_internal): Remove "complaints" parameter.
7376         (complaint): Likewise.
7377         (clear_complaints): Likewise.
7378         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7379         (reread_symbols): Update.
7380         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7381         (dwarf2_frame_cache, decode_frame_entry): Update.
7382         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7383         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7384         (info_selectors_command): Update.
7385         * macrotab.c (macro_include, check_for_redefinition)
7386         (macro_undef): Update.
7387         * objfiles.c (filter_overlapping_sections): Update.
7388         * stabsread.c (invalid_cpp_abbrev_complaint)
7389         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7390         (define_symbol, error_type, read_type, rs6000_builtin_type)
7391         (stabs_method_name_from_physname, read_member_functions)
7392         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7393         (attach_fields_to_type, complain_about_struct_wipeout)
7394         (read_range_type, read_args, common_block_start)
7395         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7396         Update.
7397         * mdebugread.c (index_complaint, unknown_ext_complaint)
7398         (basic_type_complaint, bad_tag_guess_complaint)
7399         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7400         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7401         (parse_procedure, parse_lines)
7402         (function_outside_compilation_unit_complaint)
7403         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7404         (bad_tag_guess_complaint, reg_value_complaint): Update.
7405         * cp-support.c (demangled_name_complaint): Update.
7406         * macroscope.c (sal_macro_scope): Update.
7407         * dwarf-index-write.c (class debug_names): Update.
7408
7409 2018-05-23  Tom Tromey  <tom@tromey.com>
7410
7411         * complaints.c (clear_complaints): Remove "noisy" parameter.
7412         * complaints.h (clear_complaints): Update.
7413         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7414         (reread_symbols): Update.
7415
7416 2018-05-23  Tom Tromey  <tom@tromey.com>
7417
7418         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7419         SUBSEQUENT_MESSAGE.
7420         (vcomplaint, clear_complaints): Update.
7421         (symfile_explanations): Remove some messages.
7422
7423 2018-05-23  Tom Tromey  <tom@tromey.com>
7424
7425         * complaints.c (internal_complaint): Remove.
7426         * complaints.h (internal_complaint): Remove.
7427
7428 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7429
7430         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7431
7432 2018-05-22  Pedro Alves  <palves@redhat.com>
7433
7434         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7435         (remote_fileio_badfd, remote_fileio_return_errno)
7436         (remote_fileio_return_success, remote_fileio_func_open)
7437         (remote_fileio_func_open, remote_fileio_func_close)
7438         (remote_fileio_func_read, remote_fileio_func_write)
7439         (remote_fileio_func_lseek, remote_fileio_func_rename)
7440         (remote_fileio_func_unlink, remote_fileio_func_stat)
7441         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7442         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7443         remote_target parameter.
7444         (remote_fio_func_map) <func>: Add remote_target parameter.
7445         (do_remote_fileio_request, remote_fileio_request):
7446         * remote-fileio.h (remote_fileio_request):
7447         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7448         remote_target parameter.
7449         (remote_notif_process, handle_notification): Adjust to pass down
7450         the remote.
7451         (remote_notif_state_allocate): Add remote_target parameter.  Save
7452         it.
7453         * remote-notif.h (struct remote_target): Forward declare.
7454         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7455         remote_target parameter.
7456         (struct remote_notif_state) <remote>: New field.
7457         (remote_notif_ack, remote_notif_parse): Add remote_target
7458         parameter.
7459         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7460         remote_target parameter.
7461         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7462         (threads_listing_context, rmt_thread_action, protocol_feature)
7463         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7464         (packet_result, struct threads_listing_context, remote_state):
7465         Move definitions and declarations higher up.
7466         (remote_target) <~remote_target>: Declare.
7467         (remote_download_command_source, remote_file_put, remote_file_get)
7468         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7469         (remote_hostio_pread_vFile, remote_hostio_send_command)
7470         (remote_hostio_set_filesystem, remote_hostio_open)
7471         (remote_hostio_close, remote_hostio_unlink, remote_state)
7472         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7473         (get_memory_write_packet_size, get_memory_read_packet_size)
7474         (append_pending_thread_resumptions, remote_detach_1)
7475         (append_resumption, remote_resume_with_vcont)
7476         (add_current_inferior_and_thread, wait_ns, wait_as)
7477         (process_stop_reply, remote_notice_new_inferior)
7478         (process_initial_stop_replies, remote_add_thread)
7479         (btrace_sync_conf, remote_btrace_maybe_reopen)
7480         (remove_new_fork_children, kill_new_fork_children)
7481         (discard_pending_stop_replies, stop_reply_queue_length)
7482         (check_pending_events_prevent_wildcard_vcont)
7483         (discard_pending_stop_replies_in_queue, stop_reply)
7484         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
7485         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
7486         (remote_interrupt_as, remote_interrupt_ns)
7487         (remote_get_noisy_reply, remote_query_attached)
7488         (remote_add_inferior, remote_current_thread, get_current_thread)
7489         (set_thread, set_general_thread, set_continue_thread)
7490         (set_general_process, write_ptid)
7491         (remote_unpack_thread_info_response, remote_get_threadinfo)
7492         (parse_threadlist_response, remote_get_threadlist)
7493         (remote_threadlist_iterator, remote_get_threads_with_ql)
7494         (remote_get_threads_with_qxfer)
7495         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
7496         (get_offsets, remote_check_symbols, remote_supported_packet)
7497         (remote_query_supported, remote_packet_size)
7498         (remote_serial_quit_handler, remote_detach_pid)
7499         (remote_vcont_probe, remote_resume_with_hc)
7500         (send_interrupt_sequence, interrupt_query)
7501         (remote_notif_get_pending_events, fetch_register_using_p)
7502         (send_g_packet, process_g_packet, fetch_registers_using_g)
7503         (store_register_using_P, store_registers_using_G)
7504         (set_remote_traceframe, check_binary_download)
7505         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
7506         (remote_xfer_live_readonly_partial, remote_read_bytes)
7507         (remote_send_printf, remote_flash_write, readchar)
7508         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
7509         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
7510         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
7511         (extended_remote_disable_randomization, extended_remote_run)
7512         (send_environment_packet, extended_remote_environment_support)
7513         (extended_remote_set_inferior_cwd, remote_write_qxfer)
7514         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
7515         (packet_command): Now methods of ...
7516         (remote_target): ... this class.
7517         (m_remote_state) <remote_target>: New field.
7518         (struct remote_state) <stop_reply_queue,
7519         remote_async_inferior_event_token, wait_forever_enabled_p>: New
7520         fields.
7521         (remote_state::remote_state): Allocate stop_reply_queue.
7522         (remote_state): Delete global.
7523         (get_remote_state_raw): Delete.
7524         (remote_target::get_remote_state): Allocate m_remote_state on
7525         demand.
7526         (get_current_remote_target): New.
7527         (remote_ops, extended_remote_ops): Delete.
7528         (wait_forever_enabled_p, remote_async_inferior_event_token):
7529         Delete, moved to struct remote_state.
7530         (remote_target::close): Delete self.  Destruction bits split to
7531         ...
7532         (remote_target::~remote_target): ... this.
7533         (show_memory_packet_size): Adjust to use
7534         get_current_remote_target.
7535         (struct protocol_feature) <func>: Add remote_target parameter.
7536         All callers adjusted.
7537         (curr_quit_handler_target): New.
7538         (remote_serial_quit_handler): Reimplement.
7539         (remote_target::open_1): Adjust to use get_current_remote_target.
7540         Heap-allocate remote_target/extended_remote_target instances.
7541         (vcont_builder::vcont_builder): Add remote_target parameter, and
7542         save it in m_remote.  All callers adjusted.
7543         (vcont_builder::m_remote): New field.
7544         (vcont_builder::restart, vcont_builder::flush)
7545         (vcont_builder::push_action): Use it.
7546         (remote_target::commit_resume): Use it.
7547         (struct queue_iter_param) <remote>: New field.
7548         (remote_target::remove_new_fork_children): Fill in 'remote' field.
7549         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
7550         (check_pending_event_prevents_wildcard_vcont_callback)
7551         (remote_target::check_pending_events_prevent_wildcard_vcont)
7552         (remote_target::discard_pending_stop_replies)
7553         (remote_target::discard_pending_stop_replies_in_queue)
7554         (remote_target::remote_notif_remove_queued_reply): Fill in
7555         'remote' field.
7556         (remote_notif_get_pending_events): New.
7557         (remote_target::readchar, remote_target::remote_serial_write):
7558         Save/restore curr_quit_handler_target.
7559         (putpkt): New.
7560         (kill_new_fork_children): Fill in 'remote' field.
7561         (packet_command): Use get_current_remote_target, defer to
7562         remote_target method of same name.
7563         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
7564         parameter, and save it in m_remote.  All callers adjusted.
7565         (scoped_remote_fd::release): Use m_remote.
7566         (scoped_remote_fd::m_remote): New field.
7567         (remote_file_put, remote_file_get, remote_file_delete): Use
7568         get_current_remote_target, defer to remote_target method of same
7569         name.
7570         (remote_btrace_reset): Add remote_state paremeter.  Update all
7571         callers.
7572         (remote_async_inferior_event_handler). Pass down 'data'.
7573         (remote_new_objfile): Use get_current_remote_target.
7574         (remote_target::vcont_r_supported): New.
7575         (set_range_stepping): Use get_current_remote_target and
7576         remote_target::vcont_r_supported.
7577         (_initialize_remote): Don't allocate 'remote_state' and
7578         'stop_reply_queue' globals.
7579         * remote.h (struct remote_target): Forward declare.
7580         (getpkt, putpkt, remote_notif_get_pending_events): Add
7581         'remote_target' parameter.
7582
7583 2018-05-22  Pedro Alves  <palves@redhat.com>
7584
7585         * remote.c (vcont_builder): Now a class.  Make all data members
7586         private.
7587         (vcont_builder) <vcont_builder, restart, flush, push_action>:
7588         Declare methods.
7589         (vcont_builder_restart): Rename to ...
7590         (vcont_builder::restart): ... this.
7591         (vcont_builder_flush): Rename to ...
7592         (vcont_builder::flush): ... this.
7593         (vcont_builder_push_action): Rename to ...
7594         (vcont_builder::push_action): ... this.
7595         (remote_target::commit_resume): Adjust.
7596
7597 2018-05-22  Pedro Alves  <palves@redhat.com>
7598
7599         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
7600         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
7601         (get_fixed_memory_packet_size): New.
7602         (get_memory_packet_size): Use it.
7603         (set_memory_packet_size): Don't override the config size with
7604         DEFAULT_MAX_MEMORY_PACKET_SIZE.
7605         (show_memory_packet_size): Use get_fixed_memory_packet_size.
7606         Don't refer to get_memory_packet_size if not connected to a remote
7607         target.  Show "(default)" if configured size is 0.
7608
7609 2018-05-22  Pedro Alves  <palves@redhat.com>
7610
7611         * remote.c (remote_target::mourn_inferior): Move
7612         discard_pending_stop_replies call here from ...
7613         (_initialize_remote): ... here.
7614
7615 2018-05-22  Pedro Alves  <palves@redhat.com>
7616
7617         * remote.c (compare_section_command): Remove set_general_process
7618         call.
7619
7620 2018-05-22  Pedro Alves  <palves@redhat.com>
7621
7622         * remote.c (struct packet_reg, struct remote_arch_state):
7623         Move higher up in the file.
7624         (remote_state) <m_arch_states>: Store remote_arch_state values
7625         instead of remote_arch_state pointers.
7626         (remote_state::get_remote_arch_state): Adjust.
7627
7628 2018-05-22  Pedro Alves  <palves@redhat.com>
7629
7630         * remote.c: Include <unordered_map>.
7631         (remote_state): Now a class.
7632         (remote_state) <get_remote_arch_state>: Declare method.
7633         <get_remote_arch_state>: New field.
7634         (remote_arch_state) <remote_arch_state>: Declare ctor.
7635         <regs>: Now a unique_ptr.
7636         (remote_gdbarch_data_handle): Delete.
7637         (get_remote_arch_state): Delete.
7638         (remote_state::get_remote_arch_state): New.
7639         (get_remote_state): Adjust to call remote_state's
7640         get_remote_arch_state method.
7641         (init_remote_state): Delete, bits factored out to ...
7642         (remote_arch_state::remote_arch_state): ... this new method.
7643         (get_remote_packet_size, get_memory_packet_size)
7644         (process_g_packet, remote_target::fetch_registers)
7645         (remote_target::prepare_to_store, store_registers_using_G)
7646         (remote_target::store_registers, remote_target::get_trace_status):
7647         Adjust to call remote_state's method.
7648         (_initialize_remote): Remove reference to
7649         remote_gdbarch_data_handle.
7650
7651 2018-05-22  Pedro Alves  <palves@redhat.com>
7652
7653         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
7654         pread>: New method declarations.
7655         (remote_target::open_1): Adjust.
7656         (readahead_cache_invalidate): Rename to ...
7657         (readahead_cache::invalidate): ... this, and adjust to be a class
7658         method.
7659         (readahead_cache_invalidate_fd): Rename to ...
7660         (readahead_cache::invalidate_fd): ... this, and adjust to be a
7661         class method.
7662         (remote_hostio_pwrite): Adjust.
7663         (remote_hostio_pread_from_cache): Rename to ...
7664         (readahead_cache::pread): ... this, and adjust to be a class
7665         method.
7666         (remote_hostio_close): Adjust.
7667
7668 2018-05-22  Pedro Alves  <palves@redhat.com>
7669
7670         * remote.c (remote_hostio_close_cleanup): Delete.
7671         (class scoped_remote_fd): New.
7672         (remote_file_put, remote_file_get): Use it.
7673
7674 2018-05-22  Pedro Alves  <palves@redhat.com>
7675
7676         (struct vCont_action_support): Use bool and initialize all fields.
7677         (struct readahead_cache): Initialize all fields.
7678         (remote_state): Use bool and initialize all fields.
7679         (remote_state::remote_state, remote_state::~remote_state): New.
7680         (new_remote_state): Delete.
7681         (_initialize_remote): Use new to allocate remote_state.
7682
7683 2018-05-22  Pedro Alves  <palves@redhat.com>
7684             張俊芝  <zjz@zjz.name>
7685
7686         PR gdb/22973
7687         * c-exp.y: Include "c-support.h".
7688         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
7689         of tolower.  Use c_ident_is_alpha to scan names.
7690         * c-lang.c: Include "c-support.h".
7691         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
7692         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
7693         * c-support.h: New file, with bits factored out from ...
7694         * cp-name-parser.y: ... this file.
7695         Include "c-support.h".
7696         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
7697         c-support.h and renamed.
7698         (symbol_end, yylex): Adjust.
7699
7700 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7701
7702         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
7703         parameter type to CORE_ADDR.
7704         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
7705         parameter type in declaration to CORE_ADDR.
7706         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
7707         target_auxv_search to get AT_HWCAP and use the result to get the
7708         target description.
7709         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
7710         to CORE_ADDR. Remove the cast of the return value to unsigned
7711         long. Fix error predicate of target_auxv_search.
7712         (ppc_linux_nat_target::read_description): Change the type of the
7713         hwcap variable to CORE_ADDR.
7714
7715 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7716
7717         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
7718         if the size of fpscr is larger than 32 bits.
7719
7720 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7721
7722         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
7723         (ppc32_linux_vsxregmap): New global.
7724         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
7725         regcache_supply_regset, and regcache_collect_regset.
7726         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
7727         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
7728         (fetch_vsx_register, store_vsx_register): Remove.
7729         (fetch_vsx_registers): Add regno parameter. Get regset using
7730         ppc_linux_vsxregset. Use regset to supply registers.
7731         (store_vsx_registers): Add regno parameter. Get regset using
7732         ppc_linux_vsxregset. Use regset to collect registers.
7733         (fetch_register): Call fetch_vsx_registers instead of
7734         fetch_vsx_register.
7735         (store_register): Call store_vsx_registers instead of
7736         store_vsx_register.
7737         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
7738         new regno parameter.
7739         (store_ppc_registers): Call store_vsx_registers with -1 for the
7740         new regno parameter.
7741         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
7742         (ppc_collect_vsxregset): Remove.
7743
7744 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7745
7746         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
7747         offset fields.
7748         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
7749         for vector register offset fields.
7750         (ppc64_fbsd_reg_offsets): Likewise.
7751         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7752         to vector register offset fields.
7753         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7754         to vector register offset fields.
7755         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
7756         vector register offset fields.
7757         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
7758         initializers for vector register offset fields.
7759         (rs6000_aix64_reg_offsets): Likewise.
7760         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
7761         (ppc_supply_vrregset): Remove.
7762         (ppc_collect_vrregset): Remove.
7763         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
7764         (ppc_linux_vrregset) : New function.
7765         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
7766         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
7767         (ppc32_linux_vrregset): Remove.
7768         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
7769         and use result instead of ppc32_linux_vrregset.
7770         (ppc32_linux_reg_offsets): Remove initializers for vector register
7771         offset fields.
7772         (ppc64_linux_reg_offsets): Likewise.
7773         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
7774         * ppc-linux-nat.c: Include regset.h.
7775         (gdb_vrregset_t): Adjust comment to account for little-endian
7776         mode.
7777         (supply_vrregset, fill_vrregset): Remove.
7778         (fetch_altivec_register, store_altivec_register): Remove.
7779         (fetch_altivec_registers): Add regno parameter. Get regset using
7780         ppc_linux_vrregset. Use regset to supply registers.
7781         (store_altivec_registers): Add regno parameter. Get regset using
7782         ppc_linux_vrregset. Use regset to collect registers.
7783         (fetch_register): Call fetch_altivec_registers instead of
7784         fetch_altivec_register.
7785         (store_register): Call store_altivec_registers instead of
7786         store_altivec_register.
7787         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
7788         the new regno parameter.
7789         (store_ppc_registers): Call store_altivec_registers with -1 for
7790         the new regno parameter.
7791
7792 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7793
7794         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
7795         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
7796         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
7797         (gdb_vrregset_t): Change array type size to
7798         PPC_LINUX_SIZEOF_VRREGSET.
7799         (gdb_vsxregset_t): Change array type size to
7800         PPC_LINUX_SIZEOF_VSXREGSET.
7801         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
7802         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
7803         PPC_LINUX_SIZEOF_VSXREGSET.
7804
7805 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7806
7807         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
7808         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
7809         nat/ppc-linux.c.
7810         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
7811         ppc_linux_target_wordsize with tid.
7812         (ppc_linux_nat_target::read_description): Call ppc_linux_target
7813         wordsize with tid.
7814         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
7815         (ppc64_64bit_inferior_p): Add static and inline specifiers.
7816         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
7817         tid parameter. Remove static specifier.
7818         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
7819         (ppc_linux_target_wordsize): New declaration.
7820
7821 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7822
7823         * arch/ppc-linux-common.c: New file.
7824         * arch/ppc-linux-common.h: New file.
7825         * arch/ppc-linux-tdesc.h: New file.
7826         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
7827         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
7828         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
7829         arch/ppc-linux-tdesc.h.
7830         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
7831         arch/ppc-linux-tdesc.h.
7832         (ppc_linux_nat_target::read_description): Remove target
7833         description matching code. Fill a ppc_linux_features struct and
7834         call ppc_linux_match_description with it. Move comment about ISA
7835         2.05 to ppc-linux-common.c.
7836         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
7837         arch/ppc-linux-tdesc.h.
7838         (ppc_linux_core_read_description): Remove target description
7839         matching code. Fill a ppc_linux_features struct and call
7840         ppc_linux_match_description with it.
7841         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
7842         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
7843         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
7844         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
7845         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
7846         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
7847         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
7848         (tdesc_powerpc_e500l): Remove.
7849
7850 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
7851
7852         * ada-lang.c (catch_assert_command): Pass empty string instead
7853         of NULL for excep_string argument.
7854
7855 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7856
7857         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
7858         the width of the requested register exceeds the width of the
7859         `ptrace' data type.
7860
7861 2018-05-21  Tom Tromey  <tom@tromey.com>
7862
7863         * printcmd.c (output_command): Remove.
7864         (output_command_const): Rename to output_command.
7865         * valprint.h (output_command): Rename from output_command_const.
7866         * tracepoint.c (trace_dump_actions): Call output_command.
7867
7868 2018-05-21  Tom Tromey  <tom@tromey.com>
7869
7870         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
7871         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
7872         * ada-lang.h (create_ada_exception_catchpoint): Update.
7873         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
7874         std::string.
7875         (create_excep_cond_exprs, ~ada_catchpoint)
7876         (should_stop_exception, print_one_exception)
7877         (print_mention_exception, print_recreate_exception): Update.
7878         (ada_get_next_arg): Remove.
7879         (catch_ada_exception_command_split): Use std::string.  Change type
7880         of "excep_string", "cond_string".
7881         (catch_ada_exception_command): Update.
7882         (create_ada_exception_catchpoint): Change type of excep_string.
7883         (ada_exception_sal): Remove excep_string parameter.
7884         (~ada_catchpoint): Remove.
7885
7886 2018-05-21  Tom Tromey  <tom@tromey.com>
7887
7888         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
7889         cleanup.
7890
7891 2018-05-21  Tom Tromey  <tom@tromey.com>
7892
7893         * ada-lang.c (ada_exception_message_1, ada_exception_message):
7894         Return unique_xmalloc_ptr.
7895         (print_it_exception): Update.
7896
7897 2018-05-21  Tom Tromey  <tom@tromey.com>
7898
7899         * tracepoint.c (trace_dump_actions): Use std::string.
7900
7901 2018-05-21  Tom Tromey  <tom@tromey.com>
7902
7903         * symfile.c (reread_symbols): Use std::string for original_name.
7904
7905 2018-05-21  Tom Tromey  <tom@tromey.com>
7906
7907         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
7908         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
7909         constructor.
7910
7911 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
7912
7913         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
7914         instance to...
7915         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
7916         * objfiles.c (get_objfile_bfd_data): Allocate
7917         objfile_per_bfd_storage with obstack_new when allocating on
7918         obstack.
7919
7920 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7921
7922         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
7923         OBSTACK_ZALLOC.
7924         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
7925         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
7926         * mdebugread.c (mdebug_build_psymtabs): Likewise.
7927         (add_pending): Likewise.
7928         (parse_symbol): Likewise.
7929         (parse_partial_symbols): Likewise.
7930         (psymtab_to_symtab_1): Likewise.
7931         (new_psymtab): Likewise.
7932         (elfmdebug_build_psymtabs): Likewise.
7933         * minsyms.c (terminate_minimal_symbol_table): Likewise.
7934         * objfiles.c (get_objfile_bfd_data): Likewise.
7935         (objfile_register_static_link): Likewise.
7936         * psymtab.c (allocate_psymtab): Likewise.
7937         * stabsread.c (read_member_functions): Likewise.
7938         * xcoffread.c (xcoff_end_psymtab): Likewise.
7939
7940 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7941
7942         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
7943         compiler supports std::is_trivially_constructible.
7944         * common/poison.h: Include obstack.h.
7945         (IsMallocable): Define to is_trivially_constructible if the
7946         compiler supports it, define to true_type otherwise.
7947         (xobnew): New.
7948         (XOBNEW): Redefine.
7949         (xobnewvec): New.
7950         (XOBNEWVEC): Redefine.
7951         * gdb_obstack.h (obstack_zalloc): New.
7952         (OBSTACK_ZALLOC): Redefine.
7953         (obstack_calloc): New.
7954         (OBSTACK_CALLOC): Redefine.
7955         (obstack_new): New.
7956         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
7957         (gdbarch_obstack): New declaration in gdbarch.h, definition in
7958         gdbarch.c.
7959         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
7960         obstack_calloc/obstack_zalloc.
7961         (gdbarch_obstack_zalloc): Remove.
7962         * target-descriptions.c (tdesc_data_init): Use obstack_new.
7963
7964 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7965
7966         * stack.c (backtrace_command_1): Remove useless variable int i.
7967
7968 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7969
7970         * stack.c (print_frame_info): Fix comment.
7971
7972 2018-05-18  Tom Tromey  <tom@tromey.com>
7973
7974         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
7975         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
7976         (~dwarf2_per_objfile): Update
7977         (dwarf2_get_dwz_file): Use new.
7978         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
7979         unique_ptr.
7980
7981 2018-05-18  Tom Tromey  <tom@tromey.com>
7982
7983         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
7984         unique_ptr.
7985         * dwarf2read.c (struct dwp_file): Add constructor and
7986         initializers.
7987         (open_and_init_dwp_file): Return a unique_ptr.
7988         (dwarf2_per_objfile, create_dwp_hash_table)
7989         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
7990         (lookup_dwo_unit_in_dwp): Update.
7991         (open_and_init_dwp_file, get_dwp_file): Update.
7992
7993 2018-05-18  Tom Tromey  <tom@tromey.com>
7994
7995         * dwarf2read.c (dwarf2_per_objfile): Update.
7996         (struct mapped_index): Add initializers.
7997         (dwarf2_read_index): Use new.
7998         (dw2_symtab_iter_init): Update.
7999         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8000         unique_ptr.
8001
8002 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8003
8004         * dwarf2read.c (mapped_index) <total_size>: Remove.
8005
8006 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8007
8008         * unittests/format_pieces-selftests.c (test_format_specifier):
8009         Add ARI comments.
8010
8011 2018-05-18  Tom Tromey  <tom@tromey.com>
8012
8013         * c-typeprint.c (maybe_print_hole): New function.
8014         (c_print_type_struct_field_offset): Update.
8015         (c_type_print_base_struct_union): Call maybe_print_hole.
8016
8017 2018-05-17  Keith Seitz  <keiths@redhat.com>
8018
8019         * breakpoint.c (build_bpstat_chain): New function, moved from
8020         bpstat_stop_status.
8021         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8022         If no stop chain is passed, call build_bpstat_chain to build it.
8023         * breakpoint.h (build_bpstat_chain): Declare.
8024         (bpstat_stop_status): Move documentation here from breakpoint.c.
8025         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8026         build the stop chain and pass it to skip_inline_frames.
8027         Pass this stop chain to bpstat_stop_status.
8028         * inline-frame.c: Include breakpoint.h.
8029         (stopped_by_user_bp_inline_frame): New function.
8030         (skip_inline_frames): Add parameter `stop_chain'.
8031         Move documention to inline-frame.h.
8032         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8033         whether the frame should be elided.
8034         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8035         Add moved documentation and update for new parameter.
8036
8037 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8038
8039         PR cli/14975
8040         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8041         unittests/format_pieces-selftests.c.
8042         * common/format.h (format_piece) <operator==>: New.
8043         (format_pieces) <operator[]>: Remove.
8044         * common/format.c (format_pieces::format_pieces): Handle \e.
8045         * unittests/format_pieces-selftests.c: New.
8046
8047 2018-05-17  Tom Tromey  <tom@tromey.com>
8048
8049         PR symtab/23010:
8050         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8051         (dw2_instantiate_symtab): Add skip_partial parameter.
8052         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8053         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8054         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8055         (dw2_expand_symtabs_matching_one)
8056         (dw2_find_pc_sect_compunit_symtab)
8057         (dw2_debug_names_lookup_symbol)
8058         (dw2_debug_names_expand_symtabs_for_function): Update.
8059         (init_cutu_and_read_dies): Add skip_partial parameter.
8060         (process_psymtab_comp_unit, build_type_psymtabs_1)
8061         (process_skeletonless_type_unit, load_partial_comp_unit)
8062         (psymtab_to_symtab_1): Update.
8063         (load_full_comp_unit): Add skip_partial parameter.
8064         (process_imported_unit_die, dwarf2_read_addr_index)
8065         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8066         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8067         (read_signatured_type): Update.
8068
8069 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8070
8071         * value.c (release_value): Remove unused variable.
8072         (record_latest_value): Likewise.
8073         (access_value_history): Likewise.
8074         (preserve_values): Likewise.
8075
8076 2018-05-17  Tom Tromey  <tom@tromey.com>
8077
8078         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8079         Initialize.
8080
8081 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8082
8083         PR gdb/22286
8084         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8085         Also handle registers whose width is not a multiple of
8086         PTRACE_TYPE_RET.
8087         (linux_nat_trad_target::store_register): Likewise.
8088
8089 2018-05-16  Tom Tromey  <tom@tromey.com>
8090
8091         * gdbcore.h (core_bfd): Redefine.
8092         * corelow.c (core_target::close): Update.
8093         (core_target_open): Update.
8094         * progspace.h (struct program_space) <cbfd>: Now a
8095         gdb_bfd_ref_ptr.
8096
8097 2018-05-16  Tom Tromey  <tom@tromey.com>
8098
8099         PR cli/19551:
8100         * symfile-add-flags.h (enum symfile_add_flags)
8101         <SYMFILE_NOT_FILENAME>: New constant.
8102         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8103         objfile name from BFD.
8104         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8105         * minidebug.c (find_separate_debug_file_in_section): Put
8106         ".gnu_debugdata" into BFD's file name.
8107
8108 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8109
8110         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8111         Remove.
8112
8113 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8114
8115         PR binutils/21446
8116         * aarch64-tdep.c (aarch64_analyze_prologue,
8117         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8118         Indicate not interested in errors.
8119
8120 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8121
8122         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8123         Supply the MIPS_ZERO_REGNUM register.
8124
8125 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8126
8127         * mips-tdep.c (mask_address_var): Make variable static.
8128
8129 2018-05-14  Tom Tromey  <tom@tromey.com>
8130
8131         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8132
8133 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8134
8135         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8136         FXSAVE_ADDR for the mxcsr register.
8137
8138 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8139
8140         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8141
8142 2018-05-11  Pedro Alves  <palves@redhat.com>
8143
8144         * corelow.c (core_target) <core_target>: No longer inline.
8145         Initialize m_core_gdbarch, m_core_vec and build the section table
8146         here.
8147         <~core_target>: New.
8148         <core_gdbarch, get_core_register_section>: New methods.
8149         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8150         factored out from ...
8151         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8152         (core_ops): Delete.
8153         (sniff_core_bfd): Add gdbarch parameter.
8154         (core_close): Delete, merged into ...
8155         (core_target::close): ... here.  Delete self.
8156         (core_close_cleanup): Delete.
8157         (core_target_open): Allocate a core_target on the heap.  Use a
8158         unique_ptr instead of a cleanup.  Bits moved into the core_target
8159         ctor.  Adjust to use core_target methods instead of globals.
8160         (get_core_register_section): Rename to ...
8161         (core_target::get_core_register_section): ... this and adjust.
8162         (struct get_core_registers_cb_data): New.
8163         (get_core_registers_cb): Use it.  Use bool.
8164         (core_target::fetch_registers, core_target::files_info)
8165         (core_target::xfer_partial, core_target::read_description)
8166         (core_target::pid_to, core_target::thread_name): Adjust to
8167         reference class fields instead of globals.
8168         * target.h (struct target_ops_deleter, target_ops_up): New.
8169
8170 2018-05-11  Pedro Alves  <palves@redhat.com>
8171
8172         * corefile.c (core_file_command): Move to corelow.c.
8173         * corelow.c (the_core_target): Delete.
8174         (core_file_command): Moved from corefile.c.  Check exec_bfd
8175         instead of the_core_target.  Use target_detach instead of calling
8176         into the_core_target directly.
8177         (maybe_say_no_core_file_now): New.
8178         (core_target::detach): Use it.
8179         (_initialize_corelow): Remove references to the_core_target.
8180         * gdbcore.h (the_core_target): Delete.
8181
8182 2018-05-11  Tom Tromey  <tromey@redhat.com>
8183             Pedro Alves  <palves@redhat.com>
8184
8185         * corefile.c (core_bfd): Remove.
8186         * gdbcore.h (core_bfd): Now a macro.
8187         * progspace.h (struct program_space) <cbfd>: New field.
8188
8189 2018-05-11  Tom Tromey  <tom@tromey.com>
8190
8191         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8192         gdb::def_vector.
8193
8194 2018-05-10  Tom Tromey  <tom@tromey.com>
8195
8196         * configure: Rebuild.
8197         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8198
8199 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8200
8201         PR server/23158:
8202         * regformats/regdat.sh: Adjust script, following the addition
8203         of the new expedite_regs parameter to init_target_desc.
8204
8205 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8206     
8207         PR gdb/23127
8208         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8209         set_gdbarch_significant_addr_bit.
8210         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8211         set_gdbarch_significant_addr_bit.
8212         * utils.c (address_significant): Update to sign extend addr.
8213
8214 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8215
8216         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8217         (xtensa_linux_init_abi): Limit tdep->num_regs by
8218         tdep->num_nopriv_regs.
8219         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8220         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8221         not initialized.
8222
8223 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8224
8225         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8226
8227 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8228
8229         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8230         (I387_MXCSR_INIT_VAL): New constant.
8231         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8232         buffer if it was supplied by the inferior.
8233         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8234         (i387_xsave_get_clear_bv): New function.
8235         (i387_supply_xsave): Only read x87 control registers from the
8236         xsave buffer if the feature is enabled, and the state will have
8237         been written, otherwise, provide a suitable default.
8238         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8239         including x87 control registers.  Update control registers if they
8240         have changed from the default value, and mark features as enabled
8241         as required.
8242         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8243
8244 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8245
8246         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8247
8248 2018-05-07  Tom Tromey  <tom@tromey.com>
8249
8250         * configure: Rebuild.
8251         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8252
8253 2018-05-07  Tom Tromey  <tom@tromey.com>
8254
8255         PR tdep/20362:
8256         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8257         bit.  Use correct value for VDIV.
8258
8259 2018-05-04  Tom Tromey  <tom@tromey.com>
8260
8261         * configure: Rebuild.
8262         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8263
8264 2018-05-04  Tom Tromey  <tom@tromey.com>
8265
8266         * linux-record.c (record_linux_system_call) <case
8267         RECORD_SYS_RECVFROM>: Add "break".
8268
8269 2018-05-04  Tom Tromey  <tom@tromey.com>
8270
8271         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8272         Add missing "break".
8273         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8274         Add missing "break".
8275
8276 2018-05-04  Tom Tromey  <tom@tromey.com>
8277
8278         * rs6000-tdep.c (ppc_process_record_op4)
8279         (ppc_process_record_op63): Add fall-through comment.
8280
8281 2018-05-04  Tom Tromey  <tom@tromey.com>
8282
8283         * i386-tdep.c (i386_process_record): Add fall-through comment.
8284
8285 2018-05-04  Tom Tromey  <tom@tromey.com>
8286
8287         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8288         comment.
8289
8290 2018-05-04  Tom Tromey  <tom@tromey.com>
8291
8292         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8293         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8294         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8295         comment.
8296         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8297         comment.
8298         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8299         comment.
8300
8301 2018-05-04  Tom Tromey  <tom@tromey.com>
8302
8303         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8304
8305 2018-05-04  Tom Tromey  <tom@tromey.com>
8306
8307         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8308         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8309         * symfile.c (section_is_mapped): Fix fall-through comment.
8310         * stabsread.c (define_symbol, read_member_functions): Fix
8311         fall-through comment.
8312         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8313         comment.
8314         * remote.c (remote_wait_as): Fix fall-through comment.
8315         * p-exp.y (yylex): Fix fall-through comment.
8316         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8317         comment.
8318         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8319         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8320         * jv-exp.y (yylex): Fix fall-through comment.
8321         * go-exp.y (lex_one_token): Fix fall-through comment.
8322         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8323         fall-through comment.
8324         * f-exp.y (yylex): Fix fall-through comment.
8325         * dwarf2read.c (process_die): Fix fall-through comments.
8326         * dbxread.c (process_one_symbol): Fix fall-through comment.
8327         * d-exp.y (lex_one_token): Fix fall-through comment.
8328         * cp-name-parser.y (yylex): Fix fall-through comment.
8329         * coffread.c (coff_symtab_read): Fix fall-through comment.
8330         * c-exp.y (lex_one_token): Fix fall-through comment.
8331         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8332         comment.
8333         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8334         comment.
8335
8336 2018-05-04  Tom Tromey  <tom@tromey.com>
8337
8338         PR python/22730:
8339         * NEWS: Mention gdb.execute change.
8340         * gdbcmd.h (execute_control_command): Don't declare.
8341         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8342         execute_control_commands, execute_control_commands_to_string.
8343         * cli/cli-script.h (execute_control_commands)
8344         (execute_control_commands_to_string): Declare.
8345         (execute_control_command): Add from_tty parameter.
8346         * cli/cli-script.c (execute_control_commands)
8347         (execute_control_commands_to_string): New functions.
8348         (execute_user_command): Use execute_control_commands.
8349         (execute_control_command_1): Add "from_tty" parameter.  Update.
8350         (execute_control_command): Likewise.
8351
8352 2018-05-04  Tom Tromey  <tom@tromey.com>
8353
8354         PR python/22731:
8355         * NEWS: Mention that breakpoint commands are writable.
8356         * python/py-breakpoint.c (bppy_set_commands): New function.
8357         (breakpoint_object_getset) <"commands">: Use it.
8358
8359 2018-05-04  Tom Tromey  <tom@tromey.com>
8360
8361         * tracepoint.c (actions_command): Update.
8362         * mi/mi-cmd-break.c (mi_command_line_array)
8363         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8364         (mi_read_next_line): Remove.
8365         (mi_cmd_break_commands): Update.
8366         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8367         function_view.
8368         * cli/cli-script.c (get_command_line): Update.
8369         (process_next_line): Use function_view.  Constify.
8370         (recurse_read_control_structure, read_command_lines)
8371         (read_command_lines_1): Change argument types to function_view.
8372         (do_define_command, document_command): Update.
8373         * breakpoint.h (check_tracepoint_command): Don't declare.
8374         * breakpoint.c (check_tracepoint_command): Remove.
8375         (commands_command_1, create_tracepoint_from_upload): Update.
8376
8377 2018-05-04  Tom Tromey  <tom@tromey.com>
8378
8379         PR gdb/11750:
8380         * cli/cli-script.h (enum command_control_type) <define_control>:
8381         New constant.
8382         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8383         (build_command_line, execute_control_command_1)
8384         (process_next_line): Likewise.
8385         (do_define_command): New function, extracted from define_command.
8386         (define_command): Use it.
8387
8388 2018-05-04  Tom Tromey  <tom@tromey.com>
8389
8390         * tracepoint.c (actions_command): Update.
8391         * cli/cli-script.h (read_command_lines): Update.
8392         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8393         (MAX_TMPBUF): Remove define.
8394         (define_command): Use string_printf.
8395         (document_command): Likewise.
8396         * breakpoint.c (commands_command_1): Update.
8397
8398 2018-05-04  Tom Tromey  <tom@tromey.com>
8399
8400         * top.c (execute_command): Update.
8401         * cli/cli-script.h (print_command_lines): Now varargs.
8402         * cli/cli-script.c (print_command_lines): Now varargs.
8403         (execute_control_command_1) <case while_control, case if_control>:
8404         Update.
8405
8406 2018-05-04  Tom Tromey  <tom@tromey.com>
8407
8408         * tracepoint.c (all_tracepoint_actions): Rename from
8409         all_tracepoint_actions_and_cleanup.  Change return type.
8410         (actions_command, encode_actions_1, encode_actions)
8411         (trace_dump_actions, tdump_command): Update.
8412         * remote.c (remote_download_command_source): Update.
8413         * python/python.c (gdbpy_eval_from_control_command)
8414         (python_command, python_interactive_command): Update.
8415         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8416         * guile/guile.c (guile_command)
8417         (gdbscm_eval_from_control_command, guile_command): Update.
8418         * compile/compile.c (compile_code_command)
8419         (compile_print_command, compile_to_object): Update.
8420         * cli/cli-script.h (struct command_lines_deleter): New.
8421         (counted_command_line): New typedef.
8422         (struct command_line): Add constructor, destructor.
8423         <body_list>: Remove.
8424         <body_list_0, body_list_1>: New members.
8425         (command_line_up): Remove typedef.
8426         (read_command_lines, read_command_lines_1, get_command_line):
8427         Update.
8428         (copy_command_lines): Don't declare.
8429         * cli/cli-script.c (build_command_line): Use "new".
8430         (get_command_line): Return counted_command_line.
8431         (print_command_lines, execute_user_command)
8432         (execute_control_command_1, while_command, if_command): Update.
8433         (realloc_body_list): Remove.
8434         (process_next_line, recurse_read_control_structure): Update.
8435         (read_command_lines, read_command_lines_1): Return counted_command_line.
8436         (free_command_lines): Use "delete".
8437         (copy_command_lines): Remove.
8438         (define_command, document_command, show_user_1): Update.
8439         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8440         a counted_command_line.
8441         * breakpoint.h (counted_command_line): Remove typedef.
8442         (breakpoint_set_commands): Update.
8443         * breakpoint.c (check_no_tracepoint_commands)
8444         (validate_commands_for_breakpoint): Update.
8445         (breakpoint_set_commands): Change commands to be a
8446         counted_command_line.
8447         (commands_command_1, update_dprintf_command_list)
8448         (create_tracepoint_from_upload): Update.
8449
8450 2018-05-04  Tom Tromey  <tom@tromey.com>
8451
8452         * cli/cli-decode.h (cmd_list_element): New constructor.
8453         (~cmd_list_element): New destructor.
8454         (struct cmd_list_element): Add initializers.
8455         * cli/cli-decode.c (do_add_cmd): Use "new".
8456         (delete_cmd): Use "delete".
8457
8458 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8459             Pedro Alves <palves@redhat.com>
8460
8461         PR breakpoints/19806 and support for PR external/20207.
8462         * NEWS: Mention Aarch64 watchpoint improvements.
8463         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8464         watchpoints and PR external/20207 watchpoints.
8465         * nat/aarch64-linux-hw-point.c
8466         (kernel_supports_any_contiguous_range): New.
8467         (aarch64_watchpoint_offset): New.
8468         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8469         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8470         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8471         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8472         next_addr_orig_p.  Support PR external/20207 watchpoints.
8473         (aarch64_downgrade_regs): New.
8474         (aarch64_dr_state_insert_one_point): New parameters offset and
8475         addr_orig.
8476         (aarch64_dr_state_remove_one_point): Likewise.
8477         (aarch64_handle_breakpoint): Update caller.
8478         (aarch64_handle_aligned_watchpoint): Likewise.
8479         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
8480         aligned_offset.
8481         (aarch64_linux_set_debug_regs): Remove const from state.  Call
8482         aarch64_downgrade_regs.
8483         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
8484         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
8485         (DR_CONTROL_MASK): ... this.
8486         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
8487         (unsigned int aarch64_watchpoint_offset): New prototype.
8488         (aarch64_linux_set_debug_regs): Remove const from state.
8489         * utils.c (align_up, align_down): Move to ...
8490         * common/common-utils.c (align_up, align_down): ... here.
8491         * utils.h (align_up, align_down): Move to ...
8492         * common/common-utils.h (align_up, align_down): ... here.
8493
8494 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
8495
8496         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
8497         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
8498         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
8499         Re-implement to match the ABI as summarized in GCC's
8500         gcc/config/sparc/sparc.c.  All callers updated.
8501         (sparc32_store_arguments): Remove assertion.
8502
8503 2018-05-04  Tom Tromey  <tom@tromey.com>
8504
8505         * printcmd.c: Don't include tui.h.
8506         (decode_format): Use skip_spaces.
8507
8508 2018-05-04  Tom Tromey  <tom@tromey.com>
8509
8510         PR gdb/22619:
8511         * printcmd.c (last_count): New global.
8512         (x_command): Use saved count when repeating.
8513
8514 2018-05-04  Tom Tromey  <tom@tromey.com>
8515
8516         * nto-procfs.c (do_closedir_cleanup): Remove.
8517         (procfs_pidlist): Use gdb_dir_up.
8518         * procfs.c (do_closedir_cleanup): Remove.
8519         (proc_update_threads): Use gdb_dir_up.
8520         * common/filestuff.h (struct gdb_dir_deleter): New.
8521         (gdb_dir_up): New typedef.
8522
8523 2018-05-04  Tom Tromey  <tom@tromey.com>
8524
8525         * ada-lang.c (print_mention_exception): Use std::string.
8526
8527 2018-05-04  Tom Tromey  <tom@tromey.com>
8528
8529         * ada-lang.c (create_excep_cond_exprs): Update.
8530         (ada_exception_catchpoint_cond_string): Use std::string.
8531
8532 2018-05-04  Tom Tromey  <tom@tromey.com>
8533
8534         * ada-lang.c (xget_renaming_scope): Return std::string.
8535         (old_renaming_is_invisible): Update.
8536
8537 2018-05-04  Tom Tromey  <tom@tromey.com>
8538
8539         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
8540         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
8541
8542 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
8543
8544         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
8545
8546 2018-05-04  Tom Tromey  <tom@tromey.com>
8547
8548         * remote.c (remote_query_supported_append): Change type.
8549         (remote_check_symbols): Update.
8550
8551 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
8552
8553         PR gdb/11420
8554         * configure.ac: Prepend libpython.
8555         * python/python-config.py: Likewise.
8556         * configure: Regenerate.
8557
8558 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
8559
8560         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
8561
8562 2018-05-03  Pedro Alves  <palves@redhat.com>
8563
8564         * s390-linux-nat.c
8565         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
8566         override.  Write 'true' instead of '1'.
8567         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
8568         declaration.
8569
8570 2018-05-02  Pedro Alves  <palves@redhat.com>
8571
8572         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
8573         add_inf_child_target.
8574         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
8575         add_inf_child_target.
8576         * aix-thread.c (aix_thread_target_info): New.
8577         (aix_thread_target) <shortname, longname, doc>: Delete.
8578         <info>: New.
8579         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
8580         add_inf_child_target.
8581         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
8582         add_inf_child_target.
8583         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
8584         add_inf_child_target.
8585         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
8586         add_inf_child_target.
8587         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
8588         add_inf_child_target.
8589         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
8590         add_inf_child_target.
8591         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
8592         add_inf_child_target.
8593         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
8594         add_inf_child_target.
8595         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
8596         add_inf_child_target.
8597         * bfd-target.c (target_bfd_target_info): New.
8598         (target_bfd) <shortname, longname, doc>: Delete.
8599         <info>: New.
8600         * bsd-kvm.c (bsd_kvm_target_info): New.
8601         (bsd_kvm_target) <shortname, longname, doc>: Delete.
8602         <info>: New.
8603         (bsd_kvm_target::open): Rename to ...
8604         (bsd_kvm_target_open): ... this.  Adjust.
8605         * bsd-uthread.c (bsd_uthread_target_info): New.
8606         (bsd_uthread_target) <shortname, longname, doc>: Delete.
8607         <info>: New.
8608         * corefile.c (core_file_command): Adjust.
8609         * corelow.c (core_target_info): New.
8610         (core_target) <shortname, longname, doc>: Delete.
8611         <info>: New.
8612         (core_target::open): Rename to ...
8613         (core_target_open): ... this.  Adjust.
8614         * ctf.c (ctf_target_info): New.
8615         (ctf_target) <shortname, longname, doc>: Delete.
8616         <info>: New.
8617         (ctf_target::open): Rename to ...
8618         (ctf_target_open): ... this.
8619         (_initialize_ctf): Adjust.
8620         * exec.c (exec_target_info): New.
8621         (exec_target) <shortname, longname, doc>: Delete.
8622         <info>: New.
8623         (exec_target::open): Rename to ...
8624         (exec_target_open): ... this.
8625         * gdbcore.h (core_target_open): Declare.
8626         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
8627         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
8628         add_inf_child_target.
8629         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
8630         add_inf_child_target.
8631         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
8632         add_inf_child_target.
8633         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
8634         add_inf_child_target.
8635         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
8636         add_inf_child_target.
8637         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
8638         add_inf_child_target.
8639         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
8640         add_inf_child_target.
8641         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
8642         add_inf_child_target.
8643         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
8644         add_inf_child_target.
8645         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
8646         add_inf_child_target.
8647         * inf-child.c (inf_child_target_info): New.
8648         (inf_child_target::info): New.
8649         (inf_child_open_target): Remove 'target' parameter.  Use
8650         get_native_target instead.
8651         (inf_child_target::open): Delete.
8652         (add_inf_child_target): New.
8653         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
8654         Delete.
8655         <info>: New.
8656         (add_inf_child_target): Declare.
8657         (inf_child_open_target): Declare.
8658         * linux-thread-db.c (thread_db_target_info): New.
8659         (thread_db_target) <shortname, longname, doc>: Delete.
8660         <info>: New.
8661         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
8662         add_inf_child_target.
8663         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
8664         add_inf_child_target.
8665         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
8666         add_inf_child_target.
8667         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
8668         add_inf_child_target.
8669         * make-target-delegates (print_class): Adjust.
8670         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
8671         add_inf_child_target.
8672         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
8673         add_inf_child_target.
8674         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
8675         add_inf_child_target.
8676         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
8677         add_inf_child_target.
8678         * nto-procfs.c (nto_native_target_info): New.
8679         (nto_procfs_target_native) <shortname, longname, doc>:
8680         Delete.
8681         <info>: New.
8682         (nto_procfs_target_info): New.
8683         (nto_procfs_target_procfs) <shortname, longname, doc>:
8684         Delete.
8685         <info>: New.
8686         (init_procfs_targets): Adjust.
8687         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
8688         add_inf_child_target.
8689         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
8690         add_inf_child_target.
8691         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
8692         add_inf_child_target.
8693         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
8694         add_inf_child_target.
8695         * ravenscar-thread.c (ravenscar_target_info): New.
8696         (ravenscar_thread_target) <shortname, longname, doc>:
8697         Delete.
8698         <info>: New.
8699         * record-btrace.c (record_btrace_target_info):
8700         (record_btrace_target) <shortname, longname, doc>: Delete.
8701         <info>: New.
8702         (record_btrace_target::open): Rename to ...
8703         (record_btrace_target_open): ... this.  Adjust.
8704         * record-full.c (record_longname, record_doc): New.
8705         (record_full_base_target) <shortname, longname, doc>: Delete.
8706         <info>: New.
8707         (record_full_target_info): New.
8708         (record_full_target): <shortname>: Delete.
8709         <info>: New.
8710         (record_full_core_open_1, record_full_open_1): Update comments.
8711         (record_full_base_target::open): Rename to ...
8712         (record_full_open): ... this.
8713         (cmd_record_full_restore): Update.
8714         (_initialize_record_full): Update.
8715         * remote-sim.c (remote_sim_target_info): New.
8716         (gdbsim_target) <shortname, longname, doc>: Delete.
8717         <info>: New.
8718         (gdbsim_target::open): Rename to ...
8719         (gdbsim_target_open): ... this.
8720         (_initialize_remote_sim): Adjust.
8721         * remote.c (remote_doc): New.
8722         (remote_target_info): New.
8723         (remote_target) <shortname, longname, doc>: Delete.
8724         <info>: New.
8725         (extended_remote_target_info): New.
8726         (extended_remote_target) <shortname, longname, doc>: Delete.
8727         <info>: New.
8728         (remote_target::open_1): Make static.  Adjust.
8729         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
8730         * s390-linux-nat.c (_initialize_s390_nat): Use
8731         add_inf_child_target.
8732         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
8733         add_inf_child_target.
8734         * sol-thread.c (thread_db_target_info): New.
8735         (sol_thread_target) <shortname, longname, doc>: Delete.
8736         <info>: New.
8737         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
8738         add_inf_child_target.
8739         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
8740         add_inf_child_target.
8741         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
8742         add_inf_child_target.
8743         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
8744         add_inf_child_target.
8745         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
8746         add_inf_child_target.
8747         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
8748         add_inf_child_target.
8749         * spu-linux-nat.c (_initialize_spu_nat): Use
8750         add_inf_child_target.
8751         * spu-multiarch.c (spu_multiarch_target_info): New.
8752         (spu_multiarch_target) <shortname, longname, doc>: Delete.
8753         <info>: New.
8754         * target-delegates.c: Regenerate.
8755         * target.c: Include <unordered_map>.
8756         (target_ops_p): Delete.
8757         (DEF_VEC_P(target_ops_p)): Delete.
8758         (target_factories): New.
8759         (test_target_info): New.
8760         (test_target_ops::info): New.
8761         (open_target): Adjust to use target_factories.
8762         (add_target_with_completer): Rename to ...
8763         (add_target): ... this.  Change prototype.  Register target_info
8764         and open callback in target_factories.  Register target_info in
8765         command context instead of target_ops.
8766         (add_target): Delete old implementation.
8767         (add_deprecated_target_alias): Change prototype.  Adjust.
8768         (the_native_target): New.
8769         (set_native_target, get_native_target): New.
8770         (find_default_run_target): Use the_native_target.
8771         (find_attach_target, find_run_target): Simplify.
8772         (target_ops::open): Delete.
8773         (dummy_target_info): New.
8774         (dummy_target::shortname, dummy_target::longname)
8775         (dummy_target::doc): Delete.
8776         (dummy_target::info): New.
8777         (debug_target::shortname, debug_target::longname)
8778         (debug_target::doc): Delete.
8779         (debug_target::info): New.
8780         * target.h (struct target_info): New.
8781         (target_ops::~target_ops): Add comment.
8782         (target_ops::info): New.
8783         (target_ops::shortname, target_ops::longname, target_ops::doc): No
8784         longer virtual.  Implement in terms of target_info.
8785         (set_native_target, get_native_target): Declare.
8786         (target_open_ftype): New.
8787         (add_target, add_target_with_completer)
8788         (add_deprecated_target_alias): Change prototype.
8789         (test_target) <shortname, longname, doc>: Delete.
8790         <info>: New.
8791         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
8792         add_inf_child_target.
8793         * tracefile-tfile.c (tfile_target_info): New.
8794         (tfile_target) <shortname, longname, doc>: Delete.
8795         <info>: New.
8796         (tfile_target::open): Rename to ...
8797         (tfile_target_open): ... this.
8798         (_initialize_tracefile_tfile): Adjust.
8799         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
8800         add_inf_child_target.
8801         * windows-nat.c (_initialize_windows_nat): Use
8802         add_inf_child_target.
8803         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
8804         add_inf_child_target.
8805
8806 2018-05-02  Pedro Alves  <palves@redhat.com>
8807
8808         * linux-nat.h (linux_nat_target) <low_new_thread,
8809         low_delete_thread, low_new_fork, low_forget_process,
8810         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
8811         New virtual methods.
8812         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8813         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
8814         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
8815         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8816         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
8817         Delete.
8818         * linux-fork.c (delete_fork): Adjust to call low method.
8819         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
8820         (linux_nat_new_fork, linux_nat_forget_process_hook)
8821         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
8822         (linux_nat_status_is_event):
8823         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
8824         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
8825         to call low method.
8826         (sigtrap_is_event): Rename to ...
8827         (linux_nat_target::low_status_is_event): ... this.
8828         (linux_nat_set_status_is_event): Delete.
8829         (save_stop_reason, linux_nat_wait_1)
8830         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
8831         low methods.
8832         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8833         (linux_nat_set_new_fork, linux_nat_set_forget_process)
8834         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8835         (linux_nat_set_prepare_to_resume): Delete.
8836         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
8837         low virtual methods.
8838         * amd64-linux-nat.c: Likewise.
8839         * arm-linux-nat.c: Likewise.
8840         * i386-linux-nat.c: Likewise.
8841         * ia64-linux-nat.c: Likewise.
8842         * mips-linux-nat.c: Likewise.
8843         * ppc-linux-nat.c: Likewise.
8844         * s390-linux-nat.c: Likewise.
8845         * sparc64-linux-nat.c: Likewise.
8846         * x86-linux-nat.c: Likewise.
8847         * x86-linux-nat.h: Include "nat/x86-linux.h".
8848         (x86_linux_nat_target) <low_new_fork, low_forget_process,
8849         low_prepare_to_resume, low_new_thread, low_delete_thread>:
8850         Override methods.
8851
8852 2018-05-02  Pedro Alves  <palves@redhat.com>
8853
8854         * target.h (target_ops)
8855         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
8856         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
8857         stopped_by_watchpoint, have_continuable_watchpoint,
8858         stopped_data_address, watchpoint_addr_within_range,
8859         can_accel_watchpoint_condition, can_run, thread_alive,
8860         has_all_memory, has_memory, has_stack, has_registers,
8861         has_execution, can_async_p, is_async_p, supports_non_stop,
8862         always_non_stop_p, can_execute_reverse, supports_multi_process,
8863         supports_enable_disable_tracepoint,
8864         supports_disable_randomization, supports_string_tracing,
8865         supports_evaluation_of_breakpoint_conditions,
8866         can_run_breakpoint_commands, filesystem_is_local,
8867         can_download_tracepoint, get_trace_state_variable_value,
8868         set_trace_notes, get_tib_address, use_agent, can_use_agent,
8869         record_is_replaying, record_will_replay,
8870         augmented_libraries_svr4_read>: Adjust to return bool.
8871         * aarch64-linux-nat.c: All implementations adjusted.
8872         * aix-thread.c: All implementations adjusted.
8873         * arm-linux-nat.c: All implementations adjusted.
8874         * breakpoint.c: All implementations adjusted.
8875         * bsd-kvm.c: All implementations adjusted.
8876         * bsd-uthread.c: All implementations adjusted.
8877         * corelow.c: All implementations adjusted.
8878         * ctf.c: All implementations adjusted.
8879         * darwin-nat.c: All implementations adjusted.
8880         * darwin-nat.h: All implementations adjusted.
8881         * exec.c: All implementations adjusted.
8882         * fbsd-nat.c: All implementations adjusted.
8883         * fbsd-nat.h: All implementations adjusted.
8884         * gnu-nat.c: All implementations adjusted.
8885         * gnu-nat.h: All implementations adjusted.
8886         * go32-nat.c: All implementations adjusted.
8887         * ia64-linux-nat.c: All implementations adjusted.
8888         * inf-child.c: All implementations adjusted.
8889         * inf-child.h: All implementations adjusted.
8890         * inf-ptrace.c: All implementations adjusted.
8891         * inf-ptrace.h: All implementations adjusted.
8892         * linux-nat.c: All implementations adjusted.
8893         * linux-nat.h: All implementations adjusted.
8894         * mips-linux-nat.c: All implementations adjusted.
8895         * nto-procfs.c: All implementations adjusted.
8896         * ppc-linux-nat.c: All implementations adjusted.
8897         * procfs.c: All implementations adjusted.
8898         * ravenscar-thread.c: All implementations adjusted.
8899         * record-btrace.c: All implementations adjusted.
8900         * record-full.c: All implementations adjusted.
8901         * remote-sim.c: All implementations adjusted.
8902         * remote.c: All implementations adjusted.
8903         * s390-linux-nat.c: All implementations adjusted.
8904         * sol-thread.c: All implementations adjusted.
8905         * spu-multiarch.c: All implementations adjusted.
8906         * target-delegates.c: All implementations adjusted.
8907         * target.c: All implementations adjusted.
8908         * target.h: All implementations adjusted.
8909         * tracefile-tfile.c: All implementations adjusted.
8910         * tracefile.c: All implementations adjusted.
8911         * tracefile.h: All implementations adjusted.
8912         * windows-nat.c: All implementations adjusted.
8913         * x86-linux-nat.h: All implementations adjusted.
8914         * x86-nat.h: All implementations adjusted.
8915
8916 2018-05-02  Pedro Alves  <palves@redhat.com>
8917
8918         * make-target-delegates (scan_target_h): Don't trim lines here.
8919         Replace sequences of tabs and/or whitespace with a single
8920         whitespace.
8921         (top level, parsing methods): Trim each line before processing it
8922         here.
8923
8924 2018-05-02  Pedro Alves  <palves@redhat.com>
8925             John Baldwin  <jhb@freebsd.org>
8926
8927         * target.h (enum strata) <debug_stratum>: New.
8928         (struct target_ops) <all delegation methods>: Replace by C++
8929         virtual methods, and drop "to_" prefix.  All references updated
8930         throughout.
8931         <to_shortname, to_longname, to_doc, to_data,
8932         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
8933         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
8934         virtual methods.  All references updated throughout.
8935         <can_attach, supports_terminal_ours, can_create_inferior,
8936         get_thread_control_capabilities, attach_no_wait>: New
8937         virtual methods.
8938         <insert_breakpoint, remove_breakpoint>: Now
8939         TARGET_DEFAULT_NORETURN methods.
8940         <info_proc>: Now returns bool.
8941         <to_magic>: Delete.
8942         (OPS_MAGIC): Delete.
8943         (current_target): Delete.  All references replaced by references
8944         to ...
8945         (target_stack): ... this.  New.
8946         (target_shortname, target_longname): Adjust.
8947         (target_can_run): Now a function declaration.
8948         (default_child_has_all_memory, default_child_has_memory)
8949         (default_child_has_stack, default_child_has_registers)
8950         (default_child_has_execution): Remove target_ops parameter.
8951         (complete_target_initialization): Delete.
8952         (memory_breakpoint_target): New template class.
8953         (test_target_ops): Refactor as a C++ class with virtual methods.
8954         * make-target-delegates (NAME_PART): Tighten.
8955         (POINTER_PART, CP_SYMBOL): New.
8956         (SIMPLE_RETURN_PART): Reimplement.
8957         (VEC_RETURN_PART): Expect less.
8958         (RETURN_PART, VIRTUAL_PART): New.
8959         (METHOD): Adjust to C++ virtual methods.
8960         (scan_target_h): Remove reference to C99.
8961         (dname): Output "target_ops::" prefix.
8962         (write_function_header): Adjust to output a C++ class method.
8963         (write_declaration): New.
8964         (write_delegator): Adjust to output a C++ class method.
8965         (tdname): Output "dummy_target::" prefix.
8966         (write_tdefault, write_debugmethod): Adjust to output a C++ class
8967         method.
8968         (tdefault_names, debug_names): Delete.
8969         (return_types, tdefaults, styles, argtypes_array): New.
8970         (top level): All methods are delegators.
8971         (print_class): New.
8972         (top level): Print dummy_target and debug_target classes.
8973         * target-delegates.c: Regenerate.
8974         * target-debug.h (target_debug_print_enum_info_proc_what)
8975         (target_debug_print_thread_control_capabilities)
8976         (target_debug_print_thread_info_p): New.
8977         * target.c (dummy_target): Delete.
8978         (the_dummy_target, the_debug_target): New.
8979         (target_stack): Now extern.
8980         (set_targetdebug): Push/unpush debug target.
8981         (default_child_has_all_memory, default_child_has_memory)
8982         (default_child_has_stack, default_child_has_registers)
8983         (default_child_has_execution): Remove target_ops parameter.
8984         (complete_target_initialization): Delete.
8985         (add_target_with_completer): No longer call
8986         complete_target_initialization.
8987         (target_supports_terminal_ours): Use regular delegation.
8988         (update_current_target): Delete.
8989         (push_target): No longer check magic number.  Don't call
8990         update_current_target.
8991         (unpush_target): Don't call update_current_target.
8992         (target_is_pushed): No longer check magic number.
8993         (target_require_runnable): Skip for all stratums over
8994         process_stratum.
8995         (target_ops::info_proc): New.
8996         (target_info_proc): Use find_target_at and
8997         find_default_run_target.
8998         (target_supports_disable_randomization): Use regular delegation.
8999         (target_get_osdata): Use find_target_at.
9000         (target_ops::open, target_ops::close, target_ops::can_attach)
9001         (target_ops::attach, target_ops::can_create_inferior)
9002         (target_ops::create_inferior, target_ops::can_run)
9003         (target_can_run): New.
9004         (default_fileio_target): Use regular delegation.
9005         (target_ops::fileio_open, target_ops::fileio_pwrite)
9006         (target_ops::fileio_pread, target_ops::fileio_fstat)
9007         (target_ops::fileio_close, target_ops::fileio_unlink)
9008         (target_ops::fileio_readlink): New.
9009         (target_fileio_open_1, target_fileio_unlink)
9010         (target_fileio_readlink): Always call the target method.  Handle
9011         FILEIO_ENOSYS.
9012         (return_zero, return_zero_has_execution): Delete.
9013         (init_dummy_target): Delete.
9014         (dummy_target::dummy_target, dummy_target::shortname)
9015         (dummy_target::longname, dummy_target::doc)
9016         (debug_target::debug_target, debug_target::shortname)
9017         (debug_target::longname, debug_target::doc): New.
9018         (target_supports_delete_record): Use regular delegation.
9019         (setup_target_debug): Delete.
9020         (maintenance_print_target_stack): Skip debug_stratum.
9021         (initialize_targets): Instantiate the_dummy_target and
9022         the_debug_target.
9023         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9024         use target_stack.
9025         (target_auxv_search, fprint_target_auxv): Adjust.
9026         (info_auxv_command): Adjust to use target_stack.
9027         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9028         * exceptions.c (print_flush): Handle a NULL target_stack.
9029         * regcache.c (target_ops_no_register): Refactor as class with
9030         virtual methods.
9031
9032         * exec.c (exec_target): New class.
9033         (exec_ops): Now an exec_target.
9034         (exec_open, exec_close_1, exec_get_section_table)
9035         (exec_xfer_partial, exec_files_info, exec_has_memory)
9036         (exec_make_note_section): Refactor as exec_target methods.
9037         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9038         Delete.
9039         (exec_target::find_memory_regions): New.
9040         (_initialize_exec): Don't call init_exec_ops.
9041         * gdbcore.h (exec_file_clear): Delete.
9042
9043         * corefile.c (core_target): Delete.
9044         (core_file_command): Adjust.
9045         * corelow.c (core_target): New class.
9046         (the_core_target): New.
9047         (core_close): Remove target_ops parameter.
9048         (core_close_cleanup): Adjust.
9049         (core_target::close): New.
9050         (core_open, core_detach, get_core_registers, core_files_info)
9051         (core_xfer_partial, core_thread_alive, core_read_description)
9052         (core_pid_to_str, core_thread_name, core_has_memory)
9053         (core_has_stack, core_has_registers, core_info_proc): Rework as
9054         core_target methods.
9055         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9056         (_initialize_corelow): Initialize the_core_target.
9057         * gdbcore.h (core_target): Delete.
9058         (the_core_target): New.
9059
9060         * ctf.c: (ctf_target): New class.
9061         (ctf_ops): Now a ctf_target.
9062         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9063         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9064         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9065         methods.
9066         (init_ctf_ops): Delete.
9067         (_initialize_ctf): Don't call it.
9068         * tracefile-tfile.c (tfile_target): New class.
9069         (tfile_ops): Now a tfile_target.
9070         (tfile_open, tfile_close, tfile_files_info)
9071         (tfile_get_tracepoint_status, tfile_trace_find)
9072         (tfile_fetch_registers, tfile_xfer_partial)
9073         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9074         Refactor as tfile_target methods.
9075         (tfile_xfer_partial_features): Remove target_ops parameter.
9076         (init_tfile_ops): Delete.
9077         (_initialize_tracefile_tfile): Don't call it.
9078         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9079         (tracefile_has_stack, tracefile_has_registers)
9080         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9081         tracefile_target methods.
9082         (init_tracefile_ops): Delete.
9083         (tracefile_target::tracefile_target): New.
9084         * tracefile.h: Include "target.h".
9085         (tracefile_target): New class.
9086         (init_tracefile_ops): Delete.
9087
9088         * spu-multiarch.c (spu_multiarch_target): New class.
9089         (spu_ops): Now a spu_multiarch_target.
9090         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9091         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9092         (spu_search_memory, spu_mourn_inferior): Refactor as
9093         spu_multiarch_target methods.
9094         (init_spu_ops): Delete.
9095         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9096         complete_target_initialization.
9097
9098         * ravenscar-thread.c (ravenscar_thread_target): New class.
9099         (ravenscar_ops): Now a ravenscar_thread_target.
9100         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9101         (ravenscar_thread_alive, ravenscar_pid_to_str)
9102         (ravenscar_fetch_registers, ravenscar_store_registers)
9103         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9104         (ravenscar_stopped_by_hw_breakpoint)
9105         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9106         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9107         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9108         methods.
9109         (init_ravenscar_thread_ops): Delete.
9110         (_initialize_ravenscar): Remove references to
9111         init_ravenscar_thread_ops and complete_target_initialization.
9112
9113         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9114         (bsd_uthread_target): New class.
9115         (bsd_uthread_ops): Now a bsd_uthread_target.
9116         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9117         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9118         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9119         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9120         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9121         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9122         (bsd_uthread_target): Delete function.
9123         (_initialize_bsd_uthread): Remove reference to
9124         complete_target_initialization.
9125
9126         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9127         (target_bfd): ... this new class.
9128         (target_bfd_xfer_partial, target_bfd_get_section_table)
9129         (target_bfd_close): Refactor as target_bfd methods.
9130         (target_bfd::~target_bfd): New.
9131         (target_bfd_reopen): Adjust.
9132         (target_bfd::close): New.
9133
9134         * record-btrace.c (record_btrace_target): New class.
9135         (record_btrace_ops): Now a record_btrace_target.
9136         (record_btrace_open, record_btrace_stop_recording)
9137         (record_btrace_disconnect, record_btrace_close)
9138         (record_btrace_async, record_btrace_info)
9139         (record_btrace_insn_history, record_btrace_insn_history_range)
9140         (record_btrace_insn_history_from, record_btrace_call_history)
9141         (record_btrace_call_history_range)
9142         (record_btrace_call_history_from, record_btrace_record_method)
9143         (record_btrace_is_replaying, record_btrace_will_replay)
9144         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9145         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9146         (record_btrace_store_registers, record_btrace_prepare_to_store)
9147         (record_btrace_to_get_unwinder)
9148         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9149         (record_btrace_commit_resume, record_btrace_wait)
9150         (record_btrace_stop, record_btrace_can_execute_reverse)
9151         (record_btrace_stopped_by_sw_breakpoint)
9152         (record_btrace_supports_stopped_by_sw_breakpoint)
9153         (record_btrace_stopped_by_hw_breakpoint)
9154         (record_btrace_supports_stopped_by_hw_breakpoint)
9155         (record_btrace_update_thread_list, record_btrace_thread_alive)
9156         (record_btrace_goto_begin, record_btrace_goto_end)
9157         (record_btrace_goto, record_btrace_stop_replaying_all)
9158         (record_btrace_execution_direction)
9159         (record_btrace_prepare_to_generate_core)
9160         (record_btrace_done_generating_core): Refactor as
9161         record_btrace_target methods.
9162         (init_record_btrace_ops): Delete.
9163         (_initialize_record_btrace): Remove reference to
9164         init_record_btrace_ops.
9165         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9166         the execution_direction global.
9167         (record_full_base_target, record_full_target)
9168         (record_full_core_target): New classes.
9169         (record_full_ops): Now a record_full_target.
9170         (record_full_core_ops): Now a record_full_core_target.
9171         (record_full_target::detach, record_full_target::disconnect)
9172         (record_full_core_target::disconnect)
9173         (record_full_target::mourn_inferior, record_full_target::kill):
9174         New.
9175         (record_full_open, record_full_close, record_full_async): Refactor
9176         as methods of the record_full_base_target class.
9177         (record_full_resume, record_full_commit_resume): Refactor
9178         as methods of the record_full_target class.
9179         (record_full_wait, record_full_stopped_by_watchpoint)
9180         (record_full_stopped_data_address)
9181         (record_full_stopped_by_sw_breakpoint)
9182         (record_full_supports_stopped_by_sw_breakpoint)
9183         (record_full_stopped_by_hw_breakpoint)
9184         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9185         methods of the record_full_base_target class.
9186         (record_full_store_registers, record_full_xfer_partial)
9187         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9188         Refactor as methods of the record_full_target class.
9189         (record_full_can_execute_reverse, record_full_get_bookmark)
9190         (record_full_goto_bookmark, record_full_execution_direction)
9191         (record_full_record_method, record_full_info, record_full_delete)
9192         (record_full_is_replaying, record_full_will_replay)
9193         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9194         (record_full_stop_replaying): Refactor as methods of the
9195         record_full_base_target class.
9196         (record_full_core_resume, record_full_core_kill)
9197         (record_full_core_fetch_registers)
9198         (record_full_core_prepare_to_store)
9199         (record_full_core_store_registers, record_full_core_xfer_partial)
9200         (record_full_core_insert_breakpoint)
9201         (record_full_core_remove_breakpoint)
9202         (record_full_core_has_execution): Refactor
9203         as methods of the record_full_core_target class.
9204         (record_full_base_target::supports_delete_record): New.
9205         (init_record_full_ops): Delete.
9206         (init_record_full_core_ops): Delete.
9207         (record_full_save): Refactor as method of the
9208         record_full_base_target class.
9209         (_initialize_record_full): Remove references to
9210         init_record_full_ops and init_record_full_core_ops.
9211
9212         * remote.c (remote_target, extended_remote_target): New classes.
9213         (remote_ops): Now a remote_target.
9214         (extended_remote_ops): Now an extended_remote_target.
9215         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9216         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9217         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9218         (remote_pass_signals, remote_set_syscall_catchpoint)
9219         (remote_program_signals, )
9220         (remote_thread_always_alive): Remove target_ops parameter.
9221         (remote_thread_alive, remote_thread_name)
9222         (remote_update_thread_list, remote_threads_extra_info)
9223         (remote_static_tracepoint_marker_at)
9224         (remote_static_tracepoint_markers_by_strid)
9225         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9226         (remote_open): Refactor as methods of remote_target.
9227         (extended_remote_open, extended_remote_detach)
9228         (extended_remote_attach, extended_remote_post_attach):
9229         (extended_remote_supports_disable_randomization)
9230         (extended_remote_create_inferior): : Refactor as method of
9231         extended_remote_target.
9232         (remote_set_permissions, remote_open_1, remote_detach)
9233         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9234         (remote_resume, remote_commit_resume, remote_stop)
9235         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9236         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9237         (remote_prepare_to_store, remote_store_registers)
9238         (remote_flash_erase, remote_flash_done, remote_files_info)
9239         (remote_kill, remote_mourn, remote_insert_breakpoint)
9240         (remote_remove_breakpoint, remote_insert_watchpoint)
9241         (remote_watchpoint_addr_within_range)
9242         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9243         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9244         (remote_supports_stopped_by_sw_breakpoint)
9245         (remote_stopped_by_hw_breakpoint)
9246         (remote_supports_stopped_by_hw_breakpoint)
9247         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9248         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9249         (remote_verify_memory): Refactor as methods of remote_target.
9250         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9251         parameter.
9252         (remote_xfer_partial, remote_get_memory_xfer_limit)
9253         (remote_search_memory, remote_rcmd, remote_memory_map)
9254         (remote_pid_to_str, remote_get_thread_local_address)
9255         (remote_get_tib_address, remote_read_description): Refactor as
9256         methods of remote_target.
9257         (remote_target::fileio_open, remote_target::fileio_pwrite)
9258         (remote_target::fileio_pread, remote_target::fileio_close): New.
9259         (remote_hostio_readlink, remote_hostio_fstat)
9260         (remote_filesystem_is_local, remote_can_execute_reverse)
9261         (remote_supports_non_stop, remote_supports_disable_randomization)
9262         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9263         (remote_supports_enable_disable_tracepoint)
9264         (remote_supports_string_tracing)
9265         (remote_can_run_breakpoint_commands, remote_trace_init)
9266         (remote_download_tracepoint, remote_can_download_tracepoint)
9267         (remote_download_trace_state_variable, remote_enable_tracepoint)
9268         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9269         (remote_trace_start, remote_get_trace_status)
9270         (remote_get_tracepoint_status, remote_trace_stop)
9271         (remote_trace_find, remote_get_trace_state_variable_value)
9272         (remote_save_trace_data, remote_get_raw_trace_data)
9273         (remote_set_disconnected_tracing, remote_core_of_thread)
9274         (remote_set_circular_trace_buffer, remote_traceframe_info)
9275         (remote_get_min_fast_tracepoint_insn_len)
9276         (remote_set_trace_buffer_size, remote_set_trace_notes)
9277         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9278         (remote_disable_btrace, remote_teardown_btrace)
9279         (remote_read_btrace, remote_btrace_conf)
9280         (remote_augmented_libraries_svr4_read, remote_load)
9281         (remote_pid_to_exec_file, remote_can_do_single_step)
9282         (remote_execution_direction, remote_thread_handle_to_thread_info):
9283         Refactor as methods of remote_target.
9284         (init_remote_ops, init_extended_remote_ops): Delete.
9285         (remote_can_async_p, remote_is_async_p, remote_async)
9286         (remote_thread_events, remote_upload_tracepoints)
9287         (remote_upload_trace_state_variables): Refactor as methods of
9288         remote_target.
9289         (_initialize_remote): Remove references to init_remote_ops and
9290         init_extended_remote_ops.
9291
9292         * remote-sim.c (gdbsim_target): New class.
9293         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9294         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9295         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9296         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9297         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9298         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9299         Refactor as methods of gdbsim_target.
9300         (gdbsim_ops): Now a gdbsim_target.
9301         (init_gdbsim_ops): Delete.
9302         (gdbsim_cntrl_c): Adjust.
9303         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9304
9305         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9306         (the_amd64_linux_nat_target): New.
9307         (amd64_linux_fetch_inferior_registers)
9308         (amd64_linux_store_inferior_registers): Refactor as methods of
9309         amd64_linux_nat_target.
9310         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9311         * i386-linux-nat.c: Don't include "linux-nat.h".
9312         (i386_linux_nat_target): New class.
9313         (the_i386_linux_nat_target): New.
9314         (i386_linux_fetch_inferior_registers)
9315         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9316         as methods of i386_linux_nat_target.
9317         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9318         * inf-child.c (inf_child_ops): Delete.
9319         (inf_child_fetch_inferior_registers)
9320         (inf_child_store_inferior_registers): Delete.
9321         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9322         methods of inf_child_target.
9323         (inf_child_target::supports_terminal_ours)
9324         (inf_child_target::terminal_init)
9325         (inf_child_target::terminal_inferior)
9326         (inf_child_target::terminal_ours_for_output)
9327         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9328         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9329         New.
9330         (inf_child_open, inf_child_disconnect, inf_child_close)
9331         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9332         (inf_child_post_startup_inferior, inf_child_can_run)
9333         (inf_child_pid_to_exec_file): Refactor as methods of
9334         inf_child_target.
9335         (inf_child_follow_fork): Delete.
9336         (inf_child_target::can_create_inferior)
9337         (inf_child_target::can_attach): New.
9338         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9339         (inf_child_target::has_stack, inf_child_target::has_registers)
9340         (inf_child_target::has_execution): New.
9341         (inf_child_fileio_open, inf_child_fileio_pwrite)
9342         (inf_child_fileio_pread, inf_child_fileio_fstat)
9343         (inf_child_fileio_close, inf_child_fileio_unlink)
9344         (inf_child_fileio_readlink, inf_child_use_agent)
9345         (inf_child_can_use_agent): Refactor as methods of
9346         inf_child_target.
9347         (return_zero, inf_child_target): Delete.
9348         (inf_child_target::inf_child_target): New.
9349         * inf-child.h: Include "target.h".
9350         (inf_child_target): Delete function prototype.
9351         (inf_child_target): New class.
9352         (inf_child_open_target, inf_child_mourn_inferior)
9353         (inf_child_maybe_unpush_target): Delete.
9354         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9355         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9356         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9357         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9358         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9359         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9360         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9361         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9362         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9363         methods of inf_ptrace_target.
9364         (inf_ptrace_target): Delete function.
9365         * inf-ptrace.h: Include "inf-child.h".
9366         (inf_ptrace_target): Delete function declaration.
9367         (inf_ptrace_target): New class.
9368         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9369         * linux-nat.c (linux_target): New.
9370         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9371         (linux_nat_target::~linux_nat_target): New.
9372         (linux_child_post_attach, linux_child_post_startup_inferior)
9373         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9374         (linux_child_remove_fork_catchpoint)
9375         (linux_child_insert_vfork_catchpoint)
9376         (linux_child_remove_vfork_catchpoint)
9377         (linux_child_insert_exec_catchpoint)
9378         (linux_child_remove_exec_catchpoint)
9379         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9380         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9381         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9382         (linux_nat_stopped_data_address)
9383         (linux_nat_stopped_by_sw_breakpoint)
9384         (linux_nat_supports_stopped_by_sw_breakpoint)
9385         (linux_nat_stopped_by_hw_breakpoint)
9386         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9387         (linux_nat_kill, linux_nat_mourn_inferior)
9388         (linux_nat_xfer_partial, linux_nat_thread_alive)
9389         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9390         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9391         (linux_child_static_tracepoint_markers_by_strid)
9392         (linux_nat_is_async_p, linux_nat_can_async_p)
9393         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9394         (linux_nat_supports_multi_process)
9395         (linux_nat_supports_disable_randomization, linux_nat_async)
9396         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9397         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9398         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9399         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9400         methods of linux_nat_target.
9401         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9402         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9403         parameter.
9404         (check_stopped_by_watchpoint): Adjust.
9405         (linux_xfer_partial): Delete.
9406         (linux_target_install_ops, linux_target, linux_nat_add_target):
9407         Delete.
9408         (linux_nat_target::linux_nat_target): New.
9409         * linux-nat.h: Include "inf-ptrace.h".
9410         (linux_nat_target): New.
9411         (linux_target, linux_target_install_ops, linux_nat_add_target):
9412         Delete function declarations.
9413         (linux_target): Declare global.
9414         * linux-thread-db.c (thread_db_target): New.
9415         (thread_db_target::thread_db_target): New.
9416         (thread_db_ops): Delete.
9417         (the_thread_db_target): New.
9418         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9419         (thread_db_update_thread_list, thread_db_pid_to_str)
9420         (thread_db_extra_thread_info)
9421         (thread_db_thread_handle_to_thread_info)
9422         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9423         (thread_db_resume): Refactor as methods of thread_db_target.
9424         (init_thread_db_ops): Delete.
9425         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9426         * x86-linux-nat.c: Don't include "linux-nat.h".
9427         (super_post_startup_inferior): Delete.
9428         (x86_linux_nat_target::~x86_linux_nat_target): New.
9429         (x86_linux_child_post_startup_inferior)
9430         (x86_linux_read_description, x86_linux_enable_btrace)
9431         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9432         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9433         methods of x86_linux_nat_target.
9434         (x86_linux_create_target): Delete.  Bits folded ...
9435         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9436         pointer.
9437         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9438         (x86_linux_nat_target): New class.
9439         (x86_linux_create_target): Delete.
9440         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9441         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9442         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9443         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9444         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9445         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9446         make extern.
9447         (x86_use_watchpoints): Delete.
9448         * x86-nat.h: Include "breakpoint.h" and "target.h".
9449         (x86_use_watchpoints): Delete.
9450         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9451         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9452         (x86_insert_watchpoint, x86_remove_watchpoint)
9453         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9454         (x86_stopped_by_hw_breakpoint): New declarations.
9455         (x86_nat_target): New template class.
9456
9457         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9458         (the_ppc_linux_nat_target): New.
9459         (ppc_linux_fetch_inferior_registers)
9460         (ppc_linux_can_use_hw_breakpoint)
9461         (ppc_linux_region_ok_for_hw_watchpoint)
9462         (ppc_linux_ranged_break_num_registers)
9463         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9464         (ppc_linux_insert_mask_watchpoint)
9465         (ppc_linux_remove_mask_watchpoint)
9466         (ppc_linux_can_accel_watchpoint_condition)
9467         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9468         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9469         (ppc_linux_watchpoint_addr_within_range)
9470         (ppc_linux_masked_watch_num_registers)
9471         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9472         (ppc_linux_read_description): Refactor as methods of
9473         ppc_linux_nat_target.
9474         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
9475
9476         * procfs.c (procfs_xfer_partial): Delete forward declaration.
9477         (procfs_target): New class.
9478         (the_procfs_target): New.
9479         (procfs_target): Delete function.
9480         (procfs_auxv_parse, procfs_attach, procfs_detach)
9481         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
9482         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
9483         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
9484         (procfs_create_inferior, procfs_update_thread_list)
9485         (procfs_thread_alive, procfs_pid_to_str)
9486         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
9487         (procfs_stopped_data_address, procfs_insert_watchpoint)
9488         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
9489         (proc_find_memory_regions, procfs_info_proc)
9490         (procfs_make_note_section): Refactor as methods of procfs_target.
9491         (_initialize_procfs): Adjust.
9492         * sol-thread.c (sol_thread_target): New class.
9493         (sol_thread_ops): Now a sol_thread_target.
9494         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
9495         (sol_thread_fetch_registers, sol_thread_store_registers)
9496         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
9497         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
9498         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
9499         (init_sol_thread_ops): Delete.
9500         (_initialize_sol_thread): Adjust.  Remove references to
9501         init_sol_thread_ops and complete_target_initialization.
9502
9503         * windows-nat.c (windows_nat_target): New class.
9504         (windows_fetch_inferior_registers)
9505         (windows_store_inferior_registers, windows_resume, windows_wait)
9506         (windows_attach, windows_detach, windows_pid_to_exec_file)
9507         (windows_files_info, windows_create_inferior)
9508         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
9509         (windows_close, windows_pid_to_str, windows_xfer_partial)
9510         (windows_get_tib_address, windows_get_ada_task_ptid)
9511         (windows_thread_name, windows_thread_alive): Refactor as
9512         windows_nat_target methods.
9513         (do_initial_windows_stuff): Adjust.
9514         (windows_target): Delete function.
9515         (_initialize_windows_nat): Adjust.
9516
9517         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
9518         (darwin_mourn_inferior, darwin_kill_inferior)
9519         (darwin_create_inferior, darwin_attach, darwin_detach)
9520         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
9521         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
9522         (darwin_supports_multi_process): Refactor as darwin_nat_target
9523         methods.
9524         (darwin_resume_to, darwin_files_info): Delete.
9525         (_initialize_darwin_inferior): Rename to ...
9526         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
9527         * darwin-nat.h: Include "inf-child.h".
9528         (darwin_nat_target): New class.
9529         (darwin_complete_target): Delete.
9530         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
9531         (darwin_target): New.
9532         (i386_darwin_fetch_inferior_registers)
9533         (i386_darwin_store_inferior_registers): Refactor as methods of
9534         darwin_nat_target.
9535         (darwin_complete_target): Delete, with ...
9536         (_initialize_i386_darwin_nat): ... bits factored out here.
9537
9538         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
9539         (the_alpha_linux_nat_target): New.
9540         (alpha_linux_register_u_offset): Refactor as
9541         alpha_linux_nat_target method.
9542         (_initialize_alpha_linux_nat): Adjust.
9543         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
9544         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9545         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
9546         methods of linux_nat_trad_target.
9547         (linux_trad_target): Delete.
9548         * linux-nat-trad.h (linux_trad_target): Delete function.
9549         (linux_nat_trad_target): New class.
9550         * mips-linux-nat.c (mips_linux_nat_target): New class.
9551         (super_fetch_registers, super_store_registers, super_close):
9552         Delete.
9553         (the_mips_linux_nat_target): New.
9554         (mips64_linux_regsets_fetch_registers)
9555         (mips64_linux_regsets_store_registers)
9556         (mips64_linux_fetch_registers, mips64_linux_store_registers)
9557         (mips_linux_register_u_offset, mips_linux_read_description)
9558         (mips_linux_can_use_hw_breakpoint)
9559         (mips_linux_stopped_by_watchpoint)
9560         (mips_linux_stopped_data_address)
9561         (mips_linux_region_ok_for_hw_watchpoint)
9562         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
9563         (mips_linux_close): Refactor as methods of mips_linux_nat.
9564         (_initialize_mips_linux_nat): Adjust to C++ification.
9565
9566         * aix-thread.c (aix_thread_target): New class.
9567         (aix_thread_ops): Now an aix_thread_target.
9568         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
9569         (aix_thread_fetch_registers, aix_thread_store_registers)
9570         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
9571         (aix_thread_thread_alive, aix_thread_pid_to_str)
9572         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
9573         Refactor as methods of aix_thread_target.
9574         (init_aix_thread_ops): Delete.
9575         (_initialize_aix_thread): Remove references to init_aix_thread_ops
9576         and complete_target_initialization.
9577         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
9578         (rs6000_nat_target): New class.
9579         (the_rs6000_nat_target): New.
9580         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
9581         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
9582         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
9583         (super_create_inferior): Delete.
9584         (_initialize_rs6000_nat): Adjust to C++ification.
9585
9586         * arm-linux-nat.c (arm_linux_nat_target): New class.
9587         (the_arm_linux_nat_target): New.
9588         (arm_linux_fetch_inferior_registers)
9589         (arm_linux_store_inferior_registers, arm_linux_read_description)
9590         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
9591         (arm_linux_remove_hw_breakpoint)
9592         (arm_linux_region_ok_for_hw_watchpoint)
9593         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
9594         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
9595         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
9596         arm_linux_nat_target.
9597         (_initialize_arm_linux_nat): Adjust to C++ification.
9598
9599         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
9600         (the_aarch64_linux_nat_target): New.
9601         (aarch64_linux_fetch_inferior_registers)
9602         (aarch64_linux_store_inferior_registers)
9603         (aarch64_linux_child_post_startup_inferior)
9604         (aarch64_linux_read_description)
9605         (aarch64_linux_can_use_hw_breakpoint)
9606         (aarch64_linux_insert_hw_breakpoint)
9607         (aarch64_linux_remove_hw_breakpoint)
9608         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
9609         (aarch64_linux_region_ok_for_hw_watchpoint)
9610         (aarch64_linux_stopped_data_address)
9611         (aarch64_linux_stopped_by_watchpoint)
9612         (aarch64_linux_watchpoint_addr_within_range)
9613         (aarch64_linux_can_do_single_step): Refactor as methods of
9614         aarch64_linux_nat_target.
9615         (super_post_startup_inferior): Delete.
9616         (_initialize_aarch64_linux_nat): Adjust to C++ification.
9617
9618         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
9619         (the_hppa_linux_nat_target): New.
9620         (hppa_linux_fetch_inferior_registers)
9621         (hppa_linux_store_inferior_registers): Refactor as methods of
9622         hppa_linux_nat_target.
9623         (_initialize_hppa_linux_nat): Adjust to C++ification.
9624
9625         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
9626         (the_ia64_linux_nat_target): New.
9627         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
9628         (ia64_linux_stopped_data_address)
9629         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
9630         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
9631         ia64_linux_nat_target methods.
9632         (super_xfer_partial): Delete.
9633         (_initialize_ia64_linux_nat): Adjust to C++ification.
9634
9635         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
9636         (the_m32r_linux_nat_target): New.
9637         (m32r_linux_fetch_inferior_registers)
9638         (m32r_linux_store_inferior_registers): Refactor as
9639         m32r_linux_nat_target methods.
9640         (_initialize_m32r_linux_nat): Adjust to C++ification.
9641
9642         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
9643         (the_m68k_linux_nat_target): New.
9644         (m68k_linux_fetch_inferior_registers)
9645         (m68k_linux_store_inferior_registers): Refactor as
9646         m68k_linux_nat_target methods.
9647         (_initialize_m68k_linux_nat): Adjust to C++ification.
9648
9649         * s390-linux-nat.c (s390_linux_nat_target): New class.
9650         (the_s390_linux_nat_target): New.
9651         (s390_linux_fetch_inferior_registers)
9652         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
9653         (s390_insert_watchpoint, s390_remove_watchpoint)
9654         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
9655         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
9656         (s390_auxv_parse, s390_read_description): Refactor as methods of
9657         s390_linux_nat_target.
9658         (_initialize_s390_nat): Adjust to C++ification.
9659
9660         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
9661         (the_sparc_linux_nat_target): New.
9662         (_initialize_sparc_linux_nat): Adjust to C++ification.
9663         * sparc-nat.c (sparc_fetch_inferior_registers)
9664         (sparc_store_inferior_registers): Remove target_ops parameter.
9665         * sparc-nat.h (sparc_fetch_inferior_registers)
9666         (sparc_store_inferior_registers): Remove target_ops parameter.
9667         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
9668         (the_sparc64_linux_nat_target): New.
9669         (_initialize_sparc64_linux_nat): Adjust to C++ification.
9670
9671         * spu-linux-nat.c (spu_linux_nat_target): New class.
9672         (the_spu_linux_nat_target): New.
9673         (spu_child_post_startup_inferior, spu_child_post_attach)
9674         (spu_child_wait, spu_fetch_inferior_registers)
9675         (spu_store_inferior_registers, spu_xfer_partial)
9676         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
9677         methods.
9678         (_initialize_spu_nat): Adjust to C++ification.
9679
9680         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
9681         (the_tilegx_linux_nat_target): New.
9682         (fetch_inferior_registers, store_inferior_registers):
9683         Refactor as methods.
9684         (_initialize_tile_linux_nat): Adjust to C++ification.
9685
9686         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
9687         (the_xtensa_linux_nat_target): New.
9688         (xtensa_linux_fetch_inferior_registers)
9689         (xtensa_linux_store_inferior_registers): Refactor as
9690         xtensa_linux_nat_target methods.
9691         (_initialize_xtensa_linux_nat): Adjust to C++ification.
9692
9693         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
9694         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
9695         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
9696         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
9697         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
9698         (fbsd_stopped_by_sw_breakpoint)
9699         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
9700         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
9701         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
9702         (fbsd_post_startup_inferior, fbsd_post_attach)
9703         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
9704         (fbsd_set_syscall_catchpoint)
9705         (super_xfer_partial, super_resume, super_wait)
9706         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
9707         (fbsd_handle_debug_trap): Remove target_ops parameter.
9708         (fbsd_nat_add_target): Delete.
9709         * fbsd-nat.h: Include "inf-ptrace.h".
9710         (fbsd_nat_add_target): Delete.
9711         (USE_SIGTRAP_SIGINFO): Define.
9712         (fbsd_nat_target): New class.
9713
9714         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
9715         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
9716         (amd64bsd_target): Delete.
9717         * amd64-bsd-nat.h: New file.
9718         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
9719         "x86-bsd-nat.h".
9720         (amd64_fbsd_nat_target): New class.
9721         (the_amd64_fbsd_nat_target): New.
9722         (amd64fbsd_read_description): Refactor as method of
9723         amd64_fbsd_nat_target.
9724         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9725         (_initialize_amd64fbsd_nat): Adjust to C++ification.
9726         * amd64-nat.h (amd64bsd_target): Delete function declaration.
9727         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
9728         (i386bsd_store_inferior_registers): Remove target_ops parameter.
9729         (i386bsd_target): Delete.
9730         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
9731         (i386bsd_fetch_inferior_registers)
9732         (i386bsd_store_inferior_registers): Declare.
9733         (i386_bsd_nat_target): New class.
9734         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
9735         (the_i386_fbsd_nat_target): New.
9736         (i386fbsd_resume, i386fbsd_read_description): Refactor as
9737         i386_fbsd_nat_target methods.
9738         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9739         (_initialize_i386fbsd_nat): Adjust to C++ification.
9740         * x86-bsd-nat.c (super_mourn_inferior): Delete.
9741         (x86bsd_mourn_inferior, x86bsd_target): Delete.
9742         (_initialize_x86_bsd_nat): Adjust to C++ification.
9743         * x86-bsd-nat.h: Include "x86-nat.h".
9744         (x86bsd_target): Delete declaration.
9745         (x86bsd_nat_target): New class.
9746
9747         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
9748         (the_aarch64_fbsd_nat_target): New.
9749         (aarch64_fbsd_fetch_inferior_registers)
9750         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
9751         aarch64_fbsd_nat_target.
9752         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
9753         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
9754         (the_alpha_bsd_nat_target): New.
9755         (alphabsd_fetch_inferior_registers)
9756         (alphabsd_store_inferior_registers): Refactor as
9757         alpha_bsd_nat_target methods.
9758         (_initialize_alphabsd_nat): Refactor as methods of
9759         alpha_bsd_nat_target.
9760         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
9761         (the_amd64_nbsd_nat_target): New.
9762         (_initialize_amd64nbsd_nat): Adjust to C++ification.
9763         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
9764         (the_amd64_obsd_nat_target): New.
9765         (_initialize_amd64obsd_nat): Adjust to C++ification.
9766         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
9767         (the_arm_fbsd_nat_target): New.
9768         (arm_fbsd_fetch_inferior_registers)
9769         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
9770         (_initialize_arm_fbsd_nat): Refactor as methods of
9771         arm_fbsd_nat_target.
9772         (_initialize_arm_fbsd_nat): Adjust to C++ification.
9773         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
9774         (the_arm_netbsd_nat_target): New.
9775         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
9776         arm_netbsd_nat_target.
9777         (_initialize_arm_netbsd_nat): Adjust to C++ification.
9778         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
9779         (the_hppa_nbsd_nat_target): New.
9780         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
9781         hppa_nbsd_nat_target methods.
9782         (_initialize_hppanbsd_nat): Adjust to C++ification.
9783         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
9784         (the_hppa_obsd_nat_target): New.
9785         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
9786         methods of hppa_obsd_nat_target.
9787         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
9788         add_target.
9789         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
9790         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
9791         add_target.
9792         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
9793         (_initialize_i386obsd_nat): Use add_target.
9794         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
9795         (the_m68k_bsd_nat_target): New.
9796         (m68kbsd_fetch_inferior_registers)
9797         (m68kbsd_store_inferior_registers): Refactor as methods of
9798         m68k_bsd_nat_target.
9799         (_initialize_m68kbsd_nat): Adjust to C++ification.
9800         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
9801         (the_mips_fbsd_nat_target): New.
9802         (mips_fbsd_fetch_inferior_registers)
9803         (mips_fbsd_store_inferior_registers): Refactor as methods of
9804         mips_fbsd_nat_target.
9805         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
9806         add_target.
9807         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
9808         (the_mips_nbsd_nat_target): New.
9809         (mipsnbsd_fetch_inferior_registers)
9810         (mipsnbsd_store_inferior_registers): Refactor as methods of
9811         mips_nbsd_nat_target.
9812         (_initialize_mipsnbsd_nat): Adjust to C++ification.
9813         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
9814         (the_mips64_obsd_nat_target): New.
9815         (mips64obsd_fetch_inferior_registers)
9816         (mips64obsd_store_inferior_registers): Refactor as methods of
9817         mips64_obsd_nat_target.
9818         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
9819         add_target.
9820         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
9821         nbsd_nat_target.
9822         * nbsd-nat.h: Include "inf-ptrace.h".
9823         (nbsd_nat_target): New class.
9824         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
9825         (obsd_wait): Refactor as methods of obsd_nat_target.
9826         (obsd_add_target): Delete.
9827         * obsd-nat.h: Include "inf-ptrace.h".
9828         (obsd_nat_target): New class.
9829         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
9830         (the_ppc_fbsd_nat_target): New.
9831         (ppcfbsd_fetch_inferior_registers)
9832         (ppcfbsd_store_inferior_registers): Refactor as methods of
9833         ppc_fbsd_nat_target.
9834         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
9835         add_target.
9836         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
9837         (the_ppc_nbsd_nat_target): New.
9838         (ppcnbsd_fetch_inferior_registers)
9839         (ppcnbsd_store_inferior_registers): Refactor as methods of
9840         ppc_nbsd_nat_target.
9841         (_initialize_ppcnbsd_nat): Adjust to C++ification.
9842         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
9843         (the_ppc_obsd_nat_target): New.
9844         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
9845         methods of ppc_obsd_nat_target.
9846         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
9847         add_target.
9848         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
9849         (the_sh_nbsd_nat_target): New.
9850         (shnbsd_fetch_inferior_registers)
9851         (shnbsd_store_inferior_registers): Refactor as methods of
9852         sh_nbsd_nat_target.
9853         (_initialize_shnbsd_nat): Adjust to C++ification.
9854         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
9855         (inf_ptrace_xfer_partial): Delete.
9856         (sparc_xfer_partial, sparc_target): Delete.
9857         * sparc-nat.h (sparc_fetch_inferior_registers)
9858         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
9859         (sparc_target): Delete function declaration.
9860         (sparc_target): New template class.
9861         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
9862         (_initialize_sparcnbsd_nat): Adjust to C++ification.
9863         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
9864         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
9865         add_target.
9866         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
9867         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
9868         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
9869         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
9870         add_target.
9871         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
9872         (the_vax_bsd_nat_target): New.
9873         (vaxbsd_fetch_inferior_registers)
9874         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
9875         methods.
9876         (_initialize_vaxbsd_nat): Adjust to C++ification.
9877
9878         * bsd-kvm.c (bsd_kvm_target): New class.
9879         (bsd_kvm_ops): Now a bsd_kvm_target.
9880         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
9881         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
9882         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
9883         bsd_kvm_target.
9884         (bsd_kvm_return_one): Delete.
9885         (bsd_kvm_add_target): Adjust to C++ification.
9886
9887         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
9888         (nto_procfs_target_procfs): New classes.
9889         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
9890         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
9891         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
9892         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
9893         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
9894         (procfs_remove_hw_breakpoint, procfs_resume)
9895         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
9896         (procfs_kill_inferior, procfs_store_registers)
9897         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
9898         as methods of nto_procfs_target.
9899         (nto_procfs_ops): Now an nto_procfs_target_procfs.
9900         (nto_native_ops): Delete.
9901         (procfs_open, procfs_native_open): Delete.
9902         (nto_native_ops): Now an nto_procfs_target_native.
9903         (init_procfs_targets): Adjust to C++ification.
9904         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
9905         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
9906         Refactor as methods of nto_procfs_target.
9907
9908         * go32-nat.c (go32_nat_target): New class.
9909         (the_go32_nat_target): New.
9910         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
9911         (go32_store_registers, go32_xfer_partial, go32_files_info)
9912         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
9913         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
9914         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
9915         (go32_pid_to_str): Refactor as methods of go32_nat_target.
9916         (go32_target): Delete.
9917         (_initialize_go32_nat): Adjust to C++ification.
9918
9919         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
9920         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
9921         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
9922         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
9923         gnu_nat_target.
9924         (gnu_target): Delete.
9925         * gnu-nat.h (gnu_target): Delete.
9926         (gnu_nat_target): New class.
9927         * i386-gnu-nat.c (gnu_base_target): New.
9928         (i386_gnu_nat_target): New class.
9929         (the_i386_gnu_nat_target): New.
9930         (_initialize_i386gnu_nat): Adjust to C++ification.
9931
9932 2018-05-02  Pedro Alves  <palves@redhat.com>
9933
9934         * bfd-target.c (target_bfd_xclose): Rename to ...
9935         (target_bfd_close): ... this.
9936         (target_bfd_reopen): Adjust.
9937         * target.c (target_close): Remove references to to_xclose.
9938         * target.h (target_ops::to_xclose): Delete.
9939         (target_ops::to_close): Update comments.
9940
9941 2018-05-02  Pedro Alves  <palves@redhat.com>
9942
9943         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
9944         "linux-nat.h".
9945         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
9946         * inf-ptrace.c (inf_ptrace_register_u_offset)
9947         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9948         (inf_ptrace_store_register, inf_ptrace_store_registers)
9949         (inf_ptrace_trad_target): Move to ...
9950         * linux-nat-trad.c: ... this new file.
9951         * linux-nat-trad.h: New file.
9952         * linux-nat.c (linux_target_install_ops): Make extern.
9953         (linux_trad_target): Delete.
9954         * linux-nat.h (linux_trad_target): Delete declaration.
9955         (linux_target_install_ops): Declare.
9956         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
9957         "linux-nat.h".
9958
9959 2018-05-02  Pedro Alves  <palves@redhat.com>
9960
9961         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9962         procfs_target/add_target here.
9963         * procfs.c (procfs_target): Make static.
9964         (_initialize_procfs): Call add_target here.
9965         * procfs.h (struct target_ops): Remove forward declaration.
9966         (procfs_target): Remove declaration.
9967         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
9968
9969 2018-05-02  Pedro Alves  <palves@redhat.com>
9970
9971         * procfs.c (procfs_stopped_by_watchpoint)
9972         (procfs_insert_watchpoint, procfs_remove_watchpoint)
9973         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
9974         Forward declare.
9975         (procfs_use_watchpoints): Delete, move contents...
9976         (procfs_target): ... here.
9977         * procfs.h (procfs_use_watchpoints): Delete declaration.
9978         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9979         procfs_use_watchpoints.
9980         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
9981         procfs_use_watchpoints.
9982
9983 2018-05-02  Tom Tromey  <tom@tromey.com>
9984
9985         PR python/20084:
9986         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
9987         and var_zuinteger_unlimited.
9988         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
9989         and PARAM_ZUINTEGER_UNLIMITED.
9990         (set_parameter_value): Handle var_zuinteger and
9991         var_zuinteger_unlimited.
9992         (add_setshow_generic): Likewise.
9993         (parmpy_init): Likewise.
9994
9995 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
9996
9997         PR rust/23124
9998         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
9999         pointer is not null before dereferencing it.
10000
10001 2018-04-30  Tom Tromey  <tom@tromey.com>
10002
10003         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10004         is_mi_like_p.
10005
10006 2018-04-30  Tom Tromey  <tom@tromey.com>
10007
10008         * breakpoint.c (mention): Remove use of is_mi_like_p.
10009         (print_mention_ranged_breakpoint): Likewise.
10010         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10011         of is_mi_like_p.
10012
10013 2018-04-30  Tom Tromey  <tom@tromey.com>
10014
10015         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10016
10017 2018-04-30  Tom Tromey  <tom@tromey.com>
10018
10019         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10020         (info_spu_event_command): Remove some uses of is_mi_like_p.
10021
10022 2018-04-30  Tom Tromey  <tom@tromey.com>
10023
10024         * python/py-framefilter.c (py_print_single_arg)
10025         (enumerate_locals, py_print_args, py_print_frame): Remove some
10026         uses of is_mi_like_p.
10027
10028 2018-04-30  Tom Tromey  <tom@tromey.com>
10029
10030         * ui-out.c: Update.
10031         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10032         * ui-out.h (ui_out::is_mi_like_p): Now const.
10033         (ui_out::do_is_mi_like_p): Now const.
10034         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10035
10036 2018-04-30  Tom Tromey  <tom@tromey.com>
10037
10038         * varobj.c (varobj_set_visualizer): Use new_reference.
10039         * python/python.c (gdbpy_decode_line): Use new_reference.
10040         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10041         new_reference.
10042
10043 2018-04-30  Tom Tromey  <tom@tromey.com>
10044
10045         * varobj.c (install_new_value): Use new_reference.
10046         * value.h (value_incref): Return void.  Swap intro comment with
10047         value_decref.
10048         * value.c (set_value_parent): Use new_reference.
10049         (value_incref): Return void.  Update intro comment.
10050         (release_value): Use new_reference.
10051         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10052
10053 2018-04-30  Tom Tromey  <tom@tromey.com>
10054
10055         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10056         * gdb_bfd.h (new_bfd_ref): Remove.
10057         (gdb_bfd_open): Update comment.
10058         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10059         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10060         (gdb_bfd_fdopenr): Use new_reference.
10061         * exec.c (exec_file_attach): Use new_reference.
10062
10063 2018-04-30  Tom Tromey  <tom@tromey.com>
10064
10065         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10066         method.
10067
10068 2018-04-30  Tom Tromey  <tom@tromey.com>
10069
10070         * jit.c (jit_read_code_entry): Use type_align.
10071         * i386-tdep.c (i386_gdbarch_init): Don't call
10072         set_gdbarch_long_long_align_bit.
10073         * gdbarch.sh: Remove long_long_align_bit.
10074         * gdbarch.c, gdbarch.h: Rebuild.
10075         * arc-tdep.c (arc_type_align): New function.
10076         (arc_gdbarch_init): Use arc_type_align.  Don't call
10077         set_gdbarch_long_long_align_bit.
10078
10079 2018-04-30  Tom Tromey  <tom@tromey.com>
10080
10081         * rust-lang.c (rust_type_alignment): Remove.
10082         (rust_composite_type): Use type_align.
10083
10084 2018-04-30  Tom Tromey  <tom@tromey.com>
10085
10086         * NEWS: Mention Type.align.
10087         * python/py-type.c (typy_get_alignof): New function.
10088         (type_object_getset): Add "alignof".
10089
10090 2018-04-30  Tom Tromey  <tom@tromey.com>
10091
10092         PR exp/17095:
10093         * NEWS: Update.
10094         * std-operator.def (UNOP_ALIGNOF): New operator.
10095         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10096         New.
10097         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10098         * c-lang.c (c_op_print_tab): Add alignof.
10099         * c-exp.y (ALIGNOF): New token.
10100         (exp): Add "ALIGNOF" production.
10101         (ident_tokens): Add _Alignof and alignof.
10102
10103 2018-04-30  Tom Tromey  <tom@tromey.com>
10104
10105         * i386-tdep.c (i386_type_align): New function.
10106         (i386_gdbarch_init): Update.
10107         * gdbarch.sh (type_align): New method.
10108         * gdbarch.c, gdbarch.h: Rebuild.
10109         * arch-utils.h (default_type_align): Declare.
10110         * arch-utils.c (default_type_align): New function.
10111         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10112         (struct type) <align_log2>: New field.
10113         <instance_flags>: Now a bitfield.
10114         (TYPE_RAW_ALIGN): New macro.
10115         (type_align, type_raw_align, set_type_align): Declare.
10116         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10117         functions.
10118         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10119         (get_alignment, maybe_set_alignment): New functions.
10120         (read_structure_type, read_enumeration_type, read_array_type)
10121         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10122         (read_subrange_type, read_base_type): Set type alignment.
10123
10124 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10125
10126         * dwarf2read.c (read_index_from_section): Use bool.
10127
10128 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10129
10130         PR gdb/22950
10131         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10132         with #ifdef.
10133
10134 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10135
10136         PR build/22873
10137         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10138         last step, and do it atomically.
10139
10140 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10141
10142         * compile/compile-c-types.c (convert_int, convert_float):
10143         Update for C FE v1.
10144
10145 2018-04-27  Tom Tromey  <tom@tromey.com>
10146
10147         PR rust/22545:
10148         * rust-lang.c (rust_inclusive_range_type_p): New function.
10149         (rust_range): Handle inclusive ranges.
10150         (rust_compute_range): Likewise.
10151         * rust-exp.y (struct rust_op) <inclusive>: New field.
10152         (DOTDOTEQ): New constant.
10153         (range_expr): Add "..=" productions.
10154         (operator_tokens): Add "..=" token.
10155         (ast_range): Add "inclusive" parameter.
10156         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10157         ranges.
10158         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10159         bounds values.
10160         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10161         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10162         Update comments.
10163         * expprint.c (print_subexp_standard): Handle new bounds values.
10164         (dump_subexp_body_standard): Likewise.
10165
10166 2018-04-27  Tom Tromey  <tom@tromey.com>
10167
10168         * configure: Rebuild.
10169         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10170         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10171         "OVERRIDE".
10172         (class symbol_needs_eval_context): Likewise.
10173         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10174         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10175         "virtual".
10176         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10177         "override".
10178         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10179         * aarch64-tdep.c (instruction_reader::read): Use "override".
10180         (instruction_reader_test::read): Likewise.
10181         * arm-tdep.c (instruction_reader::read): Use "override".
10182         (instruction_reader_thumb::read): Likewise.
10183
10184 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10185
10186         PR remote/9665
10187         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10188         instead of remote_send.
10189         (remote_send): Remove.
10190
10191 2018-04-26  Pedro Alves  <palves@redhat.com>
10192
10193         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10194         find_function_start_sal instead of find_pc_line.
10195
10196 2018-04-26  Pedro Alves  <palves@redhat.com>
10197
10198         * breakpoint.c (set_breakpoint_location_function): Handle
10199         mst_data_gnu_ifunc.
10200         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10201         * elfread.c (elf_symtab_read): Give data symbols with
10202         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10203         (elf_rel_plt_read): Update comment.
10204         * linespec.c (convert_linespec_to_sals): Handle
10205         mst_data_gnu_ifunc.
10206         (minsym_found): Handle mst_data_gnu_ifunc.
10207         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10208         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10209         * parse.c (find_minsym_type_and_address): Handle
10210         mst_data_gnu_ifunc.
10211         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10212         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10213         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10214         comment.
10215         <mst_data_gnu_ifunc>: New enumerator.
10216
10217 2018-04-26  Pedro Alves  <palves@redhat.com>
10218
10219         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10220         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10221         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10222         Handle it.
10223         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10224         (lookup_minimal_symbol_by_pc): Adjust.
10225         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10226         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10227         * minsyms.h (lookup_msym_prefer): New enum.
10228         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10229         parameter by a lookup_msym_prefer parameter.
10230
10231 2018-04-26  Pedro Alves  <palves@redhat.com>
10232
10233         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10234         ends in "@plt" instead of looking at the symbol's section.
10235
10236 2018-04-26  Pedro Alves  <palves@redhat.com>
10237
10238         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10239         all references.
10240         (find_pc_partial_function_gnu_ifunc): Rename to ...
10241         (find_pc_partial_function): ... this, and remove references to
10242         'is_gnu_ifunc_p'.
10243         (find_pc_partial_function): Delete old implementation.
10244         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10245
10246 2018-04-26  Pedro Alves  <palves@redhat.com>
10247
10248         * linespec.c (struct bound_minimal_symbol_search_key): New.
10249         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10250         skip first line if we found a GNU ifunc minimal symbol by name.
10251         (compare_msymbols): Change parameters to work with a destructured
10252         lhs minsym.
10253         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10254         functions.
10255
10256 2018-04-26  Pedro Alves  <palves@redhat.com>
10257
10258         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10259         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10260         address/name.
10261         (add_location_to_breakpoint): Store the minsym and the objfile in
10262         the breakpoint location.
10263         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10264         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10265         Record the minsym in the sal.
10266         * symtab.h (symtab_and_line) <msymbol>: New field.
10267
10268 2018-04-26  Pedro Alves  <palves@redhat.com>
10269
10270         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10271         unless we actually resolved the ifunc.
10272
10273 2018-04-26  Pedro Alves  <palves@redhat.com>
10274
10275         * c-exp.y (variable production): Prefer ifunc minsyms over
10276         regular function symbols.
10277         * symtab.c (find_gnu_ifunc): New function.
10278         * minsyms.h (lookup_msym_prefer): New enum.
10279         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10280         parameter by a lookup_msym_prefer parameter.
10281         * symtab.h (find_gnu_ifunc): New declaration.
10282
10283 2018-04-26  Pedro Alves  <palves@redhat.com>
10284
10285         * blockframe.c (find_gnu_ifunc_target_type): New function.
10286         (find_function_type): New.
10287         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10288         return a value with a memory address.
10289         (eval_call): For calls to GNU ifunc functions, try to find the
10290         type of the target function from the type that the resolver
10291         returns.
10292         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10293         symbols.
10294         * infcall.c (find_function_return_type): Delete.
10295         (find_function_addr): Add 'function_type' parameter.  For calls to
10296         GNU ifunc functions, try to find the type of the target function
10297         from the type that the resolver returns, and return it via
10298         FUNCTION_TYPE.
10299         (call_function_by_hand_dummy): Adjust to use the function type
10300         returned by find_function_addr.
10301         (find_function_addr): Add 'function_type' parameter and move
10302         description here.
10303         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10304         declarations.
10305
10306 2018-04-26  Pedro Alves  <palves@redhat.com>
10307
10308         * c-exp.y (variable production): Skip finding an alias for ifunc
10309         symbols.
10310
10311 2018-04-26  Pedro Alves  <palves@redhat.com>
10312
10313         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10314
10315 2018-04-25  Pedro Alves  <palves@redhat.com>
10316
10317         * infcmd.c (kill_command): Print the pid as string, not the whole
10318         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10319         message.
10320         * remote.c (remote_detach_1): Print the pid as string, not the
10321         whole thread's ptid.
10322
10323 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10324             Sergio Durigan Junior  <sergiodj@redhat.com>
10325             Pedro Alves  <palves@redhat.com>
10326
10327         * infcmd.c (kill_command): Print message when inferior has
10328         been killed.
10329         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10330         '1'.
10331         (add_inferior): Improve message printed when
10332         'print_inferior_events' is on.
10333         (exit_inferior): Remove message printed when
10334         'print_inferior_events' is on.
10335         (detach_inferior): Improve message printed when
10336         'print_inferior_events' is on.
10337         (initialize_inferiors): Use 'add_inferior_silent' to set
10338         'current_inferior_'.
10339         * inferior.h (print_inferior_events): Declare here as
10340         'extern'.
10341         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10342         '[Detaching...]' messages when 'print_inferior_events' is on.
10343         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10344         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10345         'Detaching after fork from child...', replace it by '... from
10346         parent...'.
10347         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10348         prefix/suffix when printing 'Detaching...' messages.  Print
10349         them when 'print_inferior_events' is on.
10350         * remote.c (remote_detach_1): Print message when detaching
10351         from inferior and '!is_fork_parent'.
10352
10353 2018-04-24  Tom Tromey  <tom@tromey.com>
10354
10355         * cli-out.h: Reindent.
10356
10357 2018-04-24  Tom Tromey  <tom@tromey.com>
10358
10359         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10360         (cli_ui_out::do_field_string): Use fputs_filtered.
10361         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10362
10363 2018-04-23  Tom Tromey  <tom@tromey.com>
10364
10365         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10366         gdb::unique_xmalloc_ptr.
10367
10368 2018-04-23  Tom Tromey  <tom@tromey.com>
10369
10370         * configure: Rebuild.
10371
10372 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10373
10374         PR gdb/23095
10375         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10376         prepare_for_testing.  Set normal_bp to r_debug_state if target
10377         is bsd.
10378
10379 2018-04-21  Pedro Alves  <palves@redhat.com>
10380             Rajendra SY  <rajendra.sy@gmail.com>
10381
10382         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10383         * remote.c (extended_remote_attach): In all-stop mode, mark the
10384         thread as executing.
10385
10386 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10387
10388         * thread.c (thread_apply_all_command): Fix comment.
10389         (thread_command): Fix comment.
10390
10391 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10392
10393         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10394         parameter.
10395         * features/aarch64-core.c (create_feature_aarch64_core):
10396         Regenerate.
10397         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10398         Likewise.
10399         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10400         Likewise.
10401         * features/i386/32bit-avx512.c
10402         (create_feature_i386_32bit_avx512): Likewise.
10403         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10404         Likewise.
10405         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10406         Likewise.
10407         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10408         Likewise.
10409         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10410         Likewise.
10411         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10412         Likewise.
10413         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10414         Likewise.
10415         * features/i386/64bit-avx512.c
10416         (create_feature_i386_64bit_avx512): Likewise.
10417         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10418         Likewise.
10419         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10420         Likewise.
10421         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10422         Likewise.
10423         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10424         Likewise.
10425         * features/i386/64bit-segments.c
10426         (create_feature_i386_64bit_segments): Likewise.
10427         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10428         Likewise.
10429         * features/i386/x32-core.c
10430         (create_feature_i386_x32_core): Likewise.
10431         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10432         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10433         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10434         * target-descriptions.c: In generated code, don't pass xml
10435         filename.
10436
10437 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10438
10439         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10440         (print_xml_feature::visit_post): Likewise.
10441         (print_xml_feature::visit): Likewise.
10442         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10443         (print_xml_feature): Add new class.
10444         * regformats/regdat.sh: Null xmltarget on feature targets.
10445         * target-descriptions.c (struct target_desc): Add xmltarget.
10446         (maintenance_check_tdesc_xml_convert): Add unittest function.
10447         (tdesc_get_features_xml): Add function to get xml.
10448         (maintenance_check_xml_descriptions): Test xml generation.
10449         * xml-tdesc.c (string_read_description_xml): Add function.
10450         * xml-tdesc.h (string_read_description_xml): Add declaration.
10451
10452 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10453
10454         * features/Makefile: Add feature marker to targets with new style
10455         target descriptions.
10456         * regformats/aarch64.dat: Regenerate.
10457         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10458         * regformats/i386/amd64-avx-linux.dat: Likewise.
10459         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10460         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10461         * regformats/i386/amd64-linux.dat: Likewise.
10462         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10463         * regformats/i386/amd64.dat: Likewise.
10464         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10465         * regformats/i386/i386-avx-linux.dat: Likewise.
10466         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10467         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10468         * regformats/i386/i386-linux.dat: Likewise.
10469         * regformats/i386/i386-mmx-linux.dat: Likewise.
10470         * regformats/i386/i386-mpx-linux.dat: Likewise.
10471         * regformats/i386/i386.dat: Likewise.
10472         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10473         * regformats/i386/x32-avx-linux.dat: Likewise.
10474         * regformats/i386/x32-linux.dat: Likewise.
10475         * regformats/tic6x-c62x-linux.dat: Likewise.
10476         * regformats/tic6x-c64x-linux.dat: Likewise.
10477         * regformats/tic6x-c64xp-linux.dat: Likewise.
10478         * regformats/regdat.sh: Parse feature marker.
10479
10480 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10481
10482         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
10483         (tdesc_osabi_name): Likewise.
10484         * target-descriptions.c (tdesc_architecture_name): Add new
10485         function.
10486         (tdesc_osabi_name): Likewise.
10487
10488 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10489
10490         * common/tdesc.c (tdesc_predefined_type): Move to here.
10491         (tdesc_named_type): Likewise.
10492         (tdesc_create_vector): Likewise.
10493         (tdesc_create_struct): Likewise.
10494         (tdesc_set_struct_size): Likewise.
10495         (tdesc_create_union): Likewise.
10496         (tdesc_create_flags): Likewise.
10497         (tdesc_create_enum): Likewise.
10498         (tdesc_add_field): Likewise.
10499         (tdesc_add_typed_bitfield): Likewise.
10500         (tdesc_add_bitfield): Likewise.
10501         (tdesc_add_flag): Likewise.
10502         (tdesc_add_enum_value): Likewise.
10503         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
10504         (struct tdesc_type_vector): Likewise.
10505         (struct tdesc_type_field): Likewise.
10506         (struct tdesc_type_with_fields): Likewise.
10507         (tdesc_create_enum): Add declaration.
10508         (tdesc_add_typed_bitfield): Likewise.
10509         (tdesc_add_enum_value): Likewise.
10510         * target-descriptions.c (tdesc_type_field): Move from here.
10511         (tdesc_type_builtin): Likewise.
10512         (tdesc_type_vector): Likewise.
10513         (tdesc_type_with_fields): Likewise.
10514         (tdesc_predefined_types): Likewise.
10515         (tdesc_named_type): Likewise.
10516         (tdesc_create_vector): Likewise.
10517         (tdesc_create_struct): Likewise.
10518         (tdesc_set_struct_size): Likewise.
10519         (tdesc_create_union): Likewise.
10520         (tdesc_create_flags): Likewise.
10521         (tdesc_create_enum): Likewise.
10522         (tdesc_add_field): Likewise.
10523         (tdesc_add_typed_bitfield): Likewise.
10524         (tdesc_add_bitfield): Likewise.
10525         (tdesc_add_flag): Likewise.
10526         (tdesc_add_enum_value): Likewise.
10527         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
10528         (tdesc_add_typed_bitfield): Likewise.
10529         (tdesc_add_enum_value): Likewise.
10530
10531 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10532
10533         * common/tdesc.c (tdesc_feature::accept): Move to here.
10534         (tdesc_feature::operator==): Likewise.
10535         (tdesc_create_reg): Likewise.
10536         * common/tdesc.h (tdesc_type_kind): Likewise.
10537         (struct tdesc_type): Likewise.
10538         (struct tdesc_feature): Likewise.
10539         * regformats/regdat.sh: Create a feature.
10540         * target-descriptions.c (tdesc_type_kind): Move from here.
10541         (tdesc_type): Likewise.
10542         (tdesc_type_up): Likewise.
10543         (tdesc_feature): Likewise.
10544         (tdesc_create_reg): Likewise.
10545
10546 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10547
10548         * Makefile.in: Add arch/tdesc.c
10549         * common/tdesc.c: New file.
10550         * common/tdesc.h (tdesc_element_visitor): Move to here.
10551         (tdesc_element): Likewise.
10552         (tdesc_reg): Likewise.
10553         (tdesc_reg_up): Likewise.
10554         * regformats/regdef.h (reg): Add offset to constructors.
10555         * target-descriptions.c (tdesc_element_visitor): Move from here.
10556         (tdesc_element): Likewise.
10557         (tdesc_reg): Likewise.
10558         (tdesc_reg_up): Likewise.
10559
10560 2018-04-17  Tom Tromey  <tom@tromey.com>
10561
10562         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
10563         discriminant field.
10564
10565 2018-04-17  Tom Tromey  <tom@tromey.com>
10566
10567         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
10568
10569 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10570
10571         * symtab.c (print_symbol_info): Skip printing filename and line
10572         number when `last' is NULL.
10573         (symtab_symbol_info): Use empty string instead of NULL for first
10574         invocation of print_symbol_info.
10575         (rbreak_command): Pass NULL to `last' parameter of
10576         print_symbol_info.
10577
10578 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
10579
10580         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
10581         instead of nullptr.
10582
10583 2018-04-16  Pedro Alves  <palves@redhat.com>
10584
10585         * MAINTAINERS (sh): Remove.
10586         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
10587         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
10588         (ALLDEPFILES): Remove sh64-tdep.c.
10589         * NEWS: Mentions that support for SH-5/SH64 is removed.
10590         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
10591         (sh*-*-openbsd*): Ditto.
10592         (sh64-*-elf*): Remove.
10593         (sh*): Remove.
10594         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
10595         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
10596         * sh-tdep.c: No longer include "sh64-tdep.h".
10597         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
10598         * sh64-tdep.c, sh64-tdep.h: Remove files.
10599
10600 2018-04-16  Pedro Alves  <palves@redhat.com>
10601
10602         * MAINTAINERS: Remove m88k.
10603         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
10604         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
10605         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
10606         * NEWS: Mention that support for m88k was removed.
10607         * configure.host (m88*-*-*): Remove support.
10608         * configure.nat (m88k-*-*): Remove support.
10609         * configure.tgt (m88*-*-openbsd*): Remove.
10610         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
10611
10612 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
10613
10614         * configure.tgt (x86_tobjs): New variable.
10615         (amd64_tobjs, i386_tobjs): Use it.
10616
10617 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10618
10619         * symtab.c (print_symbol_info): Precede the symbol definition by
10620         the line number when available.
10621         * NEWS: Advertise this enhancement.
10622
10623 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10624
10625         * NEWS (New options): announce set/show record btrace cpu.
10626         * btrace.c: Include record-btrace.h.
10627         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
10628         the vendor is unknown.
10629         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
10630         Maybe overwrite the btrace configuration's cpu.
10631         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
10632         (btrace_fetch): Add cpu parameter.  Update callers.
10633         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
10634         Maybe overwrite the btrace configuration's cpu.  Skip enabling
10635         errata workarounds if the vendor is unknown.
10636         * python/py-record-btrace.c: Include record-btrace.h.
10637         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
10638         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
10639         * record-btrace.c (record_btrace_cpu_state_kind): New.
10640         (record_btrace_cpu): New.
10641         (set_record_btrace_cpu_cmdlist): New.
10642         (record_btrace_get_cpu): New.
10643         (require_btrace_thread, record_btrace_info)
10644         (record_btrace_resume_thread): Call record_btrace_get_cpu.
10645         (cmd_set_record_btrace_cpu_none): New.
10646         (cmd_set_record_btrace_cpu_auto): New.
10647         (cmd_set_record_btrace_cpu): New.
10648         (cmd_show_record_btrace_cpu): New.
10649         (_initialize_record_btrace): Initialize set/show record btrace cpu
10650         commands.
10651         * record-btrace.h (record_btrace_get_cpu): New.
10652
10653 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10654
10655         * record.c (set_record_command): Fix typo in message.
10656
10657 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10658
10659         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
10660
10661 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10662
10663         * infrun.c (process_event_stop_test): Call
10664         gdbarch_in_indirect_branch_thunk.
10665         * gdbarch.sh (in_indirect_branch_thunk): New.
10666         * gdbarch.c: Regenerated.
10667         * gdbarch.h: Regenerated.
10668         * x86-tdep.h: New.
10669         * x86-tdep.c: New.
10670         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
10671         (HFILES_NO_SRCDIR): Add x86-tdep.h.
10672         (ALLDEPFILES): Add x86-tdep.c.
10673         * arch-utils.h (default_in_indirect_branch_thunk): New.
10674         * arch-utils.c (default_in_indirect_branch_thunk): New.
10675         * i386-tdep: Include x86-tdep.h.
10676         (i386_in_indirect_branch_thunk): New.
10677         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
10678         function.
10679         * amd64-tdep: Include x86-tdep.h.
10680         (amd64_in_indirect_branch_thunk): New.
10681         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
10682
10683 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
10684
10685         PR gdb/23053
10686         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
10687         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
10688         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
10689         regression.
10690
10691 2018-04-12  Tom Tromey  <tom@tromey.com>
10692
10693         * rust-lang.c (rust_print_struct_def): Remove univariant code.
10694         (rust_evaluate_subexp): Likewise.
10695
10696 2018-04-12  Pedro Alves  <palves@redhat.com>
10697
10698         * procfs.c (procfs_detach): Make forward declaration's prototype
10699         match definition's protototype.
10700         (proc_get_LDT_entry): Remove stale do_cleanups call.
10701
10702 2018-04-12  Pedro Alves  <palves@redhat.com>
10703
10704         * target.h (target_ops::to_has_exited): Delete.
10705         (target_has_exited): Delete.
10706         * target-delegates.c: Regenerate.
10707
10708 2018-04-11  Pedro Alves  <palves@redhat.com>
10709
10710         * target.c (fileio_fh_t::t): Add comment.
10711         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10712         (target_fileio_close): Handle a NULL target.
10713         (invalidate_fileio_fh): New.
10714         (target_close): Call it.
10715         * remote.c (remote_hostio_send_command): No longer check whether
10716         remote_desc is open.
10717
10718 2018-04-11  Pedro Alves  <palves@redhat.com>
10719
10720         * target.c (fileio_fh_t): Make it a named struct instead of a
10721         typedef.
10722         (fileio_fh_t::is_closed): New method.
10723         (DEF_VEC_O (fileio_fh_t)): Remove.
10724         (fileio_fhandles): Now a std::vector.
10725         (is_closed_fileio_fh): Delete.
10726         (acquire_fileio_fd): Adjust.  Rename parameters.
10727         (release_fileio_fd): Adjust.
10728         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
10729         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10730         (target_fileio_close): Adjust.
10731
10732 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
10733
10734         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
10735         index.
10736
10737 2018-04-10  Pedro Alves  <palves@redhat.com>
10738
10739         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
10740         (scoped_finish_thread_state): New class.
10741         * infcmd.c (run_command_1): Use it instead of finish_thread_state
10742         cleanup.
10743         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
10744         (fetch_inferior_event, normal_stop): Likewise.
10745         * thread.c (finish_thread_state_cleanup): Delete.
10746
10747 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10748             Pedro Alves  <palves@redhat.com>
10749
10750         * value.c: Include "selftest.h" and "common/array-view.h".
10751         (struct range) <operator ==>: New.
10752         (test_ranges_contain): New.
10753         (check_ranges_vector): New.
10754         (test_insert_into_bit_range_vector): New.
10755         (_initialize_values): Register selftests.
10756         * common/array-view.h (operator==, operator!=): New.
10757
10758 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10759
10760         * common/gdb_vecs.h (unordered_remove): Add overload that takes
10761         an iterator.
10762         * inline-frame.c: Include <algorithm>.
10763         (struct inline_state): Add constructor.
10764         (inline_state_s): Remove.
10765         (DEF_VEC_O(inline_state_s)): Remove.
10766         (inline_states): Change type to std::vector.
10767         (find_inline_frame_state): Adjust to std::vector.
10768         (allocate_inline_frame_state): Remove.
10769         (clear_inline_frame_state): Adjust to std::vector.
10770         (skip_inline_frames): Adjust to std::vector.
10771
10772 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10773
10774         * tracepoint.h (struct trace_state_variable): Add constructor.
10775         <name>: Change type to std::string.
10776         * tracepoint.c (tsv_s): Remove.
10777         (DEF_VEC_O(tsv_s)): Remove.
10778         (tvariables): Change to std::vector.
10779         (create_trace_state_variable): Adjust to std::vector.
10780         (find_trace_state_variable): Likewise.
10781         (find_trace_state_variable_by_number): Likewise.
10782         (delete_trace_state_variable): Likewise.
10783         (trace_variable_command): Adjust to std::string.
10784         (delete_trace_variable_command): Likewise.
10785         (tvariables_info_1): Adjust to std::vector.
10786         (save_trace_state_variables): Likewise.
10787         (start_tracing): Likewise.
10788         (merge_uploaded_trace_state_variables): Adjust to std::vector
10789         and std::string.
10790         * target.h (struct target_ops)
10791         <to_download_trace_state_variable>: Pass reference to
10792         trace_state_variable.
10793         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
10794         * target-delegates.c: Re-generate.
10795         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
10796         (mi_tsv_deleted): Likewise.
10797         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
10798         * remote.c (remote_download_trace_state_variable): Change
10799         pointer to reference and adjust.
10800         * make-target-delegates (parse_argtypes): Handle references.
10801         (write_function_header): Likewise.
10802         (munge_type): Likewise.
10803
10804 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10805
10806         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10807         string_view-selftests.c.
10808         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
10809         testsuite.
10810         * unittests/basic_string_view/cons/char/1.cc: Likewise.
10811         * unittests/basic_string_view/cons/char/2.cc: Likewise.
10812         * unittests/basic_string_view/cons/char/3.cc: Likewise.
10813         * unittests/basic_string_view/element_access/char/1.cc:
10814         Likewise.
10815         * unittests/basic_string_view/element_access/char/empty.cc:
10816         Likewise.
10817         * unittests/basic_string_view/element_access/char/front_back.cc:
10818         Likewise.
10819         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
10820         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
10821         Likewise.
10822         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
10823         Likewise.
10824         * unittests/basic_string_view/modifiers/swap/char/1.cc:
10825         Likewise.
10826         * unittests/basic_string_view/operations/compare/char/1.cc:
10827         Likewise.
10828         * unittests/basic_string_view/operations/compare/char/13650.cc:
10829         Likewise.
10830         * unittests/basic_string_view/operations/copy/char/1.cc:
10831         Likewise.
10832         * unittests/basic_string_view/operations/data/char/1.cc:
10833         Likewise.
10834         * unittests/basic_string_view/operations/find/char/1.cc:
10835         Likewise.
10836         * unittests/basic_string_view/operations/find/char/2.cc:
10837         Likewise.
10838         * unittests/basic_string_view/operations/find/char/3.cc:
10839         Likewise.
10840         * unittests/basic_string_view/operations/find/char/4.cc:
10841         Likewise.
10842         * unittests/basic_string_view/operations/rfind/char/1.cc:
10843         Likewise.
10844         * unittests/basic_string_view/operations/rfind/char/2.cc:
10845         Likewise.
10846         * unittests/basic_string_view/operations/rfind/char/3.cc:
10847         Likewise.
10848         * unittests/basic_string_view/operations/substr/char/1.cc:
10849         Likewise.
10850         * unittests/basic_string_view/operators/char/2.cc: Likewise.
10851         * unittests/string_view-selftests.c: New file.
10852
10853 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10854
10855         * unittests/basic_string_view/capacity/1.cc: New file.
10856         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
10857         * unittests/basic_string_view/cons/char/1.cc: New file.
10858         * unittests/basic_string_view/cons/char/2.cc: New file.
10859         * unittests/basic_string_view/cons/char/3.cc: New file.
10860         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
10861         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
10862         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
10863         * unittests/basic_string_view/element_access/char/1.cc: New file.
10864         * unittests/basic_string_view/element_access/char/2.cc: New file.
10865         * unittests/basic_string_view/element_access/char/empty.cc: New file.
10866         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
10867         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
10868         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
10869         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
10870         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
10871         * unittests/basic_string_view/include.cc: New file.
10872         * unittests/basic_string_view/inserters/char/1.cc: New file.
10873         * unittests/basic_string_view/inserters/char/2.cc: New file.
10874         * unittests/basic_string_view/inserters/char/3.cc: New file.
10875         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
10876         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
10877         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
10878         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
10879         * unittests/basic_string_view/literals/types.cc: New file.
10880         * unittests/basic_string_view/literals/values.cc: New file.
10881         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
10882         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
10883         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
10884         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
10885         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
10886         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
10887         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
10888         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
10889         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
10890         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
10891         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
10892         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
10893         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
10894         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
10895         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
10896         * unittests/basic_string_view/operations/data/char/1.cc: New file.
10897         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
10898         * unittests/basic_string_view/operations/find/char/1.cc: New file.
10899         * unittests/basic_string_view/operations/find/char/2.cc: New file.
10900         * unittests/basic_string_view/operations/find/char/3.cc: New file.
10901         * unittests/basic_string_view/operations/find/char/4.cc: New file.
10902         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
10903         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
10904         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
10905         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
10906         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
10907         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
10908         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
10909         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
10910         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
10911         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
10912         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
10913         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
10914         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
10915         * unittests/basic_string_view/operators/char/2.cc: New file.
10916         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
10917         * unittests/basic_string_view/range_access/char/1.cc: New file.
10918         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
10919         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
10920         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
10921         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
10922         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
10923         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
10924         * unittests/basic_string_view/requirements/typedefs.cc: New file.
10925         * unittests/basic_string_view/typedefs.cc: New file.
10926         * unittests/basic_string_view/types/1.cc: New file.
10927
10928 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10929
10930         * common/gdb_string_view.h: Remove libstdc++ implementation
10931         details, adjust to gdb reality.
10932         * common/gdb_string_view.tcc: Likewise.
10933         * cli/cli-script.c (struct string_view): Remove.
10934         (user_args) <m_args>: Change element type to gdb::string_view.
10935         (user_args::insert_args): Adjust.
10936
10937 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10938
10939         * common/gdb_string_view.h: New file.
10940         * common/gdb_string_view.tcc: New file.
10941
10942 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10943
10944         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
10945         * configure: Re-generate.
10946
10947 2018-04-09  Pedro Alves  <palves@redhat.com>
10948
10949         * gdbarch.sh: Include "observable.h" instead of "observer.h".
10950         (set_target_gdbarch): Call
10951         gdb::observers::architecture_changed.notify instead of
10952         observer_notify_architecture_changed.
10953
10954 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10955
10956         * tracepoint.c (struct current_traceframe_cleanup): Remove.
10957         (do_restore_current_traceframe_cleanup): Remove.
10958         (restore_current_traceframe_cleanup_dtor): Remove.
10959         (make_cleanup_restore_current_traceframe): Remove.
10960         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
10961         New.
10962         * tracepoint.h (struct scoped_restore_current_traceframe): New.
10963         * infrun.c (fetch_inferior_event): Use
10964         scoped_restore_current_traceframe.
10965
10966 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10967
10968         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
10969         Remove.
10970         <n_allocated_type_units>: Remove.
10971         <all_type_units>: Change to std::vector.
10972         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10973         to std::vector change.
10974         (dwarf2_per_objfile::get_cutu): Likewise.
10975         (dwarf2_per_objfile::get_tu): Likewise.
10976         (create_signatured_type_table_from_index): Likewise.
10977         (create_signatured_type_table_from_debug_names): Likewise.
10978         (dw2_symtab_iter_next): Likewise.
10979         (dw2_print_stats): Likewise.
10980         (dw2_expand_all_symtabs): Likewise.
10981         (dw2_expand_marked_cus): Likewise.
10982         (dw2_debug_names_iterator::next): Likewise.
10983         (dwarf2_initialize_objfile): Likewise.
10984         (add_signatured_type_cu_to_table): Likewise.
10985         (create_all_type_units): Likewise.
10986         (add_type_unit): Likewise.
10987         (struct tu_abbrev_offset): Add constructor.
10988         (build_type_psymtabs_1): Adjust to std::vector change.
10989         (print_tu_stats): Likewise.
10990         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10991         (write_debug_names): Likewise.
10992
10993 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10994
10995         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
10996         Make an std::vector.
10997         <n_comp_units>: Remove.
10998         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10999         to std::vector change.
11000         (dwarf2_per_objfile::get_cutu): Likewise.
11001         (dwarf2_per_objfile::get_cu): Likewise.
11002         (create_cus_from_index): Likewise.
11003         (create_addrmap_from_index): Likewise.
11004         (create_addrmap_from_aranges): Likewise.
11005         (dwarf2_read_index): Likewise.
11006         (dw2_find_last_source_symtab): Likewise.
11007         (dw2_map_symtabs_matching_filename): Likewise.
11008         (dw2_symtab_iter_next): Likewise.
11009         (dw2_print_stats): Likewise.
11010         (dw2_expand_all_symtabs): Likewise.
11011         (dw2_expand_symtabs_with_fullname): Likewise.
11012         (dw2_expand_marked_cus): Likewise.
11013         (dw2_map_symbol_filenames): Likewise.
11014         (create_cus_from_debug_names): Likewise.
11015         (dwarf2_read_debug_names): Likewise.
11016         (dw2_debug_names_iterator::next): Likewise.
11017         (dwarf2_initialize_objfile): Likewise.
11018         (set_partial_user): Likewise.
11019         (dwarf2_build_psymtabs_hard): Likewise.
11020         (read_comp_units_from_section): Remove arguments, adjust to
11021         std::vector change.
11022         (create_all_comp_units): Adjust to std::vector and
11023         read_comp_units_from_section changes.
11024         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11025         change.
11026         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11027         (psyms_seen_size): Likewise.
11028         (write_gdbindex): Likewise.
11029         (write_debug_names): Likewise.
11030
11031 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11032
11033         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11034         with dwarf2_per_objfile.
11035         (create_cus_from_index): Likewise.
11036         (create_signatured_type_table_from_index): Likewise.
11037         (dwarf2_read_index): Likewise.
11038         (dwarf2_initialize_objfile): Likewise.
11039         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11040         per_cu rather than get_dwarf2_per_objfile.
11041
11042 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11043
11044         * dwarf2read.h (struct signatured_type): Forward declare.
11045         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11046         New methods.
11047         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11048         (dw2_get_cutu): ...this.
11049         (dwarf2_per_objfile::get_cu): Rename from...
11050         (dw2_get_cu): ...this.
11051         (dwarf2_per_objfile::get_tu): New.
11052         (create_addrmap_from_index): Adjust.
11053         (create_addrmap_from_aranges): Adjust.
11054         (dw2_find_last_source_symtab): Adjust.
11055         (dw2_map_symtabs_matching_filename): Adjust.
11056         (dw2_symtab_iter_next): Adjust.
11057         (dw2_print_stats): Adjust.
11058         (dw2_expand_all_symtabs): Adjust.
11059         (dw2_expand_symtabs_with_fullname): Adjust.
11060         (dw2_expand_marked_cus): Adjust.
11061         (dw_expand_symtabs_matching_file_matcher): Adjust.
11062         (dw2_map_symbol_filenames): Adjust.
11063         (dw2_debug_names_iterator::next): Adjust.
11064         (dwarf2_initialize_objfile): Adjust.
11065         (set_partial_user): Adjust.
11066         (dwarf2_build_psymtabs_hard): Adjust.
11067
11068 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11069
11070         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11071         Remove unused variables.
11072         (dw2_map_symtabs_matching_filename): Likewise.
11073         (dwarf2_record_block_ranges): Likewise.
11074         (dwarf2_read_addr_index): Likewise.
11075         (follow_die_offset): Likewise.
11076
11077 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11078
11079         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11080         to symbol_file_add_main.
11081
11082 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11083
11084         PR mi/22299
11085         * mi/mi-console.c (do_fputc_async_safe): New.
11086         (mi_console_file::write_async_safe): New.
11087         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11088         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11089         New.
11090         * ui-file.c (ui_file::putstrn): Adjust call to
11091         fputstrn_unfiltered.
11092         * utils.c (printchar): Replace do_fputs and do_fprintf
11093         parameters by do_fputc.
11094         (fputstr_filtered): Adjust call to printchar.
11095         (fputstr_unfiltered): Likewise.
11096         (fputstrn_filtered): Likewise.
11097         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11098         printchar.
11099         * utils.h (do_fputc_ftype): New typedef.
11100         (fputstrn_unfiltered): Add do_fputc parameter.
11101
11102 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11103
11104         * regformats/i386/i386-avx.dat: Remove.
11105
11106 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11107
11108         PR gdb/22979
11109         * amd64-tdep.c (amd64_none_init_abi): New function.
11110         (amd64_x32_none_init_abi): New function.
11111         (_initialize_amd64_tdep): Register handlers for x86-64 and
11112         x64_32 with GDB_OSABI_NONE.
11113         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11114         GDB_OSABI_NONE osabi.
11115
11116 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11117
11118         PR gdb/22980
11119         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11120         GDB_OSABI_NONE.
11121         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11122         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11123
11124 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11125
11126         * common/byte-vector.h (char_vector): New type.
11127         * target.h (target_read_alloc): Return
11128         gdb::optional<byte_vector>.
11129         (target_read_stralloc): Return gdb::optional<char_vector>.
11130         (target_get_osdata): Return gdb::optional<char_vector>.
11131         * target.c (target_read_alloc_1): Templatize.  Replacement
11132         manual memory management with vector.
11133         (target_read_alloc): Change return type, adjust.
11134         (target_read_stralloc): Change return type, adjust.
11135         (target_get_osdata): Change return type, adjust.
11136         * auxv.c (struct auxv_info) <length>: Remove.
11137         <data>: Change type to gdb::optional<byte_vector>.
11138         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11139         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11140         (target_auxv_search): Adjust.
11141         (fprint_target_auxv): Adjust.
11142         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11143         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11144         (linux_make_corefile_notes): Adjust.
11145         * osdata.c (get_osdata): Adjust.
11146         * remote.c (remote_get_threads_with_qxfer): Adjust.
11147         (remote_memory_map): Adjust.
11148         (remote_traceframe_info): Adjust.
11149         (btrace_read_config): Adjust.
11150         (remote_read_btrace): Adjust.
11151         (remote_pid_to_exec_file): Adjust.
11152         * solib-aix.c (solib_aix_get_library_list): Adjust.
11153         * solib-dsbt.c (decode_loadmap): Don't free buf.
11154         (dsbt_get_initial_loadmaps): Adjust.
11155         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11156         * solib-target.c (solib_target_current_sos): Adjust.
11157         * tracepoint.c (sdata_make_value): Adjust.
11158         * xml-support.c (xinclude_start_include): Adjust.
11159         (xml_fetch_content_from_file): Adjust.
11160         * xml-support.h (xml_fetch_another): Change return type.
11161         (xml_fetch_content_from_file): Change return type.
11162         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11163         * xml-tdesc.c (file_read_description_xml): Adjust.
11164         (fetch_available_features_from_target): Change return type.
11165         (target_fetch_description_xml): Adjust.
11166         (target_read_description_xml): Adjust.
11167
11168 2018-04-06  Tom Tromey  <tom@tromey.com>
11169
11170         * value.c (~value): Update.
11171         (struct value) <contents>: Now unique_xmalloc_ptr.
11172         (value_contents_bits_eq, allocate_value_contents)
11173         (value_contents_raw, value_contents_all_raw)
11174         (value_contents_for_printing, value_contents_for_printing_const)
11175         (set_value_enclosing_type): Update.
11176
11177 2018-04-06  Tom Tromey  <tom@tromey.com>
11178
11179         * value.c (range_s): Remove typedef, VEC.
11180         (struct range): Add operator<.
11181         (range_lessthan): Remove.
11182         (ranges_contain): Change type.
11183         (~value): Update.
11184         (struct value) <unavailable, optimized_out>: Now std::vector.
11185         (value_entirely_available)
11186         (value_entirely_covered_by_range_vector)
11187         (value_entirely_unavailable, value_entirely_optimized_out):
11188         Update.
11189         (insert_into_bit_range_vector): Change argument type.
11190         (find_first_range_overlap): Likewise.
11191         (struct ranges_and_idx, value_contents_bits_eq)
11192         (require_not_optimized_out, require_available): Update.
11193         (ranges_copy_adjusted): Change argument types.
11194         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11195
11196 2018-04-06  Tom Tromey  <tom@tromey.com>
11197
11198         * value.c (~value): Update.
11199         (struct value) <parent>: Now a value_ref_ptr.
11200         (value_parent, set_value_parent, value_address, value_copy):
11201         Update.
11202
11203 2018-04-06  Tom Tromey  <tom@tromey.com>
11204
11205         * value.c (struct value): Add constructor, destructor, and member
11206         initializers.
11207         (allocate_value_lazy, value_decref): Update.
11208
11209 2018-04-06  Tom Tromey  <tom@tromey.com>
11210
11211         * value.c (struct value) <released, next>: Remove.
11212         (all_values): Now a std::vector.
11213         (allocate_value_lazy): Update.
11214         (value_next): Remove.
11215         (value_mark, value_free_to_mark, release_value)
11216         (value_release_to_mark): Update.
11217
11218 2018-04-06  Tom Tromey  <tom@tromey.com>
11219
11220         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11221         (free_value_chain): Remove.
11222         * value.c (free_value_chain): Remove.
11223         (value_release_to_mark): Return a std::vector.
11224         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11225         std::vector.
11226         (check_condition): Update.
11227         * eval.c (fetch_subexp_value): Change "val_chain" to a
11228         std::vector.
11229         * breakpoint.c (update_watchpoint): Update.
11230         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11231
11232 2018-04-06  Tom Tromey  <tom@tromey.com>
11233
11234         * value.h (free_all_values): Remove.
11235         * value.c (free_all_values): Remove.
11236
11237 2018-04-06  Tom Tromey  <tom@tromey.com>
11238
11239         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11240         (value_history_chain, value_history_count): Remove.
11241         (value_history): New global.
11242         (record_latest_value, access_value_history, show_values)
11243         (preserve_values): Update.
11244
11245 2018-04-06  Tom Tromey  <tom@tromey.com>
11246
11247         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11248         * varobj.c (varobj_set_display_format, varobj_set_value)
11249         (install_default_visualizer, construct_visualizer)
11250         (install_new_value, ~varobj, varobj_get_value_type)
11251         (my_value_of_variable, varobj_editable_p): Update.
11252         * c-varobj.c (c_describe_child, c_value_of_variable)
11253         (cplus_number_of_children, cplus_describe_child): Update.
11254         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11255         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11256         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11257
11258 2018-04-06  Tom Tromey  <tom@tromey.com>
11259
11260         * printcmd.c (last_examine_address): Change type to
11261         value_ref_ptr.
11262         (do_examine, x_command): Update.
11263
11264 2018-04-06  Tom Tromey  <tom@tromey.com>
11265
11266         * value.c (release_value): Update.
11267         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11268         (struct bpstats) <val>: Now a value_ref_ptr.
11269         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11270         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11271         (~watchpoint, print_it_watchpoint, watch_command_1)
11272         (invalidate_bp_value_on_memory_change): Update.
11273
11274 2018-04-06  Tom Tromey  <tom@tromey.com>
11275
11276         * varobj.c (varobj_clear_saved_item)
11277         (update_dynamic_varobj_children, install_new_value, ~varobj):
11278         Update.
11279         * value.h (value_incref): Move declaration earlier.
11280         (value_decref): Rename from value_free.
11281         (struct value_ref_policy): New.
11282         (value_ref_ptr): New typedef.
11283         (struct value_deleter): Remove.
11284         (gdb_value_up): Remove typedef.
11285         (release_value): Change return type.
11286         (release_value_or_incref): Remove.
11287         * value.c (set_value_parent): Update.
11288         (value_incref): Change return type.
11289         (value_decref): Rename from value_free.
11290         (value_free_to_mark, free_all_values, free_value_chain): Update.
11291         (release_value): Return value_ref_ptr.
11292         (release_value_or_incref): Remove.
11293         (record_latest_value, set_internalvar, clear_internalvar):
11294         Update.
11295         * stack.c (info_frame_command): Don't call value_free.
11296         * python/py-value.c (valpy_dealloc, valpy_new)
11297         (value_to_value_object): Update.
11298         * printcmd.c (do_examine): Update.
11299         * opencl-lang.c (lval_func_free_closure): Update.
11300         * mi/mi-main.c (register_changed_p): Don't call value_free.
11301         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11302         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11303         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11304         value_free.
11305         * guile/scm-value.c (vlscm_free_value_smob)
11306         (vlscm_scm_from_value): Update.
11307         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11308         (frame_unwind_register_unsigned, get_frame_register_bytes)
11309         (put_frame_register_bytes): Don't call value_free.
11310         * findvar.c (address_from_register): Don't call value_free.
11311         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11312         * dwarf2loc.c (entry_data_value_free_closure)
11313         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11314         (dwarf2_evaluate_loc_desc_full): Update.
11315         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11316         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11317         (~watchpoint, watch_command_1)
11318         (invalidate_bp_value_on_memory_change): Update.
11319         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11320
11321 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11322
11323         PR gdb/23022
11324         * warning.m4: Add -Wno-error=deprecated-register.
11325         * configure: Re-generate.
11326
11327 2018-04-05  Tom Tromey  <tom@tromey.com>
11328
11329         * linespec.h: Remove include of "vec.h".
11330
11331 2018-04-05  Tom Tromey  <tom@tromey.com>
11332
11333         * linespec.c (typep): Remove typedef.
11334         (find_methods, find_superclass_methods): Take a std::vector.
11335         (find_method): Use std::vector.
11336
11337 2018-04-05  Tom Tromey  <tom@tromey.com>
11338
11339         * utils.c (compare_strings): Remove.
11340         * utils.h (compare_strings): Remove.
11341         * objc-lang.h (find_imps): Update.
11342         * objc-lang.c (find_methods): Take a std::vector.
11343         (uniquify_strings, find_imps): Likewise.
11344         * linespec.c (find_methods): Take a std::vector.
11345         (decode_objc): Use std::vector.
11346         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11347         a std::vector.
11348         (find_method, find_function_symbols): Use std::vector.
11349
11350 2018-04-05  Tom Tromey  <tom@tromey.com>
11351
11352         * completer.c (completion_tracker::completion_tracker): Remove
11353         cast.
11354         (completion_tracker::discard_completions): Likewise.
11355         * breakpoint.c (ambiguous_names_p): Remove cast.
11356         * ada-lang.c (_initialize_ada_language): Remove cast.
11357         * utils.h (streq): Update.
11358         (streq_hash): Add new declaration.
11359         * utils.c (streq): Return bool.
11360         (streq_hash): New function.
11361
11362 2018-04-05  Tom Tromey  <tom@tromey.com>
11363
11364         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11365         Remove a string copy.
11366
11367 2018-04-05  Tom Tromey  <tom@tromey.com>
11368
11369         * linespec.c (filter_results): Use std::vector.
11370         (decode_line_2, decode_line_full): Update.
11371
11372 2018-04-05  Tom Tromey  <tom@tromey.com>
11373
11374         * linespec.c (canonical_to_fullform): Return std::string.
11375         (filter_results): Update.
11376         (struct decode_line_2_item): Add constructor.
11377         <fullform, displayform>: Now std::string.
11378         (decode_line_2_compare_items): Now a std::sort comparator.
11379         (decode_line_2): Update.
11380
11381 2018-04-05  Tom Tromey  <tom@tromey.com>
11382
11383         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11384         (unexpected_linespec_error): Update.
11385         (linespec_parse_basic, parse_linespec): Update.
11386
11387 2018-04-05  Tom Tromey  <tom@tromey.com>
11388
11389         * linespec.c (linespec_parse_basic): Reindent.
11390
11391 2018-04-05  Tom Tromey  <tom@tromey.com>
11392
11393         * minsyms.h (iterate_over_minimal_symbols): Update.
11394         * minsyms.c (iterate_over_minimal_symbols): Take a
11395         gdb::function_view.
11396         * linespec.c (struct collect_minsyms): Remove.
11397         (compare_msyms): Now a std::sort comparator.
11398         (add_minsym): Add parameters.
11399         (search_minsyms_for_name): Update.  Use std::vector.
11400
11401 2018-04-03  Tom Tromey  <tom@tromey.com>
11402
11403         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11404         gdb::byte_vector.
11405
11406 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11407
11408         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11409
11410 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11411
11412         PR gdb/16959
11413         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11414         printing static type.
11415
11416 2018-04-01  Tom Tromey  <tom@tromey.com>
11417
11418         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11419         (rs6000_xfer_shared_libraries): Update.
11420
11421 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11422
11423         * common/gdb_vecs.h (char_ptr): Remove.
11424         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11425
11426 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11427
11428         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11429         with std::vector.
11430         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11431
11432 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11433
11434         * tracepoint.h (struct uploaded_tp): Initialize fields.
11435         <actions, step_actions, cmd_strings>: Change type to
11436         std::vector<char *>.
11437         * tracepoint.c (get_uploaded_tp): Allocate with new.
11438         (free_uploaded_tps): Free with delete.
11439         (parse_tracepoint_definition): Adjust to std::vector change.
11440         * breakpoint.c (read_uploaded_action): Likewise.
11441         (create_tracepoint_from_upload): Likewise.
11442         * ctf.c (ctf_write_uploaded_tp): Likewise.
11443         (SET_ARRAY_FIELD): Likewise.
11444         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11445
11446 2018-03-30  Tom Tromey  <tom@tromey.com>
11447
11448         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11449         std::unique_ptr.
11450         (svr4_keep_data_in_core): Update.
11451         (svr4_read_so_list): Update.
11452
11453 2018-03-30  Tom Tromey  <tom@tromey.com>
11454
11455         * windows-nat.c (handle_output_debug_string, handle_exception):
11456         Update.
11457         * target.h (target_read_string): Update.
11458         * target.c (target_read_string): Change "string" to
11459         unique_xmalloc_ptr.
11460         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11461         Update.
11462         * solib-frv.c (frv_current_sos): Update.
11463         * solib-dsbt.c (dsbt_current_sos): Update.
11464         * solib-darwin.c (darwin_current_sos): Update.
11465         * linux-thread-db.c (inferior_has_bug): Update.
11466         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11467         Update.  Remove alloca.
11468         * ada-lang.c (ada_main_name): Update.
11469
11470 2018-03-30  Tom Tromey  <tom@tromey.com>
11471
11472         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11473         (struct dwo_file_deleter): New.
11474         (dwo_file_up): New typedef.
11475         (open_and_init_dwo_file): Use dwo_file_up.
11476         (free_dwo_file_cleanup): Remove.
11477
11478 2018-03-30  Tom Tromey  <tom@tromey.com>
11479
11480         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
11481         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
11482
11483 2018-03-30  Tom Tromey  <tom@tromey.com>
11484
11485         * dwarf2read.c (class free_cached_comp_units): New class.
11486         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
11487         (free_cached_comp_units): Remove function.
11488
11489 2018-03-30  Tom Tromey  <tom@tromey.com>
11490
11491         * utils.h (make_cleanup_unpush_target): Remove.
11492         * inf-ptrace.c (struct target_unpusher): New.
11493         (target_unpush_up) New typedef.
11494         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
11495         target_unpush_up.
11496         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
11497
11498 2018-03-27  Tom Tromey  <tom@tromey.com>
11499
11500         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
11501
11502 2018-03-27  Pedro Alves  <palves@redhat.com>
11503             Tom Tromey  <tom@tromey.com>
11504
11505         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
11506         destructor.  Now a class.
11507         (gdb_readline_wrapper_cleanup): Remove function.
11508         (gdb_readline_wrapper): Remove cleanups.
11509
11510 2018-03-27  Tom Tromey  <tom@tromey.com>
11511
11512         * typeprint.h (struct type_print_options) <local_typedefs,
11513         global_typedefs>: Remove "struct" keyword.
11514         (class typedef_hash_table): New class.
11515         (recursively_update_typedef_hash, add_template_parameters)
11516         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
11517         (find_typedef_in_hash): Don't declare.
11518         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
11519         (typedef_hash_table::recursively_update): Rename from
11520         recursively_update_typedef_hash.  Now a member.
11521         (typedef_hash_table::add_template_parameters): Rename from
11522         add_template_parameters.  Now a member.
11523         (typedef_hash_table::typedef_hash_table): Now a constructor;
11524         rename from create_typedef_hash.
11525         (typedef_hash_table::~typedef_hash_table): Now a destructor;
11526         rename from free_typedef_hash.
11527         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
11528         (do_free_global_table): Remove.
11529         (typedef_hash_table::typedef_hash_table): New constructor; renamed
11530         from copy_type_recursive.
11531         (create_global_typedef_table): Remove.
11532         (typedef_hash_table::find_global_typedef): Now a member of
11533         typedef_hash_table.
11534         (typedef_hash_table::find_typedef): Rename from
11535         find_typedef_in_hash; now a member.
11536         (whatis_exp): Update.
11537         * extension.h (struct ext_lang_type_printers): Add constructor and
11538         destructor.
11539         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
11540         declare.
11541         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
11542         Now a constructor; rename from start_ext_lang_type_printers.
11543         (ext_lang_type_printers): Now a destructor; rename from
11544         free_ext_lang_type_printers.
11545         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
11546         Update.
11547         (c_type_print_base_struct_union): Update.  Remove cleanups.
11548
11549 2018-03-27  Tom Tromey  <tom@tromey.com>
11550
11551         * dwarf-index-write.c: Include <cmath>.
11552
11553 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11554
11555         * NEWS: Add entry describing new "set|show varsize-limit" command.
11556         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
11557         command.
11558         * printcmd.c (_initialize_printcmd): Add "set var" alias of
11559         "set variable".
11560
11561 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
11562
11563         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
11564         dwarf-index-write.c
11565         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
11566         * dwarf-index-common.c: New file.
11567         * dwarf-index-common.h: New file.
11568         * dwarf-index-write.c: New file.
11569         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
11570         (struct dwarf2_section_info): Move from here.
11571         (dwarf2_section_info_def): Likewise.
11572         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
11573         (offset_type): Likewise.
11574         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
11575         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
11576         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
11577         (byte_swap): Likewise.
11578         (MAYBE_SWAP): Likewise.
11579         (dwarf2_per_cu_ptr): Likewise.
11580         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
11581         (struct tu_stats): Likewise.
11582         (struct dwarf2_per_objfile): Likewise.
11583         (struct dwarf2_per_cu_data): Likewise.
11584         (struct signatured_type): Likewise.
11585         (sig_type_ptr): Likewise.
11586         (DEF_VEC_P (sig_type_ptr)): Likewise.
11587         (INDEX4_SUFFIX): Likewise.
11588         (INDEX5_SUFFIX): Likewise.
11589         (DEBUG_STR_SUFFIX): Likewise.
11590         (dwarf2_read_section): Make non-static.
11591         (mapped_index_string_hash): Move from here.
11592         (dwarf5_djb_hash): Likewise.
11593         (file_write): Likewise.
11594         (class data_buf): Likewise.
11595         (struct symtab_index_entry): Likewise.
11596         (struct mapped_symtab): Likewise.
11597         (find_slot): Likewise.
11598         (hash_expand): Likewise.
11599         (add_index_entry): Likewise.
11600         (uniquify_cu_indices): Likewise.
11601         (class c_str_view): Likewise.
11602         (class c_str_view_hasher): Likewise.
11603         (class vector_hasher): Likewise.
11604         (write_hash_table): Likewise.
11605         (psym_index_map): Likewise.
11606         (struct addrmap_index_data): Likewise.
11607         (add_address_entry): Likewise.
11608         (add_address_entry_worker): Likewise.
11609         (write_address_map): Likewise.
11610         (symbol_kind): Likewise.
11611         (write_psymbols): Likewise.
11612         (struct signatured_type_index_data): Likewise.
11613         (write_one_signatured_type): Likewise.
11614         (recursively_count_psymbols): Likewise.
11615         (recursively_write_psymbols): Likewise.
11616         (class debug_names): Likewise.
11617         (check_dwarf64_offsets): Likewise.
11618         (psyms_seen_size): Likewise.
11619         (write_gdbindex): Likewise.
11620         (write_debug_names): Likewise.
11621         (assert_file_size): Likewise.
11622         (write_psymtabs_to_index): Likewise.
11623         (save_gdb_index_command): Likewise.
11624         (_initialize_dwarf2_read): Don't register the "save gdb-index"
11625         command.
11626         * dwarf2read.h: New file.
11627
11628 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11629
11630         PR gdb/22670
11631         * dwarf2read.c (dwarf2_physname): Do not return the demangled
11632         symbol name if the CU's language stores symbol names in linkage
11633         format.
11634         * language.h (struct language_defn)
11635         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
11636         all instances of this struct.
11637
11638 2018-03-26  Tom Tromey  <tom@tromey.com>
11639
11640         * stack.c (backtrace_command_1): Remove verbose code.
11641
11642 2018-03-26  Tom Tromey  <tom@tromey.com>
11643
11644         * python/py-framefilter.c (py_print_type): Don't catch
11645         exceptions.  Return void.
11646         (py_print_value): Likewise.
11647         (py_print_single_arg): Likewise.
11648         (enumerate_args): Don't catch exceptions.
11649         (py_print_args): Likewise.
11650         (py_print_frame): Likewise.
11651         (gdbpy_apply_frame_filter): Catch exceptions here.
11652
11653 2018-03-26  Tom Tromey  <tom@tromey.com>
11654
11655         * stack.c (_initialize_stack): Remove trailing newlines from help
11656         text.  Add "Usage" line to "backtrace" help.
11657
11658 2018-03-26  Tom Tromey  <tom@tromey.com>
11659
11660         PR python/16486:
11661         * python/py-framefilter.c (py_print_args): Call wrap_hint.
11662
11663 2018-03-26  Tom Tromey  <tom@tromey.com>
11664
11665         * python/py-framefilter.c (py_print_single_arg): Return
11666         EXT_LANG_BT_ERROR from catch.
11667
11668 2018-03-26  Tom Tromey  <tom@tromey.com>
11669
11670         PR backtrace/15584:
11671         * stack.c (backtrace_command_1): Move some code into no-filters
11672         "if".
11673
11674 2018-03-26  Tom Tromey  <tom@tromey.com>
11675
11676         * python/py-framefilter.c (throw_quit_or_print_exception): New
11677         function.
11678         (gdbpy_apply_frame_filter): Use it.
11679
11680 2018-03-26  Tom Tromey  <tom@tromey.com>
11681
11682         PR cli/17716:
11683         * python/py-framefilter.c (py_print_type, py_print_value)
11684         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
11685         RETURN_MASK_ERROR.
11686
11687 2018-03-26  Tom Tromey  <tom@tromey.com>
11688
11689         * python/py-framefilter.c (enumerate_args): Use
11690         gdb::unique_xmalloc_ptr.
11691
11692 2018-03-26  Tom Tromey  <tom@tromey.com>
11693
11694         * python/py-framefilter.c (py_print_frame): Return
11695         EXT_LANG_BT_OK.
11696         (gdbpy_apply_frame_filter): Update comment.
11697         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
11698         Remove.
11699         <EXT_LANG_BT_NO_FILTERS>: Change value.
11700
11701 2018-03-26  Tom Tromey  <tom@tromey.com>
11702
11703         PR backtrace/15582:
11704         * stack.c (backtrace_command): Parse "hide" argument.
11705         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
11706         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
11707         constant.
11708
11709 2018-03-26  Tom Tromey  <tom@tromey.com>
11710
11711         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
11712         add "flags".
11713         (backtrace_command): Remove "fulltrace", add "flags".
11714
11715 2018-03-26  Tom Tromey  <tom@tromey.com>
11716
11717         * stack.c (backtrace_command): Rewrite command line parsing.
11718
11719 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11720
11721         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
11722
11723 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11724
11725         * filename-seen-cache.h: Add include guard.
11726
11727 2018-03-26  Keith Seitz  <keiths@redhat.com>
11728
11729         * symfile.c (place_section): Remove "struct" from section_addr_info
11730         in comment.
11731         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
11732         "struct" keyword from section_addr_info.
11733
11734 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
11735
11736         * regformats/regdef.h (reg): Add constructors.
11737
11738 2018-03-25  Pedro Alves  <palves@redhat.com>
11739
11740         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
11741         if then/else bodies in var_func_name extraction.
11742
11743 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
11744
11745         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
11746         lookup_minimal_symbol() to find symbol entry.
11747         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
11748
11749 2018-03-23  Keith Seitz  <keiths@redhat.com>
11750
11751         PR c++/22968
11752         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
11753         nested type definitions for C++, too.
11754
11755 2018-03-23  Tom Tromey  <tom@tromey.com>
11756
11757         * machoread.c (struct oso_el): Add a constructor.  Don't define as
11758         a typedef.
11759         (macho_register_oso): Remove.
11760         (macho_symtab_read): Take a std::vector.
11761         (oso_el_compare_name): Now a std::sort comparator.
11762         (macho_symfile_read_all_oso): Take a std::vector.
11763         (macho_symfile_read): Use std::vector.  Remove cleanups.
11764
11765 2018-03-22  Tom Tromey  <tom@tromey.com>
11766
11767         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
11768         (record_full_goto_bookmark): Use std::string.
11769
11770 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11771
11772         PR tdep/18295
11773         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
11774         a single mask.
11775
11776 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11777
11778         * rs6000-tdep.c (store_insn_p): New function.
11779         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
11780         and cr_reg to their unshifted values. Use store_insn_p to
11781         match LR saves using either R1 or fdata->alloca_reg. Use
11782         store_insn_p to match CR saves. Set alloca_reg_offset
11783         when alloca_reg and framep are set. Remove lr_reg shift
11784         when assigning to fdata->lr_register.
11785
11786 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11787
11788         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
11789         command line args instead of emitting a warning.
11790
11791 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11792
11793         * tracepoint.h (struct static_tracepoint_marker): Initialize
11794         fields, define default constructor, move constructor and move
11795         assignment, disable the rest.
11796         <str_id, extra>: Make std::string.
11797         (release_static_tracepoint_marker): Remove.
11798         (free_current_marker): Remove.
11799         * tracepoint.c (free_current_marker): Remove.
11800         (parse_static_tracepoint_marker_definition): Adjust to
11801         std::string, use new hex2str overload.
11802         (release_static_tracepoint_marker): Remove.
11803         (print_one_static_tracepoint_marker): Get marker by reference
11804         and adjust to std::string.
11805         (info_static_tracepoint_markers_command): Adjust to std::vector
11806         changes
11807         * target.h (static_tracepoint_marker_p): Remove typedef.
11808         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
11809         (struct target_ops) <to_static_tracepoint_marker_at>: Return
11810         bool.
11811         <to_static_tracepoint_markers_by_strid>: Return std::vector.
11812         * target-debug.h
11813         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
11814         (target_debug_print_std_vector_static_tracepoint_marker): New.
11815         (target_debug_print_struct_static_tracepoint_marker_p): Rename
11816         to...
11817         (target_debug_print_static_tracepoint_marker_p): ... this.
11818         * target-delegates.c: Re-generate.
11819         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
11820         Make std::string.
11821         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
11822         (decode_static_tracepoint_spec): Adjust to std::vector.
11823         (tracepoint_print_one_detail): Adjust to std::string.
11824         (strace_marker_decode_location): Adjust to std::string.
11825         (update_static_tracepoint): Adjust to std::string, remove call
11826         to release_static_tracepoint_marker.
11827         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
11828         Adjust to std::vector.
11829         * remote.c (remote_static_tracepoint_marker_at): Return bool.
11830         (remote_static_tracepoint_markers_by_strid): Adjust to
11831         std::vector.
11832         * common/rsp-low.h (hex2str): New overload with explicit count
11833         of bytes.
11834         * common/rsp-low.c (hex2str): New overload with explicit count
11835         of bytes.
11836         * unittests/rsp-low-selftests.c (test_hex2str): New function.
11837         (_initialize_rsp_low_selftests): Add test_hex2str test.
11838         * unittests/tracepoint-selftests.c
11839         (test_parse_static_tracepoint_marker_definition): Adjust to
11840         std::string.
11841
11842 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11843
11844         * tracepoint.c (parse_static_tracepoint_marker_definition):
11845         Consider case where the definition is followed by more
11846         definitions.
11847         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11848         tracepoint-selftests.c.
11849         * unittests/tracepoint-selftests.c: New.
11850
11851 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11852
11853         * MAINTAINERS (Write After Approval): Add Pedro Franco de
11854         Carvalho.
11855
11856 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11857
11858         * symtab.c (find_pc_sect_line): fixed indentation.
11859
11860 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11861
11862         * symtab.c (find_pc_sect_line): now uses binary search.
11863
11864 2018-03-19  Tom Tromey  <tom@tromey.com>
11865
11866         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
11867         "IDENT" production.
11868
11869 2018-03-19  Pedro Alves  <palves@redhat.com>
11870             Tom Tromey  <tom@tromey.com>
11871
11872         * unittests/observable-selftests.c: New file.
11873         * common/observable.h: New file.
11874         * observable.h: New file.
11875         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
11876         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
11877         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
11878         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
11879         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
11880         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
11881         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
11882         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
11883         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
11884         python/py-breakpoint.c, python/py-finishbreakpoint.c,
11885         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
11886         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
11887         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
11888         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
11889         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
11890         tui/tui-interp.c, valops.c: Update all users.
11891         * tui/tui-hooks.c (tui_bp_created_observer)
11892         (tui_bp_deleted_observer, tui_bp_modified_observer)
11893         (tui_inferior_exit_observer, tui_before_prompt_observer)
11894         (tui_normal_stop_observer, tui_register_changed_observer):
11895         Remove.
11896         (tui_observers_token): New global.
11897         (attach_or_detach, tui_attach_detach_observers): New functions.
11898         (tui_install_hooks, tui_remove_hooks): Use
11899         tui_attach_detach_observers.
11900         * record-btrace.c (record_btrace_thread_observer): Remove.
11901         (record_btrace_thread_observer_token): New global.
11902         * observer.sh: Remove.
11903         * observer.c: Rename to observable.c.
11904         * observable.c (namespace gdb_observers): Define new objects.
11905         (observer_debug): Move into gdb_observers namespace.
11906         (struct observer, struct observer_list, xalloc_observer_list_node)
11907         (xfree_observer_list_node, generic_observer_attach)
11908         (generic_observer_detach, generic_observer_notify): Remove.
11909         (_initialize_observer): Update.
11910         Don't include observer.inc.
11911         * Makefile.in (generated_files): Remove observer.h, observer.inc.
11912         (clean mostlyclean): Likewise.
11913         (observer.h, observer.inc): Remove targets.
11914         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
11915         (COMMON_SFILES): Use observable.c, not observer.c.
11916         * .gitignore: Remove observer.h.
11917
11918 2018-03-18  Tom Tromey  <tom@tromey.com>
11919
11920         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
11921         gdb::def_vector.
11922         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
11923
11924 2018-03-17  Tom Tromey  <tom@tromey.com>
11925
11926         * auto-load.c (auto_load_objfile_script_1): Use std::string.
11927
11928 2018-03-17  Tom Tromey  <tom@tromey.com>
11929
11930         * target.c (class scoped_target_fd): New.
11931         (target_fileio_close_cleanup): Remove.
11932         (target_fileio_read_alloc_1): Use scoped_target_fd.
11933
11934 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
11935
11936         * silent-rules.mk: New.
11937         * Makefile.in: Include silent-rules.mk
11938         (srcdir, VPATH, top_srcdir): Move up.
11939         (COMPILE): Add ECHO_CXX.
11940         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
11941         (init.c): Add ECHO_INIT_C.
11942         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
11943         (version.c): Add ECHO_GEN.
11944         (printcmd.o): Add ECHO_CXX.
11945         (target-float.o): Add ECHO_CXX.
11946         (ada-exp.o): Add ECHO_CXX.
11947         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
11948         (insight$(EXEEXT)): Add ECHO_CXXLD.
11949         * gnulib/configure.ac: Add AM_SILENT_RULES.
11950         * gnulib/aclocal.m4: Re-generate.
11951         * gnulib/configure: Re-generate.
11952         * gnulib/import/Makefile.in: Re-generate.
11953
11954 2018-03-16  Tom Tromey  <tom@tromey.com>
11955
11956         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
11957         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
11958         * utils.c (do_free_section_addr_info)
11959         (make_cleanup_free_section_addr_info): Remove.
11960         * symfile.h (struct other_sections): Add constructor.
11961         (struct section_addr_info): Remove.
11962         (section_addr_info): New typedef.
11963         (struct sym_fns) <sym_offsets>: Change type of parameter.
11964         (build_section_addr_info_from_objfile)
11965         (relative_addr_info_to_section_offsets, addr_info_make_relative)
11966         (default_symfile_offsets, symbol_file_add)
11967         (symbol_file_add_from_bfd)
11968         (build_section_addr_info_from_section_table): Update.
11969         (alloc_section_addr_info, free_section_addr_info): Don't declare.
11970         * symfile.c (alloc_section_addr_info): Remove.
11971         (build_section_addr_info_from_section_table): Change return type.
11972         Update.
11973         (build_section_addr_info_from_bfd)
11974         (build_section_addr_info_from_objfile): Likewise.
11975         (free_section_addr_info): Remove.
11976         (relative_addr_info_to_section_offsets): Change type of "addrs".
11977         (addrs_section_compar): Now a std::sort comparator.
11978         (addrs_section_sort): Change return type.
11979         (addr_info_make_relative): Change type of "addrs".  Update.
11980         (default_symfile_offsets, syms_from_objfile_1)
11981         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
11982         (symbol_file_add_separate): Update.
11983         (symbol_file_add): Change type of "addrs".  Update.
11984         (add_symbol_file_command): Update.  Remove cleanups.
11985         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
11986         cleanups.
11987         * symfile-debug.c (debug_sym_offsets): Change type of "info".
11988         * solib.c (solib_read_symbols): Update.
11989         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
11990         * machoread.c (macho_symfile_offsets): Update.
11991         * jit.c (jit_bfd_try_read_symtab): Update.
11992
11993 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
11994
11995         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11996         unittests/utils-selftests.c.
11997         * unittests/utils-selftests.c: New file.
11998
11999 2018-03-14  Tom Tromey  <tom@tromey.com>
12000
12001         PR cli/14977:
12002         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12003         for NULL.
12004
12005 2018-03-14  Tom Tromey  <tom@tromey.com>
12006
12007         PR cli/19918:
12008         * printcmd.c (printf_pointer): Allow "-" in format.
12009
12010 2018-03-14  Tom Tromey  <tom@tromey.com>
12011
12012         * printcmd.c (_initialize_printcmd): Add usage to printf.
12013
12014 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12015
12016         * MAINTAINERS: Update my email address.
12017
12018 2018-03-13  Tom Tromey  <tom@tromey.com>
12019
12020         * machoread.c (macho_check_dsym): Change filenamep to a
12021         std::string*.
12022         (macho_symfile_read): Update.
12023         * symfile.c (load_command): Use std::string.
12024
12025 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12026
12027         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12028         to error message string.
12029         (riscv_register_name): Use xsnprintf instead of sprintf.
12030         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12031         internal_error.
12032         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12033         error.
12034         (riscv_push_dummy_call): Likewise.
12035
12036 2018-03-12  Tom Tromey  <tom@tromey.com>
12037
12038         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12039         Use gdb::byte_vector.
12040         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12041
12042 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12043
12044         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12045         parameter type to readable_regcache.
12046         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12047         the declaration.
12048
12049 2018-03-11  Tom Tromey  <tom@tromey.com>
12050
12051         * dwarf2read.c (struct nextfield): Add initializers.
12052         (struct nextfnfield): Remove.
12053         (struct fnfieldlist): Add initializers.  Remove "length" and
12054         "head", use std::vector.
12055         (struct decl_field_list): Remove.
12056         (struct field_info): Add initializers.
12057         <fields, baseclasses>: Now std::vector.
12058         <nbaseclasses, nfnfields, typedef_field_list_count,
12059         nested_types_list_count>: Remove.
12060         (dwarf2_add_field, dwarf2_add_type_defn)
12061         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12062         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12063         (process_structure_scope): Update.
12064
12065 2018-03-11  Tom Tromey  <tom@tromey.com>
12066
12067         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12068         for use by std::sort.
12069         (build_type_psymtabs_1): Use std::vector.
12070
12071 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12072
12073         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12074         and LIBMPFR in the printed configuration.
12075
12076 2018-03-08  Tom Tromey  <tom@tromey.com>
12077
12078         * source.c (get_filename_and_charpos): Use scoped_fd.
12079         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12080         (procfs_pidlist): Likewise.
12081         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12082         (iterate_over_mappings): Likewise.
12083
12084 2018-03-08  Tom Tromey  <tom@tromey.com>
12085
12086         * infcall.c (struct call_return_meta_info)
12087         <stack_temporaries_enabled>: Remove.
12088         (get_call_return_value, call_function_by_hand_dummy): Update.
12089         * thread.c (disable_thread_stack_temporaries): Remove.
12090         (enable_thread_stack_temporaries): Remove.
12091         (thread_stack_temporaries_enabled_p): Return bool.
12092         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12093         (get_last_thread_stack_temporary): Update.
12094         * eval.c (evaluate_subexp): Update.
12095         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12096         class, not a function.
12097         (value_ptr, value_vec): Remove typedefs.
12098         (class thread_info) <stack_temporaries_enabled>: Now bool.
12099         <stack_temporaries>: Now a std::vector.
12100         (thread_stack_temporaries_enabled_p)
12101         (value_in_thread_stack_temporaries): Return bool.
12102
12103 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12104
12105         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12106         (getpkt_or_notif_sane_1): Likewise.
12107
12108 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12109
12110         * build-id.c (build_id_to_debug_bfd): Use std::string.
12111
12112 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12113
12114         * build-id.c (find_separate_debug_file_by_buildid): Return
12115         std::string.
12116         * build-id.h (find_separate_debug_file_by_buildid): Return
12117         std::string.
12118         * coffread.c (coff_symfile_read): Adjust to std::string.
12119         * elfread.c (elf_symfile_read): Adjust to std::string.
12120         * symfile.c (separate_debug_file_exists): Change parameter to
12121         std::string.
12122         (find_separate_debug_file): Return std::string.
12123         (find_separate_debug_file_by_debuglink): Return std::string.
12124         * symfile.h (find_separate_debug_file_by_debuglink): Return
12125         std::string.
12126
12127 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12128
12129         * common/xml-utils.c (xml_escape_text): Move code to...
12130         (xml_escape_text_append): ... this new function.
12131         * common/xml-utils.h (xml_escape_text_append): New declaration.
12132         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12133         New function.
12134         (_initialize_xml_utils): register test_xml_escape_text_append as
12135         a selftest.
12136
12137 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12138
12139         * defs.h: Remove MAX_REGISTER_SIZE.
12140         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12141         asserts.
12142         * python/py-unwind.c (pyuw_sniffer): Likewise.
12143
12144 2018-03-07  Tom Tromey  <tom@tromey.com>
12145
12146         * linux-tdep.c (linux_info_proc): Update.
12147         * target.h (struct target_ops) <to_fileio_readlink>: Return
12148         optional<string>.
12149         (target_fileio_readlink): Return optional<string>.
12150         * remote.c (remote_hostio_readlink): Return optional<string>.
12151         * inf-child.c (inf_child_fileio_readlink): Return
12152         optional<string>.
12153         * target.c (target_fileio_readlink): Return optional<string>.
12154
12155 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12156
12157         * regcache.c (cooked_read_test): Add riscv to the list of
12158         architectures that have a save_reggroup.
12159
12160 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12161
12162         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12163         value is not a dynamic class object.
12164
12165 2018-03-06  Tom Tromey  <tom@tromey.com>
12166
12167         * rust-exp.y: Formatting fixes.
12168
12169 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12170
12171         * riscv-tdep.c (riscv_register_name): Remove target description
12172         support.
12173         (riscv_gdbarch_init): Remove target description check.
12174
12175 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12176
12177         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12178         comment.
12179         * riscv-tdep.h: Likewise.
12180
12181 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12182
12183         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12184         (riscv_pseudo_register_write): Delete.
12185         (riscv_gdbarch_init): Remove all use of pseudo registers.
12186
12187 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12188
12189         * record-btrace.c (btrace_print_lines): Replace cleanup
12190         parameter with RAII equivalents.
12191         (btrace_insn_history): Replace cleanup with RAII equivalents.
12192         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12193         make_cleanup_ui_out_tuple_begin_end): Remove.
12194         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12195         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12196         make_cleanup_ui_out_list_begin_end): Remove.
12197
12198 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12199
12200         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12201         parameter types to std::vector.  Use bool.
12202         (record_btrace_wait): Replace VEC(tp_t) with
12203         std::vector<thread_info *>.
12204         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12205
12206 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12207
12208         * record-btrace.c (record_btrace_disable_callback): Remove.
12209         (struct scoped_btrace_disable): New.
12210         (record_btrace_open): Use scoped_btrace_disable.
12211
12212 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12213
12214         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12215         reading values from registers.
12216
12217 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12218
12219         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12220         where appropriate.
12221
12222 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12223
12224         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12225         change parameter type.  Use GDB's print functions, and use
12226         core_addr_to_string where appropriate.
12227         (riscv_push_dummy_call): Use core_addr_to_string where
12228         appropriate, update call to riscv_print_arg_location, and reindent
12229         a few lines.
12230         (riscv_return_value): Update call to riscv_print_arg_location.
12231
12232 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12233             Tim Newsome <tim@sifive.com>
12234             Albert Ou <a0u@eecs.berkeley.edu>
12235             Darius Rad <darius@bluespec.com>
12236
12237         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12238         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12239         (ALLDEPFILES): Add riscv-tdep.c
12240         * configure.tgt: Add riscv support.
12241         * riscv-tdep.c: New file.
12242         * riscv-tdep.h: New file.
12243         * NEWS: Mention new target.
12244         * MAINTAINERS: Add entry for riscv.
12245
12246 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12247
12248         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12249         fields within aggregates.
12250
12251 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12252
12253         * record-btrace.c (btrace_print_lines): Change type of flags to
12254         gdb_disassembly_flags.
12255
12256 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12257
12258         * fbsd-nat.c: Include "inf-ptrace.h".
12259         (USE_SIGTRAP_SIGINFO): Conditionally define.
12260         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12261         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12262         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12263         function.
12264         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12265         Likewise.
12266         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12267         Likewise.
12268         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12269         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12270         "supports_stopped_by_hw_breakpoint" target methods.
12271
12272 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12273
12274         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12275         * fbsd-nat.c (debug_fbsd_nat): New variable.
12276         (show_fbsd_nat_debug): New function.
12277         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12278         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12279
12280 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12281
12282         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12283         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12284         prototype.
12285         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12286         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12287         method.
12288
12289 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12290
12291         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12292         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12293
12294 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12295
12296         * charset.c (struct charset_vector): New.
12297         (charsets): Change type to charset_vector.
12298         (find_charset_names): Adjust.
12299         (add_one): Adjust.
12300         (_initialize_charset): Adjust.
12301
12302 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12303
12304         * progspace.h (struct program_space) <deleted_solibs>: Change
12305         type to std::vector<std::string>.
12306         * progspace.c (clear_program_space_solib_cache): Adjust.
12307         * breakpoint.c (print_solib_event): Adjust.
12308         (check_status_catch_solib): Adjust.
12309         * solib.c (update_solib_list): Adjust.
12310         * ui-out.h (class ui_out) <field_string>: New overload.
12311         * ui-out.c (ui_out::field_string): New overload.
12312
12313 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12314
12315         * progspace.h (struct program_space): Add constructor and
12316         destructor, initialize fields.
12317         (add_program_space): Remove.
12318         * progspace.c (add_program_space): Rename to...
12319         (program_space::program_space): ... this.
12320         (release_program_space): Rename to...
12321         (program_space::~program_space): ... this.
12322         (delete_program_space): Use delete to delete program_space.
12323         (initialize_progspace): Use new to allocate program_space.
12324         * inferior.c (add_inferior_with_spaces): Likewise.
12325         (clone_inferior_command): Likewise.
12326         * infrun.c (follow_fork_inferior): Likewise.
12327         (handle_vfork_child_exec_or_exit): Likewise.
12328
12329 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12330
12331         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12332         (delim_string_to_char_ptr_vec): Return std::vector of
12333         gdb::unique_xmalloc_ptr.
12334         (dirnames_to_char_ptr_vec_append): Take std::vector of
12335         gdb::unique_xmalloc_ptr.
12336         (dirnames_to_char_ptr_vec): Return std::vector of
12337         gdb::unique_xmalloc_ptr.
12338         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12339         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12340         (delim_string_to_char_ptr_vec): Return an std::vector of
12341         gdb::unique_xmalloc_ptr, adjust the code.
12342         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12343         gdb::unique_xmalloc_ptr, adjust the code.
12344         (dirnames_to_char_ptr_vec): Return an std::vector of
12345         gdb::unique_xmalloc_ptr, adjust the code.
12346         * auto-load.c (auto_load_safe_path_vec): Change type to
12347         std::vector of gdb::unique_xmalloc_ptr.
12348         (auto_load_expand_dir_vars): Return an std::vector of
12349         gdb::unique_xmalloc_ptr, adjust the code.
12350         (auto_load_safe_path_vec_update): Adjust.
12351         (filename_is_in_auto_load_safe_path_vec): Adjust.
12352         (auto_load_objfile_script_1): Adjust.
12353         * build-id.c (build_id_to_debug_bfd): Adjust.
12354         * linux-thread-db.c (thread_db_load_search): Adjust.
12355         * source.c (add_path): Adjust.
12356         (openp): Adjust.
12357         * symfile.c (find_separate_debug_file): Adjust.
12358         * utils.c (do_free_char_ptr_vec): Remove.
12359         (make_cleanup_free_char_ptr_vec): Remove.
12360
12361 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12362
12363         PR gdb/22907
12364         * common/pathstuff.c: Conditionally include "<windows.h>".
12365
12366 2018-03-01  Georg Sauthoff  <mail@georg.so>
12367
12368         PR gdb/22888
12369         * gcore.in: Quote variables and switch interpreter to bash.
12370
12371 2018-03-01  Tom Tromey  <tom@tromey.com>
12372
12373         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12374         assertion.  Add assertion for discriminant_index.
12375         (quirk_rust_enum): Use correct base type name in univariant case.
12376
12377 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12378
12379         * record.c (get_call_history_modifiers): Return a
12380         record_print_flags.
12381         (cmd_record_call_history): Adjust.
12382         * record-btrace.c (record_btrace_call_history): Adjust.
12383         (record_btrace_call_history_range): Adjust.
12384         (record_btrace_call_history_from): Adjust.
12385         * target-debug.h (target_debug_print_record_print_flags): New.
12386         * target-delegates.c: Re-generate.
12387         * target.c (target_call_history): Change flags type.
12388         (target_call_history_from): Likewise.
12389         (target_call_history_range): Likewise.
12390         * target.h (struct target_ops) <target_call_history>: Likewise.
12391         (target_call_history_from): Likewise.
12392         (target_call_history_range): Likewise.
12393
12394 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12395             Simon Marchi  <simon.marchi@polymtl.ca>
12396
12397         * common/common-utils.c: Include "sys/stat.h".
12398         (is_regular_file): Move here from "source.c"; change return
12399         type to "bool".
12400         * common/common-utils.h (is_regular_file): New prototype.
12401         * common/pathstuff.c (contains_dir_separator): New function.
12402         * common/pathstuff.h (contains_dir_separator): New prototype.
12403         * source.c: Don't include "sys/stat.h".
12404         (is_regular_file): Move to "common/common-utils.c".
12405
12406 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12407
12408         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12409         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12410         * auto-load.c: Include "common/pathstuff.h".
12411         * common/common-def.h (current_directory): Move here.
12412         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12413         function.
12414         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12415         prototype.
12416         * common/pathstuff.c: New file.
12417         * common/pathstuff.h: New file.
12418         * compile/compile.c: Include "common/pathstuff.h".
12419         * defs.h (current_directory): Move to "common/common-defs.h".
12420         * dwarf2read.c: Include "common/pathstuff.h".
12421         * exec.c: Likewise.
12422         * guile/scm-safe-call.c: Likewise.
12423         * linux-thread-db.c: Likewise.
12424         * main.c: Likewise.
12425         * nto-tdep.c: Likewise.
12426         * objfiles.c: Likewise.
12427         * source.c: Likewise.
12428         * symtab.c: Likewise.
12429         * utils.c: Include "common/pathstuff.h".
12430         (gdb_realpath): Move to "common/pathstuff.c".
12431         (gdb_realpath_keepfile): Likewise.
12432         (gdb_abspath): Likewise.
12433         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12434         (gdb_realpath_keepfile): Likewise.
12435         (gdb_abspath): Likewise.
12436
12437 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12438
12439         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12440         wildcard process pid for super_resume for kernels with a
12441         specific bug.
12442
12443 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12444
12445         * compile/compile.c (get_args): Add additional comments
12446         explaining function.
12447
12448 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12449             Tom Tromey  <tom@tromey.com>
12450
12451         * target.h (memory_write_request_s): Remove typedef.  Don't define
12452         VEC.
12453         (target_write_memory_blocks): Change argument to std::vector.
12454         (struct memory_write_request): Add constructor.
12455         * target-memory.c (compare_block_starting_address): Return bool.
12456         Change argument types.
12457         (claim_memory): Change arguments to use std::vector.
12458         (split_regular_and_flash_blocks, blocks_to_erase)
12459         (compute_garbled_blocks): Likewise.
12460         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12461         (target_write_memory_blocks): Change argument to std::vector.
12462         * symfile.c (struct load_section_data): Add constructor and
12463         destructor.  Use std::vector for "requests".
12464         (struct load_progress_data): Add initializers.
12465         (load_section_callback): Update.  Use "new".
12466         (clear_memory_write_data): Remove.
12467         (generic_load): Update.
12468
12469 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12470
12471         * arch/aarch64.h: Use common/tdesc.h.
12472
12473 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12474
12475         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
12476         architecture with a 64-bit ABI.
12477
12478 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12479
12480         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
12481         ahead of target description loading.
12482
12483 2018-02-26  Tom Tromey  <tom@tromey.com>
12484
12485         * stack.c (backtrace_command_1): Update.
12486         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
12487         of "flags".
12488         * python/py-framefilter.c (py_print_frame)
12489         (gdbpy_apply_frame_filter): Change type of "flags".
12490         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
12491         of "flags".
12492         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
12493         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
12494         * extension.h (enum frame_filter_flag): Rename from
12495         frame_filter_flags.
12496         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
12497         (apply_ext_lang_frame_filter): Change type of "flags".
12498         * extension.c (apply_ext_lang_frame_filter): Change type of
12499         "flags".
12500         * extension-priv.h (struct extension_language_ops)
12501         <apply_frame_filter>: Change type of "flags".
12502
12503 2018-02-26  Tom Tromey  <tom@tromey.com>
12504
12505         PR python/16497:
12506         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
12507         off-by-one in py_end computation.
12508         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
12509         PRINT_MORE_FRAMES.
12510         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
12511         constant.
12512
12513 2018-02-26  Tom Tromey  <tom@tromey.com>
12514
12515         * dwarf2read.c (struct variant_field): New.
12516         (struct nextfield) <variant>: New field.
12517         (dwarf2_add_field): Handle DW_TAG_variant_part.
12518         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
12519         discriminated union.
12520         (read_structure_type): Handle DW_TAG_variant_part.
12521         (handle_struct_member_die): New function, extracted from
12522         process_structure_scope.  Handle DW_TAG_variant.
12523         (process_structure_scope): Handle discriminated unions.  Call
12524         handle_struct_member_die.
12525
12526 2018-02-26  Tom Tromey  <tom@tromey.com>
12527
12528         * rust-lang.h (rust_last_path_segment): Declare.
12529         * rust-lang.c (rust_last_path_segment): Now public.  Change
12530         contract.
12531         (struct disr_info): Remove.
12532         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
12533         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
12534         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
12535         (rust_enum_p, rust_enum_variant): New function.
12536         (rust_underscore_fields): Remove "offset" parameter.
12537         (rust_print_enum): New function.
12538         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
12539         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
12540         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
12541         enums.
12542         (rust_internal_print_type): New function, from rust_print_type.
12543         Remove enum code.
12544         (rust_print_type): Call rust_internal_print_type.
12545         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
12546         Update enum handling.
12547         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
12548         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
12549         (rust_union_quirks): New functions.
12550         (process_full_comp_unit, process_full_type_unit): Call
12551         rust_union_quirks.
12552         (process_structure_scope): Update rust_unions if necessary.
12553
12554 2018-02-26  Tom Tromey  <tom@tromey.com>
12555
12556         * value.h (value_union_variant): Declare.
12557         * valops.c (value_union_variant): New function.
12558         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
12559         (struct discriminant_info): New.
12560         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
12561         enumerator.
12562         (struct main_type) <flag_discriminated_union>: New field.
12563
12564 2018-02-26  Tom Tromey  <tom@tromey.com>
12565
12566         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12567         unittests/unpack-selftests.c.
12568         * unittests/unpack-selftests.c: New file.
12569         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
12570
12571 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12572
12573         * dwarf2read.c (struct partial_die_info) <read>: New method.
12574         (read_partial_die): Remove the declaration.
12575         (load_partial_dies): Update.
12576         (partial_die_info::partial_die_info):
12577         (read_partial_die): Change it to partial_die_info::read.
12578
12579 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12580
12581         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
12582         (fixup_partial_die): Remove declaration.
12583         (scan_partial_symbols): Update.
12584         (partial_die_parent_scope): Likewise.
12585         (partial_die_full_name): Likewise.
12586         (fixup_partial_die): Change it to partial_die_info::fixup.
12587
12588 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12589
12590         * dwarf2read.c (read_partial_die): Update the declaration.
12591         (load_partial_dies): Caller update.
12592         (read_partial_die): Remove one argument abbrev_len.
12593
12594 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12595
12596         * dwarf2read.c (struct partial_die_info): Add ctor, delete
12597         assignment operator.
12598         (load_partial_dies): Use ctor and copy ctor.
12599         (read_partial_die): Update.
12600         (dwarf2_cu::find_partial_die): Use ctor.
12601
12602 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12603
12604         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
12605         (find_partial_die_in_comp_unit): Change it to
12606         dwarf2_cu::find_partial_die.
12607         (find_partial_die): Update.
12608
12609 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12610
12611         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
12612         is NULL.
12613
12614 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12615
12616         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
12617
12618 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
12619
12620         * arch/amd64.h: Use common/tdesc.h.
12621         * arch/i386.c: Likewise.
12622         * arch/i386.h: Likewise.
12623         * arch/tic6x.c: Likewise.
12624         * arch/tdesc.h: Move file from here...
12625         * common/tdesc.h: ...to here.
12626         * features/aarch64-core.c: Regenerate.
12627         * features/aarch64-fpu.c: Regenerate.
12628         * features/i386/32bit-avx.c: Regenerate.
12629         * features/i386/32bit-avx512.c: Regenerate.
12630         * features/i386/32bit-core.c: Regenerate.
12631         * features/i386/32bit-linux.c: Regenerate.
12632         * features/i386/32bit-mpx.c: Regenerate.
12633         * features/i386/32bit-pkeys.c: Regenerate.
12634         * features/i386/32bit-sse.c: Regenerate.
12635         * features/i386/64bit-avx.c: Regenerate.
12636         * features/i386/64bit-avx512.c: Regenerate.
12637         * features/i386/64bit-core.c: Regenerate.
12638         * features/i386/64bit-linux.c: Regenerate.
12639         * features/i386/64bit-mpx.c: Regenerate.
12640         * features/i386/64bit-pkeys.c: Regenerate.
12641         * features/i386/64bit-segments.c: Regenerate.
12642         * features/i386/64bit-sse.c: Regenerate.
12643         * features/i386/x32-core.c: Regenerate.
12644         * features/tic6x-c6xp.c: Regenerate.
12645         * features/tic6x-core.c: Regenerate.
12646         * features/tic6x-gp.c: Regenerate.
12647         * target-descriptions.c: Use common/tdesc.h.
12648         * target-descriptions.h: Likewise.
12649
12650 2018-02-24  Tom Tromey  <tom@tromey.com>
12651
12652         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
12653         (try_thread_db_load_from_dir, thread_db_load_search): Use
12654         std::string.
12655         (info_auto_load_libthread_db_compare): Return bool.  Change
12656         argument types.
12657         (info_auto_load_libthread_db): Use std::vector, std::string.
12658         Remove cleanups.
12659
12660 2018-02-24  Tom Tromey  <tom@tromey.com>
12661
12662         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
12663         std::string.
12664         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
12665         std::string*.
12666         * gdbarch.c: Rebuild.
12667         * gdbarch.h: Rebuild.
12668         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
12669         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
12670         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
12671         std::string*.
12672
12673 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
12674
12675         * gdbtypes.h (sect_offset): Change type to uint64_t.
12676         (sect_offset_str): New function.
12677         * dwarf2read.c (create_addrmap_from_aranges): Use
12678         sect_offset_str.
12679         (error_check_comp_unit_head): Likewise.
12680         (create_debug_type_hash_table): Likewise.
12681         (read_cutu_die_from_dwo): Likewise.
12682         (init_cutu_and_read_dies): Likewise.
12683         (init_cutu_and_read_dies_no_follow): Likewise.
12684         (process_psymtab_comp_unit_reader): Likewise.
12685         (partial_die_parent_scope): Likewise.
12686         (peek_die_abbrev): Likewise.
12687         (process_queue): Likewise.
12688         (dwarf2_physname): Likewise.
12689         (read_namespace_alias): Likewise.
12690         (read_import_statement): Likewise.
12691         (create_dwo_cu_reader): Likewise.
12692         (create_cus_hash_table): Likewise.
12693         (lookup_dwo_cutu): Likewise.
12694         (inherit_abstract_dies): Likewise.
12695         (read_func_scope): Likewise.
12696         (read_call_site_scope): Likewise.
12697         (dwarf2_add_member_fn): Likewise.
12698         (read_common_block): Likewise.
12699         (read_module_type): Likewise.
12700         (read_typedef): Likewise.
12701         (read_subrange_type): Likewise.
12702         (load_partial_dies): Likewise.
12703         (read_partial_die): Likewise.
12704         (find_partial_die): Likewise.
12705         (read_str_index): Likewise.
12706         (dwarf2_string_attr): Likewise.
12707         (build_error_marker_type): Likewise.
12708         (lookup_die_type): Likewise.
12709         (dump_die_shallow): Likewise.
12710         (follow_die_ref): Likewise.
12711         (dwarf2_fetch_die_loc_sect_off): Likewise.
12712         (dwarf2_fetch_constant_bytes): Likewise.
12713         (follow_die_sig): Likewise.
12714         (get_signatured_type): Likewise.
12715         (get_DW_AT_signature_type): Likewise.
12716         (dwarf2_find_containing_comp_unit): Likewise.
12717         (set_die_type): Likewise.
12718
12719 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
12720
12721         * arch/aarch64.c: Include "common-defs.h".
12722         * arch/amd64.c: Likewise.
12723         * arch/i386.c: Likewise.
12724
12725 2018-02-21  Tom Tromey  <tom@tromey.com>
12726
12727         * value.h: (extract_field_op): Update.
12728         * eval.c (extract_field_op): Return a const char *.
12729         * expression.h (parse_expression_for_completion): Update.
12730         * completer.c (complete_expression): Update.
12731         (add_struct_fields): Make fieldname const.
12732         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
12733         (mark_completion_tag, parse_exp_in_context_1): Update.
12734         (parse_expression_for_completion): Change "name" to
12735         unique_xmalloc_ptr*.
12736
12737 2018-02-21  Tom Tromey  <tom@tromey.com>
12738
12739         * infcall.c (call_function_by_hand_dummy): Use std::vector.
12740
12741 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12742
12743         * avr-tdep.c (avr_read_pc): Change parameter type to
12744         readable_regcache.
12745         * gdbarch.sh (read_pc): Likewise.
12746         * gdbarch.c: Re-generated.
12747         * gdbarch.h: Re-generated.
12748         * hppa-tdep.c (hppa_read_pc): Change parameter type to
12749         readable_regcache.
12750         * ia64-tdep.c (ia64_read_pc): Likewise.
12751         * mips-tdep.c (mips_read_pc): Likewise.
12752         * spu-tdep.c (spu_read_pc): Likewise.
12753
12754 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12755
12756         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
12757         * regcache-dump.c: New file.
12758         * regcache.c: Move register_dump to regcache-dump.c.
12759         (maintenance_print_registers): Likewise.
12760         (maintenance_print_raw_registers): Likewise.
12761         (maintenance_print_cooked_registers): Likewise.
12762         (maintenance_print_register_groups): Likewise.
12763         (maintenance_print_remote_registers): Likewise.
12764         (_initialize_regcache): Likewise.
12765         * regcache.h (register_dump): Moved from regcache.c.
12766
12767 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12768
12769         * regcache.c (regcache::regcache): Update.
12770         (regcache::invalidate): Move it to detached_regcache::invalidate.
12771         (get_thread_arch_aspace_regcache): Update.
12772         (regcache::raw_update): Update.
12773         (regcache::cooked_read): Remove some code.
12774         (regcache::cooked_read_value): Likewise.
12775         (regcache::raw_write): Remove assert on m_readonly_p.
12776         (regcache::raw_supply_integer): Move it to
12777         detached_regcache::raw_supply_integer.
12778         (regcache::raw_supply_zeroed): Likewise.
12779         * regcache.h (detached_regcache) <raw_supply_integer>: New
12780         declaration.
12781         <raw_supply_zeroed, invalidate>: Likewise.
12782         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
12783         <invalidate>: Likewise.
12784         <m_readonly_p>: Removed.
12785
12786 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12787
12788         * infcmd.c (get_return_value): Let stop_regs point to
12789         get_current_regcache.
12790         * regcache.c (regcache::regcache): Remove.
12791         (register_dump_reg_buffer): New class.
12792         (regcache_print): Adjust.
12793         * regcache.h (regcache): Remove constructors.
12794
12795 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12796
12797         * regcache.c (class register_dump): New class.
12798         (register_dump_regcache, register_dump_none): New class.
12799         (register_dump_remote, register_dump_groups): New class.
12800         (regcache_print): Update.
12801         * regcache.h (regcache_dump_what): Move it to regcache.c.
12802         (regcache) <dump>: Remove.
12803
12804 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12805
12806         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
12807          reg_buffer_rw *.
12808         (jit_unwind_reg_set_impl): Call raw_supply.
12809         (jit_frame_sniffer): Use reg_buffer_rw.
12810         * record-full.c (record_full_core_regbuf): Change its type.
12811         (record_full_core_open_1): Use reg_buffer_rw.
12812         (record_full_close): Likewise.
12813         (record_full_core_fetch_registers): Use regcache->raw_supply.
12814         (record_full_core_store_registers): Likewise.
12815         * regcache.c (regcache::get_register_status): Move it to
12816         reg_buffer.
12817         (regcache_raw_set_cached_value): Remove.
12818         (regcache::raw_set_cached_value): Remove.
12819         (regcache::raw_write): Call raw_supply.
12820         (regcache::raw_supply): Move it to reg_buffer_rw.
12821         * regcache.h (regcache_raw_set_cached_value): Remove.
12822         (reg_buffer_rw): New class.
12823
12824 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12825
12826         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
12827         readonly_detached_regcache.
12828         (dummy_frame_prev_register): Use regcache->cooked_read.
12829         * frame.c (frame_save_as_regcache): Change return type.
12830         (frame_pop): Update.
12831         * frame.h (frame_save_as_regcache): Update declaration.
12832         * inferior.h (get_infcall_suspend_state_regcache): Update
12833         declaration.
12834         * infrun.c (infcall_suspend_state) <registers>: use
12835         readonly_detached_regcache.
12836         (save_infcall_suspend_state): Don't use regcache_dup.
12837         (get_infcall_suspend_state_regcache): Change return type.
12838         * linux-fork.c (struct fork_info) <savedregs>: Change to
12839         readonly_detached_regcache.
12840         <pc>: New field.
12841         (fork_save_infrun_state): Don't use regcache_dup.
12842         (info_checkpoints_command): Adjust.
12843         * mi/mi-main.c (register_changed_p): Update declaration.
12844         (mi_cmd_data_list_changed_registers): Use
12845         readonly_detached_regcache.
12846         (register_changed_p): Change parameter type to
12847         readonly_detached_regcache.
12848         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
12849         readonly_detached_regcache.
12850         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
12851         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
12852         New.
12853         (regcache::save): Move it to reg_buffer.
12854         (regcache::restore): Change parameter type.
12855         (regcache_dup): Remove.
12856         * regcache.h (reg_buffer) <save>: New method.
12857         (readonly_detached_regcache): New class.
12858         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
12859         readonly_detached_regcache.
12860         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
12861
12862 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12863
12864         * frame.c (frame_save_as_regcache): Use regcache method save.
12865         (frame_pop): Use regcache method restore.
12866         * infrun.c (restore_infcall_suspend_state): Likewise.
12867         * linux-fork.c (fork_load_infrun_state): Likewise.
12868         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
12869         save.
12870         * regcache.c (regcache_save): Remove.
12871         (regcache::restore): More asserts.
12872         (regcache_cpy): Remove.
12873         * regcache.h (regcache_save): Remove the declaration.
12874         (regcache::restore): Move from private to public.
12875         Remove the friend declaration of regcache_cpy.
12876         (regcache_cpy): Remove declaration.
12877
12878 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12879
12880         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
12881         parameter type to 'readable_regcache *'.
12882         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12883         * arm-tdep.c (arm_neon_quad_read): Likewise.
12884         (arm_pseudo_read): Likewise.
12885         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12886         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12887         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12888         * gdbarch.c: Re-generated.
12889         * gdbarch.h: Re-generated.
12890         * gdbarch.sh (pseudo_register_read): Change parameter type to
12891         'readable_regcache *'.
12892         (pseudo_register_read_value): Likewise.
12893         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
12894         (h8300_pseudo_register_read): Likewise.
12895         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
12896         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12897         (i386_pseudo_register_read_into_value): Likewise.
12898         (i386_pseudo_register_read_value): Likewise.
12899         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
12900         declaration.
12901         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
12902         * m32c-tdep.c (m32c_raw_read): Likewise.
12903         (m32c_read_flg): Likewise.
12904         (m32c_banked_register): Likewise.
12905         (m32c_banked_read): Likewise.
12906         (m32c_sb_read): Likewise.
12907         (m32c_part_read): Likewise.
12908         (m32c_cat_read): Likewise.
12909         (m32c_r3r2r1r0_read): Likewise.
12910         (m32c_pseudo_register_read): Likewise.
12911         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12912         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12913         (mep_pseudo_cr64_read): Likewise.
12914         (mep_pseudo_register_read): Likewise.
12915         * mips-tdep.c (mips_pseudo_register_read): Likewise.
12916         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12917         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12918         * regcache.c (regcache::raw_read): Move it to readable_regcache.
12919         (regcache::cooked_read): Likewise.
12920         (regcache::cooked_read_value): Likewise.
12921         (regcache_cooked_read_signed):
12922         (regcache::cooked_read): Likewise.
12923         * regcache.h (readable_regcache): New class.
12924         (regcache): Inherit readable_regcache.  Move some methods to
12925         readable_regcache.
12926         * rl78-tdep.c (rl78_pseudo_register_read): Change
12927         parameter type to 'readable_regcache *'.
12928         * rs6000-tdep.c (do_regcache_raw_read): Remove.
12929         (e500_pseudo_register_read): Change parameter type to
12930         'readable_regcache *'.
12931         (dfp_pseudo_register_read): Likewise.
12932         (vsx_pseudo_register_read): Likewise.
12933         (efpr_pseudo_register_read): Likewise.
12934         * s390-tdep.c (s390_pseudo_register_read): Likewise.
12935         * sh-tdep.c (sh_pseudo_register_read): Likewise.
12936         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
12937         (sh64_pseudo_register_read): Likewise.
12938         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
12939         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12940         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
12941         (spu_pseudo_register_read): Likewise.
12942         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12943         (xtensa_pseudo_register_read): Likewise.
12944
12945 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12946
12947         * regcache.c (regcache::regcache): Call reg_buffer ctor.
12948         (regcache::arch): Move it to reg_buffer::arch.
12949         (regcache::register_buffer): Likewise.
12950         (regcache::assert_regnum): Likewise.
12951         (regcache::num_raw_registers): Likewise.
12952         * regcache.h (reg_buffer): New class.
12953         (regcache): Inherit reg_buffer.
12954
12955 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
12956
12957         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
12958         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
12959
12960 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
12961
12962         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
12963
12964 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
12965
12966         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
12967         (SFILES): Remove common/*.c files.
12968         (COMMON_OBS): Remove some *.o files built from common/*.c files.
12969         * common/common.host: Add common reference.
12970         * configure.ac: Likewise.
12971         * configure: Regenerate.
12972
12973 2018-02-16  Yao Qi  <yao.qi@linaro.org>
12974
12975         * block.c (block_namespace_info): Inherit allocate_on_obstack.
12976         (block_initialize_namespace): Use new.
12977         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
12978         (dwarf2_free_objfile): Use delete.
12979         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
12980         (copy_type_recursive): Use new.
12981         * gdb_obstack.h (allocate_on_obstack): New.
12982
12983 2018-02-15  Yao Qi  <yao.qi@linaro.org>
12984
12985         PR gdb/22849
12986         * inferior.c (exit_inferior_1): Reset inf->control.
12987
12988 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
12989
12990         * ada-lang.c (ada_to_fixed_value_create): Delete advance
12991         declaration.
12992
12993 2018-02-14  Pedro Alves  <palves@redhat.com>
12994
12995         * frame-unwind.c (frame_unwind_try_unwinder): Always call
12996         frame_cleanup_after_sniffer on exception.
12997
12998 2018-02-14  Tom Tromey  <tom@tromey.com>
12999
13000         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13001         const.
13002         (solib_bfd_open): Make pathname const.
13003         * solib.c (solib_bfd_open): Make pathname const.
13004         * solib-spu.c (spu_bfd_fopen): Make name const.
13005         (spu_bfd_open): Make pathname const.
13006         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13007         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13008
13009 2018-02-14  Tom Tromey  <tom@tromey.com>
13010
13011         * symfile.c (symfile_bfd_open): Update.
13012         * source.h (openp, source_full_path_of, find_and_open_source):
13013         Change argument type to unique_xmalloc_ptr.
13014         * source.c (openp): Take a unique_xmalloc_ptr.
13015         (source_full_path_of, find_and_open_source): Likewise.
13016         (open_source_file, symtab_to_fullname): Update.
13017         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13018         unique_xmalloc_ptr.
13019         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13020         (exec_file_find): Update.
13021         * psymtab.c (psymtab_to_fullname): Update.
13022         * nto-tdep.h (nto_find_and_open_solib): Update.
13023         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13024         unique_xmalloc_ptr.
13025         * exec.c (exec_file_attach): Update.
13026         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13027         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13028
13029 2018-02-14  Tom Tromey  <tom@tromey.com>
13030
13031         * solib.c: Include source.h.
13032         * nto-tdep.c: Include source.h.
13033         * mi/mi-cmd-env.c: Include source.h.
13034         * infcmd.c: Include source.h.
13035         * exec.c: Include source.h.
13036         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13037         (add_path, directory_switch, source_path, init_source_path): Move
13038         declarations...
13039         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13040         (add_path, directory_switch, source_path, init_source_path):
13041         ...here.
13042
13043 2018-02-14  Tom Tromey  <tom@tromey.com>
13044
13045         * solist.h (exec_file_find, solib_find): Return
13046         unique_xmalloc_ptr.
13047         (solib_bfd_fopen): Take a const char *.
13048         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13049         (exec_file_find, solib_find): Likewise.
13050         (solib_bfd_fopen): Do not take ownership of "pathname".
13051         (solib_bfd_open): Use unique_xmalloc_ptr.
13052         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13053         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13054         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13055         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13056
13057 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13058
13059         * ada-lang.c (name_match_type_from_name): Remove reference to
13060         ada_name_for_lookup in function's documentation.
13061         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13062
13063 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13064
13065         * defs.h (enum openp_flags): New enum.
13066         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13067         Move to enum openp_flags.
13068         (openp_flags): New enum flags.
13069         (openp): Change parameter type to openp_flags.
13070         * source.c (openp): Change parameter type to openp_flags.
13071         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13072         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13073
13074 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13075
13076         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13077         per-command.
13078
13079 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13080
13081         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13082         into...
13083         (class dwarf2_queue_guard): ...the destructor of this new class.
13084         (dw2_do_instantiate_symtab): Create instance of the new class
13085         dwarf2_queue_guard, remove cleanup.
13086
13087 2018-02-09  Tom Tromey  <tom@tromey.com>
13088
13089         * source.c (find_source_lines): Don't reference past the end of
13090         the vector.
13091
13092 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13093
13094         * remote.c (remote_btrace_maybe_reopen): Change error message.
13095         * btrace.c (btrace_enable): Likewise.
13096         (parse_xml_btrace): Likewise.
13097         (parse_xml_btrace_conf): Likewise.
13098
13099 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13100
13101         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13102         (linux_enable_pt, linux_enable_bts): Call
13103         diagnose_perf_event_open_fail.
13104
13105 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13106
13107         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13108         Remove parameter and change return type.  Update callers.  Move it.
13109         (linux_enable_bts, linux_enable_pt): Improve error message.
13110         (linux_enable_pt): Remove zero buffer size check.
13111         (linux_enable_btrace): Improve error messages.  Remove NULL return
13112         check.
13113
13114 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13115
13116         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13117         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13118         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13119         (linux_supports_pt, linux_supports_btrace): Remove.
13120         (linux_enable_bts): Call cpu_supports_bts.
13121         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13122         * remote.c (remote_supports_btrace): Remove.
13123         (init_remote_ops): Remove remote_supports_btrace.
13124         * target-delegates.c: Regenerated.
13125         * target.c (target_supports_btrace): Remove.
13126         * target.h (target_ops) <to_supports_btrace>: Remove
13127         (target_supports_btrace): Remove.
13128         * x86-linux-nat.c (x86_linux_create_target): Remove
13129         linux_supports_btrace.
13130
13131 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13132
13133         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13134         btrace failed.
13135         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13136         exception and use message in own exception.
13137
13138 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13139
13140         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13141         (perf_event_pt_event_type): Use gdb_file_up.
13142         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13143         scoped_fd, and scoped_mmap.
13144
13145 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13146
13147         * common/scoped_mmap.h: New.
13148         * unittests/scoped_mmap-selftest.c: New.
13149         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13150         unittests/scoped_mmap-selftest.c.
13151
13152 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13153
13154         * common/scoped_fd.h: New.
13155         * unittests/scoped_fd-selftest.c: New.
13156         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13157         unittests/scoped_fd-selftest.c.
13158
13159 2018-02-09  Tom Tromey  <tom@tromey.com>
13160
13161         * auto-load.c (auto_load_section_scripts): Use
13162         gdb::unique_xmalloc_ptr.
13163
13164 2018-02-09  Tom Tromey  <tom@tromey.com>
13165
13166         * auto-load.c (execute_script_contents): Use std::string.
13167
13168 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13169
13170         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13171         Python function, rather than a new command.
13172
13173 2018-02-08  Tom Tromey  <tom@tromey.com>
13174
13175         * solib.c (solib_find_1): Use std::string.
13176         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13177
13178 2018-02-08  Tom Tromey  <tom@tromey.com>
13179
13180         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13181
13182 2018-02-08  Tom Tromey  <tom@tromey.com>
13183
13184         * source.c (find_source_lines): Use gdb::def_vector.
13185
13186 2018-02-08  Tom Tromey  <tom@tromey.com>
13187
13188         * macrocmd.c (struct temporary_macro_definition): New.
13189         (macro_define_command): Use temporary_macro_definition.  Remove
13190         cleanups.
13191         (free_macro_definition_ptr): Remove.
13192
13193 2018-02-08  Tom Tromey  <tom@tromey.com>
13194
13195         * macroexp.c (maybe_expand): Use std::string.
13196
13197 2018-02-08  Tom Tromey  <tom@tromey.com>
13198
13199         * macroexp.c (struct macro_buffer): Add initializers for some
13200         members.
13201         (init_buffer, init_shared_buffer, free_buffer)
13202         (free_buffer_return_text): Remove.
13203         (macro_buffer): New constructors.
13204         (~macro_buffer): New destructor.
13205         (macro_buffer::set_shared): New method.
13206         (macro_buffer::resize_buffer, macro_buffer::appendc)
13207         (macro_buffer::appendmem): Now methods, not free functions.
13208         (set_token, append_tokens_without_splicing, stringify)
13209         (macro_stringify): Update.
13210         (gather_arguments): Change return type.  Remove argc_p argument,
13211         add args_ptr argument.  Use std::vector.
13212         (substitute_args): Remove argc argument.  Accept std::vector.
13213         (expand): Update.  Use std::vector.
13214         (scan, macro_expand, macro_expand_next): Update.
13215
13216 2018-02-08  Tom Tromey  <tom@tromey.com>
13217
13218         * symtab.c (default_collect_symbol_completion_matches_break_on):
13219         Use unique_xmalloc_ptr.
13220         * macroscope.h: (sal_macro_scope, user_macro_scope)
13221         (default_macro_scope): Return unique_xmalloc_ptr.
13222         * macroscope.c (sal_macro_scope, user_macro_scope)
13223         (default_macro_scope): Return unique_xmalloc_ptr.
13224         * macroexp.h (macro_expand, macro_expand_once): Return
13225         unique_xmalloc_ptr.
13226         * macroexp.c (macro_expand, macro_expand_once): Return
13227         unique_xmalloc_ptr.
13228         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13229         (info_macro_command, info_macros_command): Use
13230         unique_xmalloc_ptr.
13231         * compile/compile-c-support.c (write_macro_definitions): Use
13232         unique_xmalloc_ptr.
13233         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13234
13235 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13236
13237         * value.c (value_static_field): Assign field type instead of
13238         containing type when returning an optimized out value.
13239
13240 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13241
13242         * ft32-tdep.c (ft32_read_pc): Remove.
13243         (ft32_write_pc): Remove.
13244         (ft32_gdbarch_init): Update.
13245         * m32r-tdep.c (m32r_read_pc): Remove.
13246         (m32r_gdbarch_init): Update.
13247         * mep-tdep.c (mep_read_pc): Remove.
13248         (mep_gdbarch_init): Update.
13249         * microblaze-tdep.c (microblaze_write_pc): Remove.
13250         (microblaze_gdbarch_init): Update.
13251         * mn10300-tdep.c (mn10300_read_pc): Remove.
13252         (mn10300_write_pc): Remove.
13253         (mn10300_gdbarch_init): Update.
13254         * moxie-tdep.c (moxie_read_pc): Remove.
13255         (moxie_write_pc): Remove.
13256         (moxie_gdbarch_init): Update.
13257
13258 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13259
13260         * expprint.c (print_subexp_standard): Handle
13261         OP_F77_UNDETERMINED_ARGLIST.
13262         (dump_subexp_body_standard): Likewise.
13263
13264 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13265
13266         * target-descriptions.c (tdesc_element_visitor) Add empty
13267         implementations.
13268         (tdesc_type): Move make_gdb_type from here.
13269         (tdesc_type_builtin): Likewise.
13270         (tdesc_type_vector): Likewise.
13271         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13272         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13273         (make_gdb_type_union): Likewise.
13274         (make_gdb_type_flags): Likewise.
13275         (make_gdb_type_enum): Likewise.
13276         (make_gdb_type): New function.
13277         (tdesc_register_type): Use static make_gdb_type.
13278
13279 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13280
13281         * infcmd.c (default_print_one_register_info): Align natural-format
13282         column values consistently one under another.
13283         (pad_to_column): New function.
13284
13285 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13286
13287         * dwarf2read.c (dwarf2_physname): Move commment.
13288
13289 2018-02-01  Leszek Swirski  <leszeks@google.com>
13290
13291         * varobj.c (varobj_formatted_print_options): Allow recursive
13292         pretty printing if pretty printing is enabled.
13293
13294 2018-02-01  Leszek Swirski  <leszeks@google.com>
13295
13296         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13297         names after a structop as a filename.
13298
13299 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13300
13301         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13302         (arm_record_coproc_data_proc): Likewise.
13303
13304 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13305
13306         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13307
13308 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13309
13310         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13311         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13312
13313 2018-01-31  Pedro Alves  <palves@redhat.com>
13314
13315         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13316         * inflow.c (child_terminal_save_inferior): Wrap reference to
13317         tcgetpgrp in HAVE_TERMIOS_H.
13318         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13319         _WIN32.
13320         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13321         always iterate over all inferiors.
13322         (gdbsim_cntrl_c): Adjust.
13323         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13324
13325 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13326
13327         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13328         index type is objfile-owned if the element type is as well.
13329
13330 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13331
13332         GDB 8.1 released.
13333
13334 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13335
13336         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13337         "features/s390x-linux64.c".
13338         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13339         s390_linux32 and s390x_linux64.
13340         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13341         default tdesc.
13342         * s390-tdep.c: Include "features/s390-linux32.c" and
13343         "features/s390x-linux64.c".
13344         (s390_tdesc_valid): Add check for tdesc_has_registers.
13345         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13346         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13347         tdesc_s390x_linux64.
13348         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13349         tdesc_s390x_linux64 to...
13350         * s390-tdep.h: ...here.
13351
13352 2018-01-30  Pedro Alves  <palves@redhat.com>
13353
13354         PR gdb/13211
13355         * config.in, configure: Regenerate.
13356         * configure.ac: Check for getpgid.
13357         * go32-nat.c (go32_pass_ctrlc): New.
13358         (go32_target): Install it.
13359         * inf-child.c (inf_child_target): Install
13360         child_terminal_save_inferior, child_pass_ctrlc and
13361         child_interrupt.
13362         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13363         (inf_ptrace_target): No longer install it.
13364         * infcmd.c (interrupt_target_1): Adjust.
13365         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13366         (child_interrupt): Declare.
13367         (inferior::terminal_state): New.
13368         * inflow.c (struct terminal_info): Update comments.
13369         (inferior_process_group): Delete.
13370         (terminal_is_ours): Delete.
13371         (gdb_tty_state): New.
13372         (child_terminal_init): Adjust.
13373         (is_gdb_terminal, sharing_input_terminal_1)
13374         (sharing_input_terminal): New functions.
13375         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13376         Set the process's actual process group in the foreground if
13377         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13378         mark terminal as the inferior's if not sharing GDB's terminal.
13379         Don't check attach_flag.
13380         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13381         pass down a target_terminal_state.
13382         (child_terminal_save_inferior): New, factored out from ...
13383         (child_terminal_ours_1): ... this.  Handle
13384         target_terminal_state::is_ours_for_output.
13385         (child_interrupt, child_pass_ctrlc): New.
13386         (inflow_inferior_exit): Clear the inferior's terminal_state.
13387         (copy_terminal_info): Copy the inferior's terminal state.
13388         (_initialize_inflow): Remove reference to terminal_is_ours.
13389         * inflow.h (inferior_process_group): Delete.
13390         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13391         * procfs.c (procfs_target): Don't install procfs_interrupt.
13392         (procfs_interrupt): Delete.
13393         * remote.c (remote_serial_quit_handler): Adjust.
13394         (remote_interrupt): Remove ptid parameter.  Adjust.
13395         * target-delegates.c: Regenerate.
13396         * target.c: Include "terminal.h".
13397         (target_terminal::terminal_state): Rename to ...
13398         (target_terminal::m_terminal_state): ... this.
13399         (target_terminal::init): Adjust.
13400         (target_terminal::inferior): Adjust to per-inferior
13401         terminal_state.
13402         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13403         (target_terminal::ours, target_terminal::ours_for_output): Use
13404         target_terminal_is_ours_kind.
13405         (target_interrupt): Remove ptid parameter.  Adjust.
13406         (default_target_pass_ctrlc): Adjust.
13407         * target.h (target_ops::to_terminal_save_inferior): New field.
13408         (target_ops::to_interrupt): Remove ptid_t parameter.
13409         (target_interrupt): Remove ptid_t parameter.  Update comment.
13410         (target_pass_ctrlc): Update comment.
13411         * target/target.h (target_terminal_state): New scoped enum,
13412         factored out of ...
13413         (target_terminal::terminal_state): ... here.
13414         (target_terminal::inferior): Update comments.
13415         (target_terminal::restore_inferior): New.
13416         (target_terminal::is_inferior, target_terminal::is_ours)
13417         (target_terminal::is_ours_for_output): Adjust.
13418         (target_terminal::scoped_restore_terminal_state): Adjust to
13419         rename, and call restore_inferior() instead of inferior().
13420         (target_terminal::scoped_restore_terminal_state::m_state): Change
13421         type.
13422         (target_terminal::terminal_state): Rename to ...
13423         (target_terminal::m_terminal_state): ... this and change type.
13424
13425 2018-01-30  Pedro Alves  <palves@redhat.com>
13426
13427         * linux-nat.c (wait_for_signal): New function.
13428         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13429         directly.
13430         (async_terminal_is_ours)
13431         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13432         (linux_nat_add_target): Don't override
13433         to_terminal_inferior/to_terminal_ours.
13434
13435 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13436
13437         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13438
13439 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13440
13441         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13442         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13443         dwarf2_per_objfile_free here.
13444         (dwarf2_per_objfile_free): Remove.
13445         (_initialize_dwarf2_read): Don't register
13446         dwarf2_per_objfile_free as a registry cleanup.
13447
13448 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13449
13450         Avoid compilation errors in MinGW native builds
13451
13452         The error is triggered by including python-internal.h, and the
13453         error message is:
13454
13455              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13456                       from build-gnulib/import/math.h:27,
13457                       from d:/usr/Python26/include/pyport.h:235,
13458                       from d:/usr/Python26/include/Python.h:58,
13459                       from python/python-internal.h:94,
13460                       from python/py-arch.c:24:
13461              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13462         using ::hypot;
13463                 ^~~~~
13464
13465         This happens because Python headers define 'hypot' to expand t
13466         '_hypot' in the Windows builds.
13467         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13468         'hypoth'.  This avoids a compilation error.
13469
13470 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13471
13472         * MAINTAINERS (Write After Approval): Fix ordering.
13473
13474 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13475
13476         * MAINTAINERS (Write After Approval): Add Alan Hayward.
13477
13478 2018-01-26  Alan Modra  <amodra@gmail.com>
13479
13480         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
13481         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
13482         Remove nop.  Make const.  Comment.
13483         (powerpc32_plt_stub_so_2): New.
13484         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
13485         Correct count.  Update uses.
13486         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
13487         Move common code reading PLT entry word.  Correct
13488         powerpc32_plt_stub PLT address calculation.
13489         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
13490         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
13491         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
13492         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
13493         (ppc64_standard_linkage8): Likewise.
13494         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
13495         Correct insns description.
13496         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
13497
13498 2018-01-24  Pedro Alves  <palves@redhat.com>
13499
13500         GCC PR libstdc++/83906
13501         * gdbtypes.c (operator==(const dynamic_prop &,
13502         const dynamic_prop &)): New.
13503         (operator==(const range_bounds &, const range_bounds &)): New.
13504         (check_types_equal): Use them instead of memcmp.
13505         * gdbtypes.h (operator==(const dynamic_prop &,
13506         const dynamic_prop &)): Declare.
13507         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
13508         (operator==(const range_bounds &, const range_bounds &)): Declare.
13509         (operator!=(const range_bounds &, const range_bounds &)): Declare.
13510
13511 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13512
13513         * s390-linux-tdep.c (s390_record_address_mask)
13514         (s390_record_calc_disp_common, s390_record_calc_disp)
13515         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13516         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13517         (s390_process_record): Move to s390-tdep.c.
13518         (s390_linux_init_abi_any): Adjust.
13519         * s390-tdep.c (s390_record_address_mask)
13520         (s390_record_calc_disp_common, s390_record_calc_disp)
13521         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13522         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13523         (s390_process_record): Moved from s390-linux-tdep.c
13524         (s390_gdbarch_init): Adjust.
13525
13526 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13527
13528         * s390-linux-nat.c (s390-tdep.h): New include.
13529         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
13530         (HFILES_NO_SRCDIR): Add s390-tdep.h.
13531         (ALLDEPFILES): Add s390-tdep.c.
13532         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
13533         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
13534         * s390-tdep.h: ...this.  New file.
13535         * s390-linux-tdep.c (s390-tdep.h): New include.
13536         (_initialize_s390_tdep): Rename to...
13537         (_initialize_s390_linux_tdep): ...this and adjust.
13538         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
13539         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
13540         s390-tdep.h.
13541         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
13542         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
13543         (s390_is_partial_instruction, s390_software_single_step)
13544         (is_non_branch_ril, s390_displaced_step_copy_insn)
13545         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
13546         (s390_prologue_data, s390_addr, s390_store, s390_load)
13547         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
13548         (s390_register_call_saved, s390_guess_tracepoint_registers)
13549         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
13550         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
13551         (s390_pseudo_register_name, s390_pseudo_register_type)
13552         (s390_pseudo_register_read, s390_pseudo_register_write)
13553         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
13554         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
13555         (s390_addr_bits_remove, s390_address_class_type_flags)
13556         (s390_address_class_type_flags_to_name)
13557         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
13558         (s390_function_arg_float, s390_function_arg_vector)
13559         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
13560         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
13561         (s390_frame_align, s390_register_return_value, s390_return_value)
13562         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
13563         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
13564         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
13565         (s390_trad_frame_prev_register, s390_unwind_cache)
13566         (s390_prologue_frame_unwind_cache)
13567         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
13568         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
13569         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
13570         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
13571         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
13572         (s390_frame_base_address, s390_local_base_address)
13573         (s390_frame_base, s390_gcc_target_options)
13574         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
13575         (s390_validate_reg_range, s390_tdesc_valid)
13576         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
13577         * s390-tdep.c: ...this.  New file.
13578
13579 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13580
13581         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
13582         (s390_process_record, s390_gdbarch_tdep_alloc)
13583         (s390_linux_init_abi_any): Use/set new hook.
13584
13585 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13586
13587         * s390-linux-tdep.c (osabi.h): New include.
13588         (s390_linux_init_abi_31, s390_linux_init_abi_64)
13589         (s390_linux_init_abi_any): New functions.
13590         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
13591
13592 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13593
13594         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
13595         tdesc_has_registers check
13596
13597 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13598
13599         * s390-linux-tdep.c (s390_tdesc_valid): New function.
13600         (s390_validate_reg_range): New macro.
13601         (s390_gdbarch_init): Adjust.
13602
13603 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13604
13605         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
13606         (s390_gdbarch_tdep_alloc): Adjust.
13607         (s390_gdbarch_init): Adjust.
13608
13609 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13610
13611         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
13612         <have_tdb>: Change type to bool.
13613         (s390_gdbarch_tdep_alloc): Adjust.
13614         (s390_gdbarch_init): Adjust.
13615
13616 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13617
13618         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
13619         (gdbarch_tdep) <have_upper, have_vx>: New fields.
13620         (s390_gdbarch_tdep_alloc): New function.
13621         (s390_gdbarch_init): Allocate tdep at start and use its fields
13622         instead of separate variables.
13623
13624 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13625
13626         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
13627         when looking for cached gdbarch and add comment for remaining.
13628
13629 2018-01-22  Pedro Alves  <palves@redhat.com>
13630             Sergio Durigan Junior  <sergiodj@redhat.com>
13631
13632         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
13633         case.
13634
13635 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
13636
13637         * MAINTAINERS: Update my company e-mail address.
13638
13639 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13640
13641         * regcache.c (cooked_write_test): New function.
13642         (_initialize_regcache): Register the test.
13643
13644 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13645
13646         * ia64-tdep.c (ia64_pseudo_register_read): Call
13647         regcache->cooked_read instead of regcache_cooked_read_unsigned.
13648         * m32c-tdep.c (m32c_cat_read): Likewise.
13649         (m32c_r3r2r1r0_read): Likewise.
13650         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13651         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13652
13653 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13654
13655         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
13656         method raw_read instead of regcache_raw_read.
13657         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13658         * arm-tdep.c (arm_neon_quad_read): Likewise.
13659         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13660         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13661         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13662         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
13663         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13664         (i386_pseudo_register_read_into_value): Likewise.
13665         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13666         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13667         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13668         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
13669         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
13670         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
13671         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13672         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
13673         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
13674
13675 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13676
13677         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
13678         * configure.tgt: Remove target mt.
13679         * mt-tdep.c: Remove.
13680         * regcache.c (cooked_read_test): Remove the check for mt.
13681
13682 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13683
13684         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
13685         instead of gdbarch_pseudo_register_read_value.
13686
13687 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13688
13689         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
13690         language is Ada.
13691
13692 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13693
13694         * linespec.c (create_sals_line_offset): Remove code that preserved
13695         the symtab_and_line's line number.
13696
13697 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13698
13699         * varobj.c (varobj_create): Don't set valid_block when creating a
13700         floating varobj.
13701
13702 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13703
13704         * varobj.c (varobj_create): Remove out of date comment.
13705
13706 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13707
13708         PR mi/20395
13709         * ada-exp.y (write_var_from_sym): Pass extra parameter when
13710         updating innermost block.
13711         * parse.c (innermost_block_tracker::update): Take extra type
13712         parameter, and check types match before updating innermost block.
13713         (write_dollar_variable): Update innermost block for registers.
13714         * parser-defs.h (enum innermost_block_tracker_type): New enum.
13715         (innermost_block_tracker::innermost_block_tracker): Initialise
13716         m_types member.
13717         (innermost_block_tracker::reset): Take type parameter.
13718         (innermost_block_tracker::update): Take type parameter, and pass
13719         type through as needed.
13720         (innermost_block_tracker::m_types): New member.
13721         * varobj.c (varobj_create): Pass type when reseting innermost
13722         block.
13723
13724 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13725
13726         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
13727         * ada-lang.c (resolve_subexp): Likewise.
13728         * breakpoint.c (set_breakpoint_condition) Likewise.
13729         (watch_command_1) Likewise.
13730         * c-exp.y (variable): Likewise.
13731         * d-exp.y (PrimaryExpression): Likewise.
13732         * f-exp.y (variable): Likewise.
13733         * go-exp.y (variable): Likewise.
13734         * m2-exp.y (variable): Likewise.
13735         * objfiles.c (objfile::~objfile): Likewise.
13736         * p-exp.y (variable): Likewise.
13737         * parse.c (innermost_block): Change type.
13738         * parser-defs.h (class innermost_block_tracker): New.
13739         (innermost_block): Change to innermost_block_tracker.
13740         * printcmd.c (display_command): Switch to innermost_block API.
13741         (do_one_display): Likewise.
13742         * rust-exp.y (do_one_display): Likewise.
13743         * symfile.c (clear_symtab_users): Likewise.
13744         * varobj.c (varobj_create): Switch to innermost_block API, replace
13745         use of innermost_block with block stored on varobj object.
13746
13747 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13748
13749         * expression.h (innermost_block): Remove declaration.
13750         * varobj.c: Add 'parser-defs.h' include.
13751
13752 2018-01-19  Tom Tromey  <tom@tromey.com>
13753
13754         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
13755         symbols in the static and global blocks.
13756
13757 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
13758
13759         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
13760         gdb_ptrace.h, and move including gdb_wait.h ...
13761         * nat/linux-ptrace.h: ... to here.
13762
13763 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13764
13765         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
13766         inf_ptrace_detach_success.
13767         (inf_ptrace_detach_success): Add inferior parameter, use it
13768         instead of inferior_ptid, pass it to detach_inferior.
13769         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
13770         parameter.
13771         * inferior.c (detach_inferior): Add overload that takes an
13772         inferior object.
13773         * inferior.h (detach_inferior): Likewise.
13774         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
13775         use inferior_ptid, adjust call to inf_ptrace_detach_success.
13776         * linux-thread-db.c (thread_db_detach): Use inf parameter.
13777
13778 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13779
13780         * target.h (struct target_ops) <to_detach>: Add inferior
13781         parameter.
13782         (target_detach): Likewise.
13783         * target.c (dispose_inferior): Pass inferior down.
13784         (target_detach): Pass inferior down.  Assert that it is equal to
13785         the current inferior.
13786         * aix-thread.c (aix_thread_detach): Pass inferior down.
13787         * corefile.c (core_file_command): Pass current_inferior() down.
13788         * corelow.c (core_detach): Add inferior parameter.
13789         * darwin-nat.c (darwin_detach): Likewise.
13790         * gnu-nat.c (gnu_detach): Likewise.
13791         * inf-ptrace.c (inf_ptrace_detach): Likewise.
13792         * infcmd.c (detach_command): Pass current_inferior() down to
13793         target_detach.
13794         * infrun.c (follow_fork_inferior): Pass parent_inf to
13795         target_detach.
13796         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
13797         target_detach.
13798         * linux-nat.c (linux_nat_detach): Add inferior parameter.
13799         * linux-thread-db.c (thread_db_detach): Likewise.
13800         * nto-procfs.c (procfs_detach): Likewise.
13801         * procfs.c (procfs_detach): Likewise.
13802         * record.c (record_detach): Likewise.
13803         * record.h (struct inferior): Forward-declare.
13804         (record_detach): Add inferior parameter.
13805         * remote-sim.c (gdbsim_detach): Likewise.
13806         * remote.c (remote_detach_1): Likewise.
13807         (remote_detach): Likewise.
13808         (extended_remote_detach): Likewise.
13809         * sol-thread.c (sol_thread_detach): Likewise.
13810         * target-debug.h (target_debug_print_inferior_p): New macro.
13811         * target-delegates.c: Re-generate.
13812         * top.c (kill_or_detach): Pass inferior down to target_detach.
13813         * windows-nat.c (windows_detach): Add inferior parameter.
13814
13815 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13816
13817         * target.h (struct target_ops) <to_detach>: Remove args
13818         parameter.
13819         (target_detach): Likewise.
13820         * target.c (dispose_inferior): Adjust.
13821         (target_detach): Remove args parameter, adjust.
13822         * aix-thread.c (aix_thread_detach): Adjust.
13823         * corefile.c (core_file_command): Adjust.
13824         * corelow.c (core_detach): Adjust.
13825         * darwin-nat.c (darwin_detach): Adjust.
13826         * gnu-nat.c (gnu_detach): Adjust.
13827         * inf-ptrace.c (inf_ptrace_detach): Adjust.
13828         * infcmd.c (detach_command): Adjust
13829         * infrun.c (follow_fork_inferior): Adjust.
13830         (handle_vfork_child_exec_or_exit): Adjust.
13831         * linux-fork.c (linux_fork_detach): Remove args parameter.
13832         * linux-fork.h (linux_fork_detach): Likewise.
13833         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
13834         * linux-thread-db.c (thread_db_detach): Likewise.
13835         * nto-procfs.c (procfs_detach): Likewise.
13836         * procfs.c (procfs_detach): Likewise.
13837         (do_detach): Remove signo parameter.
13838         * record.c (record_detach): Remove args parameter.
13839         * record.h (record_detach): Likewise.
13840         * remote-sim.c (gdbsim_detach): Likewise.
13841         * remote.c (remote_detach_1): Likewise.
13842         (remote_detach): Likewise.
13843         (extended_remote_detach): Likewise.
13844         * sol-thread.c (sol_thread_detach): Likewise.
13845         * target-delegates.c: Re-generate.
13846         * top.c (struct qt_args) <args>: Remove field.
13847         (kill_or_detach): Don't pass args.
13848         (quit_force): Don't set args.
13849         * windows-nat.c (windows_detach): Remove args parameter.
13850
13851 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13852
13853         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
13854         (arm_linux_init_abi): Install it.
13855
13856 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13857
13858         * osabi.c (gdb_osabi_names): Extend the regexp for
13859         arm-linux-gnueabihf.
13860
13861 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13862
13863         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
13864         m_abbrevs.
13865         (abbrev_table::add_abbrev): Update.
13866         (abbrev_table::lookup_abbrev): Update.
13867
13868 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13869
13870         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
13871
13872 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
13873
13874         * compile/compile.c (compile_to_object): Convert "triplet_rx"
13875         to "std::string".
13876
13877 2018-01-17  Tom Tromey  <tom@tromey.com>
13878
13879         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
13880
13881 2018-01-17  Tom Tromey  <tom@tromey.com>
13882
13883         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
13884         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
13885         (create_array_type_with_stride): Update.
13886         * dwarf2read.c (set_die_type): Update.
13887
13888 2018-01-17  Tom Tromey  <tom@tromey.com>
13889
13890         * dwarf2read.c (delayed_method_info): Remove typedef.
13891         (dwarf2_cu::method_info): Now a std::vector.
13892         (add_to_method_list): Update.
13893         (free_delayed_list): Remove.
13894         (compute_delayed_physnames): Update.
13895         (process_full_comp_unit, process_full_type_unit): Clear the method
13896         list.  Remove cleanups.
13897         (psymtab_include_file_name): Add name_holder parameter.  Use
13898         unique_xmalloc_ptr.
13899         (dwarf_decode_lines): Update.
13900
13901 2018-01-17  Tom Tromey  <tom@tromey.com>
13902             Simon Marchi  <simon.marchi@ericsson.com>
13903
13904         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
13905         (dwarf2_per_objfile::free_cached_comp_units)
13906         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13907         (init_cutu_and_read_dies_no_follow): Update.
13908         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
13909         (dwarf2_cu::~dwarf2_cu): New.
13910         (free_heap_comp_unit, free_stack_comp_unit): Remove.
13911         (age_cached_comp_units, free_one_cached_comp_unit): Update.
13912
13913 2018-01-17  Tom Tromey  <tom@tromey.com>
13914             Simon Marchi  <simon.marchi@ericsson.com>
13915
13916         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
13917         (struct die_reader_specs) <abbrev_table>: New member.
13918         (struct abbrev_table): Add constructor.
13919         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
13920         <abbrev_obstack>: Now an auto_obstack.
13921         (abbrev_table_up): New typedef.
13922         (init_cu_die_reader): Add abbrev_table parameter.
13923         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
13924         Add result_dwo_abbrev_table.
13925         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13926         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
13927         Update.
13928         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
13929         parameter.
13930         (skip_children): Update.
13931         (abbrev_table::alloc_abbrev): Rename from
13932         abbrev_table_alloc_abbrev.
13933         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
13934         (abbrev_table::lookup_abbrev): Rename from
13935         abbrev_table_lookup_abbrev.
13936         (abbrev_table_read_table): Return abbrev_table_up.
13937         (abbrev_table_free, abbrev_table_free_cleanup)
13938         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
13939         (load_partial_dies): Update.
13940
13941 2018-01-17  Tom Tromey  <tom@tromey.com>
13942
13943         * dwarf2read.c (dwarf2_compute_name): Update comment.
13944         (read_func_scope, read_variable): Update.
13945         (new_symbol): Remove.
13946         (new_symbol_full): Rename to new_symbol.
13947
13948 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
13949
13950         PR gdb/16577
13951         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
13952         a warning instead of throwing an error, set section size to 0 and return
13953         NULL.
13954         * gdb_bfd.h (gdb_bfd_map_section): Update description.
13955
13956 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13957
13958         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
13959         std::string.
13960         (linux_ptrace_attach_fail_reason_string): Likewise.
13961         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
13962         Likewise.
13963         (linux_ptrace_attach_fail_reason_string): Likewise.
13964         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
13965
13966 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13967
13968         * linux-nat.c (linux_nat_attach): Remove xstrdup.
13969
13970 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
13971
13972         PR gdb/21559
13973         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
13974         checking for fs_base/gs_base fields in struct user_regs_struct.
13975         * configure: Regenerate.
13976
13977 2018-01-17  Yao Qi  <yao.qi@linaro.org>
13978
13979         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
13980         function.
13981         (aarch64_linux_init_abi): Install it to gdbarch hook
13982         gcc_target_options.
13983
13984 2018-01-15  Pedro Alves  <palves@redhat.com>
13985
13986         * common/signals-state-save-restore.c
13987         (save_original_signals_state): Fix typos.
13988
13989 2017-01-12  Tom Tromey  <tom@tromey.com>
13990             Sergio Durigan Junior  <sergiodj@redhat.com>
13991
13992         * Makefile.in (install-only): Install gdb-add-index.
13993
13994 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
13995
13996         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
13997
13998 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13999
14000         * infrun.c (keep_going_pass_signal): Clear step-over info when
14001         insert_breakpoints fails.
14002
14003 2018-01-11  Pedro Alves  <palves@redhat.com>
14004
14005         PR gdb/22583
14006         * infrun.c (resume): Rename to ...
14007         (resume_1): ... this.
14008         (resume): Reimplement as wrapper around resume_1.
14009
14010 2018-01-11  Pedro Alves  <palves@redhat.com>
14011
14012         PR remote/22597
14013         * remote.c (remote_parse_stop_reply): Default to the last-set
14014         general thread instead of to 'magic_null_ptid'.
14015
14016 2018-01-10  Pedro Alves  <palves@redhat.com>
14017
14018         * language.h (language_get_symbol_name_matcher): Rename ...
14019         (get_symbol_name_matcher): ... this.
14020         * language.c (language_get_symbol_name_matcher): Ditto.
14021         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14022         callers adjusted.
14023
14024 2018-01-10  Pedro Alves  <palves@redhat.com>
14025
14026         PR gdb/22670
14027         * dwarf2read.c
14028         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14029         Adjust to use language_get_symbol_name_matcher instead of
14030         language_defn::la_get_symbol_name_matcher.
14031         * language.c (language_get_symbol_name_matcher): If in Ada mode
14032         and the lookup name is a verbatim match, return Ada's matcher.
14033         * language.h (language_get_symbol_name_matcher): Adjust comment.
14034         (ada_lookup_name_info::verbatim_p):: New method.
14035
14036 2018-01-10  Pedro Alves  <palves@redhat.com>
14037
14038         PR gdb/22670
14039         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14040         minsym's language is language_auto or language_cplus, pass down
14041         language_ada instead.
14042         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14043
14044 2018-01-10  Pedro Alves  <palves@redhat.com>
14045
14046         PR gdb/22670
14047         * minsyms.c (linkage_name_str): New function.
14048         (iterate_over_minimal_symbols): Use it.
14049
14050 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14051
14052         * NEWS: Document that 'info proc' now works on FreeBSD.
14053
14054 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14055
14056         * configure.ac: Check for kinfo_getfile in libutil.
14057         * configure: Regenerate.
14058         * config.in: Regenerate.
14059         * fbsd-nat.c: Include "fbsd-tdep.h".
14060         (fbsd_fetch_cmdline): New.
14061         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14062         rather than calling error.
14063         (fbsd_info_proc): New.
14064         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14065         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14066         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14067
14068 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14069
14070         * fbsd-nat.c (struct free_deleter): Remove.
14071         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14072
14073 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14074
14075         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14076         NULL for an empty pathname.
14077
14078 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14079
14080         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14081         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14082         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14083         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14084         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14085         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14086         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14087         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14088         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14089         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14090         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14091         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14092         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14093         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14094         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14095
14096 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14097
14098         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14099         (gnu_xfer_auxv): New function.
14100         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14101         TARGET_OBJECT_AUXV.
14102
14103 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14104             Simon Marchi  <simon.marchi@ericsson.com>
14105
14106         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14107         common/selftest.c.
14108         (COMMON_OBS): Remove selftest.o.
14109         * configure.ac: Append selftest-arch.c and common/selftest.c to
14110         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14111         * configure: Re-generated.
14112         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14113         GDB_SELF_TEST.
14114         (maintenance_info_selftests): Likewise.
14115
14116 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14117
14118         * ada-valprint.c (val_print_packed_array_elements): Use
14119         proper number of elements when printing an array indexed
14120         by an enumeration type.
14121
14122 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14123
14124         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14125         (dw2_get_file_names_reader): Adjust.
14126         (lookup_dwo_signatured_type): Adjust.
14127         (lookup_dwp_signatured_type): Adjust.
14128         (lookup_signatured_type): Adjust.
14129         (create_type_unit_group): Adjust.
14130         (get_type_unit_group): Adjust.
14131         (process_psymtab_comp_unit_reader): Adjust.
14132         (build_type_psymtabs_reader): Adjust.
14133         (scan_partial_symbols): Adjust.
14134         (add_partial_symbol): Adjust.
14135         (add_partial_subprogram): Adjust.
14136         (peek_die_abbrev): Adjust.
14137         (fixup_go_packaging): Adjust.
14138         (process_imported_unit_die): Adjust.
14139         (dwarf2_compute_name): Adjust.
14140         (dwarf2_physname): Adjust.
14141         (read_import_statement): Adjust.
14142         (handle_DW_AT_stmt_list): Adjust.
14143         (read_file_scope): Adjust.
14144         (read_func_scope): Adjust.
14145         (read_lexical_block_scope): Adjust.
14146         (read_call_site_scope): Adjust.
14147         (read_variable): Adjust.
14148         (dwarf2_rnglists_process): Adjust.
14149         (dwarf2_ranges_process): Adjust.
14150         (dwarf2_ranges_read): Adjust.
14151         (dwarf2_get_pc_bounds): Adjust.
14152         (dwarf2_record_block_ranges): Adjust.
14153         (dwarf2_add_field): Adjust.
14154         (dwarf2_add_member_fn): Adjust.
14155         (read_structure_type): Adjust.
14156         (process_structure_scope): Adjust.
14157         (read_enumeration_type): Adjust.
14158         (read_array_type): Adjust.
14159         (mark_common_block_symbol_computed): Adjust.
14160         (read_common_block): Adjust.
14161         (read_namespace_type): Adjust.
14162         (read_namespace): Adjust.
14163         (read_module_type): Adjust.
14164         (read_tag_pointer_type): Adjust.
14165         (read_tag_ptr_to_member_type): Adjust.
14166         (read_tag_string_type): Adjust.
14167         (read_subroutine_type): Adjust.
14168         (read_typedef): Adjust.
14169         (read_base_type): Adjust.
14170         (attr_to_dynamic_prop): Adjust.
14171         (read_subrange_type): Adjust.
14172         (read_unspecified_type): Adjust.
14173         (dwarf2_read_abbrevs): Adjust.
14174         (load_partial_dies): Adjust.
14175         (read_partial_die): Adjust.
14176         (find_partial_die): Adjust.
14177         (guess_partial_die_structure_name): Adjust.
14178         (fixup_partial_die): Adjust.
14179         (read_attribute_value): Adjust.
14180         (read_addr_index): Adjust.
14181         (read_addr_index_from_leb128): Adjust.
14182         (read_str_index): Adjust.
14183         (dwarf2_string_attr): Adjust.
14184         (get_debug_line_section): Adjust.
14185         (dwarf_decode_line_header): Adjust.
14186         (lnp_state_machine::check_line_address): Adjust.
14187         (dwarf_decode_lines_1): Adjust.
14188         (dwarf_decode_lines): Adjust.
14189         (dwarf2_start_symtab): Adjust.
14190         (var_decode_location): Adjust.
14191         (new_symbol_full): Adjust.
14192         (dwarf2_const_value_data): Adjust.
14193         (dwarf2_const_value_attr): Adjust.
14194         (dwarf2_const_value): Adjust.
14195         (die_type): Adjust.
14196         (die_containing_type): Adjust.
14197         (build_error_marker_type): Adjust.
14198         (lookup_die_type): Adjust.
14199         (guess_full_die_structure_name): Adjust.
14200         (anonymous_struct_prefix): Adjust.
14201         (determine_prefix): Adjust.
14202         (dwarf2_name): Adjust.
14203         (follow_die_ref_or_sig): Adjust.
14204         (follow_die_offset): Adjust.
14205         (follow_die_ref): Adjust.
14206         (follow_die_sig_1): Adjust.
14207         (follow_die_sig): Adjust.
14208         (get_signatured_type): Adjust.
14209         (get_DW_AT_signature_type): Adjust.
14210         (decode_locdesc): Adjust.
14211         (dwarf_decode_macros): Adjust.
14212         (cu_debug_loc_section): Adjust.
14213         (fill_in_loclist_baton): Adjust.
14214         (dwarf2_symbol_mark_computed): Adjust.
14215         (init_one_comp_unit): Don't assign
14216         dwarf2_cu::dwarf2_per_objfile.
14217         (set_die_type): Adjust.
14218
14219 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14220
14221         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14222         <dwarf2_per_objfile>: New field.
14223         (dwarf2_per_objfile): Remove global.
14224         (get_dwarf2_per_objfile): New function.
14225         (set_dwarf2_per_objfile): New function.
14226         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14227         dwarf2_per_objfile.
14228         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14229         (read_abbrev_offset): Likewise.
14230         (read_indirect_string): Likewise.
14231         (read_indirect_line_string): Likewise.
14232         (read_indirect_string_at_offset): Likewise.
14233         (read_indirect_string_from_dwz): Likewise.
14234         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14235         dwarf2_per_objfile.
14236         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14237         (create_all_comp_units): Change objfile parameter to
14238         dwarf2_per_objfile.
14239         (create_all_type_units): Likewise.
14240         (process_queue): Add dwarf2_per_objfile parameter.
14241         (read_and_check_comp_unit_head): Likewise.
14242         (lookup_dwo_unit_in_dwp): Likewise.
14243         (get_dwp_file): Likewise.
14244         (process_cu_includes): Likewise.
14245         (struct free_dwo_file_cleanup_data): New struct.
14246         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14247         set_dwarf2_per_objfile.
14248         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14249         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14250         context, adjust calls.
14251         (dw2_instantiate_symtab): Likewise.
14252         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14253         (dw2_get_cu): Likewise.
14254         (create_cu_from_index_list): Change objfile parameter to
14255         dwarf2_per_objfile.
14256         (create_cus_from_index_list): Get dwarf2_per_objfile from
14257         context, adjust calls.
14258         (create_cus_from_index): Likewise.
14259         (create_signatured_type_table_from_index): Change objfile
14260         parameter to dwarf2_per_objfile.
14261         (create_signatured_type_table_from_debug_names): Change objfile
14262         parameter to dwarf2_per_objfile.
14263         (create_addrmap_from_index): Likewise.
14264         (create_addrmap_from_aranges): Likewise.
14265         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14266         (dw2_setup): Remove.
14267         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14268         context.
14269         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14270         get_dwarf2_per_objfile.
14271         (dw2_forget_cached_source_info): Likewise.
14272         (dw2_map_symtabs_matching_filename): Likewise.
14273         (struct dw2_symtab_iterator) <index>: Remove.
14274         <dwarf2_per_objfile>: New field.
14275         (dw2_symtab_iter_init): Replace index parameter with
14276         dwarf2_per_objfile.
14277         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14278         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14279         (dw2_print_stats): Likewise.
14280         (dw2_dump): Likewise.
14281         (dw2_expand_symtabs_for_function): Likewise.
14282         (dw2_expand_all_symtabs): Likewise.
14283         (dw2_expand_symtabs_with_fullname): Likewise.
14284         (dw2_expand_marked_cus): Replace index and objfile parameters
14285         with dwarf2_per_objfile.
14286         (dw_expand_symtabs_matching_file_matcher): Add
14287         dwarf2_per_objfile parameter and adjust calls.
14288         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14289         adjust calls.
14290         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14291         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14292         adjust calls.
14293         (create_cus_from_debug_names_list): Replace objfile parameter
14294         with dwarf2_per_objfile and adjust calls.
14295         (create_cus_from_debug_names): Likewise.
14296         (dwarf2_read_debug_names): Likewise.
14297         (mapped_debug_names::namei_to_name): Adjust call.
14298         (dw2_debug_names_iterator::next): Likewise.
14299         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14300         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14301         (dw2_debug_names_dump): Likewise.
14302         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14303         (dw2_debug_names_expand_symtabs_matching): Likewise.
14304         (dwarf2_initialize_objfile): Likewise.
14305         (dwarf2_build_psymtabs): Likewise.
14306         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14307         this_cu.
14308         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14309         (read_and_check_comp_unit_head): Likewise.
14310         (read_abbrev_offset): Likewise.
14311         (create_debug_type_hash_table): Likewise.
14312         (create_debug_types_hash_table): Likewise.
14313         (create_all_type_units): Replace objfile parameter with
14314         dwarf2_per_objfile.
14315         (add_type_unit): Add dwarf2_per_objfile parameter.
14316         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14317         with dwarf2_per_objfile.
14318         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14319         (lookup_dwp_signatured_type): Likewise.
14320         (lookup_signatured_type): Likewise.
14321         (read_cutu_die_from_dwo): Likewise.
14322         (init_tu_and_read_dwo_dies): Likewise.
14323         (init_cutu_and_read_dies): Likewise.
14324         (init_cutu_and_read_dies_no_follow): Likewise.
14325         (allocate_type_unit_groups_table): Add objfile parameter.
14326         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14327         (get_type_unit_group): Likewise.
14328         (process_psymtab_comp_unit): Update call.
14329         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14330         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14331         (print_tu_stats): Likewise.
14332         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14333         in void* parameter.
14334         (build_type_psymtabs): Change objfile parameter to
14335         dwarf2_per_objfile.
14336         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14337         passed in void* parameter.
14338         (process_skeletonless_type_units): Change objfile parameter to
14339         dwarf2_per_objfile.
14340         (set_partial_user): Likewise.
14341         (dwarf2_build_psymtabs_hard): Likewise.
14342         (read_comp_units_from_section): Likewise.
14343         (create_all_comp_units): Likewise.
14344         (scan_partial_symbols): Update calls.
14345         (add_partial_symbol): Likewise.
14346         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14347         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14348         (process_queue): Add dwarf2_per_objfile parameter.
14349         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14350         (compute_compunit_symtab_includes): Likewise.
14351         (process_cu_includes): Add dwarf2_per_objfile parameter.
14352         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14353         (process_full_type_unit): Likewise.
14354         (process_imported_unit_die): Update call.
14355         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14356         (read_file_scope): Likewise.
14357         (allocate_dwo_file_hash_table): Add objfile parameter.
14358         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14359         (create_cus_hash_table): Likewise.
14360         (create_dwp_hash_table): Likewise.
14361         (create_dwo_unit_in_dwp_v1): Likewise.
14362         (create_dwp_v2_section): Likewise.
14363         (create_dwo_unit_in_dwp_v2): Likewise.
14364         (lookup_dwo_unit_in_dwp): Likewise.
14365         (try_open_dwop_file): Likewise.
14366         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14367         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14368         cleanup to include a reference to dwarf2_per_objfile.
14369         (open_dwp_file): Add dwarf2_per_objfile parameter.
14370         (open_and_init_dwp_file): Likewise.
14371         (get_dwp_file): Likewise.
14372         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14373         (queue_and_load_all_dwo_tus): Update call.
14374         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14375         data.
14376         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14377         (dwarf2_ranges_process): Likewise.
14378         (dwarf2_get_pc_bounds): Likewise.
14379         (mark_common_block_symbol_computed): Likewise.
14380         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14381         (dwarf2_read_abbrevs): Update call.
14382         (read_partial_die): Use dwarf2_per_objfile from cu.
14383         (find_partial_die): Likewise.
14384         (fixup_partial_die): Likewise.
14385         (read_attribute_value): Likewise.
14386         (read_indirect_string_at_offset_from): Add objfile parameter.
14387         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14388         parameter.
14389         (read_indirect_string_from_dwz): Add objfile parameter.
14390         (read_indirect_string): Add objfile parameter.
14391         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14392         (read_addr_index): Use dwarf2_per_objfile from cu.
14393         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14394         call dw2_setup.
14395         (read_str_index): Use dwarf2_per_objfile from cu.
14396         (get_debug_line_section): Likewise.
14397         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14398         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14399         (new_symbol_full): Use dwarf2_per_objfile from cu.
14400         (build_error_marker_type): Likewise.
14401         (lookup_die_type): Likewise.
14402         (determine_prefix): Likewise.
14403         (follow_die_offset): Likewise.
14404         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14405         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14406         (dwarf2_fetch_die_type_sect_off): Likewise.
14407         (dwarf2_get_die_type): Likewise.
14408         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14409         (get_signatured_type): Likewise.
14410         (get_DW_AT_signature_type): Likewise.
14411         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14412         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14413         (cu_debug_loc_section): Likewise.
14414         (fill_in_loclist_baton): Likewise.
14415         (dwarf2_symbol_mark_computed): Likewise.
14416         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14417         dwarf2_per_objfile.
14418         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14419         parameter.
14420         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14421         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14422         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14423         (set_die_type): Use dwarf2_free_objfile from cu.
14424         (get_die_type_at_offset): Likewise.
14425         (dwarf2_per_objfile_free): Don't assign global variable.
14426         (debug_names) <constructor>: Add dwarf2_per_objfile
14427         parameter, update m_debugstrlookup construction.
14428         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14429         parameter.
14430         <m_dwarf2_per_objfile>: New field.
14431         <lookup>: Use m_dwarf2_per_objfile.
14432         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14433         (psyms_seen_size): Likewise.
14434         (write_gdbindex): Replace objfile parameter with
14435         dwarf2_per_objfile.
14436         (write_debug_names): Likewise.
14437         (write_psymtabs_to_index): Likewise.
14438         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14439         calls.
14440
14441 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14442
14443         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14444         <dwarf2_per_objfile>: New field.
14445         (struct dwarf2_per_cu_data) <objfile>: Remove.
14446         <dwarf2_per_objfile>: New field.
14447         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14448         of objfile.
14449         (create_signatured_type_table_from_index): Likewise.
14450         (create_debug_type_hash_table): Likewise.
14451         (fill_in_sig_entry_from_dwo_entry): Likewise.
14452         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14453         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14454         objfile.
14455         (create_partial_symtab): Access objfile through
14456         dwarf2_per_objfile.
14457         (process_psymtab_comp_unit_reader): Likewise.
14458         (read_comp_units_from_section): Likewise.
14459         (scan_partial_symbols): Likewise.
14460         (add_partial_symbol): Likewise.
14461         (add_partial_subprogram): Likewise.
14462         (peek_die_abbrev): Likewise.
14463         (fixup_go_packaging): Likewise.
14464         (process_full_comp_unit): Likewise.
14465         (process_full_type_unit): Likewise.
14466         (process_imported_unit_die): Likewise.
14467         (dwarf2_compute_name): Likewise.
14468         (dwarf2_physname): Likewise.
14469         (read_import_statement): Likewise.
14470         (create_cus_hash_table): Assign dwarf2_physname instead of
14471         objfile.
14472         (read_func_scope): Access objfile through dwarf2_per_objfile.
14473         (read_lexical_block_scope): Likewise.
14474         (read_call_site_scope): Likewise.
14475         (read_variable): Likewise.
14476         (dwarf2_rnglists_process): Likewise.
14477         (dwarf2_ranges_process): Likewise.
14478         (dwarf2_ranges_read): Likewise.
14479         (dwarf2_record_block_ranges): Likewise.
14480         (dwarf2_add_field): Likewise.
14481         (dwarf2_add_member_fn): Likewise.
14482         (read_structure_type): Likewise.
14483         (process_structure_scope): Likewise.
14484         (read_enumeration_type): Likewise.
14485         (read_array_type): Likewise.
14486         (read_common_block): Likewise.
14487         (read_namespace_type): Likewise.
14488         (read_namespace): Likewise.
14489         (read_module_type): Likewise.
14490         (read_tag_pointer_type): Likewise.
14491         (read_tag_ptr_to_member_type): Likewise.
14492         (read_tag_string_type): Likewise.
14493         (read_subroutine_type): Likewise.
14494         (read_typedef): Likewise.
14495         (read_base_type): Likewise.
14496         (attr_to_dynamic_prop): Likewise.
14497         (read_subrange_type): Likewise.
14498         (read_unspecified_type): Likewise.
14499         (load_partial_dies): Likewise.
14500         (read_partial_die): Likewise.
14501         (find_partial_die): Likewise.
14502         (guess_partial_die_structure_name): Likewise.
14503         (fixup_partial_die): Likewise.
14504         (read_attribute_value): Likewise.
14505         (read_addr_index_from_leb128): Likewise.
14506         (dwarf2_read_addr_index): Likewise.
14507         (dwarf2_string_attr): Likewise.
14508         (lnp_state_machine::check_line_address): Likewise.
14509         (dwarf_decode_lines_1): Likewise.
14510         (dwarf_decode_lines): Likewise.
14511         (dwarf2_start_symtab): Likewise.
14512         (var_decode_location): Likewise.
14513         (new_symbol_full): Likewise.
14514         (dwarf2_const_value_data): Likewise.
14515         (dwarf2_const_value_attr): Likewise.
14516         (dwarf2_const_value): Likewise.
14517         (die_type): Likewise.
14518         (die_containing_type): Likewise.
14519         (lookup_die_type): Likewise.
14520         (guess_full_die_structure_name): Likewise.
14521         (anonymous_struct_prefix): Likewise.
14522         (dwarf2_name): Likewise.
14523         (follow_die_ref_or_sig): Likewise.
14524         (follow_die_offset): Likewise.
14525         (follow_die_ref): Likewise.
14526         (dwarf2_fetch_die_loc_sect_off): Likewise.
14527         (dwarf2_fetch_constant_bytes): Likewise.
14528         (dwarf2_fetch_die_type_sect_off): Likewise.
14529         (dwarf2_get_die_type): Likewise.
14530         (follow_die_sig): Likewise.
14531         (decode_locdesc): Likewise.
14532         (dwarf2_per_cu_objfile): Likewise.
14533         (dwarf2_per_cu_text_offset): Likewise.
14534         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
14535         objfile.
14536         (set_die_type): Access objfile through
14537         dwarf2_per_objfile.
14538
14539 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14540
14541         * valprint.c (converted_character_d): Remove typedef.
14542         (DEF_VEC_O (converted_character_d)): Remove.
14543         (count_next_character): Use std::vector.
14544         (print_converted_chars_to_obstack): Likewise.
14545         (generic_printstr): Likewise.
14546
14547 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14548
14549         * xml-support.h (struct gdb_xml_value): Add constructor.
14550         <value>: Change type to unique_xmalloc_ptr.
14551         (gdb_xml_value_s): Remove typedef.
14552         (DEF_VEC_O (gdb_xml_value_s)): Remove.
14553         (gdb_xml_element_start_handler): Change parameter type to
14554         std::vector.
14555         (xml_find_attribute): Likewise.
14556         * xml-support.c (xml_find_attribute): Change parameter type to
14557         std::vector and adjust.
14558         (gdb_xml_values_cleanup): Remove.
14559         (gdb_xml_parser::start_element): Adjust to std::vector.
14560         (xinclude_start_include): Change paraeter type to std::vector
14561         and adjust.
14562         * btrace.c (check_xml_btrace_version): Likewise.
14563         (parse_xml_btrace_block): Likewise.
14564         (parse_xml_btrace_pt_config_cpu): Likewise.
14565         (parse_xml_btrace_pt): Likewise.
14566         (parse_xml_btrace_conf_bts): Likewise.
14567         (parse_xml_btrace_conf_pt): Likewise.
14568         * memory-map.c (memory_map_start_memory): Likewise.
14569         (memory_map_start_property): Likewise.
14570         * osdata.c (osdata_start_osdata): Likewise.
14571         (osdata_start_item): Likewise.
14572         (osdata_start_column): Likewise.
14573         * remote.c (start_thread): Likewise.
14574         * solib-aix.c (library_list_start_library): Likewise.
14575         (library_list_start_list): Likewise.
14576         * solib-svr4.c (library_list_start_library): Likewise.
14577         (svr4_library_list_start_list): Likewise.
14578         * solib-target.c (library_list_start_segment): Likewise.
14579         (library_list_start_section): Likewise.
14580         (library_list_start_library): Likewise.
14581         (library_list_start_list): Likewise.
14582         * tracepoint.c (traceframe_info_start_memory): Likewise.
14583         (traceframe_info_start_tvar): Likewise.
14584         * xml-syscall.c (syscall_start_syscall): Likewise.
14585         * xml-tdesc.c (tdesc_start_target): Likewise.
14586         (tdesc_start_feature): Likewise.
14587         (tdesc_start_reg): Likewise.
14588         (tdesc_start_union): Likewise.
14589         (tdesc_start_struct): Likewise.
14590         (tdesc_start_flags): Likewise.
14591         (tdesc_start_enum): Likewise.
14592         (tdesc_start_field): Likewise.
14593         (tdesc_start_enum_value): Likewise.
14594         (tdesc_start_vector): Likewise.
14595
14596 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14597
14598         * extension.h (struct xmethod_worker) <clone>: Remove.
14599         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
14600         Remove.
14601         (python_xmethod_worker::clone): Remove.
14602         * valops.c (find_overload_match): Use std::move instead of
14603         clone.
14604
14605 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14606
14607         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
14608         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
14609         <free_xmethod_worker_data>: Remove.
14610         <get_matching_xmethod_workers>: Chance VEC to std::vector.
14611         <get_xmethod_arg_types>: Remove.
14612         <get_xmethod_result_type>: Remove.
14613         <invoke_xmethod>: Remove.
14614         * extension.c (new_xmethod_worker): Remove.
14615         (clone_xmethod_worker): Remove.
14616         (get_matching_xmethod_workers): Return void, pass std::vector by
14617         pointer.
14618         (get_xmethod_arg_types): Rename to...
14619         (xmethod_worker::get_arg_types): ... this, and adjust.
14620         (get_xmethod_result_type): Rename to...
14621         (xmethod_worker::get_result_type): ... this, and adjust.
14622         (invoke_xmethod): Remove.
14623         (free_xmethod_worker): Remove.
14624         (free_xmethod_worker_vec): Remove.
14625         * extension.h (enum ext_lang_rc): Move here from
14626         extension-priv.h.
14627         (struct xmethod_worker): Add constructor and destructor.
14628         <data>: Remove.
14629         <value>: Remove.
14630         <invoke, clone, do_get_result_type, do_get_arg_types>: New
14631         virtual pure methods.
14632         <get_arg_types, get_result_type>: New methods.
14633         (xmethod_worker_ptr): Remove typedef.
14634         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
14635         (xmethod_worker_vec): Remove typedef.
14636         (xmethod_worker_up): New typedef.
14637         (invoke_xmethod): Remove.
14638         (clone_xmethod_worker): Remove.
14639         (free_xmethod_worker): Remove.
14640         (free_xmethod_worker_vec): Remove.
14641         (get_xmethod_arg_types): Remove.
14642         (get_xmethod_result_type): Remove.
14643         * valops.c (find_method_list): Use std::vector, don't use
14644         intermediate vector.
14645         (value_find_oload_method_list): Use std::vector.
14646         (find_overload_match): Use std::vector.
14647         (find_oload_champ): Use std::vector.
14648         * value.c (value_free): Use operator delete.
14649         (value_of_xmethod): Rename to...
14650         (value_from_xmethod): ... this.  Don't assign
14651         xmethod_worker::value, take rvalue-reference.
14652         (result_type_of_xmethod): Adjust.
14653         (call_xmethod): Adjust.
14654         * value.h: Include extension.h.
14655         (struct xmethod_worker): Don't forward-declare.
14656         (value_of_xmethod): Rename to...
14657         (value_from_xmethod): ... this, take rvalue-reference.
14658         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
14659         (struct python_xmethod_worker): ... this, add constructor and
14660         destructor.
14661         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
14662         (gdbpy_free_xmethod_worker_data): Rename to...
14663         (python_xmethod_worker::~python_xmethod_worker): ... this and
14664         adjust.
14665         (gdbpy_clone_xmethod_worker_data): Rename to...
14666         (python_xmethod_worker::clone): ... this and adjust.
14667         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
14668         temporary vector.
14669         (gdbpy_get_xmethod_arg_types): Rename to...
14670         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
14671         (gdbpy_get_xmethod_result_type): Rename to...
14672         (python_xmethod_worker::do_get_result_type): ... this and
14673         adjust.
14674         (gdbpy_invoke_xmethod): Rename to...
14675         (python_xmethod_worker::invoke): ... this and adjust.
14676         (new_python_xmethod_worker): Rename to...
14677         (python_xmethod_worker::python_xmethod_worker): ... this and
14678         adjust.
14679         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
14680         Remove.
14681         (gdbpy_free_xmethod_worker_data): Remove.
14682         (gdbpy_get_matching_xmethod_workers): Use std::vector.
14683         (gdbpy_get_xmethod_arg_types): Remove.
14684         (gdbpy_get_xmethod_result_type): Remove.
14685         (gdbpy_invoke_xmethod): Remove.
14686         * python/python.c (python_extension_ops): Remove obsolete
14687         callbacks.
14688
14689 2018-01-05  Pedro Alves  <palves@redhat.com>
14690
14691         PR gdb/18653
14692         * common/signals-state-save-restore.c
14693         (save_original_signals_state): New parameter 'quiet'.  Warn if we
14694         find a custom handler preinstalled, instead of internal erroring.
14695         But only warn if !quiet.
14696         * common/signals-state-save-restore.h
14697         (save_original_signals_state): New parameter 'quiet'.
14698         * main.c (captured_main_1): Move save_original_signals_state call
14699         after option handling, and pass QUIET.
14700
14701 2018-01-05  Pedro Alves  <palves@redhat.com>
14702
14703         * spu-tdep.c (spu_catch_start): Pass
14704         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
14705
14706 2018-01-05  Pedro Alves  <palves@redhat.com>
14707
14708         PR gdb/22670
14709         * ada-lang.c (literal_symbol_name_matcher): New function.
14710         (ada_get_symbol_name_matcher): Use it for
14711         symbol_name_match_type::SEARCH_NAME.
14712         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
14713         it down instead of assuming symbol_name_match_type::FULL.
14714         * block.h (block_lookup_symbol): New parameter 'match_type'.
14715         * c-valprint.c (print_unpacked_pointer): Use
14716         lookup_symbol_search_name instead of lookup_symbol.
14717         * compile/compile-object-load.c (get_out_value_type): Pass down
14718         symbol_name_match_type::SEARCH_NAME.
14719         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
14720         symbol_name_match_type::FULL.
14721         * cp-support.c (cp_get_symbol_name_matcher): Handle
14722         symbol_name_match_type::SEARCH_NAME.
14723         * infrun.c (insert_exception_resume_breakpoint): Use
14724         lookup_symbol_search_name.
14725         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
14726         * psymtab.c (maintenance_check_psymtabs): Use
14727         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
14728         * stack.c (print_frame_args): Use lookup_symbol_search_name and
14729         SYMBOL_SEARCH_NAME.
14730         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
14731         if symbol_name_match_type::SEARCH_NAME.
14732         (lookup_symbol_in_language): Pass down
14733         symbol_name_match_type::FULL.
14734         (lookup_symbol_search_name): New.
14735         (lookup_language_this): Pass down
14736         symbol_name_match_type::SEARCH_NAME.
14737         (lookup_symbol_aux, lookup_local_symbol): New parameter
14738         'match_type'.  Pass it down.
14739         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
14740         (lookup_symbol_search_name): New declaration.
14741         (lookup_symbol_in_block): New 'match_type' parameter.
14742
14743 2018-01-05  Pedro Alves  <palves@redhat.com>
14744
14745         PR gdb/22670
14746         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
14747         ada_lookup_symbol.
14748         (ada_lookup_symbol): Reimplement in terms of
14749         ada_lookup_symbol_list, bits factored out from
14750         ada_lookup_encoded_symbol.
14751
14752 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14753
14754         * ada-exp.y (write_object_renaming): When subscripting an array
14755         using a symbol as the index, pass the block in call to
14756         ada_lookup_encoded_symbol when looking that symbol up.
14757
14758 2018-01-05  Jerome Guitton  <guitton@adacore.com>
14759
14760         * ada-lang.c (ada_array_length): Use ada_index_type instead of
14761         TYPE_INDEX_TYPE.
14762
14763 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14764
14765         * ada-lang.c (ada_to_fixed_value_create): Add handling of
14766         the case where VALUE_LVAL (val0) is not lval_memory.
14767
14768 2018-01-05  Xavier Roirand  <roirand@adacore.com>
14769
14770         * ada-valprint.c (print_optional_low_bound): Handle
14771         character-indexed array printing like boolean-indexed array
14772         printing.
14773
14774 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14775
14776         * NEWS: Create a new section for the next release branch.
14777         Rename the section of the current branch, now that it has
14778         been cut.
14779
14780 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14781
14782         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
14783         * version.in: Bump version to 8.1.50.DATE-git.
14784
14785 2018-01-03  Xavier Roirand  <roirand@adacore.com>
14786
14787         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
14788         Add field.
14789         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
14790         Add field.
14791         (default_exception_support_info) <catch_handlers_sym>: Add field.
14792         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
14793         (ada_exception_name_addr_1): Add "catch handlers" handling.
14794         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
14795         Update all callers.
14796         (create_excep_cond_exprs) <ex>: Add parameter.
14797         (re_set_exception): Update create_excep_cond_exprs call.
14798         (print_it_exception, print_one_exception, print_mention_exception)
14799         (print_recreate_exception): Add "catch handler" handling.
14800         (allocate_location_catch_handlers, re_set_catch_handlers)
14801         (check_status_catch_handlers, print_it_catch_handlers)
14802         (print_one_catch_handlers, print_mention_catch_handlers)
14803         (print_recreate_catch_handlers): New function.
14804         (catch_handlers_breakpoint_ops): New variable.
14805         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
14806         Add parameter.  Add "catch handler" handling.
14807         (ada_exception_sym_name, ada_exception_breakpoint_ops):
14808         Add "catch handler" handling.
14809         (ada_exception_catchpoint_cond_string): Add "catch handler"
14810         handling.
14811         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
14812         call.
14813         (catch_ada_handlers_command): New function.
14814         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
14815         operations structure.
14816         (_initialize_ada_language): Add "catch handlers" command entry.
14817         * NEWS: Document "catch handlers" feature.
14818
14819 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14820
14821         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
14822         account when creating the array type of the slice.
14823         (ada_value_slice): Likewise.
14824
14825 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14826
14827         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
14828         New enum value.
14829         (create_array_type_with_stride): Add byte_stride_prop parameter.
14830         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
14831         New parameter.  Update all callers in this file.
14832         (array_type_has_dynamic_stride): New function.
14833         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
14834         of arrays with dynamic byte strides.
14835         * dwarf2read.c (read_array_type): Add support for dynamic
14836         DW_AT_byte_stride attributes.
14837
14838 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14839
14840         * dwarf2read.c (read_unspecified_type): Treat
14841         DW_TAG_enumeration_type DIEs from Ada units as stubs.
14842
14843 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14844
14845         Update copyright year range in all GDB files.
14846
14847 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
14848
14849         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
14850         and gdb/testsuite/gdb.base/step-line.c.
14851
14852 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14853
14854         * copyright.py (main): Dump the contents of
14855         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
14856         even if BY_HAND is empty.
14857
14858 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14859
14860         * top.c (print_gdb_version): Update Copyright year in version
14861         message.
14862
14863 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14864
14865         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
14866
14867 For older changes see ChangeLog-2017.
14868 \f
14869 Local Variables:
14870 mode: change-log
14871 left-margin: 8
14872 fill-column: 74
14873 version-control: never
14874 coding: utf-8
14875 End: