[PowerPC] Fix two if statements in gdb/ppc-linux-nat.c
[external/binutils.git] / gdb / ChangeLog
1 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2
3         * ppc-linux-nat.c (fetch_register): Change if statement to else
4         if.
5         (store_register): Likewise.
6
7 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
8
9         * rs6000-tdep.c: Remove reggroups.h include.
10         (rs6000_pseudo_register_reggroup_p): Remove.
11         (rs6000_gdbarch_init): Remove call to
12         set_tdesc_pseudo_register_reggroup_p.
13
14 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
15
16         * reggroups.c (default_register_reggroup_p): Return true for
17         decfloat registers and float_reggroup.
18
19 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
20
21         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
22         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
23         ppc_linux_collect_vrregset by regcache_collect_regset.
24
25 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
26
27         * linux-tdep.c (linux_collect_regset_section_cb): Use
28         std::vector<gdb_byte> instead of char * and malloc for buf.
29         Remove xfree.
30
31 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
32
33         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
34         symtab_start instead of always using language_unknown.
35
36 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
37
38         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
39         READ_P parameter, catch and ignore register access errors from
40         either the old or new MISA location.
41         (riscv_has_feature): Update call to riscv_read_misa_reg.
42
43 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
44
45         * python/py-function.c (convert_values_to_python): Return
46         gdbpy_ref<>.  Add header comment.
47         (fnpy_call): Adjust.
48
49 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
50
51         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
52         (cmdpy_completer_handle_brkchars): Adjust.
53         (cmdpy_completer): Adjust.
54
55 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
56
57         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
58         Pass correct regnum to raw_supply_zeroed.
59
60 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
61
62         * regcache.c (cooked_read_test): Add CSKY to the list of
63         architectures with a save_reggroup
64
65 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
66
67         PR gdb/23368
68         * infrun.c (follow_exec): In the follow_exec_mode_new case,
69         transfer terminal state from old new new inferior.
70         * terminal.h (swap_terminal_info): New function.
71         * inflow.c (swap_terminal_info): New function.
72
73 2018-10-23  Tom Tromey  <tom@tromey.com>
74
75         * record-btrace.c (get_thread_current_frame_id): Rename from
76         get_thread_current_frame.  Return a frame_id.
77         (record_btrace_start_replaying): Update.
78
79 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
80
81         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
82         for CSRs.
83
84 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
85
86         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
87         have_nonsteppable_watchpoint attribute to 1.
88
89 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
90
91         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
92         register names.
93         (struct register_alias): Rename to...
94         (struct riscv_register_alias): ...this, and update comment.
95         (riscv_register_aliases): Update type, and alias names.  Remove
96         CSR names from this list.
97         (riscv_register_name): Use riscv_gdb_reg_names for int and float
98         register names.  Add an extra assertion.
99         (riscv_is_regnum_a_named_csr): New function.
100         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
101
102 2018-10-22  Jim Wilson  <jimw@sifive.com>
103
104         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
105         FP reg smaller than FP reg size, and fill with -1 instead of 0.
106
107         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
108         (riscv_register_type): Use them.
109         (riscv_print_one_register_info): Handle union of floats same as float.
110         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
111         riscv_fpreg_q_type fields.
112
113 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
114
115         * gdbarch.sh (gdbarch_num_cooked_regs): New.
116         * gdbarch.h: Re-generate.
117         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
118         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
119         * eval.c (evaluate_subexp_standard): Likewise.
120         * findvar.c (value_of_register): Likewise.
121         (value_of_register_lazy): Likewise.
122         (address_from_register): Likewise.
123         * frame.c (get_frame_register_bytes): Likewise.
124         * gdbarch-selftests.c (register_to_value_test): Likewise.
125         * h8300-tdep.c (h8300_register_type): Likewise.
126         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
127         (i386_svr4_reg_to_regnum): Likewise.
128         * infcmd.c (default_print_registers_info): Likewise.
129         (registers_info): Likewise.
130         (print_vector_info): Likewise.
131         (default_print_float_info): Likewise.
132         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
133         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
134         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
135         (mi_cmd_data_list_changed_registers): Likewise.
136         (mi_cmd_data_list_register_values): Likewise.
137         (mi_cmd_data_write_register_values): Likewise.
138         (mi_cmd_trace_frame_collected): Likewise.
139         * mips-tdep.c (print_gp_register_row): Likewise.
140         (mips_print_registers_info): Likewise.
141         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
142         * regcache.c (init_regcache_descr): Likewise.
143         (register_size): Likewise.
144         (register_dump::dump): Likewise.
145         (cooked_read_test): Likewise.
146         (cooked_write_test): Likewise.
147         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
148         (rs6000_gdbarch_init): Likewise.
149         * stabsread.c (stab_reg_to_regnum): Likewise.
150         * stack.c (info_frame_command): Likewise.
151         * target-descriptions.c (tdesc_register_name): Likewise.
152         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
153         * tui/tui-regs.c (tui_show_register_group): Likewise.
154         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
155         (user_reg_map_regnum_to_name): Likewise.
156         (value_of_user_reg): Likewise.
157         (maintenance_print_user_registers): Likewise.
158         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
159         (xtensa_register_name): Likewise.
160         (xtensa_register_type): Likewise.
161         (xtensa_reg_to_regnum): Likewise.
162         (xtensa_pseudo_register_read): Likewise.
163         (xtensa_pseudo_register_write): Likewise.
164
165 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
166
167         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
168         correctly-sized buffer with raw_read.
169         (amd64_pseudo_register_write): Use correctly-sized buffer for
170         raw_read/raw_write.
171
172 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
173
174         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
175         in add_prefix_cmd of set print type.
176
177 2018-10-19  Tom Tromey  <tom@tromey.com>
178
179         PR tui/18388:
180         * NEWS: Mention tabset deprecation.
181         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
182         (update_tab_width): New function.
183         (tui_set_tab_width, tui_show_tab_width): New functions.
184         (tui_set_tab_width_command): Use update_tab_width.
185         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
186         Add new "set tui tab-width" command.
187         * tui/tui-source.c (tui_set_source_content): Update.
188         * tui/tui-disasm.c (tui_set_disassem_content): Update.
189         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
190         Don't declare.
191         (tui_tab_width): Declare.
192         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
193         (tui_set_default_tab_len): Remove.
194
195 2018-10-19  Tom Tromey  <tom@tromey.com>
196
197         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
198         (key_is_backspace, tui_getc): Don't declare.
199         * tui/tui-io.c (key_is_start_sequence): Now static.
200         (key_is_end_sequence, key_is_backspace): Remove.
201         (tui_getc): Now static.
202
203 2018-10-19  Tom Tromey  <tom@tromey.com>
204
205         * symfile.c (reread_symbols): Clear "static_links".
206
207 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
208
209         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
210         define.
211         (aarch64_linux_sigframe_init): Extra boundary checks.
212
213 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
214
215         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
216         the possibly non-existent tdesc type 'vec128', but the type of raw
217         register v16 instead.
218
219 2018-10-19  Gary Benson <gbenson@redhat.com>
220
221         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
222
223 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
224
225         PR cli/23785
226         * cli/cli-dump.c (restore_binary_file): Check if "file" is
227         NULL.
228
229 2018-10-17  Paul Koning  <paul_koning@dell.com>
230
231         * charset.c (convert_between_encodings): Fix unsigned overflow.
232
233 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
234
235         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
236         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
237         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
238         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
239         New functions.
240         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
241         and fbsd_info_proc_mappings_header.
242         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
243         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
244         New.
245
246 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
247
248         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
249         Solaris Maintainer.
250
251 2018-10-15  Tom Tromey  <tom@tromey.com>
252
253         * tui/tui.c (strcat_to_buf): Remove casts.
254         * tui/tui-winsource.c (tui_show_source_line)
255         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
256         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
257         * tui/tui-windata.c (tui_first_data_item_displayed)
258         (tui_delete_data_content_windows, tui_erase_data_content)
259         (tui_display_all_data, tui_display_data_from)
260         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
261         * tui/tui-win.c (tui_set_win_height)
262         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
263         casts.
264         * tui/tui-win.c (tui_resize_all): Remove casts.
265         (tui_scroll_backward_command, tui_set_focus)
266         (tui_set_tab_width_command): Likewise.
267         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
268         * tui/tui-regs.c (tui_show_register_group): Remove cast.
269         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
270         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
271         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
272         Remove casts.
273
274 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
275
276         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
277         AArch64/ARM maintainer.
278
279 2018-10-11  Gary Benson <gbenson@redhat.com>
280
281         * interps.h (interp::m_name): Make private and mutable.
282         * interps.c (interp::~interp): Free m_name.
283
284 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
285             Simon Marchi <simark@simark.ca>
286
287         * README (`configure' options): Add documentation for new
288         "--enable-unit-tests" option.
289         * acinclude.m4: Include "selftest.m4".
290         * configure: Regenerate.
291         * configure.ac: Use "GDB_AC_SELFTEST".
292         * maint.c (maintenance_selftest): Update message informing
293         that selftests have been disabled.
294         (maintenance_info_selftests): Likewise.
295         * selftest.m4: New file.
296
297 2018-10-10  Gary Benson <gbenson@redhat.com>
298
299         * remote.c (remote_target::remote_send_printf): Add
300         missing va_end found by Coverity.
301
302 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
303
304         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
305
306 2018-10-09  Tom Tromey  <tom@tromey.com>
307
308         * configure: Rebuild.
309         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
310         * NEWS: Update --enable-ubsan documentation.
311
312 2018-10-09  Gary Benson <gbenson@redhat.com>
313
314         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
315         found by Coverity.
316
317 2018-10-08  Tom Tromey  <tom@tromey.com>
318
319         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
320         variable.
321         (riscv_fbsd_init_abi): Likewise.
322
323 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
324         * valops.c (value_struct_elt_for_reference): Rename local variable
325         to work around the shadowing a previous local warning.
326
327 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
328
329         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
330         * NEWS: Mention new FreeBSD/riscv native configuration.
331         * configure.host: Add riscv*-*-freebsd*.
332         * configure.nat: Likewise.
333         * riscv-fbsd-nat.c: New file.
334
335 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
336
337         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
338         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
339         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
340         * NEWS: Mention new FreeBSD/riscv target.
341         * configure.tgt: Add riscv*-*-freebsd*.
342         * riscv-fbsd-tdep.c: New file.
343         * riscv-fbsd-tdep.h: New file.
344
345 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
346
347         * regcache.h (struct regcache_map_entry): Note that this type can
348         be used with traditional frame caches.
349         * trad-frame.c (trad_frame_set_reg_regmap): New.
350         * trad-frame.h (trad_frame_set_reg_regmap): New.
351
352 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
353
354         PR c++/16841
355         * valops.c (get_virtual_base_offset): New function.
356         (value_struct_elt_for_reference): Use it to get virtual base offset
357         and add it in calculating class member address.
358
359 2018-10-08   John Darrington <john@darrington.wattle.id.au>
360
361     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
362       (check_producer): Check if the producer is codewarrior.
363       (producer_is_codewarrior): New function.
364       (lnp_state_machine::record_line): Ignore is_stmt flag for records
365        produced by codewarrior.
366       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
367
368 2018-10-06  Tom Tromey  <tom@tromey.com>
369
370         PR python/19399:
371         * python/py-inferior.c: Add "architecture" entry.
372         (infpy_architecture): New function.
373
374 2018-10-06  Tom Tromey  <tom@tromey.com>
375
376         PR python/21765:
377         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
378         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
379         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
380         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
381
382 2018-10-06  Tom Tromey  <tom@tromey.com>
383
384         PR build/17077:
385         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
386         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
387         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
388         #include.
389
390 2018-10-06  Tom Tromey  <tom@tromey.com>
391
392         * python/py-breakpoint.c (bppy_get_location): Handle a
393         bp_breakpoint without a location.
394
395 2018-10-06  Tom Tromey  <tom@tromey.com>
396
397         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
398         (_RegEx): Reformat help text.
399         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
400         (AnyCallerIs, AnyCallerMatches): Reformat help text.
401         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
402         text.
403         * python/lib/gdb/command/xmethods.py (InfoXMethod)
404         (EnableXMethod, DisableXMethod): Remove help indentation.
405         Capitalize meta-syntactic variables.
406         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
407         (EnableUnwinder, DisableUnwinder): Remove help indentation.
408         Capitalize meta-syntactic variables.
409         * python/lib/gdb/command/explore.py (ExploreCommand)
410         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
411         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
412         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
413         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
414         Remove help indentation.
415         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
416         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
417         (DisableFrameFilter, SetFrameFilterPriority)
418         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
419
420 2018-10-06  Tom Tromey  <tom@tromey.com>
421
422         PR tui/28819:
423         * tui/tui-io.c (gdb_wgetch): New function.
424         (tui_mld_getc, tui_getc): Use it.
425
426 2018-10-05  Tom Tromey  <tom@tromey.com>
427
428         * sol-thread.c (sol_thread_target::wait): Rename inner
429         "save_ptid".
430
431 2018-10-04  Tom Tromey  <tom@tromey.com>
432
433         * configure: Rebuild.
434         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
435
436 2018-10-04  Tom Tromey  <tom@tromey.com>
437
438         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
439         declaration of "block".
440
441 2018-10-04  Tom Tromey  <tom@tromey.com>
442
443         * common/filestuff.c (fdwalk): Remove inner declaration of
444         "result".
445
446 2018-10-04  Tom Tromey  <tom@tromey.com>
447
448         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
449         "structs_addr" and hoist declaration.
450
451 2018-10-04  Tom Tromey  <tom@tromey.com>
452
453         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
454         variable "size".
455
456 2018-10-04  Tom Tromey  <tom@tromey.com>
457
458         * mdebugread.c (parse_partial_symbols): Use std::string.
459
460 2018-10-04  Tom Tromey  <tom@tromey.com>
461
462         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
463         * p-valprint.c (pascal_val_print): Split inner "i" variable.
464         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
465         header.
466         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
467         more inner scope.
468         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
469         * varobj.c (varobj_update): Rename inner "newobj",
470         "type_changed".
471         * valprint.c (generic_emit_char): Rename inner "buf".
472         * valops.c (find_overload_match): Rename inner "temp".
473         (value_struct_elt_for_reference): Declare "v" in more inner
474         scope.
475         * v850-tdep.c (v850_push_dummy_call): Rename "len".
476         * unittests/array-view-selftests.c (run_tests): Rename inner
477         "vec".
478         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
479         header.
480         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
481         "tsv" in more inner scope.
482         (print_one_static_tracepoint_marker): Rename inner
483         "tuple_emitter".
484         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
485         (tic6x_push_dummy_call): Don't redeclare "addr".
486         * target-float.c: Declare "dto" lower.
487         * symtab.c (lookup_local_symbol): Rename inner "sym".
488         (find_pc_sect_line): Rename inner "pc".
489         * stack.c (print_frame): Don't redeclare "gdbarch".
490         (return_command): Rename inner "gdbarch".
491         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
492         "sp".
493         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
494         header.
495         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
496         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
497         scope.
498         * remote.c (remote_target::update_thread_list): Don't redeclare
499         "tp".
500         (remote_target::process_initial_stop_replies): Rename inner
501         "thread".
502         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
503         (remote_target::wait_as): Don't redeclare "stop_reply".
504         (remote_target::get_thread_local_address): Rename inner
505         "result".
506         (remote_target::get_tib_address): Likewise.
507
508         * regcache.c (cooked_read_test): Rename "regnum".
509         * record-btrace.c (cmd_record_btrace_start): Rename inner
510         "exception".
511         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
512         loop header.
513         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
514         header.
515         (ppu2spu_sniffer): Rename inner "buf".
516         * parse.c (operator_check_standard): Rename inner "type",
517         "objfile".
518         * p-valprint.c (pascal_val_print): Introduce new scope for
519         "low_bound", "high_bound".
520         * p-exp.y (yylex): Declare "i" in loop header.
521         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
522         Lower declaration of "s".
523         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
524         header.
525         (nios2_push_dummy_call): Rename "len".
526         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
527         "buf".
528         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
529         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
530         (linux_xfer_osdata_modules): Likewise.
531         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
532         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
533         (mips_o64_push_dummy_call): Likewise.
534         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
535         "op".
536         * mi/mi-main.c (list_available_thread_groups): Rename inner
537         "tuple_emitter".
538         (mi_cmd_data_read_memory): Rename inner "opts".
539         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
540         "tuple_emitter".
541         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
542         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
543         more inner scope.
544         (parse_partial_symbols): Rename inner "pst", "p", "name"
545         * main.c (captured_main_1): Rename inner "i"s.
546         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
547         "oso2".
548         * linux-tdep.c (linux_info_proc): Rename inner "filename".
549         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
550         * infrun.c (handle_no_resumed): Don't redeclare "thread".
551         (handle_signal_stop): Rename inner "gdbarch".
552         (handle_command): Declare "signum" in loop header.
553         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
554         "status".
555         (examine_prologue): Rename inner "sol" and "sof".
556         (ia64_extract_return_value): Rename inner "val".  Declare another
557         "val" in a more inner scope.
558         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
559         inner scope.
560         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
561         "except".
562         * findvar.c (default_read_var_value): Don't redeclare "addr".
563         * f-exp.y (yylex): Declare "i" in loop header.
564         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
565         Rename inner "type", "expect_type".
566         (evaluate_subexp_for_sizeof): Rename inner "pc".
567         * elfread.c (elf_symfile_read): Rename inner "abfd".
568         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
569         "bytes_read".
570         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
571         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
572         (dwarf_decode_line_header): Rename inner "lh".
573         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
574         "offset".  Declare "i" in loop header.
575         (disassemble_dwarf_expression): Rename inner "addr_size".
576         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
577         inner "result".
578         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
579         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
580         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
581         "inner_list_emitter".
582         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
583         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
584         declaration in a block.
585         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
586         * cp-valprint.c (cp_print_value_fields): Don't redeclare
587         "obstack_final_size".
588         * cp-support.c (inspect_type): Declare "i" in loop header.
589         * compile/compile.c (compile_instance::insert_symbol_error):
590         Rename inner "e".
591         * common/agent.c (agent_run_command): Remove inner "ret"
592         declaration.
593         * coffread.c (coff_symfile_read): Rename inner "name".
594         (coff_symfile_read): Rename inner "abfd".
595         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
596         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
597         "high".
598         * c-exp.y (lex_one_token): Move "len" declaration lower.
599         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
600         "gdbarch".
601         (create_exception_master_breakpoint): Likewise.  Don't redeclare
602         "b".
603         (watch_command_1): Declare "mark" later.
604         (clear_command): Don't shadow "a" or "b".
605         (delete_command): Rename inner "b".
606         (delete_trace_command): Likewise.
607         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
608         "op".
609         (arm_gdbarch_init): Remove inner "e_flags".
610         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
611         "offset" in inner blocks.
612
613 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
614
615         * dwarf-index-write.c (file_write): Don't write if the vector is
616         empty.
617
618 2018-10-05  Tom de Vries  <tdevries@suse.de>
619
620         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
621         PyArg_ParseTuple call.
622
623 2018-10-05  Tom de Vries  <tdevries@suse.de>
624
625         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
626         PyArg_ParseTuple call.
627
628 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
629
630         * psymtab.c (recursively_search_psymtabs): Reformat parameters
631         to avoid exceeding 80 characters per line limit.
632
633 2018-10-04  Tom Tromey  <tom@tromey.com>
634
635         * symfile.c (syms_from_objfile_1, finish_new_objfile)
636         (reread_symbols): Update.
637         * complaints.h (clear_complaints): Remove argument.
638         * complaints.c (enum complaint_series): Remove.
639         (series): Remove global.
640         (complaint_internal): Update.
641         (clear_complaints): Remove argument.
642
643 2018-10-04  Tom Tromey  <tom@tromey.com>
644
645         * symfile.c (symbol_file_add_with_addrs): Do not print "no
646         debugging symbols" message if there is a separate debug objfile.
647
648 2018-10-04  Tom Tromey  <tom@tromey.com>
649
650         PR cli/19551:
651         * symfile.c (symbol_file_add_with_addrs): Update output.
652         * psymtab.c (require_partial_symbols): Update output.
653
654 2018-10-04  Tom Tromey  <tom@tromey.com>
655
656         PR cli/22234:
657         * complaints.c: Emit \n.
658
659 2018-10-04  Tom Tromey  <tom@tromey.com>
660
661         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
662         (separate_debug_file_exists, find_separate_debug_file)
663         (add_symbol_file_command, reread_symbols, allocate_symtab)
664         (allocate_compunit_symtab): Use filtered printing, not
665         unfiltered.
666         * psymtab.c (require_partial_symbols, dump_psymtab)
667         (allocate_psymtab): Use filtered printing, not unfiltered.
668
669 2018-10-04  Tom Tromey  <tom@tromey.com>
670
671         * complaints.c (complaint_internal): Correctly check complaint
672         count.
673
674 2018-10-04  Tom Tromey  <tom@tromey.com>
675
676         * complaints.h (struct complaints): Remove declaration.
677         * complaints.c (clear_complaints): Remove an unused variable.
678
679 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
680
681         * MAINTAINERS (Write After Approval): Add self.
682
683 2018-10-03  Tom Tromey  <tom@tromey.com>
684
685         * guile/scm-value.c (gdbscm_value_to_string): Initialize
686         "buffer_contents".
687         * coffread.c (coff_symtab_read): Initialize "newobj".
688
689 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
690
691         * dwarf2read.c (read_func_scope): Remove struct keyword in
692         range-based for.
693
694 2018-10-03  Tom Tromey  <tom@tromey.com>
695
696         * README: Mention --enable-ubsan.
697         * NEWS: Mention --enable-ubsan.
698         * acinclude.m4: Include sanitize.m4.
699         * configure: Rebuild.
700         * configure.ac: Call AM_GDB_UBSAN.
701         * sanitize.m4: New file.
702
703 2018-10-03  Tom Tromey  <tom@tromey.com>
704
705         * expression.h (enum exp_opcode): Use uint8_t as base type.
706         * expprint.c (op_name): Handle invalid opcodes.
707
708 2018-10-03  Tom Tromey  <tom@tromey.com>
709
710         * parse.c (prefixify_expression): Add assert.
711         (parse_exp_in_context_1): Throw exception if the expression is
712         empty.
713
714 2018-10-03  Tom Tromey  <tom@tromey.com>
715
716         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
717
718 2018-10-03  Tom Tromey  <tom@tromey.com>
719
720         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
721
722 2018-10-03  Tom Tromey  <tom@tromey.com>
723
724         * dwarf2read.c (read_subrange_type): Make "negative_mask"
725         unsigned.
726
727 2018-10-03  Tom Tromey  <tom@tromey.com>
728
729         * findvar.c (extract_integer): Do work in an unsigned type.
730
731 2018-10-03  Tom Tromey  <tom@tromey.com>
732
733         * common/enum-flags.h (enum_flags::operator~): Add static assert.
734         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
735         base type.
736         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
737         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
738         type.
739         * c-lang.h (enum c_string_type_values): Use unsigned as base
740         type.
741         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
742
743 2018-10-03  Tom Tromey  <tom@tromey.com>
744
745         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
746         <~dwarf2_frame_state_reg_info>: Update.
747         <dwarf2_frame_state_reg_info>: Update.
748         <alloc_regs>: Add assertion.  Update.
749         <reg>: Now a std::vector.
750         <num_regs>: Remove.
751         <swap>: Update.
752         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
753         (execute_cfa_program_test, dwarf2_frame_cache): Update.
754
755 2018-10-03  Tom Tromey  <tom@tromey.com>
756
757         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
758
759 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
760
761         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
762
763 2018-10-02  Tom Tromey  <tom@tromey.com>
764
765         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
766
767 2018-10-02  John Darrington <john@darrington.wattle.id.au>
768
769         * NEWS: Mention changed commands.
770         * ser-uds.c: New file.
771         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
772         * configure: Regenerate.
773         * Makefile.in: Add new file.
774         * serial.c (serial_open): Check if filename is a socket
775           and lookup the appropriate interface accordingly.
776
777 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
778
779         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
780         define.
781         (AARCH64_EXTRA_MAGIC): Likewise.
782         (AARCH64_FPSIMD_MAGIC): Likewise.
783         (AARCH64_SVE_MAGIC): Likewise.
784         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
785         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
786         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
787         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
788         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
789         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
790         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
791         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
792         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
793         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
794         (read_aarch64_ctx): Add function.
795         (aarch64_linux_sigframe_init): Detect FP registers.
796
797 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
798
799         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
800         (AARCH64_D0_REGNUM): Likewise.
801         (AARCH64_S0_REGNUM): Likewise.
802         (AARCH64_H0_REGNUM): Likewise.
803         (AARCH64_B0_REGNUM): Likewise.
804         (AARCH64_SVE_V0_REGNUM): Likewise.
805         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
806         (AARCH64_D0_REGNUM): Likewise.
807         (AARCH64_S0_REGNUM): Likewise.
808         (AARCH64_H0_REGNUM): Likewise.
809         (AARCH64_B0_REGNUM): Likewise.
810         (AARCH64_SVE_V0_REGNUM): Likewise.
811
812 2018-10-01  Gary Benson <gbenson@redhat.com>
813
814         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
815         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
816         prfpregset_t instead of gdb_prfpregset_t.
817         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
818         * configure, config.in: Rebuild.
819
820 2018-10-01  Gary Benson <gbenson@redhat.com>
821
822         * common/gdb_proc_service.h: New file, factored out from...
823         * gdb_proc_service.h: Moved common code to the above file.
824         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
825
826 2018-10-01  Gary Benson <gbenson@redhat.com>
827
828         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
829         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
830
831 2018-10-01  Gary Benson <gbenson@redhat.com>
832
833         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
834         (AC_CHECK_HEADERS): Check for linux/elf.h.
835         * configure, config.in: Rebuild.
836         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
837         doesn't define elf_fpregset_t.
838
839 2018-10-01  Gary Benson <gbenson@redhat.com>
840
841         * gdb_proc_service.h: Whitespace change.
842
843 2018-10-01  Tom Tromey  <tom@tromey.com>
844
845         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
846         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
847         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
848
849 2018-10-01  Tom Tromey  <tom@tromey.com>
850
851         * README: Minor change.
852
853 2018-09-30  Pedro Alves  <palves@redhat.com>
854
855         * darwin-nat-info.c (darwin_debug_regions_recurse)
856         (info_mach_exceptions_command): Remove unused local variables.
857         * darwin-nat.c (darwin_decode_notify_message)
858         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
859         (darwin_stop_inferior, darwin_setup_exceptions)
860         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
861         (darwin_nat_target::attach, darwin_nat_target::detach)
862         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
863         local variables.
864         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
865         variables.
866
867 2018-09-29  Tom Tromey  <tom@tromey.com>
868
869         * README: Remove some leftover text.
870
871 2018-09-29  Tom Tromey  <tom@tromey.com>
872
873         * PROBLEMS: Rewrite.
874         * README: Update.
875
876 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
877
878         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
879         case with explicit breakpoint kind.
880         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
881         'additional_info' and related logic.
882         (riscv_debug_breakpoints): New variable.
883         (riscv_breakpoint_kind_from_pc): Use the length of the existing
884         instruction to determine the breakpoint kind.
885         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
886         flag.  Update description of 'set/show riscv
887         use-compressed-breakpoints' flag.
888
889 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
890
891         (NEWS): Mention changes to frame related commands.
892         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
893         (add_prefix_cmd_suppress_notification): New function.
894         (add_com_suppress_notification): Call
895         add_cmd_suppress_notification.
896         * command.h (add_cmd_suppress_notification): Declare.
897         (add_prefix_cmd_suppress_notification): Declare.
898         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
899         (parse_frame_specification): Moved from stack.c, with
900         simplification to handle a single argument.
901         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
902         switch to the selected frame.  Add a header comment.
903         * stack.c: Remove 'safe-ctype.h' include.
904         (find_frame_for_function): Add declaration.
905         (find_frame_for_address): New function.
906         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
907         (frame_selection_by_function_completer): New function.
908         (info_frame_command): Rename to...
909         (info_frame_command_core): ...this, and update parameter types.
910         (select_frame_command): Rename to...
911         (select_frame_command_core): ...this, and update parameter types.
912         (frame_command): Rename to...
913         (frame_command_core): ...this, and update parameter types.
914         (class frame_command_helper): New class to wrap implementations of
915         frame related sub-commands.
916         (frame_apply_cmd_list): New static global.
917         (frame_cmd_list): Make static.
918         (select_frame_cmd_list): New global for sub-commands.
919         (info_frame_cmd_list): New global for sub-commands.
920         (_initialize_stack): Register sub-commands for 'frame',
921         'select-frame', and 'info frame'.  Update 'frame apply' commands
922         to use frame_apply_cmd_list.  Move function local static
923         frame_apply_list to file static frame_apply_cmd_list for
924         consistency.
925         * stack.h (select_frame_command): Delete declarationn.
926         (select_frame_for_mi): Declare new function.
927
928 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
929
930         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
931         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
932         and NOP.
933
934 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
935
936         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
937
938 2018-09-26  Tom Tromey  <tom@tromey.com>
939
940         * valops.c (auto_abandon): Remove dead code.
941
942 2018-09-26  Tom Tromey  <tom@tromey.com>
943
944         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
945
946 2018-09-24  Tom Tromey  <tom@tromey.com>
947
948         * common/pathstuff.c (get_standard_cache_dir): Make
949         "xdg_cache_home" and "home" const.
950         * top.c (init_history): Make "tmpenv" const.
951         * main.c (get_init_files): Make "homedir" const.
952
953 2018-09-23  Tom Tromey  <tom@tromey.com>
954
955         PR python/18852:
956         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
957
958 2018-09-23  Tom Tromey  <tom@tromey.com>
959
960         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
961         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
962         * python/python-internal.h (gdbpy_handle_exception): Declare.
963         * python/py-utils.c (gdbpy_handle_exception): New function.
964
965 2018-09-23  Tom Tromey  <tom@tromey.com>
966
967         PR python/17284:
968         * python/py-type.c (typy_template_argument): Check for negative
969         argument number.
970
971 2018-09-23  Tom Tromey  <tom@tromey.com>
972
973         PR python/14062:
974         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
975
976 2018-09-23  Tom Tromey  <tom@tromey.com>
977
978         PR python/18170:
979         * python/py-value.c (valpy_int): Allow conversion from pointer
980         type.
981
982 2018-09-23  Tom Tromey  <tom@tromey.com>
983
984         PR python/20126:
985         * python/py-value.c (valpy_int): Respect type sign.
986
987 2018-09-23  Tom Tromey  <tom@tromey.com>
988
989         PR python/18352;
990         * python/py-value.c (valpy_float): Allow conversions from int or
991         char.
992         (valpy_int, valpy_long): Allow conversions from float.
993
994 2018-09-23  Tom Tromey  <tom@tromey.com>
995
996         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
997         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
998
999 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1000
1001         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1002         __sighndlr.
1003         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1004
1005 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1006
1007         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1008         target_terminal::ours().
1009
1010 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1011
1012         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1013         of vl to ULONGEST.
1014
1015 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1016
1017         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1018         redundant condition.
1019
1020 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1021
1022         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1023
1024         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1025         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1026         * sol-thread.c (ps_pdmodel): Don't guard definition.
1027
1028         * procfs.c: Fix formatting.
1029
1030         * procfs.c (sysset_t_alloc): Remove.
1031         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1032         (procfs_debug_inferior): Likewise.
1033         (procfs_set_exec_trap): Likewise.
1034         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1035         (proc_set_traced_sysexit): Likewise.
1036
1037         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1038         (dead_procinfo): Likewise.
1039         (proc_warn): Likewise.
1040         (proc_error): Likewise.
1041         (proc_get_LDT_entry): Likewise.
1042         (do_attach): Likewise.
1043         (procfs_target::pid_to_str): Likewise.
1044         (iterate_over_mappings): Likewise.
1045
1046         * procfs.c (create_procinfo): Fix ARI warning.
1047         (proc_get_status): Likewise.
1048         (proc_stop_process): Likewise.
1049         (proc_run_process): Likewise.
1050         (proc_kill): Likewise.
1051         (proc_get_LDT_entry): Likewise.
1052         (procfs_find_LDT_entry): Likewise.
1053         (proc_update_threads): Likewise.
1054         (proc_iterate_over_threads): Likewise.
1055         (do_attach): Likewise.
1056         (procfs_xfer_memory): Likewise.
1057         (invalidate_cache): Likewise.
1058         (procfs_target::resume): Likewise.
1059         (procfs_init_inferior): Likewise.
1060         (procfs_set_exec_trap): Likewise.
1061         (procfs_target::thread_alive): Likewise.
1062         (procfs_target::pid_to_exec_file): Likewise.
1063         (iterate_over_mappings): Likewise.
1064         (procfs_target::make_corefile_notes): Likewise.
1065         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1066
1067         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1068         (procfs_find_LDT_entry): Likewise.
1069         * sol-thread.c (ps_lgetLDT): Likewise.
1070
1071 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1072
1073         PR tdep/17903
1074         * procfs.c (procfs_target): Declare pid_to_exec_file.
1075         (procfs_target::pid_to_exec_file): New.
1076
1077 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1078
1079         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1080         renaming.
1081         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1082         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1083
1084 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1085
1086         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1087         (supply_fpregset, fill_fpregset): Move ...
1088         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1089         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1090         Remove references to ioctl-based procfs.
1091         Include <sys/reg.h>.
1092         Remove PR_MODEL_NATIVE guards.
1093         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1094         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1095
1096 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1097
1098         PR gdb/20981:
1099         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1100         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1101         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1102
1103 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1104
1105         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1106         (fbsd_print_sockaddr_in6): Likewise.
1107
1108 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1109             Chris January  <chris.january@arm.com>
1110
1111         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1112         (evaluate_subexp_standard): Return a dummy type when
1113         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1114         OP_F77_UNDETERMINED_ARGLIST case.
1115         * expression.h (enum noside): Update comment.
1116
1117 2018-09-19  George Vasick <george.vasick@oracle.com>
1118
1119         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1120
1121 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1122             April Chin <april.chin@oracle.com>
1123             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1124
1125         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1126         uint_t lwpid_t.
1127         (create_procinfo): Print pids in /proc without leading zeros.
1128
1129 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1130
1131         * nios2-tdep.c (nios2_gcc_target_options): New.
1132         (nios2_gdb_arch_init): Install new hook.
1133
1134 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1135
1136         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1137         New file.
1138         * update-gnulib.sh: Apply patch.
1139         * configure: Re-generate.
1140
1141 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1142
1143         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1144         description.  Make "info proc" command descriptions more
1145         consistent.
1146
1147 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1148
1149         * NEWS: Mention 'info proc files' command.
1150
1151 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1152
1153         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1154         descriptors for IP_FILES and IP_ALL.
1155
1156 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1157
1158         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1159         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1160         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1161         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1162         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1163         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1164         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1165         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1166         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1167         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1168         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1169         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1170         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1171         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1172         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1173         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1174         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1175         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1176         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1177         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1178         (struct fbsd_sockaddr_un): New types.
1179         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1180         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1181         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1182         (fbsd_core_info_proc_files): New functions.
1183         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1184         IP_ALL.
1185         * fbsd-tdep.h (fbsd_info_proc_files_header)
1186         (fbsd_info_proc_files_entry): New.
1187
1188 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1189
1190         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1191         * infcmd.c (info_proc_cmd_files): New function.
1192         (_initialize_infcmd): Register 'info proc files' command.
1193
1194 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1195
1196         * gnulib/aclocal-m4-deps.mk: Re-generate.
1197         * gnulib/aclocal.m4: Re-generate.
1198         * gnulib/config.in: Re-generate.
1199         * gnulib/configure: Re-generate.
1200         * gnulib/import/Makefile.am: Re-generate.
1201         * gnulib/import/Makefile.in: Re-generate.
1202         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1203         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1204         * gnulib/import/arpa_inet.in.h: New file.
1205         * gnulib/import/inet_ntop.c: New file.
1206         * gnulib/import/m4/arpa_inet_h.m4: New file.
1207         * gnulib/import/m4/inet_ntop.m4: New file.
1208         * gnulib/import/m4/netinet_in_h.m4: New file.
1209         * gnulib/import/m4/socklen.m4: New file.
1210         * gnulib/import/m4/sockpfaf.m4: New file.
1211         * gnulib/import/m4/stdalign.m4: New file.
1212         * gnulib/import/m4/sys_uio_h.m4: New file.
1213         * gnulib/import/netinet_in.in.h: New file.
1214         * gnulib/import/stdalign.in.h: New file.
1215         * gnulib/import/sys_socket.c: New file.
1216         * gnulib/import/sys_socket.in.h: New file.
1217         * gnulib/import/sys_uio.in.h: New file.
1218         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1219         module.
1220
1221 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1222
1223         * gnulib/aclocal-m4-deps.mk: New file.
1224         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1225         deterministically.
1226
1227 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1228
1229         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1230         KVE_PATH.
1231
1232 2018-09-18  Tom Tromey  <tom@tromey.com>
1233
1234         * compile/compile-object-load.c (struct
1235         link_hash_table_cleanup_data): Add constructor and destructor.
1236         Use DISABLE_COPY_AND_ASSIGN.
1237         (~link_hash_table_cleanup_data): Rename from
1238         link_hash_table_free.  Now a destructor.
1239         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1240
1241 2018-09-18  Tom Tromey  <tom@tromey.com>
1242
1243         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1244         * compile/compile-object-load.c (struct munmap_list): Move to
1245         header file.
1246         (munmap_list::add): Rename from munmap_list_add; rewrite.
1247         (munmap_list::~munmap_list): Rename from munmap_list_free.
1248         (munmap_listp_free_cleanup): Remove.
1249         (compile_object_load): Update.
1250         * compile/compile-object-load.h (struct munmap_list): Move from
1251         compile-object-load.c.  Rewrite.
1252
1253 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1254
1255         * aarch64-tdep.c (pass_in_v): Use register size.
1256         (aarch64_extract_return_value): Likewise.
1257         (aarch64_store_return_value): Likewise.
1258
1259 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1260
1261         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1262         rlim_t.
1263
1264 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1265
1266         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1267         Fix short help line.
1268
1269 2018-09-17  Tom Tromey  <tom@tromey.com>
1270
1271         PR python/20445:
1272         * configure: Rebuild.
1273         * configure.ac: Conditionally use -DNDEBUG for Python.
1274
1275 2018-09-17  Tom Tromey  <tom@tromey.com>
1276
1277         * configure: Rebuild.
1278         * configure.ac: Use gmp as a library dependency when checking for
1279         mpfr.
1280
1281 2018-09-17  Pedro Alves  <palves@redhat.com>
1282
1283         * python/py-inferior.c (find_inferior_object): Delete.
1284
1285 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1286
1287         * compile/compile-cplus-types.c
1288         (compile_cplus_instance::enter_scope): Don't use new_scope after
1289         std::move.
1290
1291 2018-09-17  Tom Tromey  <tom@tromey.com>
1292
1293         * common/pathstuff.c (get_standard_cache_dir): Use
1294         ~/Library/Caches on macOS.
1295         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1296
1297 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1298
1299         PR python/23669
1300         * breakpoint.c (commands_cmd_element): New.
1301         (_initialize_breakpoint): Assign commands_cmd_element.
1302         * breakpoint.h (commands_cmd_element): New.
1303         * cli/cli-script.c (while_cmd_element, if_command,
1304         define_cmd_element): New.
1305         (command_name_equals): Remove.
1306         (process_next_line): Compare commands by pointer, not by name.
1307         (_initialize_cli_script): Assign the various cmd_list_element
1308         variables.
1309         * compile/compile.c (compile_cmd_element): New.
1310         (_initialize_compile): Assign compile_cmd_element.
1311         * compile/compile.h (compile_cmd_element): New.
1312         * guile/guile.c (guile_cmd_element): New.
1313         (install_gdb_commands): Assign guile_cmd_element.
1314         * guile/guile.h (guile_cmd_element): New.
1315         * python/python.c (python_cmd_element): New.
1316         (_initialize_python): Assign python_cmd_element.
1317         * python/python.h (python_cmd_element): New.
1318         * tracepoint.c (while_stepping_cmd_element): New.
1319         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1320         * tracepoint.h (while_stepping_cmd_element): New.
1321
1322 2018-09-17  Tom Tromey  <tom@tromey.com>
1323
1324         * infrun.c (save_infcall_suspend_state): Return
1325         infcall_suspend_state_up.
1326         (save_infcall_control_state): Return infcall_control_state_up.
1327         * inferior.h (save_infcall_suspend_state)
1328         (save_infcall_control_state): Declare later.  Return unique
1329         pointers.
1330
1331 2018-09-17  Tom Tromey  <tom@tromey.com>
1332
1333         * infrun.c (struct stop_context): Declare constructor,
1334         destructor, "changed" method.
1335         (stop_context::stop_context): Rename from save_stop_context.
1336         (stop_context::~stop_context): Rename from
1337         release_stop_context_cleanup.
1338         (normal_stop): Update.
1339         (stop_context::changed): Rename from stop_context_changed.  Return
1340         bool.
1341
1342 2018-09-17  Tom Tromey  <tom@tromey.com>
1343
1344         * inferior.h (struct infcall_suspend_state_deleter): New.
1345         (infcall_suspend_state_up): New typedef.
1346         (struct infcall_control_state_deleter): New.
1347         (infcall_control_state_up): New typedef.
1348         (make_cleanup_restore_infcall_suspend_state)
1349         (make_cleanup_restore_infcall_control_state): Don't declare.
1350         * infcall.c (call_function_by_hand_dummy): Update.
1351         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1352         (make_cleanup_restore_infcall_suspend_state): Remove.
1353         (do_restore_infcall_control_state_cleanup)
1354         (make_cleanup_restore_infcall_control_state): Remove.
1355
1356 2018-09-17  Tom Tromey  <tom@tromey.com>
1357
1358         * gdbthread.h (struct thread_control_state): Add initializer.
1359         (class thread_info) <control>: Remove initializer.
1360         * inferior.h (struct inferior_control_state): Add initializer.
1361         (class inferior) <control>: Remove initializer.
1362         (exit_inferior_1): Update.
1363         * infrun.c (struct infcall_control_state): Add constructors.
1364         (save_infcall_control_state): Use new.
1365         (restore_infcall_control_state, discard_infcall_control_state):
1366         Use delete.
1367
1368 2018-09-17  Tom Tromey  <tom@tromey.com>
1369
1370         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1371         unique_ptr.
1372         <siginfo_data>: Now a unique_xmalloc_ptr.
1373         (save_infcall_suspend_state, restore_infcall_suspend_state)
1374         (discard_infcall_suspend_state)
1375         (get_infcall_suspend_state_regcache): Update.
1376
1377 2018-09-17  Tom Tromey  <tom@tromey.com>
1378
1379         * gdbthread.h (struct thread_suspend_state): Add initializers.
1380         (class thread_info) <suspend>: Remove initializer.
1381         * infrun.c (struct infcall_suspend_state): Add initializers.
1382         (save_infcall_suspend_state): Use new.
1383         (discard_infcall_suspend_state): Use delete.
1384
1385 2018-09-16  Tom Tromey  <tom@tromey.com>
1386
1387         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1388         Remove.
1389         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1390         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1391         (py_varobj_iter_new): Likewise.
1392         (py_varobj_get_iterator): Use gdbpy_ref.
1393
1394 2018-09-16  Tom Tromey  <tom@tromey.com>
1395
1396         * python/py-threadevent.c (py_get_event_thread): Simplify.
1397         * python/py-inferior.c (infpy_thread_from_thread_handle):
1398         Return immediately after calling thread_to_thread_object.  Use
1399         Py_RETURN_NONE.
1400         (thread_to_thread_object): Set the exception on a NULL return.
1401
1402 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1403
1404         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1405
1406 2018-09-16  Tom Tromey  <tom@tromey.com>
1407
1408         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1409         Remove.
1410
1411 2018-09-16  Tom Tromey  <tom@tromey.com>
1412
1413         * python/python-internal.h (thread_to_thread_object): Change
1414         return type.
1415         * python/py-inferior.c (thread_to_thread_object): Return a new
1416         reference.
1417         (infpy_thread_from_thread_handle): Update.
1418         * python/py-infthread.c (gdbpy_selected_thread): Update.
1419         * python/py-stopevent.c (create_stop_event_object): Update.
1420         * python/py-threadevent.c (py_get_event_thread): Return a new
1421         reference.
1422         (py_get_event_thread): Update.
1423         * python/py-event.h (py_get_event_thread): Change return type.
1424         * python/py-continueevent.c (create_continue_event_object):
1425         Update.
1426
1427 2018-09-16  Tom Tromey  <tom@tromey.com>
1428
1429         * python/py-progspace.c (pspy_get_objfiles): Update.
1430         * python/python-internal.h (objfile_to_objfile_object): Change
1431         return type.
1432         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1433         Update.
1434         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1435         Update.
1436         * python/python.c (gdbpy_get_current_objfile): Update.
1437         (gdbpy_objfiles): Update.
1438         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1439         Update.
1440         (objfile_to_objfile_object): Return a new reference.
1441         * python/py-symtab.c (stpy_get_objfile): Update.
1442         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1443         Update.
1444
1445 2018-09-16  Tom Tromey  <tom@tromey.com>
1446
1447         * python/py-inferior.c (infpy_get_progspace): Update.
1448         * python/python-internal.h (pspace_to_pspace_object): Change
1449         return type.
1450         * python/py-newobjfileevent.c
1451         (create_clear_objfiles_event_object): Update.
1452         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1453         Update.
1454         * python/python.c (gdbpy_get_current_progspace): Update.
1455         (gdbpy_progspaces): Update.
1456         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1457         reference.
1458         * python/py-objfile.c (objfpy_get_progspace): Update.
1459         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1460         Update.
1461
1462 2018-09-16  Tom Tromey  <tom@tromey.com>
1463
1464         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1465         (solib_name, block_for_pc, find_pc_line): New functions.
1466         (execute_unwinders): Update.
1467         * python/py-block.c (gdbpy_block_for_pc): Remove.
1468         * python/py-inferior.c (infpy_get_progspace): New function.
1469         (inferior_object_getset) <progspace>: Add.
1470         * python/py-progspace.c (pspy_objfiles): Rewrite.
1471         (pspy_solib_name, pspy_block_for_pc)
1472         (pspy_find_pc_line, pspy_is_valid): New functions.
1473         (progspace_object_methods): Add entries for solib_name,
1474         block_for_pc, find_pc_line, is_valid.
1475         * python/python-internal.h (gdbpy_block_for_pc)
1476         (build_objfiles_list): Don't declare.
1477         * python/python.c: Don't include solib.h.
1478         (gdbpy_solib_name, gdbpy_find_pc_line)
1479         (gdbpy_get_current_progspace, build_objfiles_list)
1480         (gdbpy_objfiles): Remove.
1481         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1482         solib_name, find_pc_line>: Remove entries.
1483
1484 2018-09-16  Tom Tromey  <tom@tromey.com>
1485
1486         * top.c (new_ui_command): Use GNU style for metasyntactic
1487         variables.
1488         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1489         variables.
1490         * maint.c (maintenance_translate_address): Remove "<>" around
1491         text.
1492         * interps.c (interpreter_exec_cmd): Use GNU style for
1493         metasyntactic variables.
1494         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1495         metasyntactic variables.
1496         * tracepoint.c (tfind_range_command): Use GNU style for
1497         metasyntactic variables.
1498         (tfind_outside_command): Likewise.
1499         (_initialize_tracepoint): Likewise.
1500         * remote.c (extended_remote_target::create_inferior): Use GNU
1501         style for metasyntactic variables.
1502         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1503         metasyntactic variables.
1504         (adi_assign_command): Likewise.
1505
1506 2018-09-16  Tom Tromey  <tom@tromey.com>
1507
1508         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1509         metasyntactic variables.  Print message if no disassembler options
1510         are available.
1511
1512 2018-09-15  Tom Tromey  <tom@tromey.com>
1513
1514         * infcmd.c (get_inferior_args): Return const char *.
1515         * inferior.h (get_inferior_args): Return type now const.
1516         * linux-tdep.c (linux_fill_prpsinfo): Update.
1517         * procfs.c (procfs_target::make_corefile_notes): Update.
1518
1519 2018-09-07  Tom Tromey  <tom@tromey.com>
1520
1521         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1522         inside the TRY.
1523
1524 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1525
1526         * nios2-tdep.c (nios2_type_align): New.
1527         (nios2_gdb_arch_init): Install type_align hook.
1528
1529 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1530
1531         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1532         type that is neither object file owned, nor gdbarch owned.
1533         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1534         gdbarch is non-NULL.
1535         (alloc_type_instance): Allocate non-objfile owned types on the
1536         gdbarch obstack.
1537         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1538         using TYPE_ALLOC to ensure memory is allocated on the correct
1539         obstack.
1540         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1541         obstack, or the gdbarch obstack.
1542         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1543
1544 2018-09-14  Tom Tromey  <tom@tromey.com>
1545
1546         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1547         block.
1548
1549 2018-09-14  Tom Tromey  <tom@tromey.com>
1550
1551         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1552
1553 2018-09-13  Tom Tromey  <tom@tromey.com>
1554
1555         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1556         static.
1557
1558 2018-09-13  Tom Tromey  <tom@tromey.com>
1559
1560         * exec.c (try_open_exec_file): Use std::string.
1561
1562 2018-09-13  Tom Tromey  <tom@tromey.com>
1563
1564         * utils.h (gdb_bfd_errmsg): Return std::string.
1565         * exec.c (exec_file_attach): Update.
1566         * compile/compile-object-load.c (compile_object_load): Update.
1567         * utils.c (gdb_bfd_errmsg): Return std::string.
1568
1569 2018-09-13  Tom Tromey  <tom@tromey.com>
1570
1571         * procfs.c (struct procinfo_deleter): New.
1572         (procinfo_up): New typedef.
1573         (do_destroy_procinfo_cleanup): Remove.
1574         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
1575
1576 2018-09-13  Tom Tromey  <tom@tromey.com>
1577
1578         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
1579
1580 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1581 2018-09-13  Tom Tromey  <tom@tromey.com>
1582
1583         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
1584         (pspy_get_objfiles): New function.
1585         (progspace_object_methods): New.
1586         (pspace_object_type): Add tp_methods callback.
1587         * python/python-internal.h (build_objfiles_list): New
1588         declaration.
1589         * python/python.c (build_objfiles_list): New function.
1590         (gdbpy_objfiles): Implement using build_objfiles_list.
1591         * NEWS: Mention the Progspace.objfiles method.
1592
1593 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1594
1595         * python/py-inferior.c (infpy_get_progspace): New function.
1596         (inferior_object_getset): Add progspace property.
1597         * NEWS: Mention the new property.
1598
1599 2018-09-13  Tom Tromey  <tom@tromey.com>
1600
1601         PR rust/23650:
1602         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
1603
1604 2018-09-13  Tom Tromey  <tom@tromey.com>
1605
1606         PR rust/23626:
1607         * rust-lang.c (rust_enum_variant): Now static.
1608         (rust_empty_enum_p): New function.
1609         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
1610         Handle empty enum.
1611
1612 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1613
1614         * python/py-inferior.c (infpy_repr): New.
1615         (inferior_object_type): Register infpy_repr.
1616         * python/py-objfile.c (objfpy_repr): New.
1617         (objfile_object_type): Register objfpy_repr.
1618
1619 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1620
1621         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
1622
1623 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1624
1625         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
1626         typo.
1627
1628 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
1629
1630         * common/common-utils.c: Don't include '<sys/stat.h>'.
1631         (is_regular_file): Move to...
1632         * common/filestuff.c (is_regular_file): ... here.
1633         * common/common-utils.h (is_regular_file): Move to...
1634         * common/filestuff.h (is_regular_file): ... here.
1635
1636 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
1637
1638         * skip.c (debug_skip): New variable.
1639         (skiplist_entry::do_skip_file_p): Add debug output.
1640         (skiplist_entry::do_skip_gfile_p): Likewise.
1641         (skiplist_entry::skip_function_p): Likewise.
1642         (_initialize_step_skip): Create debug command.
1643         * NEWS: Mention set/show debug skip.
1644
1645 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1646
1647         * darwin-nat.c (should_disable_startup_with_shell):
1648         New function.
1649         (darwin_nat_target::create_inferior): Add call.
1650
1651 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1652
1653         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
1654         inf_port, msg_state>: Initialize.
1655         (struct darwin_thread_info) <signaled, single_step>: Change
1656         type and initialize.
1657         (struct darwin_thread_info) <event>: Initialize.
1658
1659 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1660
1661         PR gdb/23555
1662         PR gdb/23558
1663         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
1664         guesses.
1665
1666 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1667
1668         Revert:
1669         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1670
1671         PR gdb/23555
1672         PR gdb/23558
1673         * gnulib/aclocal.m4: Regenerate.
1674         * gnulib/config.in: Regenerate.
1675         * gnulib/configure: Regenerate.
1676         * gnulib/import/Makefile.am: Update.
1677         * gnulib/import/Makefile.in: Update.
1678         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1679         * gnulib/import/_Noreturn.h: ... this.
1680         * gnulib/import/alloca.in.h: Update.
1681         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
1682         * gnulib/import/arg-nonnull.h: ... this.
1683         * gnulib/import/assure.h: Update.
1684         * gnulib/import/at-func.c: Update.
1685         * gnulib/import/basename-lgpl.c: Update.
1686         * gnulib/import/extra/snippet/c++defs.h: Rename to...
1687         * gnulib/import/c++defs.h: ... this.
1688         * gnulib/import/canonicalize-lgpl.c: Update.
1689         * gnulib/import/cdefs.h: Update.
1690         * gnulib/import/chdir-long.c: Update.
1691         * gnulib/import/chdir-long.h: Update.
1692         * gnulib/import/cloexec.c: Update.
1693         * gnulib/import/cloexec.h: Update.
1694         * gnulib/import/close.c: Update.
1695         * gnulib/import/closedir.c: Update.
1696         * gnulib/import/config.charset: Update.
1697         * gnulib/import/dirent-private.h: Update.
1698         * gnulib/import/dirent.in.h: Update.
1699         * gnulib/import/dirfd.c: Update.
1700         * gnulib/import/dirname-lgpl.c: Update.
1701         * gnulib/import/dirname.h: Update.
1702         * gnulib/import/dosname.h: Update.
1703         * gnulib/import/dup-safer-flag.c: Update.
1704         * gnulib/import/dup-safer.c: Update.
1705         * gnulib/import/dup.c: Update.
1706         * gnulib/import/dup2.c: Update.
1707         * gnulib/import/errno.in.h: Update.
1708         * gnulib/import/error.c: Update.
1709         * gnulib/import/error.h: Update.
1710         * gnulib/import/exitfail.c: Update.
1711         * gnulib/import/exitfail.h: Update.
1712         * gnulib/import/extra/update-copyright: Update.
1713         * gnulib/import/fchdir.c: Update.
1714         * gnulib/import/fcntl.c: Update.
1715         * gnulib/import/fcntl.in.h: Update.
1716         * gnulib/import/fd-hook.c: Update.
1717         * gnulib/import/fd-hook.h: Update.
1718         * gnulib/import/fd-safer-flag.c: Update.
1719         * gnulib/import/fd-safer.c: Update.
1720         * gnulib/import/fdopendir.c: Update.
1721         * gnulib/import/filename.h: Update.
1722         * gnulib/import/filenamecat-lgpl.c: Update.
1723         * gnulib/import/filenamecat.h: Update.
1724         * gnulib/import/flexmember.h: Update.
1725         * gnulib/import/float+.h: Update.
1726         * gnulib/import/float.c: Update.
1727         * gnulib/import/float.in.h: Update.
1728         * gnulib/import/fnmatch.c: Update.
1729         * gnulib/import/fnmatch.in.h: Update.
1730         * gnulib/import/fnmatch_loop.c: Update.
1731         * gnulib/import/fpucw.h: Update.
1732         * gnulib/import/frexp.c: Update.
1733         * gnulib/import/frexpl.c: Update.
1734         * gnulib/import/fstat.c: Update.
1735         * gnulib/import/fstatat.c: Update.
1736         * gnulib/import/getcwd-lgpl.c: Update.
1737         * gnulib/import/getcwd.c: Update.
1738         * gnulib/import/getdtablesize.c: Update.
1739         * gnulib/import/getlogin_r.c: Update.
1740         * gnulib/import/getprogname.c: Update.
1741         * gnulib/import/getprogname.h: Update.
1742         * gnulib/import/gettext.h: Update.
1743         * gnulib/import/gettimeofday.c: Update.
1744         * gnulib/import/glob-libc.h: Update.
1745         * gnulib/import/glob.c: Update.
1746         * gnulib/import/glob.in.h: Update.
1747         * gnulib/import/glob_internal.h: Update.
1748         * gnulib/import/glob_pattern_p.c: Update.
1749         * gnulib/import/globfree.c: Update.
1750         * gnulib/import/hard-locale.c: Update.
1751         * gnulib/import/hard-locale.h: Update.
1752         * gnulib/import/intprops.h: Update.
1753         * gnulib/import/inttypes.in.h: Update.
1754         * gnulib/import/isnan.c: Update.
1755         * gnulib/import/isnand-nolibm.h: Update.
1756         * gnulib/import/isnand.c: Update.
1757         * gnulib/import/isnanl-nolibm.h: Update.
1758         * gnulib/import/isnanl.c: Update.
1759         * gnulib/import/itold.c: Update.
1760         * gnulib/import/libc-config.h: Update.
1761         * gnulib/import/limits.in.h: Update.
1762         * gnulib/import/localcharset.c: Update.
1763         * gnulib/import/localcharset.h: Update.
1764         * gnulib/import/localtime-buffer.c: Update.
1765         * gnulib/import/localtime-buffer.h: Update.
1766         * gnulib/import/lstat.c: Update.
1767         * gnulib/import/m4/00gnulib.m4: Update.
1768         * gnulib/import/m4/__inline.m4: Update.
1769         * gnulib/import/m4/absolute-header.m4: Update.
1770         * gnulib/import/m4/alloca.m4: Update.
1771         * gnulib/import/m4/builtin-expect.m4: Update.
1772         * gnulib/import/m4/canonicalize.m4: Update.
1773         * gnulib/import/m4/chdir-long.m4: Update.
1774         * gnulib/import/m4/close.m4: Update.
1775         * gnulib/import/m4/closedir.m4: Update.
1776         * gnulib/import/m4/configmake.m4: Update.
1777         * gnulib/import/m4/d-ino.m4: Update.
1778         * gnulib/import/m4/d-type.m4: Update.
1779         * gnulib/import/m4/dirent_h.m4: Update.
1780         * gnulib/import/m4/dirfd.m4: Update.
1781         * gnulib/import/m4/dirname.m4: Update.
1782         * gnulib/import/m4/double-slash-root.m4: Update.
1783         * gnulib/import/m4/dup.m4: Update.
1784         * gnulib/import/m4/dup2.m4: Update.
1785         * gnulib/import/m4/eealloc.m4: Update.
1786         * gnulib/import/m4/environ.m4: Update.
1787         * gnulib/import/m4/errno_h.m4: Update.
1788         * gnulib/import/m4/error.m4: Update.
1789         * gnulib/import/m4/exponentd.m4: Update.
1790         * gnulib/import/m4/exponentl.m4: Update.
1791         * gnulib/import/m4/extensions.m4: Update.
1792         * gnulib/import/m4/extern-inline.m4: Update.
1793         * gnulib/import/m4/fchdir.m4: Update.
1794         * gnulib/import/m4/fcntl-o.m4: Update.
1795         * gnulib/import/m4/fcntl.m4: Update.
1796         * gnulib/import/m4/fcntl_h.m4: Update.
1797         * gnulib/import/m4/fdopendir.m4: Update.
1798         * gnulib/import/m4/filenamecat.m4: Update.
1799         * gnulib/import/m4/flexmember.m4: Update.
1800         * gnulib/import/m4/float_h.m4: Update.
1801         * gnulib/import/m4/fnmatch.m4: Update.
1802         * gnulib/import/m4/fnmatch_h.m4: Update.
1803         * gnulib/import/m4/fpieee.m4: Update.
1804         * gnulib/import/m4/frexp.m4: Update.
1805         * gnulib/import/m4/frexpl.m4: Update.
1806         * gnulib/import/m4/fstat.m4: Update.
1807         * gnulib/import/m4/fstatat.m4: Update.
1808         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1809         * gnulib/import/m4/getcwd-path-max.m4: Update.
1810         * gnulib/import/m4/getcwd.m4: Update.
1811         * gnulib/import/m4/getdtablesize.m4: Update.
1812         * gnulib/import/m4/getlogin.m4: Update.
1813         * gnulib/import/m4/getlogin_r.m4: Update.
1814         * gnulib/import/m4/getpagesize.m4: Update.
1815         * gnulib/import/m4/getprogname.m4: Update.
1816         * gnulib/import/m4/gettimeofday.m4: Update.
1817         * gnulib/import/m4/glibc21.m4: Update.
1818         * gnulib/import/m4/glob.m4: Update.
1819         * gnulib/import/m4/glob_h.m4: Update.
1820         * gnulib/import/m4/gnulib-cache.m4: Update.
1821         * gnulib/import/m4/gnulib-common.m4: Update.
1822         * gnulib/import/m4/gnulib-comp.m4: Update.
1823         * gnulib/import/m4/gnulib-tool.m4: Update.
1824         * gnulib/import/m4/hard-locale.m4: Update.
1825         * gnulib/import/m4/include_next.m4: Update.
1826         * gnulib/import/m4/inttypes-pri.m4: Update.
1827         * gnulib/import/m4/inttypes.m4: Update.
1828         * gnulib/import/m4/isnand.m4: Update.
1829         * gnulib/import/m4/isnanl.m4: Update.
1830         * gnulib/import/m4/largefile.m4: Update.
1831         * gnulib/import/m4/limits-h.m4: Update.
1832         * gnulib/import/m4/localcharset.m4: Update.
1833         * gnulib/import/m4/locale-fr.m4: Update.
1834         * gnulib/import/m4/locale-ja.m4: Update.
1835         * gnulib/import/m4/locale-zh.m4: Update.
1836         * gnulib/import/m4/localtime-buffer.m4: Update.
1837         * gnulib/import/m4/longlong.m4: Update.
1838         * gnulib/import/m4/lstat.m4: Update.
1839         * gnulib/import/m4/malloc.m4: Update.
1840         * gnulib/import/m4/malloca.m4: Update.
1841         * gnulib/import/m4/math_h.m4: Update.
1842         * gnulib/import/m4/mbrtowc.m4: Update.
1843         * gnulib/import/m4/mbsinit.m4: Update.
1844         * gnulib/import/m4/mbsrtowcs.m4: Update.
1845         * gnulib/import/m4/mbstate_t.m4: Update.
1846         * gnulib/import/m4/memchr.m4: Update.
1847         * gnulib/import/m4/memmem.m4: Update.
1848         * gnulib/import/m4/mempcpy.m4: Update.
1849         * gnulib/import/m4/memrchr.m4: Update.
1850         * gnulib/import/m4/mkdir.m4: Update.
1851         * gnulib/import/m4/mkstemp.m4: Update.
1852         * gnulib/import/m4/mmap-anon.m4: Update.
1853         * gnulib/import/m4/mode_t.m4: Update.
1854         * gnulib/import/m4/msvc-inval.m4: Update.
1855         * gnulib/import/m4/msvc-nothrow.m4: Update.
1856         * gnulib/import/m4/multiarch.m4: Update.
1857         * gnulib/import/m4/nocrash.m4: Update.
1858         * gnulib/import/m4/off_t.m4: Update.
1859         * gnulib/import/m4/onceonly.m4: Update.
1860         * gnulib/import/m4/open-cloexec.m4: Update.
1861         * gnulib/import/m4/open.m4: Update.
1862         * gnulib/import/m4/openat.m4: Update.
1863         * gnulib/import/m4/opendir.m4: Update.
1864         * gnulib/import/m4/pathmax.m4: Update.
1865         * gnulib/import/m4/rawmemchr.m4: Update.
1866         * gnulib/import/m4/readdir.m4: Update.
1867         * gnulib/import/m4/readlink.m4: Update.
1868         * gnulib/import/m4/realloc.m4: Update.
1869         * gnulib/import/m4/rename.m4: Update.
1870         * gnulib/import/m4/rewinddir.m4: Update.
1871         * gnulib/import/m4/rmdir.m4: Update.
1872         * gnulib/import/m4/save-cwd.m4: Update.
1873         * gnulib/import/m4/secure_getenv.m4: Update.
1874         * gnulib/import/m4/setenv.m4: Update.
1875         * gnulib/import/m4/signal_h.m4: Update.
1876         * gnulib/import/m4/ssize_t.m4: Update.
1877         * gnulib/import/m4/stat-time.m4: Update.
1878         * gnulib/import/m4/stat.m4: Update.
1879         * gnulib/import/m4/std-gnu11.m4: Update.
1880         * gnulib/import/m4/stdbool.m4: Update.
1881         * gnulib/import/m4/stddef_h.m4: Update.
1882         * gnulib/import/m4/stdint.m4: Update.
1883         * gnulib/import/m4/stdio_h.m4: Update.
1884         * gnulib/import/m4/stdlib_h.m4: Update.
1885         * gnulib/import/m4/strchrnul.m4: Update.
1886         * gnulib/import/m4/strdup.m4: Update.
1887         * gnulib/import/m4/strerror.m4: Update.
1888         * gnulib/import/m4/string_h.m4: Update.
1889         * gnulib/import/m4/strstr.m4: Update.
1890         * gnulib/import/m4/strtok_r.m4: Update.
1891         * gnulib/import/m4/sys_socket_h.m4: Update.
1892         * gnulib/import/m4/sys_stat_h.m4: Update.
1893         * gnulib/import/m4/sys_time_h.m4: Update.
1894         * gnulib/import/m4/sys_types_h.m4: Update.
1895         * gnulib/import/m4/tempname.m4: Update.
1896         * gnulib/import/m4/time_h.m4: Update.
1897         * gnulib/import/m4/unistd-safer.m4: Update.
1898         * gnulib/import/m4/unistd_h.m4: Update.
1899         * gnulib/import/m4/warn-on-use.m4: Update.
1900         * gnulib/import/m4/wchar_h.m4: Update.
1901         * gnulib/import/m4/wchar_t.m4: Update.
1902         * gnulib/import/m4/wctype_h.m4: Update.
1903         * gnulib/import/m4/wint_t.m4: Update.
1904         * gnulib/import/malloc.c: Update.
1905         * gnulib/import/malloc/scratch_buffer.h: Update.
1906         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1907         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1908         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1909         * gnulib/import/malloca.c: Update.
1910         * gnulib/import/malloca.h: Update.
1911         * gnulib/import/malloca.valgrind: Update.
1912         * gnulib/import/math.in.h: Update.
1913         * gnulib/import/mbrtowc.c: Update.
1914         * gnulib/import/mbsinit.c: Update.
1915         * gnulib/import/mbsrtowcs-impl.h: Update.
1916         * gnulib/import/mbsrtowcs-state.c: Update.
1917         * gnulib/import/mbsrtowcs.c: Update.
1918         * gnulib/import/memchr.c: Update.
1919         * gnulib/import/memmem.c: Update.
1920         * gnulib/import/mempcpy.c: Update.
1921         * gnulib/import/memrchr.c: Update.
1922         * gnulib/import/mkdir.c: Update.
1923         * gnulib/import/mkstemp.c: Update.
1924         * gnulib/import/msvc-inval.c: Update.
1925         * gnulib/import/msvc-inval.h: Update.
1926         * gnulib/import/msvc-nothrow.c: Update.
1927         * gnulib/import/msvc-nothrow.h: Update.
1928         * gnulib/import/open.c: Update.
1929         * gnulib/import/openat-die.c: Update.
1930         * gnulib/import/openat-priv.h: Update.
1931         * gnulib/import/openat-proc.c: Update.
1932         * gnulib/import/openat.c: Update.
1933         * gnulib/import/openat.h: Update.
1934         * gnulib/import/opendir.c: Update.
1935         * gnulib/import/pathmax.h: Update.
1936         * gnulib/import/pipe-safer.c: Update.
1937         * gnulib/import/rawmemchr.c: Update.
1938         * gnulib/import/readdir.c: Update.
1939         * gnulib/import/readlink.c: Update.
1940         * gnulib/import/realloc.c: Update.
1941         * gnulib/import/ref-add.sin: Update.
1942         * gnulib/import/ref-del.sin: Update.
1943         * gnulib/import/rename.c: Update.
1944         * gnulib/import/rewinddir.c: Update.
1945         * gnulib/import/rmdir.c: Update.
1946         * gnulib/import/same-inode.h: Update.
1947         * gnulib/import/save-cwd.c: Update.
1948         * gnulib/import/save-cwd.h: Update.
1949         * gnulib/import/scratch_buffer.h: Update.
1950         * gnulib/import/secure_getenv.c: Update.
1951         * gnulib/import/setenv.c: Update.
1952         * gnulib/import/signal.in.h: Update.
1953         * gnulib/import/stat-time.c: Update.
1954         * gnulib/import/stat-time.h: Update.
1955         * gnulib/import/stat-w32.c: Update.
1956         * gnulib/import/stat-w32.h: Update.
1957         * gnulib/import/stat.c: Update.
1958         * gnulib/import/stdbool.in.h: Update.
1959         * gnulib/import/stddef.in.h: Update.
1960         * gnulib/import/stdint.in.h: Update.
1961         * gnulib/import/stdio.in.h: Update.
1962         * gnulib/import/stdlib.in.h: Update.
1963         * gnulib/import/str-two-way.h: Update.
1964         * gnulib/import/strchrnul.c: Update.
1965         * gnulib/import/strdup.c: Update.
1966         * gnulib/import/streq.h: Update.
1967         * gnulib/import/strerror-override.c: Update.
1968         * gnulib/import/strerror-override.h: Update.
1969         * gnulib/import/strerror.c: Update.
1970         * gnulib/import/string.in.h: Update.
1971         * gnulib/import/stripslash.c: Update.
1972         * gnulib/import/strnlen1.c: Update.
1973         * gnulib/import/strnlen1.h: Update.
1974         * gnulib/import/strstr.c: Update.
1975         * gnulib/import/strtok_r.c: Update.
1976         * gnulib/import/sys_stat.in.h: Update.
1977         * gnulib/import/sys_time.in.h: Update.
1978         * gnulib/import/sys_types.in.h: Update.
1979         * gnulib/import/tempname.c: Update.
1980         * gnulib/import/tempname.h: Update.
1981         * gnulib/import/time.in.h: Update.
1982         * gnulib/import/unistd--.h: Update.
1983         * gnulib/import/unistd-safer.h: Update.
1984         * gnulib/import/unistd.in.h: Update.
1985         * gnulib/import/unsetenv.c: Update.
1986         * gnulib/import/verify.h: Update.
1987         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1988         * gnulib/import/wchar.in.h: Update.
1989         * gnulib/import/wctype.in.h: Update.
1990         * gnulib/import/xalloc-oversized.h: Update.
1991         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1992         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1993
1994 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
1995
1996         * record-btrace.c (get_thread_current_frame): Remove
1997         old_inferior_ptid.
1998
1999 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2000
2001         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2002         with check_tag to 1 if and only if the type is tagged and the
2003         component being searched cannot been found in the current
2004         view. Otherwise, always call ada_to_fixed_type with
2005         check_tag to 0.
2006
2007 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2008
2009         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2010         declaration.
2011         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2012         * ada-varobj.c (ada_varobj_get_number_of_children,
2013         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2014
2015 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2016
2017         * ada-valprint.c (ada_value_print): Use type instead of
2018         enclosing type.
2019
2020 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2021
2022         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2023         an array of access to unconstrained array.
2024
2025 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2026
2027         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2028         (ada_check_typedef): Use it.
2029
2030 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2031
2032         * ada-varobj.c (ada_varobj_describe_struct_child)
2033         (ada_varobj_describe_child): Handle union case like struct one.
2034
2035 2018-09-10  Tom Tromey  <tom@tromey.com>
2036
2037         PR python/18380:
2038         * python/python.c (_initialize_python): Make example in "python"
2039         help work in Python 3.
2040
2041 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2042
2043         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2044         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2045         $(EXEEXT) to the script, as it is not a program.
2046
2047 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2048
2049         * python/py-prettyprint.c (pretty_print_one_value): Return
2050         gdbpy_ref<>.
2051         (print_string_repr): Adjust.
2052         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2053         * python/python-internal.h (apply_varobj_pretty_printer): Return
2054         gdbpy_ref<>.
2055         * varobj.c (varobj_value_get_print_value): Adjust.
2056
2057 2018-09-08  Tom Tromey  <tom@tromey.com>
2058
2059         PR python/16047:
2060         * python/py-prettyprint.c (pretty_print_one_value): Check for
2061         to_string method.
2062
2063 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2064
2065         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2066         replace_operator_with_call.
2067
2068 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2069
2070         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2071
2072 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2073
2074         * ada-typeprint.c (print_range): Print the bounds using TYPE
2075         rather than its TYPE_TARGET_TYPE.
2076
2077 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2078
2079         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2080         call to ada_to_fixed_value_create.
2081
2082 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2083
2084         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2085
2086 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2087
2088         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2089         by calls to error.
2090
2091 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2092
2093         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2094         Move update of loop variable "fi".
2095
2096 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2097
2098         * ada-lang.c (value_assign_to_component): In the case of
2099         big-endian targets, extract the bits of the given VAL
2100         using an src_offset of zero if container is not a scalar.
2101
2102 2018-09-06  Simon Ser  <contact@emersion.fr>
2103
2104         PR gdb/23105
2105         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2106         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2107         * fbsd-tdep.c (fbsd_make_note_desc): New.
2108         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2109         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2110         * target.h (enum target_object) Add FreeBSD-specific
2111         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2112
2113 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2114
2115         * compile/compile-c.h (generate_c_for_variable_locations):
2116         Change reference to pointer.
2117         * compile/compile-c-support.c (compile_program) <compute>:
2118         Likewise.
2119         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2120         (generate_c_for_for_one_variable): Likewise
2121         (generate_c_for_variable_locations): Likewise
2122         * compile/compile-c-types.c (compile_c_instance::convert_type):
2123         Likewise
2124         * compile/compile-cplus-symbols.c (convert_one_symbol):
2125         std::move the scope passed to enter_scope.
2126         * compile/compile-cplus-types.c
2127         (compile_cplus_instance::enter_scope): Make parameter
2128         rvalue-reference.
2129         (compile_cplus_instance::new_scope): Change reference to
2130         pointer.
2131         (compile_cplus_instance::convert_type): Likewise
2132         (compile_cplus_convert_typedef): std::move the scope passed to
2133         enter_scope.
2134         (compile_cplus_convert_struct_or_union): Likewise.
2135         (compile_cplus_convert_enum): Likewise.
2136         (compile_cplus_convert_namespace): Likewise.
2137         * compile/compile-cplus.h (compile_cplus_instance)
2138         <enter_scope>: Make parameter rvalue-reference.
2139         * compile/compile-internal.h (compile_instance)
2140         <get_cached_type>: Likewise
2141         * compile/compile-loc2c.c (push): Likewise
2142         (pushf): Likewise
2143         (unary): Likewise
2144         (binary): Likewise
2145         (print_label): Likewise
2146         (pushf_register_address): Likewise
2147         (pushf_register): Likewise
2148         (do_compile_dwarf_expr_to_c): Likewise
2149         (compile_dwarf_expr_to_c): Likewise
2150         (compile_dwarf_bounds_to_c): Likewise
2151         * compile/compile.c (compile_instance::get_cached_type):
2152         Likewise
2153         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2154         (compile_dwarf_bounds_to_c): Likewise
2155         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2156         (dwarf2_compile_property_to_c): Likewise
2157         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2158         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2159         Likewise
2160
2161 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2162
2163         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2164         * tui/tui-data.c (init_content_element): Don't initialize it.
2165
2166 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2167
2168         * tui/tui-data.h (struct tui_win_info)
2169         <detail::opaque>: Remove.
2170         * tui/tui-data.c (init_win_info): Remove assignment.
2171
2172 2018-09-05  Tom Tromey  <tom@tromey.com>
2173
2174         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2175         -Wformat-nonliteral.
2176         * target-float.c (host_float_ops<T>::to_string)
2177         (host_float_ops<T>::from_string): Use
2178         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2179         * configure: Rebuild.
2180
2181 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2182
2183         * printcmd.c (printf_c_string): Use
2184         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2185         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2186
2187 2018-09-05  Tom Tromey  <tom@tromey.com>
2188
2189         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2190
2191 2018-09-05  Tom de Vries  <tdevries@suse.de>
2192
2193         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2194         with resolve_abstract_p == true.
2195         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2196         defaulting to false. Propagate resolve_abstract_p to
2197         dwarf2_fetch_die_loc_sect_off.
2198         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2199         parameter, defaulting to false.
2200         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2201         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2202         parameter.
2203         * dwarf2read.h (struct die_info): Forward-declare.
2204         (die_info_ptr): New typedef.
2205         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2206
2207 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2208
2209         GDB 8.2 released.
2210
2211 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2212             Pedro Alves  <palves@redhat.com>
2213
2214         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2215         "aclocal-m4-deps.mk".  Include file here.
2216         $(srcdir)/aclocal.m4: Add "configure.ac".
2217         * gnulib/aclocal-m4-deps.mk: New file.
2218         * gnulib/update-gnulib.sh: Automatically update
2219         "aclocal-m4-deps.mk".
2220
2221 2018-09-04  Tom Tromey  <tom@tromey.com>
2222
2223         * configure: Rebuild.
2224         * configure.ac: Remove multi-ice code.
2225
2226 2018-09-04  Tom Tromey  <tom@tromey.com>
2227
2228         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2229         (ada-exp.o): Update.
2230
2231 2018-09-04  Tom Tromey  <tom@tromey.com>
2232
2233         * Makefile.in (printcmd.o, target-float.o): Remove.
2234         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2235
2236 2018-09-04  Tom Tromey  <tom@tromey.com>
2237
2238         * gnulib/Makefile.in: Remove obsolete comment.
2239         * Makefile.in: Remove obsolete comment.
2240
2241 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2242
2243         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2244         line with '+'.
2245
2246 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2247
2248         * riscv-tdep.c: Add 'prologue-value.h' include.
2249         (struct riscv_unwind_cache): New struct.
2250         (riscv_debug_unwinder): New global.
2251         (riscv_scan_prologue): Update arguments, capture register details
2252         from prologue scan.
2253         (riscv_skip_prologue): Reformat arguments line, move end of
2254         prologue calculation into riscv_scan_prologue.
2255         (riscv_frame_cache): Update return type, create
2256         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2257         details.
2258         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2259         (riscv_frame_prev_register): Use the trad_frame within the
2260         riscv_unwind_cache.
2261         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2262         flag.
2263
2264 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2265
2266         * trad-frame.h (trad_frame_set_realreg): Declare.
2267         (trad_frame_set_addr): Declare.
2268         * trad-frame.c (trad_frame_set_realreg): Define new function.
2269         (trad_frame_set_addr): Define new function.
2270         (trad_frame_set_reg_realreg): Use new function.
2271         (trad_frame_set_reg_addr): Use new function.
2272
2273 2018-09-01  Keith Seitz  <keiths@redhat.com>
2274
2275         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2276         pulongest instead of "%lld".
2277         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2278         ATTRIBUTE_UNUSED.
2279
2280 2018-08-31  Tom Tromey  <tom@tromey.com>
2281
2282         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2283         variant part type.
2284
2285 2018-08-31  Pedro Alves  <palves@redhat.com>
2286
2287         * gdbarch.h: Regenerate.
2288
2289 2018-08-31  Pedro Alves  <palves@redhat.com>
2290
2291         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2292         * target.h (Hardware watchpoint interfaces): Describe
2293         continuable/steppable/non-steppable watchpoints.
2294         * gdbarch.h, gdbarch.c: Regenerate.
2295
2296 2018-08-31  Pedro Alves  <palves@redhat.com>
2297
2298         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2299         Delete.
2300         * s390-linux-nat.c
2301         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2302         * target.h (target_ops::have_continuable_watchpoint): Delete.
2303         (target_have_continuable_watchpoint): Delete.
2304         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2305         * target-delegates.c: Regenerate.
2306
2307 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2308
2309         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2310         the files present in "gnulib/import/m4/".
2311
2312 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2313
2314         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2315         c.sw, c.swsp, and c.sdsp.
2316
2317 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2318
2319         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2320         (riscv_read_misa_reg): Don't cache value read into inferior data.
2321         (riscv_new_inferior_data): Delete.
2322         (riscv_inferior_data_cleanup): Delete.
2323         (riscv_inferior_data): Delete.
2324         (riscv_invalidate_inferior_data): Delete.
2325         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2326
2327 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2328
2329         * compile/compile-cplus-types.c
2330         (compile_cplus_instance::leave_scope): Take the address of scope
2331         object.
2332         (compile_cplus_instance::convert_qualified_base): Compare quals
2333         to 0.
2334
2335 2018-08-30  Keith Seitz  <keiths@redhat.com>
2336
2337         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2338         Use "%s" and host_address_to_string instead of "%p" in printf.
2339
2340 2018-08-29  Keith Seitz  <keiths@redhat.com>
2341
2342         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2343         and compile-cplus-types.c.
2344         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2345         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2346         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2347         Declare.
2348         * compile/compile-c-support.c: Include compile-cplus.h.
2349         (load_libcompile): Templatize.
2350         (get_compile_context): "New" function.
2351         (c_get_compile_context): Use get_compile_context.
2352         (cplus_get_compile_context): New function.
2353         (cplus_push_user_expression, cplus_pop_user_expression)
2354         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2355         (cplus_compute_program): Define new structs/functions.
2356         * compile/compile-cplus-symmbols.c: New file.
2357         * compile/compile-cplus-types.c: New file.
2358         * compile/compile-cplus.h: New file.
2359         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2360         Declare.
2361         * compile/compile-object-load.c (get_out_value_type): Use
2362         strncmp_iw when comparing symbol names.
2363         (compile_object_load): Add mst_bss and mst_data.
2364         * compile/compile.c (_initialize_compile): Remove
2365         -Wno-implicit-function-declaration from `compile_args'.
2366         * compile/gcc-cp-plugin.h: New file.
2367         * NEWS: Mention C++ compile support and new debug options.
2368
2369 2018-08-29  Keith Seitz  <keiths@redhat.com>
2370
2371         * linespec.c (collect_info::add_symbol): Make virtual.
2372         (struct symbol_searcher_collect_info): New struct.
2373         (symbol_searcher::find_all_symbols): New method.
2374         * symtab.h (class symbol_searcher): New class.
2375
2376 2018-08-29  Keith Seitz  <keiths@redhat.com>
2377
2378         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2379         Change to vector of block_symbol.  Update all users.
2380         (struct collect_info) <symbols>: Likewise.
2381         (collect_info::add_symbol): Take block_symbol as argument.
2382         Update all callers.
2383         (decode_compound_collector) <m_symbols>: Change type to vector
2384         of block_symbol.  Update all users.
2385         (decode_compound_collector::operator ()): Change parameter type
2386         to block_symbol.
2387         (find_method, find_function_symbols, find_linespec_symbols)
2388         (find_label_symbols_in_block, find_label_symbols): Change symbol
2389         vectors to block_symbol vectors.
2390         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2391         block_symbol.
2392
2393 2018-08-29  Keith Seitz  <keiths@redhat.com>
2394
2395         * linespec.c (symbolp): Remove typedef and VEC definitions.
2396         (bound_minimal_symbol_d): Likewise.
2397
2398 2018-08-29  Keith Seitz  <keiths@redhat.com>
2399
2400         * linespec.c (decode_compound_collector::decode_compound_collector):
2401         Remove initialization for `m_symtabs'.
2402         (decode_compound_collector::release_symbols): Change return type
2403         to std::vector.  Update all callers.
2404         (class decode_compound_collector) <m_symbols>: Change type to
2405         std::vector.
2406         (lookup_prefix_sym): Change return type to std::vector.  Update all
2407         callers.
2408         (compare_symbols): Remove.
2409         (std_compare_symbols): Rename to `compare_symbols'.
2410         (find_method): Change `sym_classes' parameter to std::vector.
2411         Update all callers.  Use std::sort to sort sym_classes.
2412         (find_linespec_symbols): Remove cleanup.
2413
2414 2018-08-29  Keith Seitz  <keiths@redhat.com>
2415
2416         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2417         std::vector.  Update all users.
2418         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2419         (struct collect_info) <minimal_symbols>: Likewise.
2420         (compare_msymbols): Return bool.  Change parameters to const
2421         bound_minimal_symbol references.
2422         (find_method, find_function_symbols, find_linespec_symbols): Change
2423         `minsyms' parameter to std::vector.  Update all callers.
2424
2425 2018-08-29  Keith Seitz  <keiths@redhat.com>
2426
2427         * linespec.c (struct linespec) <label_symbols>: Change type to
2428         std::vector.  Update all users.
2429         (find_label_symbols_in_block): Change `result' parameter to
2430         std::vector.  Update all callers.
2431         (find_label_symbols): Return std::vector.  Update all callers.
2432
2433 2018-08-29  Keith Seitz  <keiths@redhat.com>
2434
2435         * linespec.c (struct linespec) <function_symbols>: Change type to
2436         std::vector.  Update all users.
2437         (struct collect_info) <function_symbols>: Likewise.
2438         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2439         (std_compare_symbols): New function.
2440         (find_method, find_function_symbols, find_linespec_symbols)
2441         (find_label_symbols_in_block): Change `symbols' parameter to
2442         std::vector.  Update all callers.
2443         (find_label_symbols): Likewise for `function_symbols' and
2444         `label_funcs_ret'.
2445
2446 2018-08-29  Keith Seitz  <keiths@redhat.com>
2447
2448         * linespec.c (symtab_vector_up): Define.
2449         (struct linespec) <file_symtabs>: Change type to std::vector *.
2450         Update all uses.
2451         (struct collect_info) <file_symtabs>: Likewise.
2452         (collect_symtabs_from_filename): Return symtab_vector_up.
2453         Update all callers.
2454         (decode_objc): Remove cleanup.
2455         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2456         (symtab_collector::release_symtabs): Return symtab_vector_up.
2457         Update all callers.
2458         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2459         Update all users.
2460         (collect_symtabs_from_filename, symtabs_from_filename): Return
2461         symtab_vector_up.  Update all callers.
2462
2463 2018-08-29  Tom Tromey  <tom@tromey.com>
2464
2465         * csky-tdep.c (csky_analyze_prologue): Use
2466         core_addr_to_string_nz.
2467
2468 2018-08-29  Tom Tromey  <tom@tromey.com>
2469
2470         * windows-nat.c (struct xlate_exception) <them>: Change type to
2471         DWORD.
2472         (xlate): Fix formatting.  Remove last entry.
2473         (struct xlate_exception, xlate): Comment out.
2474         (windows_nat_target::resume): Use ranged for.
2475
2476 2018-08-29  Jim Wilson  <jimw@sifive.com>
2477
2478         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2479         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2480         of NT_PRFPREG.
2481         (riscv_linux_nat_target::store_registers): Likewise.
2482
2483 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2484
2485         PR gdb/23555
2486         PR gdb/23558
2487         * gnulib/aclocal.m4: Regenerate.
2488         * gnulib/config.in: Regenerate.
2489         * gnulib/configure: Regenerate.
2490         * gnulib/import/Makefile.am: Update.
2491         * gnulib/import/Makefile.in: Update.
2492         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2493         * gnulib/import/_Noreturn.h: ... this.
2494         * gnulib/import/alloca.in.h: Update.
2495         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2496         * gnulib/import/arg-nonnull.h: ... this.
2497         * gnulib/import/assure.h: Update.
2498         * gnulib/import/at-func.c: Update.
2499         * gnulib/import/basename-lgpl.c: Update.
2500         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2501         * gnulib/import/c++defs.h: ... this.
2502         * gnulib/import/canonicalize-lgpl.c: Update.
2503         * gnulib/import/cdefs.h: Update.
2504         * gnulib/import/chdir-long.c: Update.
2505         * gnulib/import/chdir-long.h: Update.
2506         * gnulib/import/cloexec.c: Update.
2507         * gnulib/import/cloexec.h: Update.
2508         * gnulib/import/close.c: Update.
2509         * gnulib/import/closedir.c: Update.
2510         * gnulib/import/config.charset: Update.
2511         * gnulib/import/dirent-private.h: Update.
2512         * gnulib/import/dirent.in.h: Update.
2513         * gnulib/import/dirfd.c: Update.
2514         * gnulib/import/dirname-lgpl.c: Update.
2515         * gnulib/import/dirname.h: Update.
2516         * gnulib/import/dosname.h: Update.
2517         * gnulib/import/dup-safer-flag.c: Update.
2518         * gnulib/import/dup-safer.c: Update.
2519         * gnulib/import/dup.c: Update.
2520         * gnulib/import/dup2.c: Update.
2521         * gnulib/import/errno.in.h: Update.
2522         * gnulib/import/error.c: Update.
2523         * gnulib/import/error.h: Update.
2524         * gnulib/import/exitfail.c: Update.
2525         * gnulib/import/exitfail.h: Update.
2526         * gnulib/import/extra/update-copyright: Update.
2527         * gnulib/import/fchdir.c: Update.
2528         * gnulib/import/fcntl.c: Update.
2529         * gnulib/import/fcntl.in.h: Update.
2530         * gnulib/import/fd-hook.c: Update.
2531         * gnulib/import/fd-hook.h: Update.
2532         * gnulib/import/fd-safer-flag.c: Update.
2533         * gnulib/import/fd-safer.c: Update.
2534         * gnulib/import/fdopendir.c: Update.
2535         * gnulib/import/filename.h: Update.
2536         * gnulib/import/filenamecat-lgpl.c: Update.
2537         * gnulib/import/filenamecat.h: Update.
2538         * gnulib/import/flexmember.h: Update.
2539         * gnulib/import/float+.h: Update.
2540         * gnulib/import/float.c: Update.
2541         * gnulib/import/float.in.h: Update.
2542         * gnulib/import/fnmatch.c: Update.
2543         * gnulib/import/fnmatch.in.h: Update.
2544         * gnulib/import/fnmatch_loop.c: Update.
2545         * gnulib/import/fpucw.h: Update.
2546         * gnulib/import/frexp.c: Update.
2547         * gnulib/import/frexpl.c: Update.
2548         * gnulib/import/fstat.c: Update.
2549         * gnulib/import/fstatat.c: Update.
2550         * gnulib/import/getcwd-lgpl.c: Update.
2551         * gnulib/import/getcwd.c: Update.
2552         * gnulib/import/getdtablesize.c: Update.
2553         * gnulib/import/getlogin_r.c: Update.
2554         * gnulib/import/getprogname.c: Update.
2555         * gnulib/import/getprogname.h: Update.
2556         * gnulib/import/gettext.h: Update.
2557         * gnulib/import/gettimeofday.c: Update.
2558         * gnulib/import/glob-libc.h: Update.
2559         * gnulib/import/glob.c: Update.
2560         * gnulib/import/glob.in.h: Update.
2561         * gnulib/import/glob_internal.h: Update.
2562         * gnulib/import/glob_pattern_p.c: Update.
2563         * gnulib/import/globfree.c: Update.
2564         * gnulib/import/hard-locale.c: Update.
2565         * gnulib/import/hard-locale.h: Update.
2566         * gnulib/import/intprops.h: Update.
2567         * gnulib/import/inttypes.in.h: Update.
2568         * gnulib/import/isnan.c: Update.
2569         * gnulib/import/isnand-nolibm.h: Update.
2570         * gnulib/import/isnand.c: Update.
2571         * gnulib/import/isnanl-nolibm.h: Update.
2572         * gnulib/import/isnanl.c: Update.
2573         * gnulib/import/itold.c: Update.
2574         * gnulib/import/libc-config.h: Update.
2575         * gnulib/import/limits.in.h: Update.
2576         * gnulib/import/localcharset.c: Update.
2577         * gnulib/import/localcharset.h: Update.
2578         * gnulib/import/localtime-buffer.c: Update.
2579         * gnulib/import/localtime-buffer.h: Update.
2580         * gnulib/import/lstat.c: Update.
2581         * gnulib/import/m4/00gnulib.m4: Update.
2582         * gnulib/import/m4/__inline.m4: Update.
2583         * gnulib/import/m4/absolute-header.m4: Update.
2584         * gnulib/import/m4/alloca.m4: Update.
2585         * gnulib/import/m4/builtin-expect.m4: Update.
2586         * gnulib/import/m4/canonicalize.m4: Update.
2587         * gnulib/import/m4/chdir-long.m4: Update.
2588         * gnulib/import/m4/close.m4: Update.
2589         * gnulib/import/m4/closedir.m4: Update.
2590         * gnulib/import/m4/configmake.m4: Update.
2591         * gnulib/import/m4/d-ino.m4: Update.
2592         * gnulib/import/m4/d-type.m4: Update.
2593         * gnulib/import/m4/dirent_h.m4: Update.
2594         * gnulib/import/m4/dirfd.m4: Update.
2595         * gnulib/import/m4/dirname.m4: Update.
2596         * gnulib/import/m4/double-slash-root.m4: Update.
2597         * gnulib/import/m4/dup.m4: Update.
2598         * gnulib/import/m4/dup2.m4: Update.
2599         * gnulib/import/m4/eealloc.m4: Update.
2600         * gnulib/import/m4/environ.m4: Update.
2601         * gnulib/import/m4/errno_h.m4: Update.
2602         * gnulib/import/m4/error.m4: Update.
2603         * gnulib/import/m4/exponentd.m4: Update.
2604         * gnulib/import/m4/exponentl.m4: Update.
2605         * gnulib/import/m4/extensions.m4: Update.
2606         * gnulib/import/m4/extern-inline.m4: Update.
2607         * gnulib/import/m4/fchdir.m4: Update.
2608         * gnulib/import/m4/fcntl-o.m4: Update.
2609         * gnulib/import/m4/fcntl.m4: Update.
2610         * gnulib/import/m4/fcntl_h.m4: Update.
2611         * gnulib/import/m4/fdopendir.m4: Update.
2612         * gnulib/import/m4/filenamecat.m4: Update.
2613         * gnulib/import/m4/flexmember.m4: Update.
2614         * gnulib/import/m4/float_h.m4: Update.
2615         * gnulib/import/m4/fnmatch.m4: Update.
2616         * gnulib/import/m4/fnmatch_h.m4: Update.
2617         * gnulib/import/m4/fpieee.m4: Update.
2618         * gnulib/import/m4/frexp.m4: Update.
2619         * gnulib/import/m4/frexpl.m4: Update.
2620         * gnulib/import/m4/fstat.m4: Update.
2621         * gnulib/import/m4/fstatat.m4: Update.
2622         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2623         * gnulib/import/m4/getcwd-path-max.m4: Update.
2624         * gnulib/import/m4/getcwd.m4: Update.
2625         * gnulib/import/m4/getdtablesize.m4: Update.
2626         * gnulib/import/m4/getlogin.m4: Update.
2627         * gnulib/import/m4/getlogin_r.m4: Update.
2628         * gnulib/import/m4/getpagesize.m4: Update.
2629         * gnulib/import/m4/getprogname.m4: Update.
2630         * gnulib/import/m4/gettimeofday.m4: Update.
2631         * gnulib/import/m4/glibc21.m4: Update.
2632         * gnulib/import/m4/glob.m4: Update.
2633         * gnulib/import/m4/glob_h.m4: Update.
2634         * gnulib/import/m4/gnulib-cache.m4: Update.
2635         * gnulib/import/m4/gnulib-common.m4: Update.
2636         * gnulib/import/m4/gnulib-comp.m4: Update.
2637         * gnulib/import/m4/gnulib-tool.m4: Update.
2638         * gnulib/import/m4/hard-locale.m4: Update.
2639         * gnulib/import/m4/include_next.m4: Update.
2640         * gnulib/import/m4/inttypes-pri.m4: Update.
2641         * gnulib/import/m4/inttypes.m4: Update.
2642         * gnulib/import/m4/isnand.m4: Update.
2643         * gnulib/import/m4/isnanl.m4: Update.
2644         * gnulib/import/m4/largefile.m4: Update.
2645         * gnulib/import/m4/limits-h.m4: Update.
2646         * gnulib/import/m4/localcharset.m4: Update.
2647         * gnulib/import/m4/locale-fr.m4: Update.
2648         * gnulib/import/m4/locale-ja.m4: Update.
2649         * gnulib/import/m4/locale-zh.m4: Update.
2650         * gnulib/import/m4/localtime-buffer.m4: Update.
2651         * gnulib/import/m4/longlong.m4: Update.
2652         * gnulib/import/m4/lstat.m4: Update.
2653         * gnulib/import/m4/malloc.m4: Update.
2654         * gnulib/import/m4/malloca.m4: Update.
2655         * gnulib/import/m4/math_h.m4: Update.
2656         * gnulib/import/m4/mbrtowc.m4: Update.
2657         * gnulib/import/m4/mbsinit.m4: Update.
2658         * gnulib/import/m4/mbsrtowcs.m4: Update.
2659         * gnulib/import/m4/mbstate_t.m4: Update.
2660         * gnulib/import/m4/memchr.m4: Update.
2661         * gnulib/import/m4/memmem.m4: Update.
2662         * gnulib/import/m4/mempcpy.m4: Update.
2663         * gnulib/import/m4/memrchr.m4: Update.
2664         * gnulib/import/m4/mkdir.m4: Update.
2665         * gnulib/import/m4/mkstemp.m4: Update.
2666         * gnulib/import/m4/mmap-anon.m4: Update.
2667         * gnulib/import/m4/mode_t.m4: Update.
2668         * gnulib/import/m4/msvc-inval.m4: Update.
2669         * gnulib/import/m4/msvc-nothrow.m4: Update.
2670         * gnulib/import/m4/multiarch.m4: Update.
2671         * gnulib/import/m4/nocrash.m4: Update.
2672         * gnulib/import/m4/off_t.m4: Update.
2673         * gnulib/import/m4/onceonly.m4: Update.
2674         * gnulib/import/m4/open-cloexec.m4: Update.
2675         * gnulib/import/m4/open.m4: Update.
2676         * gnulib/import/m4/openat.m4: Update.
2677         * gnulib/import/m4/opendir.m4: Update.
2678         * gnulib/import/m4/pathmax.m4: Update.
2679         * gnulib/import/m4/rawmemchr.m4: Update.
2680         * gnulib/import/m4/readdir.m4: Update.
2681         * gnulib/import/m4/readlink.m4: Update.
2682         * gnulib/import/m4/realloc.m4: Update.
2683         * gnulib/import/m4/rename.m4: Update.
2684         * gnulib/import/m4/rewinddir.m4: Update.
2685         * gnulib/import/m4/rmdir.m4: Update.
2686         * gnulib/import/m4/save-cwd.m4: Update.
2687         * gnulib/import/m4/secure_getenv.m4: Update.
2688         * gnulib/import/m4/setenv.m4: Update.
2689         * gnulib/import/m4/signal_h.m4: Update.
2690         * gnulib/import/m4/ssize_t.m4: Update.
2691         * gnulib/import/m4/stat-time.m4: Update.
2692         * gnulib/import/m4/stat.m4: Update.
2693         * gnulib/import/m4/std-gnu11.m4: Update.
2694         * gnulib/import/m4/stdbool.m4: Update.
2695         * gnulib/import/m4/stddef_h.m4: Update.
2696         * gnulib/import/m4/stdint.m4: Update.
2697         * gnulib/import/m4/stdio_h.m4: Update.
2698         * gnulib/import/m4/stdlib_h.m4: Update.
2699         * gnulib/import/m4/strchrnul.m4: Update.
2700         * gnulib/import/m4/strdup.m4: Update.
2701         * gnulib/import/m4/strerror.m4: Update.
2702         * gnulib/import/m4/string_h.m4: Update.
2703         * gnulib/import/m4/strstr.m4: Update.
2704         * gnulib/import/m4/strtok_r.m4: Update.
2705         * gnulib/import/m4/sys_socket_h.m4: Update.
2706         * gnulib/import/m4/sys_stat_h.m4: Update.
2707         * gnulib/import/m4/sys_time_h.m4: Update.
2708         * gnulib/import/m4/sys_types_h.m4: Update.
2709         * gnulib/import/m4/tempname.m4: Update.
2710         * gnulib/import/m4/time_h.m4: Update.
2711         * gnulib/import/m4/unistd-safer.m4: Update.
2712         * gnulib/import/m4/unistd_h.m4: Update.
2713         * gnulib/import/m4/warn-on-use.m4: Update.
2714         * gnulib/import/m4/wchar_h.m4: Update.
2715         * gnulib/import/m4/wchar_t.m4: Update.
2716         * gnulib/import/m4/wctype_h.m4: Update.
2717         * gnulib/import/m4/wint_t.m4: Update.
2718         * gnulib/import/malloc.c: Update.
2719         * gnulib/import/malloc/scratch_buffer.h: Update.
2720         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2721         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2722         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2723         * gnulib/import/malloca.c: Update.
2724         * gnulib/import/malloca.h: Update.
2725         * gnulib/import/malloca.valgrind: Update.
2726         * gnulib/import/math.in.h: Update.
2727         * gnulib/import/mbrtowc.c: Update.
2728         * gnulib/import/mbsinit.c: Update.
2729         * gnulib/import/mbsrtowcs-impl.h: Update.
2730         * gnulib/import/mbsrtowcs-state.c: Update.
2731         * gnulib/import/mbsrtowcs.c: Update.
2732         * gnulib/import/memchr.c: Update.
2733         * gnulib/import/memmem.c: Update.
2734         * gnulib/import/mempcpy.c: Update.
2735         * gnulib/import/memrchr.c: Update.
2736         * gnulib/import/mkdir.c: Update.
2737         * gnulib/import/mkstemp.c: Update.
2738         * gnulib/import/msvc-inval.c: Update.
2739         * gnulib/import/msvc-inval.h: Update.
2740         * gnulib/import/msvc-nothrow.c: Update.
2741         * gnulib/import/msvc-nothrow.h: Update.
2742         * gnulib/import/open.c: Update.
2743         * gnulib/import/openat-die.c: Update.
2744         * gnulib/import/openat-priv.h: Update.
2745         * gnulib/import/openat-proc.c: Update.
2746         * gnulib/import/openat.c: Update.
2747         * gnulib/import/openat.h: Update.
2748         * gnulib/import/opendir.c: Update.
2749         * gnulib/import/pathmax.h: Update.
2750         * gnulib/import/pipe-safer.c: Update.
2751         * gnulib/import/rawmemchr.c: Update.
2752         * gnulib/import/readdir.c: Update.
2753         * gnulib/import/readlink.c: Update.
2754         * gnulib/import/realloc.c: Update.
2755         * gnulib/import/ref-add.sin: Update.
2756         * gnulib/import/ref-del.sin: Update.
2757         * gnulib/import/rename.c: Update.
2758         * gnulib/import/rewinddir.c: Update.
2759         * gnulib/import/rmdir.c: Update.
2760         * gnulib/import/same-inode.h: Update.
2761         * gnulib/import/save-cwd.c: Update.
2762         * gnulib/import/save-cwd.h: Update.
2763         * gnulib/import/scratch_buffer.h: Update.
2764         * gnulib/import/secure_getenv.c: Update.
2765         * gnulib/import/setenv.c: Update.
2766         * gnulib/import/signal.in.h: Update.
2767         * gnulib/import/stat-time.c: Update.
2768         * gnulib/import/stat-time.h: Update.
2769         * gnulib/import/stat-w32.c: Update.
2770         * gnulib/import/stat-w32.h: Update.
2771         * gnulib/import/stat.c: Update.
2772         * gnulib/import/stdbool.in.h: Update.
2773         * gnulib/import/stddef.in.h: Update.
2774         * gnulib/import/stdint.in.h: Update.
2775         * gnulib/import/stdio.in.h: Update.
2776         * gnulib/import/stdlib.in.h: Update.
2777         * gnulib/import/str-two-way.h: Update.
2778         * gnulib/import/strchrnul.c: Update.
2779         * gnulib/import/strdup.c: Update.
2780         * gnulib/import/streq.h: Update.
2781         * gnulib/import/strerror-override.c: Update.
2782         * gnulib/import/strerror-override.h: Update.
2783         * gnulib/import/strerror.c: Update.
2784         * gnulib/import/string.in.h: Update.
2785         * gnulib/import/stripslash.c: Update.
2786         * gnulib/import/strnlen1.c: Update.
2787         * gnulib/import/strnlen1.h: Update.
2788         * gnulib/import/strstr.c: Update.
2789         * gnulib/import/strtok_r.c: Update.
2790         * gnulib/import/sys_stat.in.h: Update.
2791         * gnulib/import/sys_time.in.h: Update.
2792         * gnulib/import/sys_types.in.h: Update.
2793         * gnulib/import/tempname.c: Update.
2794         * gnulib/import/tempname.h: Update.
2795         * gnulib/import/time.in.h: Update.
2796         * gnulib/import/unistd--.h: Update.
2797         * gnulib/import/unistd-safer.h: Update.
2798         * gnulib/import/unistd.in.h: Update.
2799         * gnulib/import/unsetenv.c: Update.
2800         * gnulib/import/verify.h: Update.
2801         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2802         * gnulib/import/wchar.in.h: Update.
2803         * gnulib/import/wctype.in.h: Update.
2804         * gnulib/import/xalloc-oversized.h: Update.
2805         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2806         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2807
2808 2018-08-16  Gary Benson <gbenson@redhat.com>
2809
2810         PR gdb/13000:
2811         * gdb/main.c (captured_main_1): Exit with nonzero status
2812         in batch mode if the last command to be executed failed.
2813         * NEWS: Mention the above.
2814
2815 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
2816
2817         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
2818         end of warning message.
2819
2820 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2821
2822         PR gdb/22943:
2823         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
2824         (aarch64_extract_return_value): Use
2825         aapcs_is_vfp_call_or_return_candidate.
2826         (aarch64_return_in_memory): Likewise.
2827         (aarch64_store_return_value): Likewise.
2828
2829 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2830
2831         * aarch64-tdep.c
2832         (aapcs_is_vfp_call_or_return_candidate): Make static
2833         (pass_in_v_or_stack): Remove function.
2834         (pass_in_v_vfp_candidate): New function.
2835         (aarch64_push_dummy_call): Check for float register candidates.
2836
2837 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2838
2839         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
2840         (aapcs_is_vfp_call_or_return_candidate_1): New function.
2841         (aapcs_is_vfp_call_or_return_candidate): Likewise.
2842
2843 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
2844
2845         PR build/23399
2846         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
2847         (struct ipa_sym_addresses): Rename to...
2848         (struct ipa_sym_addresses_common): ... this.
2849         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
2850
2851 2018-08-28  Tom Tromey  <tom@tromey.com>
2852
2853         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2854         (token_fifo): Now a std::vector.
2855         (yylex, c_parse): Update.
2856         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2857         (token_fifo): Now a std::vector.
2858         (yylex, d_parse): Update.
2859         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2860         (token_fifo): Now a std::vector.
2861         (yylex, go_parse): Update.
2862
2863 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
2864
2865         * parser-defs.h (struct type_stack) <elements>: Change type to
2866         std::vector<union type_stack_elt>.
2867         <depth, size>: Remove.
2868         * parse.c (parse_exp_in_context_1): Adjust.
2869         (type_stack_reserve): Remove.
2870         (check_type_stack_depth): Remove.
2871         (insert_into_type_stack): Adjust to std::vector.
2872         (insert_type): Likewise.
2873         (push_type): Likewise.
2874         (push_type_int): Likewise.
2875         (insert_type_address_space): Likewise.
2876         (pop_type): Likewise.
2877         (pop_type_int): Likewise.
2878         (pop_typelist): Likewise.
2879         (pop_type_stack): Likewise.
2880         (append_type_stack): Likewise.
2881         (push_type_stack): Likewise.
2882         (get_type_stack): Likewise.
2883         (type_stack_cleanup): Likewise.
2884         (push_typelist): Likewise.
2885         (follow_types): Likewise.
2886         (_initialize_parse): Likewise.
2887
2888 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2889
2890         * NEWS: Mention csky target.
2891
2892 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
2893             Hafiz Abid Qadeer  <abidh@codesourcery.com>
2894             Don Breazeal  <donb@codesourcery.com>
2895
2896         * csky-linux-tdep.c: New file.
2897         * csky-tdep.c: Likewise.
2898         * csky-tdep.h: Likewise.
2899         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
2900         csky-tdep.o.
2901         (HFILES_NO_SRCDIR): Add csky-tdep.h.
2902         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
2903         * configure.tgt: Add csky support.
2904
2905 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
2906
2907         * python/py-framefilter.c (py_print_frame): Print frame architecture
2908         when printing on an MI output.
2909
2910 2018-08-27  Tom Tromey  <tom@tromey.com>
2911
2912         PR build/23087:
2913         * configure: Rebuild.
2914         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
2915
2916 2018-08-27  Tom Tromey  <tom@tromey.com>
2917
2918         * aarch64-linux-tdep.c
2919         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
2920         casts to int.
2921
2922 2018-08-27  Tom Tromey  <tom@tromey.com>
2923
2924         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
2925         unsigned.
2926         (ppc64_standard_linkage1, ppc64_standard_linkage2)
2927         (ppc64_standard_linkage3, ppc64_standard_linkage4)
2928         (ppc64_standard_linkage5, ppc64_standard_linkage6)
2929         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
2930         unsigned.
2931
2932 2018-08-27  Tom Tromey  <tom@tromey.com>
2933
2934         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
2935         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
2936
2937 2018-08-27  Tom Tromey  <tom@tromey.com>
2938
2939         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
2940         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
2941         ULONGEST_MAX.
2942         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
2943         ULONGEST_MAX.
2944         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
2945         ULONGEST_MAX.
2946         * sparc-linux-tdep.c (sparc32_linux_sigframe)
2947         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
2948         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
2949         ULONGEST_MAX.
2950         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
2951         (ppc64_linux_sigaction_tramp_frame)
2952         (ppc32_linux_sighandler_tramp_frame)
2953         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2954         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
2955         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
2956         * mn10300-linux-tdep.c (am33_linux_sigframe)
2957         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
2958         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
2959         * mips-linux-tdep.c (mips_linux_o32_sigframe)
2960         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
2961         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
2962         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
2963         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
2964         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
2965         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
2966         * microblaze-linux-tdep.c
2967         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2968         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
2969         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
2970         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
2971         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
2972         * common/common-types.h (ULONGEST_MAX): New define.
2973         (CORE_ADDR_MAX): Fix formatting.
2974         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
2975         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
2976         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
2977         (arm_linux_rt_sigreturn_tramp_frame)
2978         (arm_eabi_linux_sigreturn_tramp_frame)
2979         (arm_eabi_linux_rt_sigreturn_tramp_frame)
2980         (thumb2_eabi_linux_sigreturn_tramp_frame)
2981         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
2982         (arm_linux_restart_syscall_tramp_frame)
2983         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
2984         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
2985         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
2986         ULONGEST_MAX.
2987         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
2988
2989 2018-08-27  Tom Tromey  <tom@tromey.com>
2990
2991         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
2992         CORE_ADDR_MAX.
2993         * mips-tdep.c (mips_deal_with_atomic_sequence)
2994         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
2995         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
2996         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
2997         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
2998         CORE_ADDR_MAX.
2999         * aarch64-tdep.c (aarch64_software_single_step): Use
3000         CORE_ADDR_MAX.
3001
3002 2018-08-27  Tom Tromey  <tom@tromey.com>
3003
3004         * linespec.c (complete_linespec_component): Add cast to "char".
3005         * completer.c (completion_tracker::build_completion_result): Add
3006         cast to "char".
3007
3008 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3009
3010         * solist.h (struct solist, struct target_so_ops): Fix
3011         indentation.
3012
3013 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3014
3015         * ada-tasks.c (ada_task_info_s): Remove typedef.
3016         (DEF_VEC_O(ada_task_info_s)): Remove.
3017         (struct ada_tasks_inferior_data): Initialize fields.
3018         <task_list>: Make an std::vector.
3019         (get_ada_tasks_inferior_data): Allocate with new.
3020         (ada_get_task_number): Adjust.
3021         (get_task_number_from_id): Likewise.
3022         (valid_task_id): Likewise.
3023         (ada_get_task_info_from_ptid): Likewise.
3024         (iterate_over_live_ada_tasks): Likewise.
3025         (add_ada_task): Likewise.
3026         (read_known_tasks): Likewise.
3027         (ada_build_task_list): Likewise.
3028         (print_ada_task_info): Likewise.
3029         (info_task): Likewise.
3030         (task_command_1): Likewise.
3031
3032 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3033
3034         * ada-lang.c (add_angle_brackets): Return std::string.
3035
3036 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3037
3038         * python/py-threadevent.c (py_get_event_thread): Initialize
3039         pythread.
3040
3041 2018-08-24  Pedro Alves  <palves@redhat.com>
3042
3043         * python/py-bpevent.c (create_breakpoint_event_object): Use
3044         copy-initialization.
3045         * python/py-continueevent.c (emit_continue_event): Use
3046         copy-initialization.
3047         * python/py-exitedevent.c (create_exited_event_object): Return a
3048         gdbpy_ref<>.
3049         (emit_exited_event): Use copy-initialization.
3050         * python/py-inferior.c (python_new_inferior)
3051         (python_inferior_deleted, add_thread_object): Use
3052         copy-initialization.
3053         * python/py-infevents.c (create_inferior_call_event_object)
3054         (create_register_changed_event_object)
3055         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3056         (emit_inferior_call_event, emit_memory_changed_event)
3057         (emit_register_changed_event): Use copy-initialization.
3058         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3059         Return a gdbpy_ref<>.
3060         (emit_new_objfile_event): Use copy-initialization.
3061         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3062         (emit_clear_objfiles_event): Use copy-initialization.
3063         * python/py-signalevent.c (create_signal_event_object): Use
3064         copy-initialization.
3065         * python/py-threadevent.c (create_thread_event_object): Use
3066         copy-initialization.
3067
3068 2018-08-24  Pedro Alves  <palves@redhat.com>
3069             Simon Marchi  <simon.marchi@ericsson.com>
3070
3071         PR gdb/23379
3072         * python/py-continueevent.c: Include "gdbthread.h".
3073         (create_continue_event_object): Add intro comment.  Add 'ptid'
3074         parameter.  Use it to find thread to pass to
3075         create_thread_event_object.
3076         (emit_continue_event): Pass PTID down to
3077         create_continue_event_object.
3078         * python/py-event.h (py_get_event_thread): Declare.
3079         (create_thread_event_object): Remove default from 'thread'
3080         parameter.
3081         * python/py-stopevent.c (create_stop_event_object): Use
3082         py_get_event_thread.
3083         * python/py-threadevent.c (get_event_thread): Rename to ...
3084         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3085         and use it to find the thread.
3086         (create_thread_event_object): Assert that THREAD isn't null.
3087         Don't find the event thread here.
3088
3089 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3090
3091         * block.h (blockrange, blockranges): New struct declarations.
3092         (struct block): Add new field named `ranges'.
3093         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3094         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3095         macros for accessing ranges in struct block.
3096         (make_blockranges): New declaration.
3097         block.c (make_blockranges): New function.
3098         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3099         for block.
3100         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3101         * blockframe.c (cache_pc_function_block): New static global.
3102         (clear_pc_function_cache): Clear cache_pc_function_block.
3103         (find_pc_partial_function): Move comment to symtab.h.  Add
3104         support for non-contiguous blocks.
3105         * cli/cli-cmds.c (block.h): Include.
3106         (print_disassembly): Handle printing of non-contiguous blocks.
3107         (disassemble_current_function): Likewise.
3108         (disassemble_command): Likewise.
3109
3110         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3111         BLOCK_START.
3112         * blockframe.c (get_pc_function_start): Likewise.
3113         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3114         (gcc_symbol_address): Likewise.
3115         * compile/compile-object-run.c (compile_object_run): Likewise.
3116         * compile/compile.c (get_expr_block_and_pc): Likewise.
3117         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3118         (func_addr_to_tail_call_list): Likewise.
3119         * findvar.c (default_read_var_value): Likewise.
3120         * inline-frame.c (inline_frame_this_id): Likewise.
3121         (skip-inline_frames): Likewise.
3122         * infcmd.c (until_next_command): Likewise.
3123         * linespec.c (convert_linespec_to_sals): Likewise.
3124         * parse.c (parse_exp_in_context_1): Likewise.
3125         * printcmd.c (build_address_symbolic): likewise.
3126         (info_address_command): Likewise.
3127         symtab.c (find_function_start_sal): Likewise.
3128         (skip_prologue_sal): Likewise.
3129         (find_function_alias_target): Likewise.
3130         (find_gnu_ifunc): Likewise.
3131         * stack.c (find_frame_funname): Likewise.
3132         * symtab.c (fixup_symbol_section): Likewise.
3133         (find_function_start_sal): Likewise.
3134         (skip_prologue_sal): Likewsie.
3135         (find_function_alias_target): Likewise.
3136         (find_gnu_ifunc): Likewise.
3137         * tracepoint.c (info_scope_command): Likewise.
3138         * value.c (value_fn_field): Likewise.
3139
3140         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3141         in place of find_pc_partial_function.
3142         * blockframe.c (find_function_entry_range_from_pc): New function.
3143         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3144         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3145         for each range in a block.
3146
3147
3148 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3149
3150         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3151         incrementation.
3152
3153 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3154
3155         * solib-svr4.c (read_program_headers_from_bfd): Return
3156         gdb::optional<gdb::byte_vector>.
3157         (svr4_exec_displacement): Adjust.
3158
3159 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3160
3161         * solib-svr4.c (read_program_header): Return
3162         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3163         (find_program_interpreter): Return
3164         gdb::optional<gdb::byte_vector>.
3165         (scan_dyntag_auxv): Adjust.
3166         (enable_break): Adjust.
3167         (svr4_exec_displacement): Adjust.
3168
3169 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3170
3171         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3172         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3173
3174 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3175
3176         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3177         string_vprintf.
3178         * guile/scm-utils.c (gdbscm_printf): Likewise.
3179         * serial.c (serial_printf): Likewise.
3180         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3181
3182 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3183
3184         * stack.c (print_frame): Print frame architecture when printing on
3185         an MI output.
3186         * NEWS: Mention new "arch" attribute in frame output.
3187
3188 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3189
3190         * arch/aarch64.h (aarch64_regnum): Update comment.
3191
3192 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3193
3194         * NEWS: Add SVE to 8.2 section.
3195
3196 2018-08-21  Pedro Alves  <palves@redhat.com>
3197
3198         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3199         out from gdbscm_parse_function_args.
3200         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3201         gdbscm_parse_function_args_1.
3202
3203 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3204
3205         PR gdb/17816
3206         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3207         operator.
3208
3209 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3210
3211         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3212
3213 2018-08-19  Michael Spang  <spang@google.com>
3214
3215         PR gdb/11786
3216         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3217         for PT_TLS segments.
3218
3219 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3220
3221         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3222         dwarf_variable_value.
3223         * dwarf2-frame.c (class dwarf_expr_executor):
3224         Add override for dwarf_variable_value.
3225         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3226         (class symbol_needs_eval_context): Likewise.
3227         (indirect_synthetic_pointer): Add forward declaration.
3228         (sect_variable_value): New function.
3229         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3230         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3231         for DW_OP_GNU_variable_value.
3232
3233 2018-08-16  Tom Tromey  <tom@tromey.com>
3234
3235         * top.c (read_command_file): Update.
3236         (command_line_input): Remove "repeat" argument.
3237         * ada-lang.c (get_selections): Update.
3238         * linespec.c (decode_line_2): Update.
3239         * defs.h (command_line_input): Remove argument.
3240         * cli/cli-script.c (read_next_line): Update.
3241         * python/py-gdb-readline.c: Update.
3242
3243 2018-08-17  Tom Tromey  <tom@tromey.com>
3244
3245         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3246         command_line_input.
3247
3248 2018-08-15  Tom Tromey  <tom@tromey.com>
3249
3250         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3251
3252 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3253
3254         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3255         If used, use find_pc_partial_function to find address range
3256         to disassemble.
3257         * mi/mi-main.c (mi_cmd_list_features): Report
3258         "data-disassemble-a-option" feature.
3259         * NEWS: Mention new -data-disassemble option -a.
3260
3261 2018-08-13  Tom Tromey  <tom@tromey.com>
3262
3263         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3264
3265 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3266
3267         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3268         (aarch64_linux_collect_sve_regset): Likewise.
3269         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3270         * regcache.h (regcache_map_entry_size): New function.
3271
3272 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3273
3274         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3275         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3276         (SVE_HEADER_VL_LENGTH): Likewise.
3277         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3278         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3279         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3280         (SVE_HEADER_SIZE_OFFSET): Likewise.
3281         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3282         (SVE_HEADER_VL_OFFSET): Likewise.
3283         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3284         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3285         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3286         (SVE_HEADER_SIZE): Likewise.
3287         (aarch64_linux_core_read_vq): Add function.
3288         (aarch64_linux_core_read_description): Check for SVE section.
3289
3290 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3291
3292         * aarch64-fbsd-tdep.c
3293         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3294         collect_size.
3295         * aarch64-linux-tdep.c
3296         (aarch64_linux_iterate_over_regset_sections): Likewise.
3297         * alpha-linux-tdep.c
3298         (alpha_linux_iterate_over_regset_sections):
3299         * alpha-nbsd-tdep.c
3300         (alphanbsd_iterate_over_regset_sections): Likewise.
3301         * amd64-fbsd-tdep.c
3302         (amd64fbsd_iterate_over_regset_sections): Likewise.
3303         * amd64-linux-tdep.c
3304         (amd64_linux_iterate_over_regset_sections): Likewise.
3305         * arm-bsd-tdep.c
3306         (armbsd_iterate_over_regset_sections): Likewise.
3307         * arm-fbsd-tdep.c
3308         (arm_fbsd_iterate_over_regset_sections): Likewise.
3309         * arm-linux-tdep.c
3310         (arm_linux_iterate_over_regset_sections): Likewise.
3311         * corelow.c (get_core_registers_cb): Likewise.
3312         (core_target::fetch_registers): Likewise.
3313         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3314         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3315         * gdbarch.h (void): Regenerate.
3316         * gdbarch.sh: Add supply_size and collect_size.
3317         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3318         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3319         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3320         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3321         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3322         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3323         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3324         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3325         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3326         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3327         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3328         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3329         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3330         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3331         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3332         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3333         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3334         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3335         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3336         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3337         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3338         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3339         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3340         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3341         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3342         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3343         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3344         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3345         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3346         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3347
3348 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3349
3350         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3351         with string_printf.
3352
3353 2018-08-10  Keith Seitz  <keiths@redhat.com>
3354
3355         * compile/compile-c-support.c (add_code_header, add_code_footer):
3356         Move into policy class.
3357         (c_push_user_expression, pop_user_expression_nop)
3358         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3359         (compile_program): New host class.
3360         (c_compile_program): New typedef.
3361         (c_compute_porgram): Use c_compile_program.
3362
3363 2018-08-10  Keith Seitz  <keiths@redhat.com>
3364
3365         * compile/compile-internal.h (compile_instance::~compile_instance):
3366         Remove calls to htab_delete.
3367         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3368         * compile.c (compile_instance::compile_instance): Initialize
3369         htab unique pointers.
3370         (compile_instance::get_cached_type, compile_instance::insert_type)
3371         (compile_instance::error_symbol_once): Update for unique_ptr.
3372
3373 2018-08-10  Keith Seitz  <keiths@redhat.com>
3374
3375         * compile/compile-c-symbols.c (struct symbol_error)
3376         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3377         (compile_instance::insert_symbol_error)
3378         (compile_instance::error_symbol_once): Move to ...
3379         * compile/compile.c: ... here.
3380
3381 2018-08-10  Keith Seitz  <keiths@redhat.com>
3382
3383         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3384         instead of `new_compile_instance'.
3385         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3386         Update description.
3387         If the symbol error map is not initialized, create it.
3388         (generate_c_for_for_one_symbol): Do not check/initialize
3389         the symbol error map.
3390         * compile/compile-c-types.c (compile_c_instance): Make a class.
3391         Update all callers.
3392         (compile_instance::compile_instance): Initialize the type cache.
3393         (get_cached_type): New function.
3394         (insert_type): Update description.
3395         (compile_c_instance::m_default_cflags): Define.
3396         (convert_type): Update description.  Use get_cached_type.
3397         (delete_instance): Moved to destructor.
3398         (new_compile_instance): Moved to constructor.
3399         * compile/compile-c.h (compile_c_instance): Make class inheriting
3400         from compile_instance.
3401         <base>: Remove field.
3402         <type_map, symbol_err_map>: Move to base class.
3403         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3404         * compile/compile-internal.h (compile_instance): Make class.
3405         <type_map_t, symbol_err_map_t>: Define.
3406         <fe>: Rename to `m_gcc_fe'.
3407         <scope, block, gcc_target_options>: Add `m_' prefix.
3408         <m_type_map, m_symbol_err_map>: New fields, moved from
3409         compile_c_instance.
3410         <destroy>: Remove.
3411         (convert_type, new_compile_instance): Remove.
3412         * compile/compile.c (cleanup_compile_instance): Remove.
3413         (compile_to_object): Use unique_ptr to eliminate cleanups.
3414         (compile_instance::set_print_callback, compile_instance::version)
3415         (compile_instance::set_verbose)
3416         (compile_instance::set_driver_filename)
3417         (compile_instance::set_triplet_regexp)
3418         (compile_instance::set_arguments)
3419         (compile_instance::set_source_file)
3420         (compile_instance::compile): Define.
3421
3422 2018-08-10  Keith Seitz  <keiths@redhat.com>
3423
3424         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3425         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3426         gcc-c-fe.def to define C plugin.
3427         (delete_instance): Delete `c_plugin'.
3428         (new_compile_instance): Initialize `c_plugin'.
3429         * compile/compile-c.h: Include gcc_c_plugin.h.
3430         (struct compile_c_instance) <c_plugin>: New member.
3431         * gcc-c-plugin.h: New file.
3432         Update all callers with API change.
3433
3434 2018-08-10  Keith Seitz  <keiths@redhat.com>
3435
3436         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3437         (HFILES_NO_SRCDIR): ... to here.
3438         Add compile-internal.h and compile-c.h.
3439         * compile/compile-c-support.c: Include compile-c.h.
3440         * compile/compile-c-symbols.c: Include compile-c.h.
3441         (generate_c_for_variable_locations): Update comment.
3442         * compile/compile-c-types.c: Include compile-c.h.
3443         * compile/compile-c.h: New file -- moved C language declarations
3444         from other files here.
3445         * compile/compile-internal.h: Do not include hashtab.h or
3446         common/enum-flags.h.
3447         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3448         (gcc_convert_symbol, gcc_symbol_address)
3449         (generate_c_for_variable_locations, c_get_mode_for_size)
3450         (c_get_range_decl_name): Definitions moved to compile-c.h.
3451         * compile/compile-loc2c.c: Include compile-c.h.
3452
3453 2018-08-10  Keith Seitz  <keiths@redhat.com>
3454
3455         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3456         (c_symbol_substitution_name): ... this.
3457         Update all callers.
3458
3459 2018-08-10  Keith Seitz  <keiths@redhat.com>
3460
3461         * compile/compile-c-support.c (c_compute_program): Use
3462         unique_xmalloc_ptr to eliminate cleanup.
3463         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3464         Return a unique_xmalloc_ptr and eliminate cleanup.
3465         * compile/compile-internal.h (generate_c_for_variable_locations):
3466         Return unique_xmalloc_ptr and update description.
3467
3468 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3469
3470         * corelow.c (core_target::get_core_register_section): Rename
3471         min_size to section_min_size.
3472
3473 2018-08-09  Jim Wilson  <jimw@sifive.com>
3474
3475         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3476         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3477         * NEWS: Mention new GNU/Linux RISC-V target.
3478         * configure.host: Add riscv*-*-linux*.
3479         * configure.nat: Add riscv*.
3480         * configure.tgt: Add riscv*-*-linux*.
3481         * riscv-linux-nat.c: New file.
3482         * riscv-linux-tdep.c: New file.
3483
3484 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3485
3486         * infrun.c (resume): Make static, add forward declaration.
3487         (proceed): Update header comment.
3488         * infrun.h (resume): Delete declaration.
3489
3490 2018-08-09  Tom Tromey  <tom@tromey.com>
3491
3492         * riscv-tdep.h: Minor formatting fixes.
3493
3494 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3495
3496         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3497         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3498         (test_mkdir_recursive): Likewise.
3499         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3500
3501 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3502
3503         * valarith.c (value_subscripted_rvalue): If an array is not in
3504         memory, and we don't know the upper bound, then we can't know that
3505         the requested element exists or not.
3506
3507 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3508
3509         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3510         (target_options_to_string): Add comment.
3511
3512 2018-08-08  Tom Tromey  <tom@tromey.com>
3513
3514         * unittests/scoped_mmap-selftests.c: Check result of "write".
3515
3516 2018-08-08  Jim Wilson  <jimw@sifive.com>
3517
3518         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3519         (decode_register_index_short): New.
3520         (decode_j_type_insn, decode_cj_type_insn): New.
3521         (decode_b_type_insn, decode_cb_type_insn): New.
3522         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3523         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3524         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3525         is_c_sw_insn instead of is_sw_insn.
3526         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3527         (riscv_software_single_step): New.
3528         * riscv-tdep.h (riscv_software_single_step): Declare.
3529
3530         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3531         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3532
3533 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3534
3535         PR gdb/18050:
3536         * target.c (dispose_inferior): Don't dispose of inferiors that are
3537         already killed.
3538
3539 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3540
3541         * remote.c (remote_target::download_tracepoint): Change char* to
3542         const char*.
3543
3544 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3545
3546         * target.h (target_options_to_string): Return an std::string.
3547         * target.c (str_comma_list_concat_elem): Return void, use
3548         std::string.
3549         (do_option): Likewise.
3550         (target_options_to_string): Return an std::string.
3551         * linux-nat.c (linux_nat_target::wait): Adjust.
3552         * target-debug.h (target_debug_print_options): Adjust.
3553
3554 2018-08-07  Tom Tromey  <tom@tromey.com>
3555
3556         * Makefile.in (CPPFLAGS): New variable.
3557         (INTERNAL_CPPFLAGS): Use it.
3558
3559 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3560
3561         * NEWS: Mention the index cache.
3562
3563 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3564
3565         * common/pathstuff.h (get_standard_cache_dir): New.
3566         * common/pathstuff.c (get_standard_cache_dir): New.
3567         * build-id.h (build_id_to_string): New.
3568         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
3569         DEBUG_STR_SUFFIX): Move to here.
3570         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
3571         DEBUG_STR_SUFFIX): Move from there.
3572         (write_psymtabs_to_index): Make non-static, add basename
3573         parameter.  Write to temporary files, rename when done.
3574         (save_gdb_index_command): Adjust call to
3575         write_psymtabs_to_index.
3576         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
3577         field.
3578         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
3579         (get_gdb_index_contents_from_cache): New.
3580         (get_gdb_index_contents_from_cache_dwz): New.
3581         (dwarf2_initialize_objfile): Read index from cache.
3582         (dwarf2_build_psymtabs): Save to index.
3583         * dwarf-index-cache.h: New file.
3584         * dwarf-index-cache.c: New file.
3585         * dwarf-index-write.h: New file.
3586
3587 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3588
3589         * gnulib/aclocal.m4: Re-generate.
3590         * gnulib/config.in: Re-generate.
3591         * gnulib/configure: Re-generate.
3592         * gnulib/import/Makefile.am: Re-generate.
3593         * gnulib/import/Makefile.in: Re-generate.
3594         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3595         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3596         * gnulib/import/m4/mkdir.m4: New file.
3597         * gnulib/import/mkdir.c: New file.
3598         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
3599         module.
3600
3601 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3602
3603         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
3604         * common/scoped_mmap.c: New file.
3605         * common/scoped_mmap.h (destroy): New method.
3606         (~scoped_mmap, reset): Use destroy.
3607         (scoped_mmap): New move constructor.
3608         (mmap_file): New declaration.
3609         * unittests/scoped_mmap-selftests.c (test_normal,
3610         test_invalid_filename, run_tests): New functions.
3611         (_initialize_scoped_mmap_selftests): Register selftest.
3612
3613 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3614
3615         * dwarf2read.c (read_gdb_index_from_section): Rename to...
3616         (read_gdb_index_from_buffer): ... this.  Remove section
3617         parameter, add buffer parameter.
3618         (get_gdb_index_contents_ftype,
3619         get_gdb_index_contents_dwz_ftype): New typedefs.
3620         (dwarf2_read_gdb_index): Add callback parameters to get the
3621         index contents.
3622         (get_gdb_index_contents_from_section): New.
3623         (dwarf2_initialize_objfile): Update call to
3624         dwarf2_read_gdb_index.
3625
3626 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3627
3628         * common/filestuff.h (gdb_fopen_cloexec): New overload.
3629         (gdb_open_cloexec): Likewise.
3630         * nat/linux-osdata.c (command_from_pid): Use string_printf.
3631         (commandline_from_pid): Likewise.
3632         (linux_xfer_osdata_threads): Likewise.
3633         (linux_xfer_osdata_fds): Likewise.
3634         * ada-lang.c (is_package_name): Likewise.
3635         * auxv.c (procfs_xfer_auxv): Likewise.
3636         * breakpoint.c (print_one_breakpoint_location): Use
3637         uiout::field_fmt.
3638         (print_one_catch_solib): Use string_printf.
3639         * coff-pe-read.c (add_pe_exported_sym): Likewise.
3640         (add_pe_forwarded_sym): Likewise.
3641         * dwarf2read.c (create_type_unit_group): Likewise.
3642         (build_error_marker_type): Likewise.
3643         * infcall.c (get_function_name): Likewise.
3644         * valprint.c (print_converted_chars_to_obstack): Likewise.
3645         * xtensa-tdep.c (xtensa_register_type): Likewise.
3646
3647 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
3648
3649         * remote.c (remote_target::download_tracepoint): Fix format
3650         string errors.
3651
3652 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3653
3654         * tracefile.c: Include common/byte-vector.h.
3655         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
3656         with trace_regblock_size if needed.  Update uses of buf.
3657
3658 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3659
3660         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
3661         std::vector<unsigned char>.
3662         * tracepoint.c (collection_list::collection_list): Remove
3663         m_regs_mask initializer from initializer list.  Resize
3664         m_regs_mask using the largest remote register number.
3665         (collection_list::add_remote_register): Remove size check on
3666         m_regs_mask.  Use at to access element.
3667         (collection_list::stringify): Change type of temp_buf to
3668         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
3669         stringify the register mask.  Use pack_hex_byte for the register
3670         mask.
3671
3672 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3673
3674         * tracepoint.h (class collection_list) <add_register>: Remove.
3675         <add_remote_register, add_ax_registers, add_local_register>:
3676         Declare.
3677         <add_memrange>: Add scope parameter.
3678         * tracepoint.c (encode_actions_1): Likewise.
3679         (collection_list::add_register): Rename to ...
3680         (collection_list::add_remote_register): ... this.  Update
3681         comment.
3682         (collection_list::add_ax_registers, add_local_register): New
3683         methods.
3684         (collection_list::add_memrange): Add scope parameter.  Call
3685         add_local_register instead of add_register.
3686         (finalize_tracepoint_aexpr): New function.
3687         (collection_list::collect_symbol): Update calls to add_memrange.
3688         Call add_local_register instead of add_register.  Call
3689         add_ax_registers.  Call finalize_tracepoint_aexpr.
3690         (encode_actions_1): Get remote regnos for $reg action.  Call
3691         add_remote_register, add_ax_registers, and add_local_register.
3692         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
3693         (validate_actionline): Call finalize_tracepoint_aexpr.
3694
3695 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3696
3697         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
3698         Replace array buf with gdb::char_vector buf, of size
3699         get_remote_packet_size ().  Replace references to buf and
3700         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
3701         and xsnprintf with snprintf.  Raise errors if the buffer is too
3702         small.
3703
3704 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3705
3706         * remote.c (remote_target::download_tracepoint): Fix the has_more
3707         predicate in the QTDP action list iteration.
3708
3709 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3710
3711         * remote.c (remote_target::download_tracepoint): Fix indentation
3712         in for block.
3713
3714 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3715
3716         * proc-api.c (_initialize_proc_api): Remove c, unused.
3717         * procfs.c (procfs_init_inferior): Remove signals, unused.
3718         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
3719         unused.
3720
3721 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
3722             Andrew Burgess  <andrew.burgess@embecosm.com>
3723
3724         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
3725         'W_STOPCODE (0)' as this could be ambiguous.
3726
3727 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
3728
3729         * ser-tcp.c (net_open): Fix thinko when deciding whether to
3730         disable TCP's Nagle algorithm (use "ai_protocol" instead of
3731         "ai_socktype").
3732
3733 2018-08-02  Tom Tromey  <tom@tromey.com>
3734
3735         PR symtab/16842.
3736         * dwarf2read.c (read_func_scope): Set symtab on template parameter
3737         symbols.
3738         (process_structure_scope): Likewise.
3739
3740 2018-08-02  Xavier Roirand  <roirand@adacore.com>
3741
3742         PR gdb/22629:
3743         * darwin-nat.c (darwin_kill_inferior): Fix handling of
3744         kill inferior.
3745
3746 2018-08-02  Tom Tromey  <tom@tromey.com>
3747
3748         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
3749         (darwin_suspend_inferior, darwin_resume_inferior)
3750         (darwin_decode_notify_message, darwin_resume_inferior_threads)
3751         (darwin_check_new_threads): Check result of get_darwin_inferior.
3752
3753 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
3754
3755         GDB 8.1.1 released.
3756
3757 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
3758
3759         * varobj.c (varobj_get_path_expr_parent): Report an error if
3760         parent is a dynamic varobj.
3761
3762 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3763
3764         * gnulib/aclocal.m4: Re-generate.
3765         * gnulib/config.in: Re-generate.
3766         * gnulib/configure: Re-generate.
3767         * gnulib/import/Makefile.in: Re-generate.
3768         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3769         * gnulib/import/m4/onceonly.m4: Re-generate.
3770
3771 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3772
3773         * target-descriptions.c (struct xml_test_tdesc): New.
3774         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
3775         (record_xml_tdesc): Update.
3776         (maintenance_check_xml_descriptions): Update.
3777         * target-descriptions.h (record_xml_tdesc): Update comment.
3778
3779 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3780
3781         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
3782         checking array bounds are defined.
3783
3784 2018-07-30  Tom Tromey  <tom@tromey.com>
3785
3786         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
3787         irreflexivity violation.
3788
3789 2018-07-30  Tom Tromey  <tom@tromey.com>
3790
3791         * cli/cli-decode.c (lookup_cmd): Remove lint code.
3792         * value.c (unpack_long): Remove lint code.
3793         * valops.c (value_ind): Remove lint code.
3794         * valarith.c (value_x_binop, value_x_unop, value_equal)
3795         (value_pos): Remove lint code.
3796
3797 2018-07-28  Tom de Vries  <tdevries@suse.de>
3798
3799         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
3800         with undefined upper bound as <optimized out>.
3801
3802 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
3803
3804         * gcore.in: Rename variable "name" to "prefix".  Expand
3805         "usage" text.
3806
3807 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
3808
3809         * windows-nat.c (windows_nat_target::create_inferior): Update to
3810         call close() in global namespace.
3811
3812 2018-07-26  Tom Tromey  <tom@tromey.com>
3813
3814         * dwarf-index-write.c (add_address_entry): Don't add objfile
3815         offsets.
3816         * dbxread.c (find_stab_function): Rename from
3817         find_stab_function_addr.  Return a bound_minimal_symbol.
3818         (read_dbx_symtab): Use raw_text_low, raw_text_high.
3819         Don't add objfile offsets.
3820         (end_psymtab): Use raw_text_low, raw_text_high,
3821         MSYMBOL_VALUE_RAW_ADDRESS.
3822         (read_ofile_symtab): Update.
3823         (process_one_symbol): Update.
3824         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
3825         offsets.
3826         (dw2_relocate): Remove.
3827         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
3828         searching addrmap.
3829         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
3830         Update.
3831         (process_psymtab_comp_unit_reader, add_partial_symbol)
3832         (add_partial_subprogram, dwarf2_ranges_read): Update.
3833         (load_partial_dies): Update.
3834         (add_address_entry): Don't add objfile offsets.
3835         (dwarf2_build_include_psymtabs): Update.
3836         (create_addrmap_from_aranges): Don't add objfile offsets.
3837         (dw2_find_pc_sect_compunit_symtab): Update.
3838         * mdebugread.c (parse_symbol): Don't add objfile offsets.
3839         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
3840         Update.
3841         (parse_partial_symbols): Don't add objfile offsets.  Use
3842         raw_text_low, raw_text_high.  Update.
3843         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
3844         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
3845         or call 'relocate' quick function.  Clear psymbol_map.
3846         * psympriv.h (struct partial_symbol) <address>: Add section
3847         offset.
3848         <set_unrelocated_address>: Rename from set_address.
3849         <raw_text_low, raw_text_high>: New methods.
3850         <text_low, text_high>: Add objfile parameter.
3851         (add_psymbol_to_bcache): Add 'section' parameter.  Call
3852         set_unrelocated_address.
3853         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3854         (find_pc_psymbol): Update.
3855         (fixup_psymbol_section, relocate_psymtabs): Remove.
3856         (dump_psymtab, psym_functions): Update.
3857         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
3858         parameter.
3859         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
3860         (start_psymtab_common): Update.
3861         * symfile-debug.c (debug_qf_relocate): Remove.
3862         (debug_sym_quick_functions): Update.
3863         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
3864         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
3865         Update.
3866
3867 2018-07-26  Tom Tromey  <tromey@redhat.com>
3868
3869         * dbxread.c (end_psymtab): Use text_high_valid and
3870         text_low_valid.
3871         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
3872         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
3873         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3874         Update comment.
3875         <text_low_valid, text_high_valid>: New fields.
3876         <set_text_low, set_text_high>: Update.
3877         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
3878
3879 2018-07-26  Tom Tromey  <tom@tromey.com>
3880
3881         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
3882         Update.
3883         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
3884         textlow and texthigh fields.
3885         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
3886         Update.
3887         * mdebugread.c (parse_lines, parse_partial_symbols)
3888         (psymtab_to_symtab_1): Update.
3889         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3890         Rename fields.  Update comment.  Now private.
3891         <text_low, text_high, set_text_low, set_text_high>: New methods.
3892         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3893         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
3894         (start_psymtab_common, maintenance_info_psymtabs)
3895         (maintenance_check_psymtabs): Update.
3896         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
3897         texthigh fields.
3898         (scan_xcoff_symtab): Update.
3899
3900 2018-07-26  Tom Tromey  <tromey@redhat.com>
3901
3902         * psympriv.h (struct partial_symbol) <unrelocated_address,
3903         address, set_address>: New methods.
3904         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
3905         (fixup_psymbol_section, relocate_psymtabs): Update.
3906         (print_partial_symbols): Add 'objfile' parameter.  Update.
3907         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
3908         Update.
3909
3910 2018-07-26  Tom Tromey  <tom@tromey.com>
3911
3912         * dwarf-index-write.c (write_psymbols, debug_names::insert)
3913         (debug_names::write_psymbols): Update.
3914         * psympriv.h (struct partial_symbol): Derive from
3915         general_symbol_info.
3916         <obj_section>: New method.
3917         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
3918         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3919         (find_pc_sect_psymbol, fixup_psymbol_section)
3920         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
3921         (print_partial_symbols, recursively_search_psymtabs)
3922         (compare_psymbols, psymbol_hash, psymbol_compare)
3923         (add_psymbol_to_bcache, maintenance_check_psymtabs)
3924         (psymbol_name_matches, psym_fill_psymbol_map): Update.
3925
3926 2018-07-26  Tom Tromey  <tromey@redhat.com>
3927
3928         * dbxread.c (end_psymtab): Remove dead code.
3929
3930 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
3931
3932         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
3933         DWARF unwinders are disabled.
3934         * dwarf2-frame.c: Add dwarf2read.h include.
3935         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
3936         disabled.
3937         (dwarf2_frame_unwinders_enabled_p): Define.
3938         (show_dwarf_unwinders_enabled_p): New function.
3939         (_initialize_dwarf2_frame): Register switch to control DWARF
3940         unwinder use.
3941         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
3942         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
3943         (show_dwarf_cmdlist): Remove static keyword.
3944         * dwarf2read.h (set_dwarf_cmdlist): Declare.
3945         (show_dwarf_cmdlist): Declare.
3946         * NEWS: Document new feature.
3947
3948 2018-07-26  Tom de Vries  <tdevries@suse.de>
3949
3950         PR breakpoints/23366
3951         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
3952
3953 2018-07-26  Tom de Vries  <tdevries@suse.de>
3954
3955         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
3956         DW_AT_count can't be translated to a dynamic prop.
3957
3958 2018-07-25  Tom de Vries  <tdevries@suse.de>
3959
3960         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
3961         try/catch.
3962
3963 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
3964
3965         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
3966
3967 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
3968
3969         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
3970
3971 2018-07-24  Keith Seitz  <keiths@redhat.comt
3972
3973         PR symtab/23010
3974         * dwarf2read.c (dw2_add_symbol_to_list): New function.
3975         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
3976         instead of add_symbol_to_list.
3977         (read_file_scope): Call prepare_one_comp_unit before reading
3978         any other DIEs.
3979
3980 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
3981
3982         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
3983
3984 2018-07-24  Tom Tromey  <tom@tromey.com>
3985
3986         * utils.c (malloc, realloc, free): Don't declare.
3987         * configure, config.in: Rebuild.
3988         * configure.ac: Don't check for declarations of free, malloc, or
3989         realloc.
3990
3991 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3992
3993         * aarch64-linux-nat.c
3994         (aarch64_linux_nat_target::stopped_data_address): Remove unused
3995         variable.
3996         * arm-linux-nat.c (fetch_regs): Likewise.
3997         (store_regs): Likewise.
3998         (fetch_vfp_regs): Likewise.
3999         (store_vfp_regs): Likewise.
4000         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4001         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4002         (arm_linux_nat_target::insert_watchpoint): Likewise.
4003         (arm_linux_nat_target::remove_watchpoint): Likewise.
4004         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4005         Likewise.
4006         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4007         Likewise.
4008         * ppc-linux-nat.c (fetch_register): Likewise.
4009         (fetch_all_gp_regs): Likewise.
4010         (fetch_ppc_registers): Likewise.
4011         (store_all_gp_regs): Likewise.
4012         (store_ppc_registers): Likewise.
4013         (hwdebug_insert_point): Likewise.
4014         (can_use_watchpoint_cond_accel): Likewise.
4015         * remote-sim.c (gdb_os_write_stdout): Likewise.
4016
4017 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4018             Tom Tromey  <tom@tromey.com>
4019
4020         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4021         test for it.
4022         * configure: Rebuild.
4023
4024 2018-07-22  Tom Tromey  <tom@tromey.com>
4025
4026         * regformats/regdat.sh: Define xmltarget_${name} inside
4027         #ifndef IN_PROCESS_AGENT.
4028
4029 2018-07-22  Tom Tromey  <tom@tromey.com>
4030
4031         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4032
4033 2018-07-22  Tom Tromey  <tom@tromey.com>
4034
4035         * symfile.c (reread_symbols): Notify iter, not objfile.
4036
4037 2018-07-22  Tom Tromey  <tom@tromey.com>
4038
4039         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4040         Use arch_ops.
4041         (ravenscar_thread_target::prepare_to_store): Likewise.
4042
4043 2018-07-22  Tom Tromey  <tom@tromey.com>
4044
4045         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4046         unused variable.  Call value_fetch_lazy when needed.
4047         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4048         Remove unused variable.  Call value_fetch_lazy when needed.
4049
4050 2018-07-22  Tom Tromey  <tom@tromey.com>
4051
4052         * m32c-tdep.c (mark_dma): Return void.
4053         (make_regs): Remove unused declarations.
4054
4055 2018-07-22  Tom Tromey  <tom@tromey.com>
4056
4057         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4058         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4059         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4060         bkscm_get_valid_block_smob_arg_unsafe for effect.
4061
4062 2018-07-22  Tom Tromey  <tom@tromey.com>
4063
4064         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4065         value_type.
4066
4067 2018-07-22  Tom Tromey  <tom@tromey.com>
4068
4069         * windows-nat.c (saved_context): Conditionally define.
4070         * remote.c (remote_target::remote_btrace_maybe_reopen):
4071         Conditionally declare "warned".
4072         * inflow.c (sigquit_ours): Conditionally define.
4073         (new_tty): Move "tty" declaration inside #if.
4074         * guile/guile.c (guile_datadir): Conditionally define.
4075         * charset.c (set_be_le_names): Move some declarations inside #if.
4076         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4077         #if.
4078         (parse_xml_btrace_conf): Likewise.
4079
4080 2018-07-22  Tom Tromey  <tom@tromey.com>
4081
4082         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4083
4084 2018-07-22  Tom Tromey  <tom@tromey.com>
4085
4086         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4087         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4088         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4089         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4090         * stack.c (frame_apply_level_command): Remove unused variable.
4091         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4092         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4093         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4094         unused variable.
4095         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4096         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4097         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4098         variable.
4099         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4100         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4101         variable.
4102         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4103         Remove unused variable.
4104         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4105         variable.
4106         * common/tdesc.c (print_xml_feature::visit): Remove unused
4107         variable.
4108         * compile/compile-object-load.c (store_regs): Remove unused
4109         variables.
4110         * complaints.c (clear_complaints): Remove unused variable.
4111         * corelow.c (core_target_open): Remove unused variable.
4112         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4113         variable.
4114         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4115         variable.
4116         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4117         variable.
4118         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4119         variable.
4120         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4121         variable.
4122         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4123         variable.
4124         * ia64-tdep.c (examine_prologue): Remove unused variable.
4125         * infcall.c (run_inferior_call): Remove unused variable.
4126         * inferior.c (exit_inferior): Remove unused variable.
4127         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4128         * linespec.c (decode_line_2): Remove unused variable.
4129         * linux-nat.c (super_close): Remove.
4130         * linux-tdep.c (linux_info_proc): Remove unused variable.
4131         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4132         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4133         Remove unused variable.
4134         * parse.c (find_minsym_type_and_address): Remove unused variable.
4135         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4136         variable.
4137         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4138         variable.
4139         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4140         variables.
4141         * record-btrace.c (record_btrace_target::store_registers): Remove
4142         unused variable.
4143         (cmd_show_record_btrace_cpu): Remove unused variable.
4144         * riscv-tdep.c (riscv_register_reggroup_p)
4145         (riscv_push_dummy_call, riscv_return_value): Remove unused
4146         variable.
4147         * rust-exp.y (literal): Remove unused variable.
4148         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4149         unused variable.
4150         <STRUCTOP_ANONYMOUS>: Likewise.
4151         * s390-linux-tdep.c (s390_linux_init_abi_31)
4152         (s390_linux_init_abi_64): Remove unused variable.
4153         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4154         (file_select_thread, net_windows_open, _initialize_ser_windows):
4155         Remove unused variables.
4156         * symtab.c (find_pc_sect_line): Remove unused variable.
4157         * target-memory.c (compute_garbled_blocks): Remove unused
4158         variable.
4159         (target_write_memory_blocks): Remove unused variable.
4160         * target.c (target_stack::unpush): Remove unused variables.
4161         * tracepoint.c (start_tracing, all_tracepoint_actions)
4162         (merge_uploaded_trace_state_variables)
4163         (print_one_static_tracepoint_marker): Remove unused variable.
4164         * unittests/basic_string_view/element_access/char/1.cc (test01):
4165         Remove unused variable.
4166         * windows-nat.c (windows_continue, windows_add_all_dlls)
4167         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4168         Remove unused variables.
4169
4170 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4171
4172         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4173         attr_profile in HAVE_ELF.
4174         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4175         HAVE_ELF.
4176
4177 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4178
4179         * frame.c (frame_register_unwind): Change parameter name.
4180         (frame_unwind_register): Likewise.
4181         (frame_unwind_register_value): Likewise.
4182         (frame_unwind_register_signed): Likewise.
4183         (frame_unwind_register_unsigned): Likewise.
4184         * frame.h (frame_register_unwind): Likewise.
4185         (frame_unwind_register): Likewise.
4186         (frame_unwind_register_value): Likewise.
4187         (frame_unwind_register_signed): Likewise.
4188         (frame_unwind_register_unsigned): Likewise.
4189         (frame_unwind_arch): Likewise.
4190
4191 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4192
4193         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4194         ISA maintenance.
4195
4196 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4197
4198         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4199         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4200         hand.
4201
4202 2018-07-20  Keith Seitz  <keiths@redhat.com>
4203
4204         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4205         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4206         m_compunit_symtab, m_language>: Add "m_" prefix.
4207         Update all uses.
4208         * buildsym.c: Update all uses.
4209
4210 2018-07-20  Tom Tromey  <tom@tromey.com>
4211
4212         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4213         * buildsym.h (record_line_ftype): Remove typedef.
4214
4215 2018-07-20  Tom Tromey  <tom@tromey.com>
4216
4217         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4218         (end_expandable_symtab): Likewise.
4219         (end_symtab_get_static_block): Likewise.
4220         (end_symtab_from_static_block): Likewise.
4221         * buildsym-legacy.c (augment_type_symtab): Remove.
4222         (end_expandable_symtab): Remove.
4223         (end_symtab_get_static_block): Remove.
4224         (end_symtab_from_static_block): Remove.
4225
4226 2018-07-20  Tom Tromey  <tom@tromey.com>
4227
4228         * dwarf2read.c: Include buildsym.h.
4229         (struct dwarf2_cu) <builder>: New method.
4230         (fixup_go_packaging): Update.
4231         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4232         use scoped_free_pendings.
4233         (using_directives): Add "cu" parameter, remove "language".
4234         (read_import_statement, setup_type_unit_groups, )
4235         (read_func_scope, read_lexical_block_scope)
4236         (dwarf2_record_block_ranges, read_namespace): Update.
4237         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4238         (lnp_state_machine::handle_end_sequence): Update.
4239         (class lnp_state_machine) <m_cu>: New member.
4240         <m_record_line_callback>: Remove.
4241         <m_currently_recording_lines>: New member.
4242         (lnp_state_machine::handle_set_file): Update.
4243         (noop_record_line): Remove.
4244         (dwarf_record_line_p): Add cu parameter.
4245         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4246         (lnp_state_machine::record_line)
4247         (lnp_state_machine::lnp_state_machine)
4248         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4249         (dwarf_decode_lines): Update.
4250         (dwarf2_start_subfile): Add cu parameter.
4251         (dwarf2_start_symtab, new_symbol): Update.
4252         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4253         Remove dwarf2_per_objfile parameter.
4254         (dwarf_decode_macros): Update.
4255
4256 2018-07-20  Tom Tromey  <tom@tromey.com>
4257
4258         * stabsread.c (define_symbol): Update.
4259         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4260         * dwarf2read.c (new_symbol): Update.
4261         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4262         * cp-namespace.c: Include buildsym.h.
4263         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4264         * buildsym-legacy.c (get_buildsym_compunit): New function.
4265
4266 2018-07-20  Tom Tromey  <tom@tromey.com>
4267
4268         * xcoffread.c: Include buildsym-legacy.h.
4269         * windows-nat.c: Include buildsym-legacy.h.
4270         * stabsread.c: Include buildsym-legacy.h.
4271         * mdebugread.c: Include buildsym-legacy.h.
4272         * buildsym-legacy.h: New file.
4273         * buildsym-legacy.c: New file, from buildsym.c.
4274         * go32-nat.c: Include buildsym-legacy.h.
4275         * dwarf2read.c: Include buildsym-legacy.h.
4276         * dbxread.c: Include buildsym-legacy.h.
4277         * cp-namespace.c: Include buildsym-legacy.h.
4278         * coffread.c: Include buildsym-legacy.h.
4279         * buildsym.h: Move some contents to buildsym-legacy.h.
4280         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4281         buildsym-legacy.c.
4282         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4283
4284 2018-07-20  Tom Tromey  <tom@tromey.com>
4285
4286         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4287         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4288         (buildsym_compunit::buildsym_compunit)
4289         (buildsym_compunit::~buildsym_compunit)
4290         (buildsym_compunit::get_macro_table): Define.
4291
4292 2018-07-20  Tom Tromey  <tom@tromey.com>
4293
4294         * buildsym.c (reset_symtab_globals): Remove.
4295         (buildsym_compunit::end_symtab_from_static_block): Update.
4296         (buildsym_compunit::augment_type_symtab): Update.
4297         (end_symtab_from_static_block): Call free_buildsym_compunit.
4298         (augment_type_symtab, end_symtab, end_expandable_symtab):
4299         Likewise.
4300
4301 2018-07-20  Tom Tromey  <tom@tromey.com>
4302
4303         * arch-utils.c: Do not include buildsym.h.
4304         * mipsread.c: Do not include buildsym.h.
4305         * machoread.c: Do not include buildsym.h.
4306         * elfread.c: Do not include buildsym.h.
4307
4308 2018-07-20  Tom Tromey  <tom@tromey.com>
4309
4310         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4311         initialization.
4312         (buildsym_compunit): Add new constructor.
4313         (struct buildsym_compunit) <get_last_source_file, finish_block,
4314         record_block_range, start_subfile, patch_subfile_names,
4315         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4316         set_last_source_start_addr, get_last_source_start_addr,
4317         get_local_using_directives, set_local_using_directives,
4318         get_global_using_directives, outermost_context_p,
4319         get_current_context_stack, get_context_stack_depth,
4320         get_current_subfile, get_local_symbols, get_file_symbols,
4321         get_global_symbols, record_debugformat, record_producer,
4322         push_context, pop_context, end_symtab_get_static_block,
4323         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4324         New public methods.
4325         <record_pending_block, finish_block_internal, make_blockvector,
4326         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4327         private methods.
4328         Update all users.
4329
4330 2018-05-22  Tom Tromey  <tom@tromey.com>
4331
4332         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4333         parameter.
4334         (finish_block_internal): Update.
4335
4336 2018-07-20  Tom Tromey  <tom@tromey.com>
4337
4338         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4339         parameter.
4340         (finish_block_internal): Update.
4341
4342 2018-07-20  Tom Tromey  <tom@tromey.com>
4343
4344         * buildsym.h (EXTERN): Don't define or undef.
4345         * buildsym.c (EXTERN): Don't define.
4346
4347 2018-07-20  Tom Tromey  <tom@tromey.com>
4348
4349         * buildsym.c: Remove TODO comment.
4350
4351 2018-07-20  Tom Tromey  <tom@tromey.com>
4352
4353         * coffread.c (coff_symtab_read): Update.
4354         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4355         (xcoff_new_init): Update.
4356         * mipsread.c (mipscoff_new_init): Update.
4357         * mdebugread.c (mdebug_build_psymtabs): Update.
4358         * elfread.c (elf_new_init): Update.
4359         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4360         Update.
4361         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4362         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4363         (stabsect_build_psymtabs): Update.
4364         * buildsym.h (buildsym_init): Don't declare.
4365         * buildsym.c: Update comment.
4366         (prepare_for_building): Remove.
4367         (start_symtab, restart_symtab): Update.
4368         (reset_symtab_globals): Update comment.
4369         (buildsym_init): Remove.
4370
4371 2018-07-20  Tom Tromey  <tom@tromey.com>
4372
4373         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4374         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4375         (read_enum_type, common_block_start, common_block_end)
4376         (cleanup_undefined_types_1, finish_global_stabs): Update.
4377         * mdebugread.c (psymtab_to_symtab_1): Update.
4378         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4379         (read_lexical_block_scope, new_symbol): Update.
4380         * dbxread.c (process_one_symbol): Update.
4381         * coffread.c (coff_symtab_read, process_coff_symbol)
4382         (coff_read_enum_type): Update.
4383         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4384         declare.
4385         (get_local_symbols, get_file_symbols, get_global_symbols): New
4386         functions.
4387         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4388         m_global_symbols.
4389         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4390         (~scoped_free_pendings): Update.
4391         (finish_block, prepare_for_building, reset_symtab_globals)
4392         (end_symtab_get_static_block, end_symtab_with_blockvector)
4393         (augment_type_symtab, push_context): Update.
4394         (get_local_symbols, get_file_symbols, get_global_symbols): New
4395         functions.
4396         (buildsym_init): Update.
4397
4398 2018-07-20  Tom Tromey  <tom@tromey.com>
4399
4400         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4401         (process_full_type_unit): Likewise.
4402         (dwarf2_start_symtab): Set list_in_scope.
4403
4404 2018-07-20  Tom Tromey  <tom@tromey.com>
4405
4406         * dwarf2read.c (process_psymtab_comp_unit_reader)
4407         (build_type_psymtabs_reader): Do not set list_in_scope.
4408
4409 2018-07-20  Tom Tromey  <tom@tromey.com>
4410
4411         * buildsym.c (free_pendings): Remove.
4412         (add_symbol_to_list, scoped_free_pendings)
4413         (finish_block_internal, buildsym_init): Update.
4414
4415 2018-07-20  Tom Tromey  <tom@tromey.com>
4416
4417         * xcoffread.c (read_xcoff_symtab): Update.
4418         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4419         Update.
4420         * dbxread.c (process_one_symbol): Update.
4421         * coffread.c (coff_symtab_read): Update.
4422         * buildsym.h (finish_block): Update.
4423         * buildsym.c (finish_block): Remove "listhead" argument.
4424         (end_symtab_get_static_block): Update.
4425
4426 2018-07-20  Tom Tromey  <tom@tromey.com>
4427
4428         * buildsym.h (class scoped_free_pendings): Remove constructor.
4429         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4430         method.
4431         <m_pending_block_obstack, m_pending_blocks>: New members.
4432         (pending_block_obstack, pending_blocks): Remove.
4433         (scoped_free_pendings::scoped_free_pendings): Default.
4434         (~scoped_free_pendings): Update.
4435         (free_pending_blocks): Remove.
4436         (finish_block_internal, record_pending_block, make_blockvector)
4437         (end_symtab_get_static_block, augment_type_symtab, push_context)
4438         (buildsym_init): Update.
4439
4440 2018-07-20  Tom Tromey  <tom@tromey.com>
4441
4442         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4443         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4444         members.
4445         (pending_addrmap, pending_addrmap_obstack)
4446         (pending_addrmap_interesting): Remove.
4447         (scoped_free_pendings, record_block_range, make_blockvector)
4448         (prepare_for_building, reset_symtab_globals, buildsym_init):
4449         Update.
4450
4451 2018-07-20  Tom Tromey  <tom@tromey.com>
4452
4453         * xcoffread.c (process_linenos): Update.
4454         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4455         * mdebugread.c (psymtab_to_symtab_1): Update.
4456         * dwarf2read.c (setup_type_unit_groups)
4457         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4458         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4459         * dbxread.c (process_one_symbol): Update.
4460         * coffread.c (coff_symtab_read, enter_linenos)
4461         (process_coff_symbol): Update.
4462         * buildsym.h (current_subfile): Don't declare.
4463         (get_current_subfile): Declare.
4464         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4465         member.
4466         (start_subfile, free_buildsym_compunit, push_subfile)
4467         (prepare_for_building, start_symtab): Update.
4468         (get_current_subfile): New function.
4469
4470 2018-07-20  Tom Tromey  <tom@tromey.com>
4471
4472         * coffread.c (coff_symtab_read): Update.
4473         * xcoffread.c (read_xcoff_symtab): Update.
4474         * dwarf2read.c (new_symbol): Update.
4475         (read_func_scope, read_lexical_block_scope): Update.
4476         * dbxread.c (process_one_symbol): Update.
4477         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4478         (outermost_context_p): Remove macro.
4479         (outermost_context_p, get_current_context_stack)
4480         (get_context_stack_depth): Declare.
4481         (pop_context): Return struct context_stack.
4482         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4483         member.
4484         (context_stack_size): Remove.
4485         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4486         (prepare_for_building, end_symtab_get_static_block)
4487         (augment_type_symtab, push_context): Update.
4488         (pop_context): Return struct context_stack.
4489         (outermost_context_p, get_current_context_stack)
4490         (get_context_stack_depth): New functions.
4491         (buildsym_init): Update.
4492
4493 2018-07-20  Tom Tromey  <tom@tromey.com>
4494
4495         * rust-exp.y: Now a pure parser.  Update all rules.
4496         (%union): Move earlier.
4497         (current_parser, work_obstack): Remove globals.
4498         (rust_parser, ~rust_parser): Update.
4499         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4500         lex_character, lex_number, lex_string, lex_identifier,
4501         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4502         convert_name, convert_params_to_expression,
4503         convert_ast_to_expression, ast_basic_type, ast_operation,
4504         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4505         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4506         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4507         ast_array_type, ast_slice_type, ast_reference_type,
4508         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4509         (rust_parse): Update.
4510         (rustyyerror, rustyylex): Add parser parameter.
4511         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4512         (rust_lex_stringish_test, rust_lex_test_sequence)
4513         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4514         (rust_lex_test_push_back, rust_lex_tests): Update.
4515
4516 2018-07-19  Pedro Alves  <palves@redhat.com>
4517
4518         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4519         gdb::unique_xmalloc_ptr.
4520         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4521         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4522         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4523         copy-initialization.
4524         * guile/scm-pretty-print.c (ppscm_print_children): Use
4525         gdb::unique_xmalloc_ptr instead of cleanups.
4526         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4527         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4528         gdb::unique_xmalloc_ptr.
4529         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4530         Adjust to use gdb::unique_xmalloc_ptr.
4531         * guile/scm-utils.c (extract_arg): Adjust.
4532         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4533         gdb::unique_xmalloc_ptr instead of a cleanup.
4534
4535 2018-07-19  Tom Tromey  <tom@tromey.com>
4536
4537         * utils.c (do_value_free_to_mark)
4538         (make_cleanup_value_free_to_mark): Remove.
4539         * utils.h (make_cleanup_value_free_to_mark): Remove.
4540
4541 2018-07-19  Pedro Alves  <palves@redhat.com>
4542
4543         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4544         forwarding reference.
4545
4546 2018-07-18  Pedro Alves  <palves@redhat.com>
4547
4548         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4549         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4550         cleanup.
4551
4552 2018-07-18  Pedro Alves  <palves@redhat.com>
4553
4554         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4555         exceptions.
4556         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4557         (gdbscm_wrap): New.
4558         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4559         directly instead of a cleanup.
4560         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4561         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
4562         (vlscm_binop_gdbthrow): New, factored out from ...
4563         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
4564         (vlscm_rich_compare): Use gdbscm_wrap.
4565         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
4566         instead of a cleanup.
4567         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
4568         cleanup.
4569         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4570         Use xfree directly instead of a cleanup.
4571         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
4572         Adjust to use gdbscm_wrap and scoped_value_mark.
4573         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
4574         (gdbscm_value_address, gdbscm_value_dereference)
4575         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
4576         scoped_value_mark.
4577         (gdbscm_value_dynamic_type): Use scoped_value_mark.
4578         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
4579         scoped_value_mark.
4580         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
4581         gdbscm_wrap and scoped_value_mark.
4582         (gdbscm_value_to_string): Use xfree directly instead of a
4583         cleanup.  Move 'buffer' unique_ptr to TRY scope.
4584         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
4585         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
4586         scoped_value_mark.
4587         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
4588         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
4589         scoped_value_mark.
4590         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
4591         gdbscm_wrap.
4592
4593 2018-07-18  Tom de Vries  <tdevries@suse.de>
4594
4595         * findvar.c (default_read_var_value): Also resolve dynamic type for
4596         LOC_OPTIMIZED_OUT vars.
4597
4598 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
4599
4600         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
4601         decoding.
4602
4603 2018-07-17  Tom Tromey  <tom@tromey.com>
4604
4605         * guile/scm-param.c (pascm_set_func, pascm_show_func)
4606         (compute_enum_list, pascm_set_param_value_x)
4607         (gdbscm_parameter_value): Update.
4608         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
4609         (gdbscm_scm_to_host_string): Update.
4610         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
4611         Update.
4612         * guile/scm-cmd.c (cmdscm_add_completion): Update.
4613         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
4614         * guile/scm-string.c (gdbscm_scm_to_string): Return
4615         unique_xmalloc_ptr.
4616         (gdbscm_scm_to_host_string): Likewise.
4617
4618 2018-07-17  Tom Tromey  <tom@tromey.com>
4619
4620         * guile/guile.c (gdbscm_eval_from_control_command): Update.
4621         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
4622         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
4623         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
4624         unique_xmalloc_ptr.
4625
4626 2018-07-17  Tom Tromey  <tom@tromey.com>
4627
4628         * guile/scm-param.c (pascm_signal_setshow_error): Update.
4629         * guile/guile-internal.h (gdbscm_exception_message_to_string):
4630         Update.
4631         * guile/scm-cmd.c (cmdscm_function): Update.
4632         * guile/scm-pretty-print.c
4633         (ppscm_print_exception_unless_memory_error): Update.
4634         * guile/scm-exception.c (gdbscm_exception_message_to_string):
4635         Return unique_xmalloc_ptr.
4636
4637 2018-07-17  Tom Tromey  <tom@tromey.com>
4638
4639         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
4640         Use string_printf.
4641
4642 2018-07-17  Jim Wilson  <jimw@sifive.com>
4643
4644         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
4645         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
4646         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
4647         unecessary braces after EF_RISCV_RVC test.  Delete call to
4648         set_gdbarch_decr_pc_after_break.
4649
4650         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
4651         RISCV_LAST_FP_REGNUM + 1.
4652         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
4653
4654 2018-07-17  Tom Tromey  <tom@tromey.com>
4655
4656         * configure.ac: Remove --disable-gdbcli.
4657         * configure: Rebuild.
4658         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
4659         (SUBDIR_CLI_CFLAGS): Remove.
4660         (SFILES): Use SUBDIR_CLI_SRCS.
4661         (COMMON_OBS): Use SUBDIR_CLI_OBS.
4662
4663 2018-07-17  Tom Tromey  <tom@tromey.com>
4664
4665         PR gdb/18624:
4666         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
4667
4668 2018-07-16  Jim Wilson  <jimw@sifive.com>
4669
4670         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
4671
4672 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4673
4674         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
4675         variable.
4676         (libunwind_frame_sniffer): Likewise.
4677         (libunwind_frame_prev_register): Likewise.
4678         (libunwind_sigtramp_frame_sniffer): Likewise.
4679         * ia64-tdep.c (ia64_access_reg): Likewise.
4680         (ia64_access_rse_reg): Likewise.
4681         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
4682         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
4683
4684 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4685
4686         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
4687
4688 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4689
4690         * remote-sim.c (gdbsim_target::close,
4691         gdbsim_target::mourn_inferior): Remove unused variables.
4692
4693 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
4694
4695         * ia64-tdep.c (ktab_buf): New global.
4696         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
4697         (get_kernel_table): Adjust.
4698
4699 2018-07-16  Tom Tromey  <tom@tromey.com>
4700
4701         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
4702         * dwarf2read.c (using_directives, new_symbol): Use
4703         outermost_context_p.
4704         * dbxread.c (process_one_symbol): Use outermost_context_p.
4705         * coffread.c (coff_symtab_read): Use outermost_context_p.
4706
4707 2018-07-16  Tom Tromey  <tom@tromey.com>
4708
4709         * dwarf2read.c (using_directives, read_func_scope)
4710         (read_lexical_block_scope): Update.
4711         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
4712         * buildsym.h (local_using_directives, global_using_directives):
4713         Don't declare.
4714         (get_local_using_directives, set_local_using_directives)
4715         (get_global_using_directives): Declare.
4716         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
4717         m_global_using_directives>: New members.
4718         (finish_block_internal, prepare_for_building)
4719         (reset_symtab_globals, end_symtab_get_static_block)
4720         (push_context): Update.
4721         (get_local_using_directives, set_local_using_directives)
4722         (get_global_using_directives): New functions.
4723         (buildsym_init): Update.
4724
4725 2018-07-16  Tom Tromey  <tom@tromey.com>
4726
4727         * xcoffread.c (xcoff_initial_scan): Don't call
4728         free_pending_blocks.
4729         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
4730         * buildsym.h (class scoped_free_pendings): Add constructor.
4731         (free_pending_blocks): Don't declare.
4732         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
4733         (free_pending_blocks): Now static.
4734
4735 2018-07-16  Tom Tromey  <tom@tromey.com>
4736
4737         * buildsym.h (push_subfile, pop_subfile): Update declarations.
4738         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
4739         member.
4740         (struct subfile_stack): Remove.
4741         (subfile_stack): Remove.
4742         (push_subfile, pop_subfile, buildsym_init): Update.
4743
4744 2018-07-16  Tom Tromey  <tom@tromey.com>
4745
4746         * buildsym.c (push_subfile): Use gdb_assert.
4747         (pop_subfile): Use gdb_assert.
4748
4749 2018-07-16  Tom Tromey  <tom@tromey.com>
4750
4751         * buildsym.h (merge_symbol_lists): Remove.
4752         * buildsym.c (merge_symbol_lists): Remove.
4753
4754 2018-07-16  Tom Tromey  <tom@tromey.com>
4755
4756         * stabsread.c (scan_file_globals): Update comment.
4757         * stabsread.h (scan_file_globals): Move from buildsym.h.
4758         * buildsym.h (scan_file_globals): Move to stabsread.h.
4759
4760 2018-07-16  Tom Tromey  <tom@tromey.com>
4761
4762         * xcoffread.c (xcoff_new_init): Update.
4763         * mipsread.c (mipscoff_new_init): Update.
4764         * mdebugread.c (mdebug_build_psymtabs): Update.
4765         * elfread.c (elf_new_init): Update.
4766         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
4767         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
4768         * buildsym.h (buildsym_new_init): Don't declare.
4769         * buildsym.c (buildsym_new_init): Remove.
4770
4771 2018-07-16  Tom Tromey  <tom@tromey.com>
4772
4773         * stabsread.h (within_function): Move from buildsym.h.
4774         * stabsread.c (start_stabs): Clear within_function.
4775         * coffread.c (coff_start_symtab): Clear within_function.
4776         * buildsym.h (within_function): Move to stabsread.h.
4777         * buildsym.c (prepare_for_building): Update.
4778
4779 2018-07-16  Tom Tromey  <tom@tromey.com>
4780
4781         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
4782         * dwarf2read.c (dwarf2_start_symtab): Don't set
4783         processing_gcc_compilation.
4784         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
4785
4786 2018-07-16  Tom Tromey  <tom@tromey.com>
4787
4788         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
4789         (next_symbol_text_func): Move from buildsym.h.
4790         * stabsread.c (hashname): Move from buildsym.c.
4791         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
4792         (next_symbol_text_func, hashname): Move to stabsread.h.
4793         * buildsym.c: Don't include bcache.h
4794         (hashname): Move to stasbread.c.
4795
4796 2018-07-16  Tom Tromey  <tom@tromey.com>
4797
4798         * buildsym.h (context_stack_size): Don't declare.
4799         * buildsym.c (context_stack_size): New global.
4800
4801 2018-07-16  Tom Tromey  <tom@tromey.com>
4802
4803         * dbxread.c (processing_acc_compilation): New global.
4804         * buildsym.h (processing_acc_compilation): Don't declare.
4805
4806 2018-07-16  Tom Tromey  <tom@tromey.com>
4807
4808         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
4809         * dbxread.c (read_ofile_symtab): Update.
4810         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
4811         * buildsym.h (last_source_start_addr): Remove.
4812         (set_last_source_start_addr, get_last_source_start_addr):
4813         Declare.
4814         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
4815         parameter.
4816         (struct buildsym_compunit) <m_last_source_start_addr>: New
4817         member.
4818         (prepare_for_building): Remove start_addr parameter.
4819         (start_symtab, restart_symtab, end_symtab_get_static_block)
4820         (end_symtab_with_blockvector): Update.
4821         (set_last_source_start_addr, get_last_source_start_addr): New
4822         functions.
4823
4824 2018-07-16  Tom Tromey  <tom@tromey.com>
4825
4826         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
4827         member.
4828         (have_line_numbers): Remove.
4829         (record_line, prepare_for_building, end_symtab_get_static_block)
4830         (augment_type_symtab): Update.
4831
4832 2018-07-16  Tom Tromey  <tom@tromey.com>
4833
4834         * buildsym.c (~buildsym_compunit): Free the macro table.
4835         (struct buildsym_compunit) <get_macro_table, release_macros>: New
4836         methods.
4837         <m_pending_macros>: New member.
4838         (pending_macros): Remove.
4839         (~scoped_free_pendings, get_macro_table, prepare_for_building)
4840         (reset_symtab_globals, end_symtab_get_static_block)
4841         (end_symtab_with_blockvector, augment_type_symtab)
4842         (buildsym_init): Update.
4843
4844 2018-07-16  Tom Tromey  <tom@tromey.com>
4845
4846         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
4847         parameter.
4848         (buildsym_compunit::set_last_source_file): New method.
4849         <m_last_source_file>: New member.
4850         (prepare_for_building): Remove "name" parameter.
4851         (start_symtab, restart_symtab, reset_symtab_globals): Update.
4852         (last_source_file): Remove.
4853         (set_last_source_file, get_last_source_file): Update.
4854
4855 2018-07-16  Tom Tromey  <tom@tromey.com>
4856
4857         * buildsym.c (prepare_for_building): Add assert.
4858
4859 2018-07-16  Tom Tromey  <tom@tromey.com>
4860
4861         * buildsym.c (~buildsym_compunit): Update.
4862         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
4863         (start_subfile, patch_subfile_names)
4864         (end_symtab_with_blockvector): Update.
4865
4866 2018-07-16  Tom Tromey  <tom@tromey.com>
4867
4868         * buildsym.c (struct buildsym_compunit): Add constructor,
4869         destructor, initializers.
4870         (start_buildsym_compunit): Remove.
4871         (free_buildsym_compunit): Use "delete".
4872         (start_symtab, restart_symtab): Use "new".
4873
4874 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
4875
4876         * symfile.c (set_objfile_default_section_offset): Remove struct
4877         keyword.
4878
4879 2018-07-14  Stafford Horne  <shorne@gmail.com>
4880
4881         * (Responsible Maintainers): Add myself as or1k maintainer.
4882
4883 2018-07-13  Tom Tromey  <tom@tromey.com>
4884
4885         * symfile.c (set_objfile_default_section_offset): Use extra braces
4886         around initializer.
4887
4888 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
4889
4890         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
4891         non-branching basr.
4892
4893 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4894
4895         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4896         unittests/cli-utils-selftests.c
4897         * unittests/cli-utils-selftests.c: New file.
4898
4899 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4900
4901         * NEWS: Mention new commands. Mention change to 'thread apply'.
4902
4903 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4904
4905         * thread.c (thr_try_catch_cmd): New function.
4906         (thread_apply_all_command): Handle qcs flags.
4907         (thread_apply_command): Handle qcs flags.
4908         (taas_command): New function.
4909         (tfaas_command): New function.
4910         (_initialize_thread): Update to setup the new commands 'taas
4911         and 'tfaas'. Change doc string for 'thread apply'.
4912
4913 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4914
4915         * stack.c: (trailing_outermost_frame): New function, mostly
4916         extracted from backtrace_command_1.
4917         (leading_innermost_frame): New function.
4918         (backtrace_command_1): Update to call trailing_outermost_frame.
4919         (frame_apply_command_count): New function.
4920         (frame_apply_level_command): New function.
4921         (frame_apply_all_command): New function.
4922         (frame_apply_command): New function.
4923         (faas_command): New function.
4924         (frame_cmd_list): New variable.
4925         (_initialize_stack): Update to setup the new commands 'frame apply'
4926         and 'faas'.
4927
4928 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4929
4930         * cli-utils.c (number_or_range_parser::get_number): Only handle
4931         numbers or convenience var as numbers.
4932         (parse_flags): New function.
4933         (parse_flags_qcs): New function.
4934         (number_or_range_parser::finished): Ensure parsing end is detected
4935         before end of string.
4936         * cli-utils.h (parse_flags): New function.
4937         (parse_flags_qcs): New function.
4938         (number_or_range_parser): Remove m_finished bool.
4939         (number_or_range_parser::skip_range): Set m_in_range to false.
4940
4941 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
4942
4943         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
4944         on Windows.
4945
4946 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4947             Jan Kratochvil  <jan.kratochvil@redhat.com>
4948             Paul Fertser  <fercerpav@gmail.com>
4949             Tsutomu Seki  <sekiriki@gmail.com>
4950             Pedro Alves  <palves@redhat.com>
4951
4952         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4953         'unittests/parse-connection-spec-selftests.c'.
4954         (COMMON_SFILES): Add 'common/netstuff.c'.
4955         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
4956         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
4957         * common/netstuff.c: New file.
4958         * common/netstuff.h: New file.
4959         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
4960         (wait_for_connect): Update comment.  New parameter
4961         'gdb::optional<int> sock' instead of 'struct serial *scb'.
4962         Use 'sock' directly instead of 'scb->fd'.
4963         (try_connect): New function, with code from 'net_open'.
4964         (net_open): Rewrite main loop to deal with multiple
4965         sockets/addresses.  Handle IPv6-style hostnames; implement
4966         support for IPv6 connections.
4967         * unittests/parse-connection-spec-selftests.c: New file.
4968
4969 2018-07-11  Pedro Alves  <palves@redhat.com>
4970
4971         PR gdb/23377
4972         * remote.c (remote_target::remote_detach_pid): Call
4973         set_current_process.
4974
4975 2018-07-11  Pedro Alves  <palves@redhat.com>
4976
4977         * h8300-tdep.c (h8300_gdbarch_init): Remove
4978         set_gdbarch_ecoff_reg_to_regnum calls.
4979
4980 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4981
4982         PR c++/23373
4983         * c-typeprint.c (c_type_print_base_struct_union): Don't print
4984         offsets/sizes for static members of a class/struct.
4985
4986 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
4987
4988         * target-descriptions.c (tdesc_register_bitsize): Rename.
4989         * target-descriptions.h (tdesc_register_bitsize): Likewise.
4990         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
4991         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
4992
4993 2018-07-10  Tom Tromey  <tom@tromey.com>
4994
4995         * breakpoint.c (moribund_locations): Now static and a
4996         std::vector.
4997         (breakpoint_init_inferior, moribund_breakpoint_here_p)
4998         (build_bpstat_chain, update_global_location_list)
4999         (breakpoint_retire_moribund): Update.
5000         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5001         VEC.
5002
5003 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5004
5005         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5006         (riscv_register_reggroup_p): Use new function, remove unneeded
5007         parenthesis.
5008         (riscv_push_dummy_call): Extend assert to compare against xlen or
5009         flen based on register type.
5010
5011 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5012
5013         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5014
5015 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5016
5017         * remote.c (show_hardware_watchpoint_limit): New function.
5018         (show_hardware_watchpoint_length_limit): New function.
5019         (show_hardware_breakpoint_limit): New function.
5020         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5021         where appropriate, update help text.
5022
5023 2018-07-09  Tom Tromey  <tom@tromey.com>
5024
5025         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5026         (CLIBS): Don't mention NAT_CLIBS.
5027
5028 2018-07-09  Tom Tromey  <tom@tromey.com>
5029
5030         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5031         (LIBGDB_OBS, clean mostlyclean): Update.
5032         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5033
5034 2018-07-09  Tom Tromey  <tom@tromey.com>
5035
5036         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5037         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5038         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5039
5040 2018-07-09  Tom Tromey  <tom@tromey.com>
5041
5042         * Makefile.in (ALLDEPFILES): Remove exec.c.
5043         (COMMON_OBS): Remove exec.o.
5044         (COMMON_SFILES): Add exec.c.
5045
5046 2018-07-09  Tom Tromey  <tom@tromey.com>
5047
5048         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5049
5050 2018-07-09  Tom Tromey  <tom@tromey.com>
5051
5052         * Makefile.in (clean mostlyclean): Remove stamp-version.
5053         (version.c): Depend on stamp-version.
5054         (stamp-version): New rule, from version.c rule.
5055
5056 2018-07-09  Tom Tromey  <tom@tromey.com>
5057
5058         * Makefile.in (init.c): Depend on stamp-init.
5059         (stamp-init): New rule, from init.c rule.
5060         (clean mostlyclean): Remove stamp-init.
5061
5062 2018-07-09  Tom Tromey  <tom@tromey.com>
5063
5064         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5065         SUBDIR_GCC_COMPILE_SRCS.
5066
5067 2018-07-09  Tom Tromey  <tom@tromey.com>
5068
5069         * Makefile.in (init.c): Remove some unused sed rules.
5070
5071 2018-07-09  Tom Tromey  <tom@tromey.com>
5072
5073         * Makefile.in (TSOBS): Remove.
5074         (INIT_FILES): Update.
5075         (LIBGDB_OBS): Update.
5076         (COMMON_SFILES): Add inflow.c.
5077         (SFILES): Remove inflow.c.
5078
5079 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5080
5081         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5082
5083 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5084
5085         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5086         get_saveloc_name, is_signal_frame_name, step_name,
5087         init_remote_name, create_addr_space_name,
5088         destroy_addr_space_name, search_unwind_table_name,
5089         find_dyn_list_name): Constify.
5090
5091 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5092
5093         * darwin-nat.c (darwin_pthread_kill): New function.
5094         (darwin_resume_thread): Use darwin_pthread_kill.
5095
5096 2018-07-05  Tom de Vries  <tdevries@suse.de>
5097
5098         * macroexp.c (macro_buffer) <operator=>: New member function.
5099
5100 2018-07-04  Tom Tromey  <tom@tromey.com>
5101
5102         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5103
5104 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5105
5106         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5107         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5108         * maint.c: Likewise.
5109         * top.c: Likewise.
5110
5111 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5112
5113         * NEWS: Create a new section for the next release branch.
5114         Rename the section of the current branch, now that it has
5115         been cut.
5116
5117 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5118
5119         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5120         * version.in: Bump version to 8.2.50.DATE-git.
5121
5122 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5123             Pedro Alves  <palves@redhat.com>
5124
5125         * linux-nat.c (linux_init_ptrace): Rename to ...
5126         (linux_init_ptrace_procfs): ... this.  Call
5127         linux_proc_init_warnings.
5128         (linux_nat_target::post_attach)
5129         (linux_nat_target::post_startup_inferior): Adjust.
5130         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5131         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5132
5133 2018-07-04  Tom de Vries  <tdevries@suse.de>
5134
5135         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5136         check ...
5137         (read_comp_unit_head): ... here.
5138
5139 2018-07-03  Tom Tromey  <tom@tromey.com>
5140
5141         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5142         (stop_tracing, tstatus_command)
5143         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5144         (print_one_static_tracepoint_marker): Update.
5145         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5146         std::vector.
5147         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5148         VEC.
5149         (all_tracepoints, static_tracepoints_here): Return std::vector.
5150
5151 2018-07-03  Tom Tromey  <tom@tromey.com>
5152
5153         * common/ptid.c (ptid_equal): Remove.
5154         * common/ptid.h (ptid_equal): Don't declare.
5155         * ada-tasks.c: Update.
5156         * breakpoint.c: Update.
5157         * common/agent.c: Update.
5158         * corelow.c: Update.
5159         * darwin-nat-info.c: Update.
5160         * darwin-nat.c: Update.
5161         * dcache.c: Update.
5162         * dtrace-probe.c: Update.
5163         * dummy-frame.c: Update.
5164         * fbsd-nat.c: Update.
5165         * frame.c: Update.
5166         * gdbthread.h: Update.
5167         * gnu-nat.c: Update.
5168         * go32-nat.c: Update.
5169         * inf-loop.c: Update.
5170         * inf-ptrace.c: Update.
5171         * infcall.c: Update.
5172         * infcmd.c: Update.
5173         * inflow.c: Update.
5174         * infrun.c: Update.
5175         * linux-fork.c: Update.
5176         * linux-nat.c: Update.
5177         * linux-thread-db.c: Update.
5178         * mi/mi-cmd-var.c: Update.
5179         * mi/mi-interp.c: Update.
5180         * mi/mi-main.c: Update.
5181         * nto-procfs.c: Update.
5182         * ppc-linux-tdep.c: Update.
5183         * procfs.c: Update.
5184         * python/py-inferior.c: Update.
5185         * python/py-record-btrace.c: Update.
5186         * python/py-record.c: Update.
5187         * ravenscar-thread.c: Update.
5188         * regcache.c: Update.
5189         * remote-sim.c: Update.
5190         * remote.c: Update.
5191         * sol-thread.c: Update.
5192         * solib.c: Update.
5193         * target.c: Update.
5194         * tui/tui-stack.c: Update.
5195         * varobj.c: Update.
5196         * windows-nat.c: Update.
5197         * windows-tdep.c: Update.
5198
5199 2018-07-03  Tom Tromey  <tom@tromey.com>
5200
5201         * common/ptid.c (ptid_match): Remove.
5202         * common/ptid.h (ptid_match): Don't declare.
5203         * fbsd-nat.c: Update.
5204         * infcmd.c: Update.
5205         * infrun.c: Update.
5206         * linux-nat.c: Update.
5207         * record-btrace.c: Update.
5208         * regcache.c: Update.
5209         * remote.c: Update.
5210
5211 2018-07-03  Tom Tromey  <tom@tromey.com>
5212
5213         * common/ptid.c (ptid_tid_p): Remove.
5214         * common/ptid.h (ptid_tid_p): Don't declare.
5215         * sol-thread.c: Update.
5216
5217 2018-07-03  Tom Tromey  <tom@tromey.com>
5218
5219         * common/ptid.c (ptid_lwp_p): Remove.
5220         * common/ptid.h (ptid_lwp_p): Don't declare.
5221         * fbsd-nat.c: Update.
5222         * linux-nat.c: Update.
5223         * nat/linux-procfs.c: Update.
5224         * nat/x86-linux-dregs.c: Update.
5225         * sol-thread.c: Update.
5226
5227 2018-07-03  Tom Tromey  <tom@tromey.com>
5228
5229         * common/ptid.c (ptid_is_pid): Remove.
5230         * common/ptid.h (ptid_is_pid): Don't declare.
5231         * infrun.c: Update.
5232         * linux-nat.c: Update.
5233         * mi/mi-interp.c: Update.
5234         * remote.c: Update.
5235         * thread.c: Update.
5236
5237 2018-07-03  Tom Tromey  <tom@tromey.com>
5238
5239         * common/ptid.c (ptid_get_tid): Remove.
5240         * common/ptid.h (ptid_get_tid): Don't declare.
5241         * ada-tasks.c: Update.
5242         * aix-thread.c: Update.
5243         * bsd-uthread.c: Update.
5244         * darwin-nat.c: Update.
5245         * fbsd-nat.c: Update.
5246         * i386-darwin-nat.c: Update.
5247         * infrun.c: Update.
5248         * linux-tdep.c: Update.
5249         * nto-procfs.c: Update.
5250         * ppc-ravenscar-thread.c: Update.
5251         * python/py-infthread.c: Update.
5252         * ravenscar-thread.c: Update.
5253         * sol-thread.c: Update.
5254         * sparc-ravenscar-thread.c: Update.
5255         * windows-nat.c: Update.
5256
5257 2018-07-03  Tom Tromey  <tom@tromey.com>
5258
5259         * common/ptid.c (ptid_get_lwp): Remove.
5260         * common/ptid.h (ptid_get_lwp): Don't declare.
5261         * aarch64-linux-nat.c: Update.
5262         * ada-tasks.c: Update.
5263         * aix-thread.c: Update.
5264         * amd64-linux-nat.c: Update.
5265         * arm-linux-nat.c: Update.
5266         * corelow.c: Update.
5267         * fbsd-nat.c: Update.
5268         * fbsd-tdep.c: Update.
5269         * gnu-nat.c: Update.
5270         * i386-cygwin-tdep.c: Update.
5271         * i386-gnu-nat.c: Update.
5272         * i386-linux-nat.c: Update.
5273         * ia64-linux-nat.c: Update.
5274         * inf-ptrace.c: Update.
5275         * infrun.c: Update.
5276         * linux-fork.c: Update.
5277         * linux-nat.c: Update.
5278         * linux-tdep.c: Update.
5279         * linux-thread-db.c: Update.
5280         * mips-linux-nat.c: Update.
5281         * nat/aarch64-linux-hw-point.c: Update.
5282         * nat/aarch64-linux.c: Update.
5283         * nat/linux-btrace.c: Update.
5284         * nat/linux-osdata.c: Update.
5285         * nat/linux-procfs.c: Update.
5286         * nat/x86-linux-dregs.c: Update.
5287         * obsd-nat.c: Update.
5288         * ppc-fbsd-nat.c: Update.
5289         * ppc-linux-nat.c: Update.
5290         * procfs.c: Update.
5291         * python/py-infthread.c: Update.
5292         * ravenscar-thread.c: Update.
5293         * remote.c: Update.
5294         * s390-linux-nat.c: Update.
5295         * sol-thread.c: Update.
5296         * sol2-tdep.c: Update.
5297         * spu-linux-nat.c: Update.
5298         * x86-linux-nat.c: Update.
5299         * xtensa-linux-nat.c: Update.
5300
5301 2018-07-03  Tom Tromey  <tom@tromey.com>
5302
5303         * common/ptid.c (ptid_get_pid): Remove.
5304         * common/ptid.h (ptid_get_pid): Don't declare.
5305         * aarch64-linux-nat.c: Update.
5306         * ada-lang.c: Update.
5307         * aix-thread.c: Update.
5308         * alpha-bsd-nat.c: Update.
5309         * amd64-fbsd-nat.c: Update.
5310         * amd64-linux-nat.c: Update.
5311         * arm-linux-nat.c: Update.
5312         * arm-nbsd-nat.c: Update.
5313         * auxv.c: Update.
5314         * break-catch-syscall.c: Update.
5315         * breakpoint.c: Update.
5316         * bsd-uthread.c: Update.
5317         * corelow.c: Update.
5318         * ctf.c: Update.
5319         * darwin-nat.c: Update.
5320         * fbsd-nat.c: Update.
5321         * fbsd-tdep.c: Update.
5322         * gcore.c: Update.
5323         * gnu-nat.c: Update.
5324         * hppa-nbsd-nat.c: Update.
5325         * hppa-obsd-nat.c: Update.
5326         * i386-fbsd-nat.c: Update.
5327         * ia64-linux-nat.c: Update.
5328         * inf-ptrace.c: Update.
5329         * infcmd.c: Update.
5330         * inferior.c: Update.
5331         * inferior.h: Update.
5332         * inflow.c: Update.
5333         * infrun.c: Update.
5334         * linux-fork.c: Update.
5335         * linux-nat.c: Update.
5336         * linux-tdep.c: Update.
5337         * linux-thread-db.c: Update.
5338         * m68k-bsd-nat.c: Update.
5339         * mi/mi-interp.c: Update.
5340         * mi/mi-main.c: Update.
5341         * mips-linux-nat.c: Update.
5342         * mips-nbsd-nat.c: Update.
5343         * mips64-obsd-nat.c: Update.
5344         * nat/aarch64-linux-hw-point.c: Update.
5345         * nat/aarch64-linux.c: Update.
5346         * nat/linux-btrace.c: Update.
5347         * nat/linux-osdata.c: Update.
5348         * nat/linux-procfs.c: Update.
5349         * nat/x86-linux-dregs.c: Update.
5350         * nto-procfs.c: Update.
5351         * obsd-nat.c: Update.
5352         * ppc-linux-nat.c: Update.
5353         * ppc-nbsd-nat.c: Update.
5354         * ppc-obsd-nat.c: Update.
5355         * proc-service.c: Update.
5356         * procfs.c: Update.
5357         * python/py-inferior.c: Update.
5358         * python/py-infthread.c: Update.
5359         * ravenscar-thread.c: Update.
5360         * record.c: Update.
5361         * remote-sim.c: Update.
5362         * remote.c: Update.
5363         * rs6000-nat.c: Update.
5364         * s390-linux-nat.c: Update.
5365         * sh-nbsd-nat.c: Update.
5366         * sol-thread.c: Update.
5367         * sparc-nat.c: Update.
5368         * sparc64-tdep.c: Update.
5369         * spu-linux-nat.c: Update.
5370         * spu-tdep.c: Update.
5371         * target-debug.h: Update.
5372         * target.c: Update.
5373         * thread.c: Update.
5374         * tid-parse.c: Update.
5375         * tracefile-tfile.c: Update.
5376         * vax-bsd-nat.c: Update.
5377         * windows-nat.c: Update.
5378         * x86-linux-nat.c: Update.
5379         * x86-nat.c: Update.
5380
5381 2018-07-03  Tom Tromey  <tom@tromey.com>
5382
5383         * common/ptid.c (pid_to_ptid): Remove.
5384         * common/ptid.h (pid_to_ptid): Don't declare.
5385         * aix-thread.c: Update.
5386         * arm-linux-nat.c: Update.
5387         * common/ptid.c: Update.
5388         * common/ptid.h: Update.
5389         * corelow.c: Update.
5390         * ctf.c: Update.
5391         * darwin-nat.c: Update.
5392         * fbsd-nat.c: Update.
5393         * fork-child.c: Update.
5394         * gnu-nat.c: Update.
5395         * go32-nat.c: Update.
5396         * inf-ptrace.c: Update.
5397         * infcmd.c: Update.
5398         * inferior.c: Update.
5399         * infrun.c: Update.
5400         * linux-fork.c: Update.
5401         * linux-nat.c: Update.
5402         * nat/aarch64-linux-hw-point.c: Update.
5403         * nat/fork-inferior.c: Update.
5404         * nat/x86-linux-dregs.c: Update.
5405         * nto-procfs.c: Update.
5406         * obsd-nat.c: Update.
5407         * procfs.c: Update.
5408         * progspace.c: Update.
5409         * remote.c: Update.
5410         * rs6000-nat.c: Update.
5411         * s390-linux-nat.c: Update.
5412         * sol-thread.c: Update.
5413         * spu-linux-nat.c: Update.
5414         * target.c: Update.
5415         * top.c: Update.
5416         * tracefile-tfile.c: Update.
5417         * windows-nat.c: Update.
5418
5419 2018-07-03  Tom Tromey  <tom@tromey.com>
5420
5421         * common/ptid.h (ptid_build): Don't declare.
5422         * common/ptid.c (ptid_build): Remove.
5423         * aix-thread.c: Update.
5424         * bsd-kvm.c: Update.
5425         * bsd-uthread.c: Update.
5426         * common/agent.c: Update.
5427         * common/ptid.c: Update.
5428         * common/ptid.h: Update.
5429         * corelow.c: Update.
5430         * darwin-nat.c: Update.
5431         * fbsd-nat.c: Update.
5432         * gnu-nat.c: Update.
5433         * linux-fork.c: Update.
5434         * linux-nat.c: Update.
5435         * linux-thread-db.c: Update.
5436         * nat/linux-osdata.c: Update.
5437         * nat/linux-procfs.c: Update.
5438         * nto-procfs.c: Update.
5439         * obsd-nat.c: Update.
5440         * proc-service.c: Update.
5441         * procfs.c: Update.
5442         * ravenscar-thread.c: Update.
5443         * remote-sim.c: Update.
5444         * remote.c: Update.
5445         * sol-thread.c: Update.
5446         * target.c: Update.
5447         * windows-nat.c: Update.
5448
5449 2018-07-03  Tom Tromey  <tom@tromey.com>
5450
5451         * infrun.c (follow_exec): Use exit_inferior_silent.
5452         * inferior.c (exit_inferior_num_silent): Remove.
5453         * inferior.h (exit_inferior_num_silent): Don't declare.
5454
5455 2018-07-03  Tom Tromey  <tom@tromey.com>
5456
5457         PR cli/23340:
5458         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5459         inferior_ptid on error.
5460
5461 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5462             Simon Marchi  <simon.marchi@polymtl.ca>
5463
5464         PR tdep/8282
5465         * disasm.h (gdb_disassembler): Add
5466         `m_disassembler_options_holder'. member
5467         * disasm.c (get_all_disassembler_options): New function.
5468         (gdb_disassembler::gdb_disassembler): Use it.
5469         (gdb_buffered_insn_length_init_dis): Likewise.
5470         (gdb_buffered_insn_length): Adjust accordingly.
5471         (set_disassembler_options): Handle options with arguments.
5472         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5473         line if showing options with descriptions.
5474         (disassembler_options_completer): Adapt to using the
5475         `disasm_options_and_args_t' structure.
5476         * mips-tdep.c (mips_disassembler_options): New variable.
5477         (mips_disassembler_options_o32): Likewise.
5478         (mips_disassembler_options_n32): Likewise.
5479         (mips_disassembler_options_n64): Likewise.
5480         (gdb_print_insn_mips): Don't set `disassembler_options'.
5481         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5482         functions.
5483         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5484         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5485         `gdbarch_disassembler_options_implicit' and
5486         `gdbarch_valid_disassembler_options'.
5487         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5488         `disasm_options_and_args_t' structure.
5489         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5490         method.
5491         (valid_disassembler_options): Switch from `disasm_options_t' to
5492         the `disasm_options_and_args_t' structure.
5493         * NEWS: Document `set disassembler-options' support for the MIPS
5494         target.
5495         * gdbarch.h: Regenerate.
5496         * gdbarch.c: Regenerate.
5497
5498 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5499
5500         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5501
5502 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5503
5504         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5505         parameter in call to amd64_target_description.
5506         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5507         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5508         (amd64fbsd_init_abi): Likewise.
5509         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5510         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5511         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5512         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5513
5514 2018-06-29  Pedro Alves  <palves@redhat.com>
5515
5516         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5517         "segments" parameter.
5518         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5519         (_initialize_amd64_tdep): Update call to
5520         amd64_create_target_description.
5521         (amd64_target_description): Add "segments" parameter.  Adjust
5522         the implementation to use it.
5523         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5524         call to amd64_create_target_description.
5525         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5526         * gdb/arch/amd64.h (amd64_create_target_description): Add
5527         "segments" register.
5528         * gdb/arch/amd64.c (amd64_create_target_description): Add
5529         "segments" parameter.  Call create_feature_i386_64bit_segments
5530         only if SEGMENTS is true.
5531         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5532         call to amd64_create_target_description.
5533
5534 2018-06-29  Pedro Alves  <palves@redhat.com>
5535
5536         * thread.c (thread_target_id_str): New, factored out from ...
5537         (print_thread_info_1): ... here.  Use it to compute the max
5538         "Target Id" column width.
5539
5540 2018-06-29  Pedro Alves  <palves@redhat.com>
5541
5542         * remote.c (remote_target::extra_thread_info): Delete
5543         'display_buf' and 'n' locals.  from the cache, regardless of
5544         packet mechanims is in use.  Use cache for qThreadExtra and qP
5545         methods too.
5546
5547 2018-06-29  Pedro Alves  <palves@redhat.com>
5548
5549         * blockframe.c (find_pc_sect_containing_function): New function.
5550         * breakpoint.c (print_breakpoint_location): Don't call
5551         find_pc_sect_function.
5552         * linespec.c (create_sals_line_offset): Record the location's
5553         symbol in the sal.
5554         * linespec.c (convert_address_location_to_sals): Fill in sal's
5555         symbol with find_pc_sect_containing_function.
5556         * symtab.c (find_function_start_sal): Rename to ...
5557         (find_function_start_sal_1): ... this.
5558         (find_function_start_sal): Reimplement as wrapper around
5559         find_function_start_sal_1, and use
5560         find_pc_sect_containing_function to fill in the sal's symbol.
5561         (find_function_start_sal(symbol*, bool)): Adjust.
5562         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
5563         comments.
5564         (find_pc_sect_containing_function): Declare.
5565
5566 2018-06-29  Pedro Alves  <palves@redhat.com>
5567
5568         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
5569         true if the the location has no symbol.
5570
5571 2018-06-28  Tom Tromey  <tom@tromey.com>
5572
5573         * NEWS: Mention --enable-codesign.
5574         * silent-rules.mk (ECHO_SIGN): New variable.
5575         * configure.ac: Add --enable-codesign.
5576         * configure: Rebuild.
5577         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
5578         (gdb$(EXEEXT)): Optionally invoke codesign.
5579
5580 2018-06-28  Pedro Alves  <palves@redhat.com>
5581
5582         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
5583         comments.
5584         (switch_to_thread_no_regs): Adjust comment.
5585         * infcmd.c (stop_pc): Delete.
5586         (post_create_inferior, info_program_command): Replace references
5587         to stop_pc with references to thread_info->suspend.stop_pc.
5588         * inferior.h (stop_pc): Delete declaration.
5589         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
5590         (handle_inferior_event_1, handle_signal_stop)
5591         (process_event_stop_test, keep_going_stepped_thread)
5592         (handle_step_into_function, handle_step_into_function_backward)
5593         (print_stop_location): Replace references to stop_pc with
5594         references to thread_info->suspend.stop_pc.
5595         (struct infcall_suspend_state) <stop_pc>: Delete field.
5596         (save_infcall_suspend_state, restore_infcall_suspend_state):
5597         Remove references to inf_stat->stop_pc.
5598         * linux-fork.c (fork_load_infrun_state): Likewise.
5599         * record-btrace.c (record_btrace_set_replay): Likewise.
5600         * record-full.c (record_full_goto_entry): Likewise.
5601         * remote.c (print_one_stopped_thread): Likewise.
5602         * target.c (target_resume): Extend comment.
5603         * thread.c (set_executing_thread): New.
5604         (set_executing): Use it.
5605         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
5606         Remove references to stop_pc.
5607
5608 2018-06-28  Pedro Alves  <palves@redhat.com>
5609
5610         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
5611         Moving fetching stop_pc until after ecs->event_thread is refreshed.
5612
5613 2018-06-28  Tom Tromey  <tom@tromey.com>
5614
5615         * coffread.c (coff_symfile_finish): Update.
5616         * xcoffread.c (xcoff_symfile_finish): Update.
5617         * elfread.c (elf_symfile_finish): Update.
5618         * symfile.h (dwarf2_free_objfile): Don't declare.
5619         * dwarf2read.c (_initialize_dwarf2_read): Use
5620         register_objfile_data_with_cleanup.
5621         (dwarf2_free_objfile): Now static.  Change signature.
5622
5623 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5624
5625         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
5626         option "-o" to add-symbol-file-load to add an offset to each
5627         section's load address.
5628         * symfile.c (set_objfile_default_section_offset): New function.
5629
5630 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5631
5632         * symfile.c (add_symbol_file_command): Make sure that sections
5633         with the same name are sorted in the same order.
5634
5635 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5636
5637         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
5638         require the second argument.  If omitted, load sections at the
5639         addresses specified in the file.
5640
5641 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5642
5643         * symfile.c (symbol_file_command, symbol_file_add_main_1)
5644         (_initialize_symfile): Add option "-o" to symbol-file to add an
5645         offset to each section of the symbol file.
5646
5647 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5648
5649         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
5650
5651 2018-06-27  Tom Tromey  <tom@tromey.com>
5652
5653         * stack.c (_initialize_stack): Update "func" help text.
5654
5655 2018-06-27  Tom Tromey  <tom@tromey.com>
5656
5657         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
5658         std::vector.
5659         (unwind_infopy_str, pyuw_create_unwind_info)
5660         (unwind_infopy_add_saved_register, pyuw_sniffer)
5661         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
5662         Update.
5663         (struct saved_reg): Add constructor.
5664         <value>: Now a gdbpy_ref<>.
5665
5666 2018-06-27  Tom Tromey  <tom@tromey.com>
5667
5668         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
5669
5670 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5671
5672         * gdb-gdb.py.in: Format using autopep8.
5673
5674 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5675
5676         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
5677         (type_lookup_function): Recognize CORE_ADDR values.
5678
5679 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5680
5681         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
5682         print tag_name.
5683
5684 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5685
5686         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
5687         <__lt__>: Add.
5688
5689 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5690
5691         * gdb-gdb.py: Move to...
5692         * gdb-gdb.py.in: ... here.
5693         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
5694         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
5695         dependencies.
5696         (distclean): Remove gdb-gdb.py when cleaning.
5697         (gdb-gdb.py, gdb-gdb.gdb): New rules.
5698         * configure: Re-generate.
5699
5700 2018-06-27  Pedro Alves  <palves@redhat.com>
5701
5702         * proc-service.c (get_ps_regcache): New.
5703         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
5704         (ps_lsetfpregs): Use it.
5705
5706 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
5707
5708         PR gdb/21695
5709         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
5710         (dwarf_decode_lines_1): Adjust.
5711
5712 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5713
5714         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
5715         override.
5716         <info_proc>: Likewise.
5717
5718 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
5719
5720         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
5721         to windows_fetch_one_register, and only handle the case of
5722         fetching one register.  Move the code that reloads the context
5723         and iterates over all registers if R is negative to...
5724         (windows_nat_target::fetch_registers): ... here.
5725         (do_windows_store_inferior_registers): Rename to
5726         windows_store_one_register, and only handle the case of storing
5727         one register.  Move the code that handles the case where r is
5728         negative to...
5729         (windows_nat_target::store_registers) ... here.
5730
5731 2018-06-26  Tom Tromey  <tom@tromey.com>
5732
5733         PR rust/22574:
5734         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
5735         * rust-lang.c (rust_print_struct_def): Add podata parameter.
5736         Update.
5737         (rust_internal_print_type): Add podata parameter.
5738         (rust_print_type): Update.
5739
5740 2018-06-26  Tom Tromey  <tom@tromey.com>
5741
5742         * typeprint.h (struct print_offset_data) <update, finish,
5743         maybe_print_hole>: New methods.
5744         <indentation>: New constant.
5745         * typeprint.c (print_offset_data::indentation): Define.
5746         (print_offset_data::maybe_print_hole, print_offset_data::update)
5747         (print_offset_data::finish): Move from c-typeprint.c and rename.
5748         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
5749         (print_spaces_filtered_with_print_options): Update.
5750         (c_print_type_union_field_offset, maybe_print_hole)
5751         (c_print_type_struct_field_offset): Move to typeprint.c and
5752         rename.
5753         (c_type_print_base_struct_union): Update.
5754
5755 2018-06-25  Pedro Alves  <palves@redhat.com>
5756
5757         * gdbthread.h (thread_info_ref, delete_thread)
5758         (delete_thread_silent, first_thread_of_inferior)
5759         (any_thread_of_inferior, switch_to_thread)
5760         (enable_thread_stack_temporaries)
5761         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5762         (get_last_thread_stack_temporary)
5763         (value_in_thread_stack_temporaries, can_access_registers_thread):
5764         Spell out "struct thread_info" instead of just "thread_info".
5765         * inferior.h (notice_new_inferior): Likewise.
5766
5767 2018-06-25  Pedro Alves  <palves@redhat.com>
5768
5769         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5770         pass thread_info pointer to delete_thread.
5771         (windows_nat_target::detach): Pass inferior pointer to
5772         detach_inferior.
5773         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
5774         delete_thread.
5775         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
5776         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
5777         and pass a thread_info pointer to delete_thread.
5778         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
5779         pass thread_info pointer to delete_thread.
5780         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
5781         delete_thread_silent call.
5782         * procfs.c (procfs_target::detach): Pass inferior pointer to
5783         detach_inferior.
5784         (procfs_target::wait): Pass thread_info pointer to delete_thread.
5785         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
5786         delete_thread_silent call.
5787         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5788         pass thread_info pointer to delete_thread.
5789         (windows_nat_target::detach): Pass inferior pointer to
5790         delete_inferior.
5791
5792 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5793
5794         * regcache.c (readable_regcache::read_part): Fix asserts.
5795         (reg_buffer::raw_collect_part): New function.
5796         (regcache::write_part): Fix asserts.
5797         (reg_buffer::raw_supply_part): New function.
5798         (regcache::transfer_regset_register): New helper function.
5799         (regcache::transfer_regset): Call new functions.
5800         (regcache_supply_regset): Use gdb_byte*.
5801         (regcache::supply_regset): Likewise.
5802         (regcache_collect_regset): Likewise.
5803         (regcache::collect_regset): Likewise.
5804         * regcache.h (reg_buffer::raw_collect_part): New declaration.
5805         (reg_buffer::raw_supply_part): Likewise.
5806         (regcache::transfer_regset_register): Likewise.
5807         (regcache::transfer_regset): Use gdb_byte*.
5808
5809 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5810
5811         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
5812
5813 2018-06-21  Pedro Alves  <palves@redhat.com>
5814
5815         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
5816         instead of a ptid_t.  All callers adjusted.
5817         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
5818         adjusted.
5819         (print_ada_task_info, display_current_task_id, task_command_1):
5820         Adjust.
5821         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
5822         inferior_thread.
5823         (breakpoint_kind): Adjust.
5824         (remove_breakpoints_pid): Rename to ...
5825         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
5826         pointer.  All callers adjusted.
5827         (bpstat_clear_actions): Use inferior_thread.
5828         (get_bpstat_thread): New.
5829         (bpstat_do_actions): Use it.
5830         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
5831         to take a thread_info pointer.  All callers adjusted.
5832         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
5833         (breakpoint_re_set_thread): Use inferior_thread.
5834         * breakpoint.h (struct inferior): Forward declare.
5835         (bpstat_stop_status): Update.
5836         (remove_breakpoints_pid): Delete.
5837         (remove_breakpoints_inf): New.
5838         * bsd-uthread.c (bsd_uthread_target::wait)
5839         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
5840         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
5841         (maint_btrace_packet_history_cmd)
5842         (maint_btrace_clear_packet_history_cmd): Adjust.
5843         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
5844         inferior_thread.
5845         * cli/cli-interp.c: Include "inferior.h".
5846         * common/refcounted-object.h (struct
5847         refcounted_object_ref_policy): New.
5848         * compile/compile-object-load.c: Include gdbthread.h.
5849         (store_regs): Use inferior_thread.
5850         * corelow.c (core_target::close): Use current_inferior.
5851         (core_target_open): Adjust to use first_thread_of_inferior and use
5852         the current inferior.
5853         * ctf.c (ctf_target::close): Adjust to use current_inferior.
5854         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
5855         <thread>: ... this new field.  All references adjusted.
5856         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
5857         Take a thread_info pointer instead of a ptid_t.
5858         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
5859         (dummy_frame_discard, register_dummy_frame_dtor): Take a
5860         thread_info pointer instead of a ptid_t.
5861         * elfread.c: Include "inferior.h".
5862         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
5863         Use inferior_thread.
5864         * eval.c (evaluate_subexp): Likewise.
5865         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
5866         inferior_thread.
5867         * gdb_proc_service.h (struct thread_info): Forward declare.
5868         (struct ps_prochandle) <ptid>: Delete, replaced by ...
5869         <thread>: ... this new field.  All references adjusted.
5870         * gdbarch.h, gdbarch.c: Regenerate.
5871         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
5872         'thread' parameter.  All implementations and callers adjusted.
5873         * gdbthread.h (thread_info) <set_running>: New method.
5874         (delete_thread, delete_thread_silent): Take a thread_info pointer
5875         instead of a ptid.
5876         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
5877         (first_thread_of_process): Delete, replaced by ...
5878         (first_thread_of_inferior): ... this new function.  All callers
5879         adjusted.
5880         (any_live_thread_of_process): Delete, replaced by ...
5881         (any_live_thread_of_inferior): ... this new function.  All callers
5882         adjusted.
5883         (switch_to_thread, switch_to_no_thread): Declare.
5884         (is_executing): Delete.
5885         (enable_thread_stack_temporaries): Update comment.
5886         <enable_thread_stack_temporaries>: Take a thread_info pointer
5887         instead of a ptid_t.  Incref the thread.
5888         <~enable_thread_stack_temporaries>: Decref the thread.
5889         <m_ptid>: Delete
5890         <m_thr>: New.
5891         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5892         (get_last_thread_stack_temporary)
5893         (value_in_thread_stack_temporaries, can_access_registers_thread):
5894         Take a thread_info pointer instead of a ptid_t.  All callers
5895         adjusted.
5896         * infcall.c (get_call_return_value): Use inferior_thread.
5897         (run_inferior_call): Work with thread pointers instead of ptid_t.
5898         (call_function_by_hand_dummy): Work with thread pointers instead
5899         of ptid_t.  Use thread_info_ref.
5900         * infcmd.c (proceed_thread_callback): Access thread's state
5901         directly.
5902         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
5903         access thread's state directly.
5904         (continue_command): Use inferior_thread.
5905         (info_program_command): Use find_thread_ptid and access thread
5906         state directly.
5907         (proceed_after_attach_callback): Use thread state directly.
5908         (notice_new_inferior): Take a thread_info pointer instead of a
5909         ptid_t.  All callers adjusted.
5910         (exit_inferior): Take an inferior pointer instead of a pid.  All
5911         callers adjusted.
5912         (exit_inferior_silent): New.
5913         (detach_inferior): Delete.
5914         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
5915         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
5916         (detach_inferior_command, kill_inferior_command): Use
5917         find_inferior_id instead of valid_gdb_inferior_id and
5918         gdb_inferior_id_to_pid.
5919         (inferior_command): Use inferior and thread pointers.
5920         * inferior.h (struct thread_info): Forward declare.
5921         (notice_new_inferior): Take a thread_info pointer instead of a
5922         ptid_t.  All callers adjusted.
5923         (detach_inferior): Delete declaration.
5924         (exit_inferior, exit_inferior_silent): Take an inferior pointer
5925         instead of a pid.  All callers adjusted.
5926         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
5927         (valid_gdb_inferior_id): Delete.
5928         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
5929         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
5930         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
5931         ...
5932         <inf>: ... this new field.
5933         <step_ptid>: Delete, replaced by ...
5934         <step_thread>: ... this new field.
5935         (get_displaced_stepping_state): Take an inferior pointer instead
5936         of a pid.  All callers adjusted.
5937         (displaced_step_in_progress_any_inferior): Adjust.
5938         (displaced_step_in_progress_thread): Take a thread pointer instead
5939         of a ptid_t.  All callers adjusted.
5940         (displaced_step_in_progress, add_displaced_stepping_state): Take
5941         an inferior pointer instead of a pid.  All callers adjusted.
5942         (get_displaced_step_closure_by_addr): Adjust.
5943         (remove_displaced_stepping_state): Take an inferior pointer
5944         instead of a pid.  All callers adjusted.
5945         (displaced_step_prepare_throw, displaced_step_prepare)
5946         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
5947         All callers adjusted.
5948         (start_step_over): Adjust.
5949         (infrun_thread_ptid_changed): Remove bit updating ptids in the
5950         displaced step queue.
5951         (do_target_resume): Adjust.
5952         (fetch_inferior_event): Use inferior_thread.
5953         (context_switch, get_inferior_stop_soon): Take an
5954         execution_control_state pointer instead of a ptid_t.  All callers
5955         adjusted.
5956         (switch_to_thread_cleanup): Delete.
5957         (stop_all_threads): Use scoped_restore_current_thread.
5958         * inline-frame.c: Include "gdbthread.h".
5959         (inline_state) <inline_state>: Take a thread pointer instead of a
5960         ptid_t.  All callers adjusted.
5961         <ptid>: Delete, replaced by ...
5962         <thread>: ... this new field.
5963         (find_inline_frame_state): Take a thread pointer instead of a
5964         ptid_t.  All callers adjusted.
5965         (skip_inline_frames, step_into_inline_frame)
5966         (inline_skipped_frames, inline_skipped_symbol): Take a thread
5967         pointer instead of a ptid_t.  All callers adjusted.
5968         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
5969         (inline_skipped_frames, inline_skipped_symbol): Likewise.
5970         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
5971         pointers directly.
5972         * linux-nat.c (get_detach_signal): Likewise.
5973         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
5974         (thread_db_notice_clone): Adjust.
5975         (thread_db_find_new_threads_silently)
5976         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
5977         a thread pointer instead of a ptid_t.  All callers adjusted.
5978         * mi/mi-cmd-var.c: Include "inferior.h".
5979         (mi_cmd_var_update_iter): Update to use thread pointers.
5980         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
5981         inferior directly.
5982         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
5983         out to ...
5984         (mi_output_running): ... this new function.
5985         (mi_on_resume_1): Adjust to use it.
5986         (mi_user_selected_context_changed): Adjust to use inferior_thread.
5987         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
5988         directly.
5989         (interrupt_thread_callback): : Adjust to use thread and inferior
5990         pointers.
5991         * proc-service.c: Include "gdbthread.h".
5992         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
5993         * progspace-and-thread.c: Include "inferior.h".
5994         * progspace.c: Include "inferior.h".
5995         * python/py-exitedevent.c (create_exited_event_object): Adjust to
5996         hold a reference to an inferior_object.
5997         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
5998         inferior_thread.
5999         * python/py-inferior.c (struct inferior_object): Give the type a
6000         tag name instead of a typedef.
6001         (python_on_normal_stop): No need to check if the current thread is
6002         listed.
6003         (inferior_to_inferior_object): Change return type to
6004         inferior_object.  All callers adjusted.
6005         (find_thread_object): Delete, bits factored out to ...
6006         (thread_to_thread_object): ... this new function.
6007         * python/py-infthread.c (create_thread_object): Use
6008         inferior_to_inferior_object.
6009         (thpy_is_stopped): Use thread pointer directly.
6010         (gdbpy_selected_thread): Use inferior_thread.
6011         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6012         field, replaced with ...
6013         <thread>: ... this new field.  All users adjusted.
6014         (btpy_insn_or_gap_new): Drop const.
6015         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6016         callers adjusted.
6017         * python/py-record.c: Include "gdbthread.h".
6018         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6019         a ptid_t.  All callers adjusted.
6020         (gdbpy_current_recording): Use inferior_thread.
6021         * python/py-record.h (recpy_record_object) <ptid>: Delete
6022         field, replaced with ...
6023         <thread>: ... this new field.  All users adjusted.
6024         (recpy_element_object) <ptid>: Delete
6025         field, replaced with ...
6026         <thread>: ... this new field.  All users adjusted.
6027         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6028         a ptid_t.  All callers adjusted.
6029         * python/py-threadevent.c: Include "gdbthread.h".
6030         (get_event_thread): Use thread_to_thread_object.
6031         * python/python-internal.h (struct inferior_object): Forward
6032         declare.
6033         (find_thread_object, find_inferior_object): Delete declarations.
6034         (thread_to_thread_object, inferior_to_inferior_object): New
6035         declarations.
6036         * record-btrace.c: Include "inferior.h".
6037         (require_btrace_thread): Use inferior_thread.
6038         (record_btrace_frame_sniffer)
6039         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6040         (get_thread_current_frame): Use scoped_restore_current_thread and
6041         switch_to_thread.
6042         (get_thread_current_frame): Use thread pointer directly.
6043         (record_btrace_replay_at_breakpoint): Use thread's inferior
6044         pointer directly.
6045         * record-full.c: Include "inferior.h".
6046         * regcache.c: Include "gdbthread.h".
6047         (get_thread_arch_regcache): Use the inferior's address space
6048         directly.
6049         (get_thread_regcache, registers_changed_thread): New.
6050         * regcache.h (get_thread_regcache(thread_info *thread)): New
6051         overload.
6052         (registers_changed_thread): New.
6053         (remote_target) <remote_detach_1>: Swap order of parameters.
6054         (remote_add_thread): <remote_add_thread>: Return the new thread.
6055         (get_remote_thread_info(ptid_t)): New overload.
6056         (remote_target::remote_notice_new_inferior): Use thread pointers
6057         directly.
6058         (remote_target::process_initial_stop_replies): Use
6059         thread_info::set_running.
6060         (remote_target::remote_detach_1, remote_target::detach)
6061         (extended_remote_target::detach): Adjust.
6062         * stack.c (frame_show_address): Use inferior_thread.
6063         * target-debug.h (target_debug_print_thread_info_pp): New.
6064         * target-delegates.c: Regenerate.
6065         * target.c (default_thread_address_space): Delete.
6066         (memory_xfer_partial_1): Use current_inferior.
6067         (target_detach): Use current_inferior.
6068         (target_thread_address_space): Delete.
6069         (generic_mourn_inferior): Use current_inferior.
6070         * target.h (struct target_ops) <thread_address_space>: Delete.
6071         (target_thread_address_space): Delete.
6072         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6073         pointers directly.
6074         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6075         thread pointer instead of a ptid_t.  Adjust all callers.
6076         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6077         (first_thread_of_process): Delete, replaced by ...
6078         (first_thread_of_inferior): ... this new function.  All callers
6079         adjusted.
6080         (any_thread_of_process): Rename to ...
6081         (any_thread_of_inferior): ... this, and take an inferior pointer.
6082         (any_live_thread_of_process): Rename to ...
6083         (any_live_thread_of_inferior): ... this, and take an inferior
6084         pointer.
6085         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6086         (value_in_thread_stack_temporaries)
6087         (get_last_thread_stack_temporary): Take a thread pointer instead
6088         of a ptid_t.  Adjust all callers.
6089         (thread_info::set_running): New.
6090         (validate_registers_access): Use inferior_thread.
6091         (can_access_registers_ptid): Rename to ...
6092         (can_access_registers_thread): ... this, and take a thread
6093         pointer.
6094         (print_thread_info_1): Adjust to compare thread pointers instead
6095         of ptids.
6096         (switch_to_no_thread, switch_to_thread): Make extern.
6097         (scoped_restore_current_thread::~scoped_restore_current_thread):
6098         Use m_thread pointer directly.
6099         (scoped_restore_current_thread::scoped_restore_current_thread):
6100         Use inferior_thread.
6101         (thread_command): Use thread pointer directly.
6102         (thread_num_make_value_helper): Use inferior_thread.
6103         * top.c (execute_command): Use inferior_thread.
6104         * tui/tui-interp.c: Include "inferior.h".
6105         * varobj.c (varobj_create): Use inferior_thread.
6106         (value_of_root_1): Use find_thread_global_id instead of
6107         global_thread_id_to_ptid.
6108
6109 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6110
6111         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6112         possible.
6113         (regcache::write_part): Likewise.
6114         (readable_regcache::cooked_read_part): Update comment.
6115         (readable_regcache::cooked_write_part): Likewise.
6116         * regcache.h: (readable_regcache::read_part): Likewise.
6117         (regcache::write_part): Likewise.
6118
6119 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6120             Dirk Schubert  <dirk.schubert@arm.com>
6121
6122         * aarch64-linux-nat.c (post_attach): New.
6123         (aarch64_linux_nat_target::post_attach): Override post_attach to
6124         record the number of hardware debug registers.
6125
6126 2018-06-20  Tom Tromey  <tom@tromey.com>
6127
6128         * python/py-param.c (add_setshow_generic): Make parameters const.
6129         (parmpy_init): Update.
6130
6131 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6132
6133         * regcache.h (regcache_cooked_read_ftype): Rename to...
6134         (register_read_ftype): ...this, change type to function_view.
6135         (class reg_buffer) <save>: Remove src parameter.
6136         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6137         parameter non-const in first overload.  Remove src parameter in
6138         second overload.
6139         * regcache.c (do_cooked_read): Remove.
6140         (readonly_detached_regcache::readonly_detached_regcache): Make
6141         parameter non-const, adjust call to other constructor.
6142         (reg_buffer::save): Remove src parameter.
6143         * frame.c (do_frame_register_read): Remove.
6144         (frame_save_as_regcache): Use lambda function.
6145         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6146         parameter to ppu2spu_data *.
6147         (ppu2spu_sniffer): Use lambda function.
6148
6149 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6150
6151         * record-full.c (record_full_target::insert_breakpoint): Remove
6152         "struct" keyword, add const.
6153
6154 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6155
6156         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6157         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6158         * configure.ac: Remove AC_PREREQ, add missing quoting.
6159         * gnulib/configure.ac: Modernize usage of
6160         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6161         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6162         (AUTOMAKE_VERSION): Bump to 1.15.1.
6163         * configure: Re-generate.
6164         * config.in: Re-generate.
6165         * aclocal.m4: Re-generate.
6166         * gnulib/aclocal.m4: Re-generate.
6167         * gnulib/config.in: Re-generate.
6168         * gnulib/configure: Re-generate.
6169         * gnulib/import/Makefile.in: Re-generate.
6170
6171 2018-06-19  Pedro Alves  <palves@redhat.com>
6172
6173         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6174         (lookup_minimal_symbol_by_pc_section): ... here with
6175         gdb_assert_not_reached added.
6176
6177 2018-06-19  Pedro Alves  <palves@redhat.com>
6178
6179         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6180         parameter with a block parameter.  Compare location's block symbol
6181         with the frame's block instead of addresses.
6182         (skip_inline_frames): Pass the current block instead of the
6183         frame's address.  Break out as soon as we determine the frame
6184         should not be skipped.
6185
6186 2018-06-18  Tom Tromey  <tom@tromey.com>
6187
6188         * solib-aix.c (solib_aix_get_section_offsets): Return
6189         unique_xmalloc_ptr.
6190         (solib_aix_solib_create_inferior_hook): Update.
6191
6192 2018-06-18  Tom Tromey  <tom@tromey.com>
6193
6194         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6195
6196 2018-06-18  Tom Tromey  <tom@tromey.com>
6197
6198         * solib-frv.c (frv_relocate_main_executable): Use
6199         unique_xmalloc_ptr.
6200         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6201         unique_xmalloc_ptr.
6202
6203 2018-06-18  Tom Tromey  <tom@tromey.com>
6204
6205         * objfiles.h (inhibit_section_map_updates): Update.
6206         (resume_section_map_updates, resume_section_map_updates_cleanup):
6207         Remove.
6208         * solib-svr4.c (svr4_handle_solib_event): Update.
6209         * objfiles.c (inhibit_section_map_updates): Return
6210         scoped_restore_tmpl<int>.
6211         (resume_section_map_updates, resume_section_map_updates_cleanup):
6212         Remove.
6213
6214 2018-06-18  Tom Tromey  <tom@tromey.com>
6215
6216         * valprint.h (read_string): Update.
6217         * valprint.c (read_string): Change type of "buffer".
6218         (val_print_string): Update.
6219         * python/py-value.c (valpy_string): Update.
6220         * language.h (struct language_defn) <la_get_string>: Change
6221         type of "buffer".
6222         (default_get_string, c_get_string): Update.
6223         * language.c (default_get_string): Change type of "buffer".
6224         * guile/scm-value.c (gdbscm_value_to_string): Update.
6225         * c-lang.c (c_get_string): Change type of "buffer".
6226
6227 2018-06-18  Tom Tromey  <tom@tromey.com>
6228
6229         * ser-mingw.c (struct pipe_state_destroyer): New.
6230         (pipe_state_up): New typedef.
6231         (cleanup_pipe_state): Remove.
6232         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6233
6234 2018-06-18  Tom Tromey  <tom@tromey.com>
6235
6236         * rust-lang.h (rust_yyerror): Don't declare.
6237         * rust-lang.c (rust_language_defn): Update.
6238         * rust-exp.y (yyerror): Now static.
6239         * parse.c (parse_exp_in_context_1): Update.
6240         * p-lang.h (p_yyerror): Don't declare.
6241         * p-lang.c (p_language_defn): Update.
6242         * p-exp.y (yyerror): Now static.
6243         * opencl-lang.c (opencl_language_defn): Update.
6244         * objc-lang.c (objc_language_defn): Update.
6245         * m2-lang.h (m2_yyerror): Don't declare.
6246         * m2-lang.c (m2_language_defn): Update.
6247         * m2-exp.y (yyerror): Now static.
6248         * language.h (struct language_defn) <la_error>: Remove.
6249         * language.c (unk_lang_error): Remove.
6250         (unknown_language_defn, auto_language_defn): Remove.
6251         * go-lang.h (go_yyerror): Don't declare.
6252         * go-lang.c (go_language_defn): Update.
6253         * go-exp.y (yyerror): Now static.
6254         * f-lang.h (f_yyerror): Don't declare.
6255         * f-lang.c (f_language_defn): Update.
6256         * f-exp.y (yyerror): Now static.
6257         * d-lang.h (d_yyerror): Don't declare.
6258         * d-lang.c (d_language_defn): Update.
6259         * d-exp.y (yyerror): Now static.
6260         * c-lang.h (c_yyerror): Don't declare.
6261         * c-lang.c (c_language_defn, cplus_language_defn)
6262         (asm_language_defn, minimal_language_defn): Update.
6263         * c-exp.y (yyerror): Now static.
6264         * ada-lang.h (ada_yyerror): Don't declare.
6265         * ada-lang.c (ada_language_defn): Update.
6266         * ada-exp.y (yyerror): Now static.
6267
6268 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6269
6270         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6271         (store_sveregs_to_thread): Likewise.
6272         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6273         (aarch64_linux_store_inferior_registers): Likewise.
6274         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6275         function.
6276         (aarch64_sve_regs_copy_to_regcache): Likewise.
6277         (aarch64_sve_regs_copy_from_regcache): Likewise.
6278         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6279         declaration.
6280         (aarch64_sve_regs_copy_to_regcache): Likewise.
6281         (aarch64_sve_regs_copy_from_regcache): Likewise.
6282         (sve_context): Structure from Linux headers.
6283         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6284         (SVE_SIG_ZREG_SIZE): Likewise.
6285         (SVE_SIG_PREG_SIZE): Likewise.
6286         (SVE_SIG_FFR_SIZE): Likewise.
6287         (SVE_SIG_REGS_OFFSET): Likewise.
6288         (SVE_SIG_ZREGS_OFFSET): Likewise.
6289         (SVE_SIG_ZREG_OFFSET): Likewise.
6290         (SVE_SIG_ZREGS_SIZE): Likewise.
6291         (SVE_SIG_PREGS_OFFSET): Likewise.
6292         (SVE_SIG_PREG_OFFSET): Likewise.
6293         (SVE_SIG_PREGS_SIZE): Likewise.
6294         (SVE_SIG_FFR_OFFSET): Likewise.
6295         (SVE_SIG_REGS_SIZE): Likewise.
6296         (SVE_SIG_CONTEXT_SIZE): Likewise.
6297         (SVE_PT_REGS_MASK): Likewise.
6298         (SVE_PT_REGS_FPSIMD): Likewise.
6299         (SVE_PT_REGS_SVE): Likewise.
6300         (SVE_PT_VL_INHERIT): Likewise.
6301         (SVE_PT_VL_ONEXEC): Likewise.
6302         (SVE_PT_REGS_OFFSET): Likewise.
6303         (SVE_PT_FPSIMD_OFFSET): Likewise.
6304         (SVE_PT_FPSIMD_SIZE): Likewise.
6305         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6306         (SVE_PT_SVE_PREG_SIZE): Likewise.
6307         (SVE_PT_SVE_FFR_SIZE): Likewise.
6308         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6309         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6310         (__SVE_SIG_TO_PT): Likewise.
6311         (SVE_PT_SVE_OFFSET): Likewise.
6312         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6313         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6314         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6315         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6316         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6317         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6318         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6319         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6320         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6321         (SVE_PT_SVE_SIZE): Likewise.
6322         (SVE_PT_SIZE): Likewise.
6323         (HAS_SVE_STATE): New define.
6324
6325 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6326
6327         * nat/aarch64-sve-linux-sigcontext.h: New file.
6328         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6329         new files.
6330         (SVE_VQ_MIN): Likewise.
6331         (SVE_VQ_MAX): Likewise.
6332         (SVE_VL_MIN): Likewise.
6333         (SVE_VL_MAX): Likewise.
6334         (SVE_NUM_ZREGS): Likewise.
6335         (SVE_NUM_PREGS): Likewise.
6336         (sve_vl_valid): Likewise.
6337         (struct user_sve_header): Likewise.
6338
6339 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6340             Richard Bunt <Richard.Bunt@arm.com>
6341
6342         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6343         was requested by GDB.
6344
6345 2018-06-15  Tom de Vries  <tdevries@suse.de>
6346
6347         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6348
6349 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6350
6351         * gnulib/update-gnulib.sh: Print expected versions of
6352         autoconf/aclocal.
6353
6354 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6355
6356         * arch-utils.c (default_type_align): Use type_length_units.
6357         * gdbtypes.c (type_align): Use type_length_units.
6358
6359 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6360
6361         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6362         of 'define' command.
6363
6364 2018-06-14  Tom de Vries  <tdevries@suse.de>
6365
6366         PR cli/22573
6367         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6368         get_no_prettyformat_print_options.
6369
6370 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6371
6372         * sparc-nat.h: Include target.h.
6373         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6374         <fetch_registers>: Remove this argument in function call.
6375         <store_registers>: Remove this argument in function call, remove
6376         extra semicolon.
6377         <low_forget_process>: Call sparc64_forget_process instead of
6378         sparc_forget_process.
6379
6380 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6381
6382         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6383         (procfs_target::make_corefile_notes): Adjust to new
6384         target_read_alloc return type.
6385
6386 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6387             Stephen Roberts  <stephen.roberts@arm.com>
6388
6389         PR gdb/22882
6390         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6391         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6392         Move should_notify_stop local into more inner scope.
6393
6394 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6395             Stephen Roberts  <stephen.roberts@arm.com>
6396
6397         PR gdb/22882
6398         * infrun.c (resume_1): Add call to mark_async_event_handler.
6399
6400 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6401
6402         * infrun.c (do_target_wait): Change old version of $pc printed.
6403
6404 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6405
6406         * dwarf2read.c (read_index_from_section): Rename to...
6407         (read_gdb_index_from_section): ... this, update all callers.
6408         (dwarf2_read_index): Rename to...
6409         (dwarf2_read_gdb_index): ... this, update all callers.
6410
6411 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6412
6413         * gdb/hppa-linux-nat.c
6414         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6415         hppa_linux_nat_target::fetch_registers.
6416
6417 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6418
6419         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6420         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6421         (AARCH64_DWARF_SVE_FFR): Likewise.
6422         (AARCH64_DWARF_SVE_P0): Likewise.
6423         (AARCH64_DWARF_SVE_Z0): Likewise.
6424
6425 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6426
6427         * common/common-regcache.h (raw_compare): New function.
6428         * regcache.c (regcache::raw_compare): Likewise.
6429         * regcache.h (regcache::raw_compare): New declaration.
6430
6431 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6432
6433         * common/common-regcache.h (reg_buffer_common): New structure.
6434         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6435         (reg_buffer::raw_supply): Likewise.
6436         (reg_buffer::raw_supply_integer): Likewise.
6437         (reg_buffer::raw_supply_zeroed): Likewise.
6438         (reg_buffer::raw_collect): Likewise.
6439         (reg_buffer::raw_collect_integer): Likewise.
6440         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6441         (reg_buffer::raw_supply): Likewise.
6442         (reg_buffer::raw_supply_integer): Likewise.
6443         (reg_buffer::raw_supply_zeroed): Likewise.
6444         (reg_buffer::raw_collect): Likewise.
6445         (reg_buffer::raw_collect_integer): Likewise.
6446
6447 2018-06-10  Tom Tromey  <tom@tromey.com>
6448
6449         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6450         (class remote_state) <stop_reply_queue>: Now std::vector.
6451         (remote_state::~remote_state)
6452         (remote_target::stop_reply_queue_length): Update.
6453         (struct queue_iter_param, remove_child_of_pending_fork)
6454         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6455         (check_pending_event_prevents_wildcard_vcont_callback)
6456         (remove_stop_reply_for_inferior)
6457         (remove_stop_reply_of_remote_state)
6458         (remote_notif_remove_once_on_match)
6459         (stop_reply_match_ptid_and_ws)
6460         (remote_kill_child_of_pending_fork): Remove.
6461         (remote_target::remove_new_fork_children)
6462         (remote_target::check_pending_events_prevent_wildcard_vcont)
6463         (remote_target::discard_pending_stop_replies)
6464         (remote_target::discard_pending_stop_replies_in_queue)
6465         (remote_target::remote_notif_remove_queued_reply)
6466         (remote_target::queued_stop_reply)
6467         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6468         (remote_target::wait, remote_target::kill_new_fork_children)
6469         (remote_target::async): Update.
6470
6471 2018-06-10  Tom Tromey  <tom@tromey.com>
6472
6473         * record-full.c (record_full_arch_list_cleanups): Remove.
6474         (record_full_message): Use try/catch.
6475         (record_full_wait_cleanups): Remove.
6476         (record_full_wait_1): Use try/catch.
6477         (record_full_restore): Likewise.
6478
6479 2018-06-10  Tom Tromey  <tom@tromey.com>
6480
6481         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6482         declare VEC.  Add constructor.
6483         <in_target_beneath>: Now bool.
6484         (record_full_breakpoints): Now a std::vector, static.
6485         (record_full_sync_record_breakpoints)
6486         (record_full_init_record_breakpoints)
6487         (record_full_target::insert_breakpoint)
6488         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6489
6490 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6491
6492         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6493         * serial.c (serial_interface_lookup): Remove struct keyword.
6494
6495 2018-06-10  Tom Tromey  <tom@tromey.com>
6496
6497         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6498         method.
6499         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6500         a method.
6501         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6502         method.
6503         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6504         "beneath" as a method.
6505         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6506         Use "beneath" as a method.
6507
6508 2018-06-10  Tom Tromey  <tom@tromey.com>
6509
6510         * tracefile.c (struct trace_file_writer_deleter): New.
6511         <operator()>: Rename from trace_file_writer_xfree.
6512         (trace_file_writer_up): New typedef.
6513         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6514
6515 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6516
6517         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6518         <m_registers, m_register_status>: Change type to
6519         std::unique_ptr.
6520         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6521         XCNEWVEC.
6522
6523 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6524
6525         * common/common-regcache.h (enum register_status): Add
6526         underlying type "signed char".
6527         * regcache.h (reg_buffer) <m_register_status>: Change type to
6528         register_status *.
6529         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6530         register_status instead of signed char.
6531         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6532         (reg_buffer::get_register_status): Remove cast.
6533         (readable_regcache::raw_read): Remove cast.
6534         (readable_regcache::cooked_read): Remove cast.
6535
6536 2018-06-09  Tom Tromey  <tom@tromey.com>
6537
6538         * source.c (reverse_search_command, forward_search_command): Use
6539         scoped_fd.
6540
6541 2018-06-09  Tom Tromey  <tom@tromey.com>
6542
6543         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6544         (serial_ops_list): Now static, std::vector.
6545         (serial_interface_lookup, serial_add_interface): Update.
6546
6547 2018-06-09  Tom Tromey  <tom@tromey.com>
6548
6549         * dwarf2read.c (process_cu_includes): Update.
6550         (process_full_comp_unit): Update.
6551         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6552         std::vector.
6553
6554 2018-06-08  Paul Koning  <paul_koning@dell.com>
6555
6556         PR gdb/23252
6557
6558         * python/python.c (do_start_initialization):
6559         Avoid call to internal Python API.
6560         (init__gdb_module): New function.
6561
6562 2018-06-08  Gary Benson <gbenson@redhat.com>
6563
6564         * linux-thread-db.c (valprint.h): New include.
6565         (struct check_thread_db_info): New structure.
6566         (check_thread_db_on_load, tdb_testinfo): New static globals.
6567         (check_thread_db, check_thread_db_callback): New functions.
6568         (try_thread_db_load_1): Run integrity checks if requested.
6569         (maintenance_check_libthread_db): New function.
6570         (_initialize_thread_db): Register "maint check libthread-db"
6571         and "maint set/show check-libthread-db".
6572         * NEWS: Mention the above new commands.
6573
6574 2018-06-08  Tom Tromey  <tom@tromey.com>
6575
6576         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
6577         now a method.
6578
6579 2018-06-08  Tom Tromey  <tom@tromey.com>
6580
6581         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
6582
6583 2018-06-08  Tom Tromey  <tom@tromey.com>
6584
6585         * common/btrace-common.h (struct btrace_data): Add constructor,
6586         destructor, move assignment operator.
6587         <empty, clear, fini>: New methods.
6588         <format>: Initialize.
6589         (btrace_data_init, btrace_data_fini, btrace_data_clear)
6590         (btrace_data_empty): Don't declare.
6591         * common/btrace-common.c (btrace_data_init): Remove.
6592         (btrace_data::fini): Rename from btrace_data_fini.
6593         (btrace_data::empty): Rename from btrace_data_empty.
6594         (btrace_data::clear): Rename from btrace_data_clear.  Return
6595         bool.
6596         * btrace.h (make_cleanup_btrace_data): Don't declare.
6597         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
6598         (parse_xml_btrace): Update.
6599         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
6600         (maint_btrace_clear_packet_history_cmd): Update.
6601
6602 2018-06-07  Pedro Alves  <palves@redhat.com>
6603
6604         * target.h (target_ops) <beneath>: Now a method.  All references
6605         updated.
6606         (class target_stack): New.
6607         * target.c (g_target_stack): New.
6608         (g_current_top_target): Delete.
6609         (current_top_target): Get the top target out of g_target_stack.
6610         (target_stack::push, target_stack::unpush): New.
6611         (push_target, unpush_target): Reimplement.
6612         (target_is_pushed): Reimplement in terms of g_target_stack.
6613         (target_ops::beneath, target_stack::find_beneath): New.
6614
6615 2018-06-07  Pedro Alves  <palves@redhat.com>
6616
6617         * target.h (find_target_beneath): Delete declaration.
6618         * target.c (find_target_beneath): Delete definition.
6619         * aix-thread.c: All callers of find_target_beneath adjusted to
6620         call target_ops::beneath instead.
6621         * bsd-uthread.c: Likewise.
6622         * linux-thread-db.c: Likewise.
6623         * ravenscar-thread.c: Likewise.
6624         * sol-thread.c: Likewise.
6625         * spu-multiarch.c: Likewise.
6626
6627 2018-06-07  Pedro Alves  <palves@redhat.com>
6628
6629         * target.h (target_ops) <beneath>: Now a method.  All references
6630         updated.
6631         (target_ops) <m_beneath>: New.
6632         * target.c (target_ops::beneath): New.
6633         * corelow.c: Adjust all references to target_ops::beneath.
6634         * linux-thread-db.c: Likewise.
6635         * make-target-delegates: Likewise.
6636         * record-btrace.c: Likewise.
6637         * record-full.c: Likewise.
6638         * remote.c: Likewise.
6639         * target.c: Likewise.
6640         * target-delegates.c: Regenerate.
6641
6642 2018-06-07  Pedro Alves  <palves@redhat.com>
6643
6644         * target.h (target_stack): Delete.
6645         (current_top_target): Declare function.
6646         * target.c (target_stack): Delete.
6647         (g_current_top_target): New.
6648         (current_top_target): New function.
6649         * auxv.c: Use current_top_target instead of target_stack
6650         throughout.
6651         * avr-tdep.c: Likewise.
6652         * breakpoint.c: Likewise.
6653         * corefile.c: Likewise.
6654         * elfread.c: Likewise.
6655         * eval.c: Likewise.
6656         * exceptions.c: Likewise.
6657         * frame.c: Likewise.
6658         * gdbarch-selftests.c: Likewise.
6659         * gnu-v3-abi.c: Likewise.
6660         * ia64-tdep.c: Likewise.
6661         * ia64-vms-tdep.c: Likewise.
6662         * infcall.c: Likewise.
6663         * infcmd.c: Likewise.
6664         * infrun.c: Likewise.
6665         * linespec.c: Likewise.
6666         * linux-tdep.c: Likewise.
6667         * minsyms.c: Likewise.
6668         * ppc-linux-nat.c: Likewise.
6669         * ppc-linux-tdep.c: Likewise.
6670         * procfs.c: Likewise.
6671         * regcache.c: Likewise.
6672         * remote.c: Likewise.
6673         * rs6000-tdep.c: Likewise.
6674         * s390-linux-nat.c: Likewise.
6675         * s390-tdep.c: Likewise.
6676         * solib-aix.c: Likewise.
6677         * solib-darwin.c: Likewise.
6678         * solib-dsbt.c: Likewise.
6679         * solib-spu.c: Likewise.
6680         * solib-svr4.c: Likewise.
6681         * solib-target.c: Likewise.
6682         * sparc-tdep.c: Likewise.
6683         * sparc64-tdep.c: Likewise.
6684         * spu-tdep.c: Likewise.
6685         * symfile.c: Likewise.
6686         * symtab.c: Likewise.
6687         * target-descriptions.c: Likewise.
6688         * target-memory.c: Likewise.
6689         * target.c: Likewise.
6690         * target.h: Likewise.
6691         * tracefile-tfile.c: Likewise.
6692         * tracepoint.c: Likewise.
6693         * valops.c: Likewise.
6694         * valprint.c: Likewise.
6695         * value.c: Likewise.
6696         * windows-tdep.c: Likewise.
6697         * mi/mi-main.c: Likewise.
6698
6699 2018-06-07  Tom Tromey  <tom@tromey.com>
6700
6701         * valprint.h (build_address_symbolic): Declare.
6702         * printcmd.c (print_address_symbolic): Update.
6703         (build_address_symbolic): Change "name" and "filename" to
6704         std::string.
6705         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
6706         Update.
6707         * defs.h (build_address_symbolic): Remove declaration.
6708
6709 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
6710
6711         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
6712         (aarch64_vnv_type): Add function.
6713         (aarch64_pseudo_register_name): Add V regs for SVE.
6714         (aarch64_pseudo_register_type): Likewise.
6715         (aarch64_pseudo_register_reggroup_p): Likewise.
6716         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
6717         (aarch64_pseudo_read_value): Add V regs for SVE.
6718         (aarch64_pseudo_write_2): Use V0 offset for SVE
6719         (aarch64_pseudo_write): Add V regs for SVE.
6720         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
6721
6722 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
6723
6724         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
6725         (sve_vl_from_vq): Likewise.
6726
6727 2018-06-05  Tom Tromey  <tom@tromey.com>
6728
6729         * cli/cli-cmds.c (show_version): Update.
6730         * top.c (print_gdb_version): Add "interactive" parameter.
6731         Update.
6732         * main.c (captured_main_1): Update.
6733         * top.h (print_gdb_version): Add "interactive" parameter and a
6734         comment.
6735
6736 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
6737
6738         * common/enum-flags.h: Add trailing semicolon to example in
6739         comment.
6740
6741 2018-06-05  Tom Tromey  <tom@tromey.com>
6742
6743         PR cli/12326:
6744         * NEWS: Add entry about pager.
6745         * utils.c (pagination_disabled_for_command): New global.
6746         (prompt_for_continue): Allow "c" response to prompt.
6747         (reinitialize_more_filter): Clear
6748         pagination_disabled_for_command.
6749         (fputs_maybe_filtered): Check pagination_disabled_for_command.
6750
6751 2018-06-04  Tom Tromey  <tom@tromey.com>
6752
6753         * ada-lang.h (ada_lookup_symbol_list): Update.
6754         * ada-lang.c (resolve_subexp): Update.
6755         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
6756         parameter.
6757         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
6758         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
6759         results parameter to std::vector.
6760         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
6761         Update.
6762         * ada-exp.y (block_lookup): Update.
6763         (select_possible_type_sym): Change type of syms.  Remove nsyms
6764         parameter.
6765         (write_var_or_type, write_name_assoc): Update.
6766
6767 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
6768
6769         * windows-nat.c (windows_nat_target::xfer_partial): Return
6770         TARGET_XFER_E_IO if we need to delegate to the target beneath
6771         but BENEATH is NULL.
6772
6773 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
6774
6775         * Makefile.in (config.status): Add configure.nat as a
6776         dependency.
6777
6778 2018-06-04  Tom Tromey  <tom@tromey.com>
6779
6780         * cp-name-parser.y (cpname_state): Add method declarations.
6781         (HANDLE_QUAL): Update.
6782         (cpname_state::d_grab, cpname_state::fill_comp)
6783         (cpname_state::make_operator, cpname_state::make_dtor)
6784         (cpname_state::make_builtin_type, cpname_state::make_name)
6785         (cpname_state::d_qualify, cpname_state::d_int_type)
6786         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
6787         (%union): Move earlier.
6788
6789 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6790
6791         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
6792
6793 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6794
6795         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
6796         (aarch64_pseudo_write_1): Likewise.
6797         (aarch64_pseudo_read_value): Use helper.
6798         (aarch64_pseudo_write): Likewise.
6799
6800 2018-06-04  Pedro Alves  <palves@redhat.com>
6801
6802         * darwin-nat.c (darwin_ops): Delete.
6803         (darwin_attach_pid): Use get_native_target.
6804
6805 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6806
6807         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
6808         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
6809
6810 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6811
6812         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
6813         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
6814         (aarch64_gdbarch_init): Check for SVE.
6815         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
6816
6817 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6818
6819         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
6820         * aarch64-tdep.h (aarch64_read_description): Likewise.
6821         * arch/aarch64.c (aarch64_create_target_description): Likewise.
6822         * arch/aarch64.h (aarch64_create_target_description): Likewise.
6823         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
6824         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
6825         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
6826
6827 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
6828
6829         * value.c (value_fetch_lazy_bitfield): New.
6830         (value_fetch_lazy_memory): New.
6831         (value_fetch_lazy_register): New.
6832         (value_fetch_lazy): Factor out to smaller functions.
6833
6834 2018-06-01  Tom Tromey  <tom@tromey.com>
6835
6836         * cp-name-parser.y (backslashable, represented): Now const.
6837
6838 2018-06-01  Tom Tromey  <tom@tromey.com>
6839
6840         * cp-name-parser.y: Include parser-defs.h.
6841         (parser_fprintf): Remove declaration.
6842
6843 2018-06-01  Tom Tromey  <tom@tromey.com>
6844
6845         * cp-name-parser.y: Use %pure-parser, %lex-param, and
6846         %parse-param.
6847         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
6848         (global_result): Remove globals.
6849         (struct cpname_state): New.
6850         (yyparse): Don't declare.
6851         (yylex, yyerror): Move declarations after %union.
6852         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
6853         (make_name): Add state parameter.
6854         Update all callers.
6855         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
6856         parameter.
6857         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
6858         Update.
6859         (yylex): Add lvalp, state parameters.
6860         (yyerror): Add state parameter.
6861         (cp_demangled_name_to_comp): Update.
6862
6863 2018-06-01  Tom Tromey  <tom@tromey.com>
6864
6865         * cp-name-parser.y (parser_fprintf): Declare.
6866         (GDB_YY_REMAP_PREFIX): Define.
6867         Include yy-remap.h.  Don't redefine yy* identifiers.
6868
6869 2018-06-01  Tom Tromey  <tom@tromey.com>
6870
6871         * python/py-type.c (typy_legacy_template_argument): Update.
6872         * cp-support.h (cp_demangled_name_to_comp): Update.
6873         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
6874         parameter to be a "std::string *".
6875         (main): Update.
6876
6877 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
6878
6879         * ada-lex.l: Include "diagnostics.h" instead of
6880         "common/diagnostics.h".
6881         * unittests/environ-selftests.c: Likewise.
6882         * common/diagnostics.h: Moved to ../include.
6883
6884 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
6885
6886         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
6887         to language_mode_manual while calling breakpoint_re_set_one.
6888
6889 2018-06-01  Tom Tromey  <tom@tromey.com>
6890
6891         * valops.c (value_cast_structs, destructor_name_p): Update.
6892         * symtab.c (gdb_mangle_name): Update.
6893         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
6894         Update.
6895         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
6896         (pascal_object_print_value_fields, pascal_object_print_value):
6897         Update.
6898         * p-typeprint.c (pascal_type_print_derivation_info): Update.
6899         * linespec.c (find_methods): Update.
6900         * gdbtypes.h (type_name_no_tag): Remove.
6901         (type_name_or_error): Rename from type_name_no_tag_or_error.
6902         * gdbtypes.c (type_name_no_tag): Remove.
6903         (type_name_or_error): Rename from type_name_no_tag_or_error.
6904         (lookup_struct_elt_type, check_typedef): Update.
6905         * expprint.c (print_subexp_standard): Update.
6906         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
6907         * d-namespace.c (d_lookup_nested_symbol): Update.
6908         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
6909         (cp_print_class_member): Update.
6910         * cp-namespace.c (cp_lookup_nested_symbol): Update.
6911         * completer.c (add_struct_fields): Update.
6912         * c-typeprint.c (cp_type_print_derivation_info)
6913         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
6914         Update.
6915         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
6916         (ada_prefer_type, ada_is_exception_sym): Update.
6917
6918 2018-06-01  Tom Tromey  <tom@tromey.com>
6919
6920         * valops.c (enum_constant_from_type, value_namespace_elt)
6921         (value_maybe_namespace_elt): Update.
6922         * valarith.c (find_size_for_pointer_math): Update.
6923         * target-descriptions.c (make_gdb_type): Update.
6924         * symmisc.c (print_symbol): Update.
6925         * stabsread.c (define_symbol, read_type)
6926         (complain_about_struct_wipeout, add_undefined_type)
6927         (cleanup_undefined_types_1): Update.
6928         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
6929         (rust_range_type_p, val_print_struct, rust_print_struct_def)
6930         (rust_internal_print_type, rust_composite_type)
6931         (rust_evaluate_funcall, rust_evaluate_subexp)
6932         (rust_inclusive_range_type_p): Update.
6933         * python/py-type.c (typy_get_tag): Update.
6934         * p-typeprint.c (pascal_type_print_base): Update.
6935         * mdebugread.c (parse_symbol, parse_type): Update.
6936         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
6937         Update.
6938         * guile/scm-type.c (gdbscm_type_tag): Update.
6939         * go-lang.c (sixg_string_p): Update.
6940         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
6941         Update.
6942         * gdbtypes.h (struct main_type) <tag_name>: Remove.
6943         (TYPE_TAG_NAME): Remove.
6944         * gdbtypes.c (type_name_no_tag): Simplify.
6945         (check_typedef, check_types_equal, recursive_dump_type)
6946         (copy_type_recursive, arch_composite_type): Update.
6947         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
6948         in summary mode when needed.
6949         * eval.c (evaluate_funcall): Update.
6950         * dwarf2read.c (fixup_go_packaging, read_structure_type)
6951         (process_structure_scope, read_enumeration_type)
6952         (read_namespace_type, read_module_type, determine_prefix): Update.
6953         * cp-support.c (inspect_type): Update.
6954         * coffread.c (process_coff_symbol, decode_base_type): Update.
6955         * c-varobj.c (c_is_path_expr_parent): Update.
6956         * c-typeprint.c (c_type_print_base_struct_union): Update.
6957         (c_type_print_base_1): Update.  Print struct/class/union/enum in
6958         summary when using C language.
6959         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
6960         (gen_maybe_namespace_elt): Update.
6961         * ada-lang.c (ada_type_name): Simplify.
6962         (empty_record, ada_template_to_fixed_record_type_1)
6963         (template_to_static_fixed_type)
6964         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
6965
6966 2018-06-01  Tom Tromey  <tom@tromey.com>
6967
6968         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
6969         c_print_type.
6970         * c-typeprint.c (c_print_type_1): Add "language" parameter.
6971         (c_print_type): Update.
6972         (c_print_type): New overload.
6973         (c_type_print_varspec_prefix, c_type_print_args)
6974         (c_type_print_varspec_suffix, c_print_type_no_offsets)
6975         (c_type_print_base_struct_union, c_type_print_base_1)
6976         (cp_type_print_method_args): Add "language" parameter.
6977         (c_type_print_base): Update.
6978         * c-lang.h (c_print_type): Add new overload.
6979
6980 2018-06-01  Tom Tromey  <tom@tromey.com>
6981
6982         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
6983         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
6984
6985 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
6986
6987         * aarch64-tdep.c (aarch64_sve_register_names): New const
6988         var.
6989         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
6990         (AARCH64_SVE_Z_REGS_NUM): New define.
6991         (AARCH64_SVE_P_REGS_NUM): Likewise.
6992         (AARCH64_SVE_NUM_REGS): Likewise.
6993
6994 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
6995
6996         * nat/linux-ptrace.h [__alpha__]
6997         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
6998         definitions.
6999
7000 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7001
7002         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7003         the endianness selected.
7004         * NEWS: Document `set endian auto' mode operation update.
7005
7006 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7007
7008         * Makefile.in: Add new header.
7009         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7010         (sve_vl_from_vg): Likewise.
7011         (sve_vq_from_vl): Likewise.
7012         (sve_vl_from_vq): Likewise.
7013         (sve_vq_from_vg): Likewise.
7014         (sve_vg_from_vq): Likewise.
7015         * configure.nat: Add new c file.
7016         * nat/aarch64-sve-linux-ptrace.c: New file.
7017         * nat/aarch64-sve-linux-ptrace.h: New file.
7018
7019 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7020
7021         * aarch64-linux-nat.c (aarch64_linux_read_description):
7022         Add parmeter zero.
7023         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7024         Likewise.
7025         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7026         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7027         (aarch64_gdbarch_init): Add parmeter zero.
7028         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7029         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7030         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7031         parmeter.
7032         * doc/gdb.texinfo: Describe SVE feature
7033         * features/aarch64-sve.c: New file.
7034
7035 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7036
7037         PR gdb/23210
7038         * gdbarch.sh (significant_addr_bit): Default to zero when
7039         not set by target architecture.
7040         * gdbarch.c: Re-generated.
7041         * utils.c (address_significant): Update.
7042
7043 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7044
7045         * stack.c (func_command): Remove trailing newline in call to error.
7046
7047 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7048
7049         * regcache.h (regcache_raw_collect): Remove, update callers to
7050         use regcache::raw_collect.
7051         * regcache.c (regcache_raw_collect): Remove.
7052
7053 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7054
7055         * regcache.h (regcache_raw_supply): Remove, update callers to
7056         use detached_regcache::raw_supply.
7057         * regcache.c (regcache_raw_supply): Remove.
7058
7059 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7060
7061         * regcache.h (regcache_cooked_write_part): Remove, update
7062         callers to use regcache::cooked_write_part.
7063         * regcache.c (regcache_cooked_write_part): Remove.
7064
7065 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7066
7067         * regcache.h (regcache_cooked_read_part): Remove, update callers
7068         to use readable_regcache::cooked_read_part.
7069         * regcache.c (regcache_cooked_read_part): Remove.
7070
7071 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7072
7073         * regcache.h (regcache_cooked_read_value): Remove, update
7074         callers to use readable_regcache::cooked_read_value.
7075         * regcache.c (regcache_cooked_read_value): Remove.
7076
7077 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7078
7079         * regcache.h (regcache_cooked_write): Remove, update callers to
7080         use regcache::cooked_write.
7081         * regcache.c (regcache_cooked_write): Remove.
7082
7083 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7084
7085         * regcache.h (regcache_invalidate): Remove, update callers to
7086         use detached_regcache::invalidate instead.
7087         * regcache.c (regcache_invalidate): Remove.
7088
7089 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7090
7091         * regcache.h (regcache_raw_write_part): Remove, update callers
7092         to use regcache::raw_write_part instead.
7093         * regcache.c (regcache_raw_write_part): Remove.
7094
7095 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7096
7097         * regcache.h (regcache_raw_read_part): Remove, update callers to
7098         use readable_regcache::raw_read_part instead.
7099         * regcache.c (regcache_raw_read_part): Remove.
7100
7101 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7102
7103         * regcache.h (regcache_cooked_read): Remove, update callers to
7104         use readable_regcache::cooked_read instead.
7105         * regcache.c (regcache_cooked_read): Remove.
7106
7107 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7108
7109         * regcache.h (regcache_raw_write): Remove, update callers to use
7110         regcache::raw_write instead.
7111         * regcache.c (regcache_raw_write): Remove.
7112
7113 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7114
7115         * regcache.h (regcache_raw_read): Remove, update callers to use
7116         readable_regcache::raw_read instead.
7117         * regcache.c (regcache_raw_read): Remove.
7118
7119 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7120
7121         * regcache.h (regcache_raw_update): Remove, update callers to
7122         use readable_regcache::raw_update instead.
7123         * regcache.c (regcache_raw_update): Remove.
7124
7125 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7126
7127         * regcache.h (regcache_register_status): Remove, update callers
7128         to use reg_buffer::get_register_status directly instead.
7129         * regcache.c (regcache_register_status): Remove.
7130
7131 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7132
7133         * regcache.h (regcache_get_ptid): Remove, update all callers to
7134         call regcache::ptid instead.
7135         * regcache.c (regcache_get_ptid): Remove.
7136
7137 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7138
7139         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7140
7141 2018-05-30  Pedro Alves  <palves@redhat.com>
7142
7143         * common/common-exceptions.h (exception_rethrow): Use
7144         ATTRIBUTE_NORETURN.
7145
7146 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7147
7148         * breakpoint.c (print_solib_event, check_status_catch_solib):
7149         Remove struct keyword in range-based for loops.
7150         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7151         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7152         Likewise.
7153         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7154         Likewise.
7155         * symfile.c (addr_info_make_relative): Likewise.
7156         * thread.c (value_in_thread_stack_temporaries): Likewise.
7157
7158 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7159
7160         PR gdb/16841
7161         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7162         aggregate type to get its real type before accessing it.
7163
7164 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7165
7166         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7167         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7168         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7169         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7170         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7171         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7172         * printcmd.c (info_address_command): Likewise.
7173
7174 2018-05-29  Tom Tromey  <tom@tromey.com>
7175
7176         * windows-nat.c (handle_exception): Update fall-through comment.
7177
7178 2018-05-29  Tom Tromey  <tom@tromey.com>
7179
7180         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7181         (struct program_space) <added_solibs>: Now a std::vector.
7182         * breakpoint.c (print_solib_event): Update.
7183         (check_status_catch_solib): Update.
7184         * progspace.c (clear_program_space_solib_cache): Update.
7185         * solib.c (update_solib_list): Update.
7186
7187 2018-05-29  Tom Tromey  <tom@tromey.com>
7188
7189         * python/py-type.c (typy_richcompare): Update.
7190         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7191         * gdbtypes.h (types_deeply_equal): Return bool.
7192         (types_equal): Likewise.
7193         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7194         declare VEC.
7195         (check_types_equal): Change worklist to std::vector.  Return
7196         bool.
7197         (struct type_equality_entry): Add constructor.
7198         (compare_maybe_null_strings): Return bool.
7199         (check_types_worklist): Return bool.  Change worklist to
7200         std::vector.
7201         (types_deeply_equal): Use std::vector.
7202         (types_equal): Return bool.
7203         (compare_maybe_null_strings): Simplify.
7204
7205 2018-05-29  Tom Tromey  <tom@tromey.com>
7206
7207         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7208
7209 2018-05-29  Tom Tromey  <tom@tromey.com>
7210
7211         * objc-lang.h: Don't include cp-support.h.
7212         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7213         declare VEC.
7214
7215 2018-05-27  Tom Tromey  <tom@tromey.com>
7216
7217         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7218
7219 2018-05-25  Tom Tromey  <tom@tromey.com>
7220
7221         * value.c (value::location): Initialize.
7222
7223 2018-05-25  Tom Tromey  <tom@tromey.com>
7224
7225         * dbxread.c (init_bincl_list): Remove.
7226         (bincl_list): Now a std::vector.
7227         (bincls_allocated, next_bincl): Remove.
7228         (free_bincl_list, do_free_bincl_list_cleanup)
7229         (make_cleanup_free_bincl_list): Remove.
7230         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7231         unique_xmalloc_ptr.
7232         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7233         (struct header_file_location): Add constructor.
7234         (add_bincl_to_list): Remove.
7235
7236 2018-05-25  Tom Tromey  <tom@tromey.com>
7237
7238         * tui/tui.c (tui_enable): Update.
7239         * mi/mi-interp.c (mi_interp::init): Update.
7240         * interps.h (class interp) <name>: New method.
7241         <m_name>: Rename from name.
7242         (~scoped_restore_interp): Update.
7243         * interps.c (interp::interp): Update.
7244         (interp_add, interp_set, interp_lookup_existing)
7245         (current_interp_named_p): Update.
7246
7247 2018-05-25  Tom Tromey  <tom@tromey.com>
7248
7249         * interps.c (interp_name): Remove.
7250         * mi/mi-interp.c (mi_interp::init): Update.
7251         * interps.h (interp_name): Remove.
7252         (~scoped_restore_interp): Update.
7253         * tui/tui.c (tui_enable): Update.
7254
7255 2018-05-25  Tom Tromey  <tom@tromey.com>
7256
7257         * utils.c (fputs_maybe_filtered): Update.
7258         * linespec.c (decode_line_full): Update.
7259         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7260         (mi_print_breakpoint_for_event, mi_solib_loaded)
7261         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7262         (mi_user_selected_context_changed): Update.
7263         * mi/mi-main.c (mi_execute_command): Update.
7264         * cli/cli-script.c (execute_control_command): Update.
7265         * python/python.c (execute_gdb_command): Update.
7266         * solib.c (info_sharedlibrary_command): Update.
7267         * interps.c (interp_ui_out): Remove.
7268         * interps.h (interp_ui_out): Remove.
7269
7270 2018-05-25  Tom Tromey  <tom@tromey.com>
7271
7272         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7273         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7274         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7275
7276 2018-05-25  Tom Tromey  <tom@tromey.com>
7277
7278         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7279         * interps.c (interp_exec): Use scoped_restore.
7280
7281 2018-05-25  Tom Tromey  <tom@tromey.com>
7282
7283         * remote.c (remote_target::remote_file_get): Use
7284         gdb::byte_vector.
7285         (remote_target::remote_file_put): Likewise.
7286
7287 2018-05-25  Tom Tromey  <tom@tromey.com>
7288
7289         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7290         a std::string.
7291         (get_pe_section_index, add_pe_exported_sym): Update.
7292         (read_pe_exported_syms): Use gdb::def_vector.
7293
7294 2018-05-25  Tom Tromey  <tom@tromey.com>
7295
7296         * frame.c (remove_prev_frame): Remove.
7297         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7298
7299 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7300
7301         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7302         Remove prototypes.
7303         * mips-linux-nat.c (supply_fpregset): Always call
7304         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7305         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7306         `mips_fill_fpregset'.
7307         * mips-linux-tdep.c (mips_supply_fpregset)
7308         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7309         (mips_fill_fpregset_wrapper): Remove functions.
7310         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7311         (mips_linux_fpregset): Remove variable.
7312         (mips_linux_iterate_over_regset_sections): Use
7313         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7314         (mips_linux_o32_sigframe_init): Remove comment.
7315
7316 2018-05-25  Pedro Alves  <palves@redhat.com>
7317
7318         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7319         (struct readahead_cache, struct packet_reg, struct
7320         remote_arch_state, class remote_state): Move higher up in the
7321         file.
7322         (remote_target::m_remote_state): Now an object instead of a pointer.
7323         (remote_target::get_remote_state): Adjust.
7324
7325 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7326
7327         * stack.c (select_and_print_frame): Delete.
7328         (struct function_bounds): Move struct within function.
7329         (func_command): Most content moved into new function
7330         find_frame_for_function, use new function, print result, add
7331         function comment.
7332         (find_frame_for_function): New function, now returns a result.
7333
7334 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7335
7336         * stack.c (iterate_over_block_arg_vars): Fix comment.
7337         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7338
7339 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7340
7341         PR gdb/23203
7342         * frame.c
7343         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7344         Define.
7345         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7346         Define.
7347         * frame.h (class scoped_restore_selected_frame): New class.
7348         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7349         of any exception, use scoped_restore_selected_frame to restore the
7350         frame instead.
7351
7352 2018-05-24  Pedro Alves  <palves@redhat.com>
7353
7354         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7355         override.
7356
7357 2018-05-23  Tom Tromey  <tom@tromey.com>
7358
7359         * complaints.c (struct complaints): Remove.
7360         (symfile_complaint_book): Remove.
7361         (series): New global.
7362         (complaint_internal): Update.
7363         (clear_complaints): Update.
7364
7365 2018-05-23  Tom Tromey  <tom@tromey.com>
7366
7367         * complaints.c (counters): New global.
7368         (struct complain): Remove.
7369         (struct complaints) <root>: Remove.
7370         (complaint_sentinel): Remove.
7371         (symfile_complaint_book): Update.
7372         (find_complaint) Remove.
7373         (complaint_internal, clear_complaints): Update.
7374
7375 2018-05-23  Tom Tromey  <tom@tromey.com>
7376
7377         * complaints.c (struct complain) <file, line>: Remove.
7378         (find_complaint): Remove file, line parameters.
7379         (complaint_internal): Update.
7380
7381 2018-05-23  Tom Tromey  <tom@tromey.com>
7382
7383         * complaints.c (vcomplaint): Remove.
7384         (complaint_internal) Merge in contents of vcomplaint.
7385
7386 2018-05-23  Tom Tromey  <tom@tromey.com>
7387
7388         * complaints.c (struct complaints) <explanation>: Remove.
7389         (symfile_explanations): Remove.
7390         (symfile_complaint_book): Update.
7391         (vcomplaint): Update.
7392         (struct explanation): Remove.
7393
7394 2018-05-23  Tom Tromey  <tom@tromey.com>
7395
7396         * complaints.c (symfile_complaints): Remove.
7397         (complaint_internal): Remove "complaints" parameter.
7398         (clear_complaints, vcomplaint): Remove "c" parameter.
7399         (get_complaints): Remove.
7400         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7401         (dwarf2_debug_line_missing_file_complaint)
7402         (dwarf2_debug_line_missing_end_sequence_complaint)
7403         (dwarf2_complex_location_expr_complaint)
7404         (dwarf2_const_value_length_mismatch_complaint)
7405         (dwarf2_section_buffer_overflow_complaint)
7406         (dwarf2_macro_malformed_definition_complaint)
7407         (dwarf2_invalid_attrib_class_complaint)
7408         (create_addrmap_from_index, dw2_symtab_iter_next)
7409         (dw2_expand_marked_cus)
7410         (dw2_debug_names_iterator::find_vec_in_debug_names)
7411         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7412         (create_debug_type_hash_table, init_cutu_and_read_dies)
7413         (partial_die_parent_scope, add_partial_enumeration)
7414         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7415         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7416         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7417         (create_cus_hash_table, create_dwp_hash_table)
7418         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7419         (dwarf2_rnglists_process, dwarf2_ranges_process)
7420         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7421         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7422         (handle_struct_member_die, process_structure_scope)
7423         (read_array_type, read_common_block, read_module_type)
7424         (read_tag_pointer_type, read_typedef, read_base_type)
7425         (read_subrange_type, load_partial_dies, partial_die_info::read)
7426         (partial_die_info::read, partial_die_info::read)
7427         (partial_die_info::read, read_checked_initial_length_and_offset)
7428         (dwarf2_string_attr, read_formatted_entries)
7429         (dwarf_decode_line_header)
7430         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7431         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7432         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7433         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7434         (get_signatured_type, get_DW_AT_signature_type)
7435         (decode_locdesc, file_file_name, consume_improper_spaces)
7436         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7437         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7438         (dwarf2_symbol_mark_computed, set_die_type)
7439         (read_attribute_value): Update.
7440         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7441         Update.
7442         * dbxread.c (unknown_symtype_complaint)
7443         (lbrac_mismatch_complaint, repeated_header_complaint)
7444         (set_namestring, function_outside_compilation_unit_complaint)
7445         (read_dbx_symtab, process_one_symbol): Update.
7446         * gdbtypes.c (stub_noname_complaint): Update.
7447         * windows-nat.c (handle_unload_dll): Update.
7448         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7449         (decode_base_type): Update.
7450         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7451         (eb_complaint, record_include_begin, record_include_end)
7452         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7453         (process_xcoff_symbol, read_symbol)
7454         (function_outside_compilation_unit_complaint)
7455         (scan_xcoff_symtab): Update.
7456         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7457         * buildsym.c (finish_block_internal, make_blockvector)
7458         (end_symtab_get_static_block, augment_type_symtab): Update.
7459         * dtrace-probe.c (dtrace_process_dof)
7460         (dtrace_static_probe_ops::get_probes): Update.
7461         * complaints.h (struct complaint): Don't declare.
7462         (symfile_complaints): Remove.
7463         (complaint_internal): Remove "complaints" parameter.
7464         (complaint): Likewise.
7465         (clear_complaints): Likewise.
7466         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7467         (reread_symbols): Update.
7468         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7469         (dwarf2_frame_cache, decode_frame_entry): Update.
7470         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7471         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7472         (info_selectors_command): Update.
7473         * macrotab.c (macro_include, check_for_redefinition)
7474         (macro_undef): Update.
7475         * objfiles.c (filter_overlapping_sections): Update.
7476         * stabsread.c (invalid_cpp_abbrev_complaint)
7477         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7478         (define_symbol, error_type, read_type, rs6000_builtin_type)
7479         (stabs_method_name_from_physname, read_member_functions)
7480         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7481         (attach_fields_to_type, complain_about_struct_wipeout)
7482         (read_range_type, read_args, common_block_start)
7483         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7484         Update.
7485         * mdebugread.c (index_complaint, unknown_ext_complaint)
7486         (basic_type_complaint, bad_tag_guess_complaint)
7487         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7488         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7489         (parse_procedure, parse_lines)
7490         (function_outside_compilation_unit_complaint)
7491         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7492         (bad_tag_guess_complaint, reg_value_complaint): Update.
7493         * cp-support.c (demangled_name_complaint): Update.
7494         * macroscope.c (sal_macro_scope): Update.
7495         * dwarf-index-write.c (class debug_names): Update.
7496
7497 2018-05-23  Tom Tromey  <tom@tromey.com>
7498
7499         * complaints.c (clear_complaints): Remove "noisy" parameter.
7500         * complaints.h (clear_complaints): Update.
7501         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7502         (reread_symbols): Update.
7503
7504 2018-05-23  Tom Tromey  <tom@tromey.com>
7505
7506         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7507         SUBSEQUENT_MESSAGE.
7508         (vcomplaint, clear_complaints): Update.
7509         (symfile_explanations): Remove some messages.
7510
7511 2018-05-23  Tom Tromey  <tom@tromey.com>
7512
7513         * complaints.c (internal_complaint): Remove.
7514         * complaints.h (internal_complaint): Remove.
7515
7516 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7517
7518         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7519
7520 2018-05-22  Pedro Alves  <palves@redhat.com>
7521
7522         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7523         (remote_fileio_badfd, remote_fileio_return_errno)
7524         (remote_fileio_return_success, remote_fileio_func_open)
7525         (remote_fileio_func_open, remote_fileio_func_close)
7526         (remote_fileio_func_read, remote_fileio_func_write)
7527         (remote_fileio_func_lseek, remote_fileio_func_rename)
7528         (remote_fileio_func_unlink, remote_fileio_func_stat)
7529         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7530         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7531         remote_target parameter.
7532         (remote_fio_func_map) <func>: Add remote_target parameter.
7533         (do_remote_fileio_request, remote_fileio_request):
7534         * remote-fileio.h (remote_fileio_request):
7535         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7536         remote_target parameter.
7537         (remote_notif_process, handle_notification): Adjust to pass down
7538         the remote.
7539         (remote_notif_state_allocate): Add remote_target parameter.  Save
7540         it.
7541         * remote-notif.h (struct remote_target): Forward declare.
7542         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7543         remote_target parameter.
7544         (struct remote_notif_state) <remote>: New field.
7545         (remote_notif_ack, remote_notif_parse): Add remote_target
7546         parameter.
7547         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7548         remote_target parameter.
7549         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7550         (threads_listing_context, rmt_thread_action, protocol_feature)
7551         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7552         (packet_result, struct threads_listing_context, remote_state):
7553         Move definitions and declarations higher up.
7554         (remote_target) <~remote_target>: Declare.
7555         (remote_download_command_source, remote_file_put, remote_file_get)
7556         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7557         (remote_hostio_pread_vFile, remote_hostio_send_command)
7558         (remote_hostio_set_filesystem, remote_hostio_open)
7559         (remote_hostio_close, remote_hostio_unlink, remote_state)
7560         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7561         (get_memory_write_packet_size, get_memory_read_packet_size)
7562         (append_pending_thread_resumptions, remote_detach_1)
7563         (append_resumption, remote_resume_with_vcont)
7564         (add_current_inferior_and_thread, wait_ns, wait_as)
7565         (process_stop_reply, remote_notice_new_inferior)
7566         (process_initial_stop_replies, remote_add_thread)
7567         (btrace_sync_conf, remote_btrace_maybe_reopen)
7568         (remove_new_fork_children, kill_new_fork_children)
7569         (discard_pending_stop_replies, stop_reply_queue_length)
7570         (check_pending_events_prevent_wildcard_vcont)
7571         (discard_pending_stop_replies_in_queue, stop_reply)
7572         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
7573         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
7574         (remote_interrupt_as, remote_interrupt_ns)
7575         (remote_get_noisy_reply, remote_query_attached)
7576         (remote_add_inferior, remote_current_thread, get_current_thread)
7577         (set_thread, set_general_thread, set_continue_thread)
7578         (set_general_process, write_ptid)
7579         (remote_unpack_thread_info_response, remote_get_threadinfo)
7580         (parse_threadlist_response, remote_get_threadlist)
7581         (remote_threadlist_iterator, remote_get_threads_with_ql)
7582         (remote_get_threads_with_qxfer)
7583         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
7584         (get_offsets, remote_check_symbols, remote_supported_packet)
7585         (remote_query_supported, remote_packet_size)
7586         (remote_serial_quit_handler, remote_detach_pid)
7587         (remote_vcont_probe, remote_resume_with_hc)
7588         (send_interrupt_sequence, interrupt_query)
7589         (remote_notif_get_pending_events, fetch_register_using_p)
7590         (send_g_packet, process_g_packet, fetch_registers_using_g)
7591         (store_register_using_P, store_registers_using_G)
7592         (set_remote_traceframe, check_binary_download)
7593         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
7594         (remote_xfer_live_readonly_partial, remote_read_bytes)
7595         (remote_send_printf, remote_flash_write, readchar)
7596         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
7597         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
7598         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
7599         (extended_remote_disable_randomization, extended_remote_run)
7600         (send_environment_packet, extended_remote_environment_support)
7601         (extended_remote_set_inferior_cwd, remote_write_qxfer)
7602         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
7603         (packet_command): Now methods of ...
7604         (remote_target): ... this class.
7605         (m_remote_state) <remote_target>: New field.
7606         (struct remote_state) <stop_reply_queue,
7607         remote_async_inferior_event_token, wait_forever_enabled_p>: New
7608         fields.
7609         (remote_state::remote_state): Allocate stop_reply_queue.
7610         (remote_state): Delete global.
7611         (get_remote_state_raw): Delete.
7612         (remote_target::get_remote_state): Allocate m_remote_state on
7613         demand.
7614         (get_current_remote_target): New.
7615         (remote_ops, extended_remote_ops): Delete.
7616         (wait_forever_enabled_p, remote_async_inferior_event_token):
7617         Delete, moved to struct remote_state.
7618         (remote_target::close): Delete self.  Destruction bits split to
7619         ...
7620         (remote_target::~remote_target): ... this.
7621         (show_memory_packet_size): Adjust to use
7622         get_current_remote_target.
7623         (struct protocol_feature) <func>: Add remote_target parameter.
7624         All callers adjusted.
7625         (curr_quit_handler_target): New.
7626         (remote_serial_quit_handler): Reimplement.
7627         (remote_target::open_1): Adjust to use get_current_remote_target.
7628         Heap-allocate remote_target/extended_remote_target instances.
7629         (vcont_builder::vcont_builder): Add remote_target parameter, and
7630         save it in m_remote.  All callers adjusted.
7631         (vcont_builder::m_remote): New field.
7632         (vcont_builder::restart, vcont_builder::flush)
7633         (vcont_builder::push_action): Use it.
7634         (remote_target::commit_resume): Use it.
7635         (struct queue_iter_param) <remote>: New field.
7636         (remote_target::remove_new_fork_children): Fill in 'remote' field.
7637         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
7638         (check_pending_event_prevents_wildcard_vcont_callback)
7639         (remote_target::check_pending_events_prevent_wildcard_vcont)
7640         (remote_target::discard_pending_stop_replies)
7641         (remote_target::discard_pending_stop_replies_in_queue)
7642         (remote_target::remote_notif_remove_queued_reply): Fill in
7643         'remote' field.
7644         (remote_notif_get_pending_events): New.
7645         (remote_target::readchar, remote_target::remote_serial_write):
7646         Save/restore curr_quit_handler_target.
7647         (putpkt): New.
7648         (kill_new_fork_children): Fill in 'remote' field.
7649         (packet_command): Use get_current_remote_target, defer to
7650         remote_target method of same name.
7651         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
7652         parameter, and save it in m_remote.  All callers adjusted.
7653         (scoped_remote_fd::release): Use m_remote.
7654         (scoped_remote_fd::m_remote): New field.
7655         (remote_file_put, remote_file_get, remote_file_delete): Use
7656         get_current_remote_target, defer to remote_target method of same
7657         name.
7658         (remote_btrace_reset): Add remote_state paremeter.  Update all
7659         callers.
7660         (remote_async_inferior_event_handler). Pass down 'data'.
7661         (remote_new_objfile): Use get_current_remote_target.
7662         (remote_target::vcont_r_supported): New.
7663         (set_range_stepping): Use get_current_remote_target and
7664         remote_target::vcont_r_supported.
7665         (_initialize_remote): Don't allocate 'remote_state' and
7666         'stop_reply_queue' globals.
7667         * remote.h (struct remote_target): Forward declare.
7668         (getpkt, putpkt, remote_notif_get_pending_events): Add
7669         'remote_target' parameter.
7670
7671 2018-05-22  Pedro Alves  <palves@redhat.com>
7672
7673         * remote.c (vcont_builder): Now a class.  Make all data members
7674         private.
7675         (vcont_builder) <vcont_builder, restart, flush, push_action>:
7676         Declare methods.
7677         (vcont_builder_restart): Rename to ...
7678         (vcont_builder::restart): ... this.
7679         (vcont_builder_flush): Rename to ...
7680         (vcont_builder::flush): ... this.
7681         (vcont_builder_push_action): Rename to ...
7682         (vcont_builder::push_action): ... this.
7683         (remote_target::commit_resume): Adjust.
7684
7685 2018-05-22  Pedro Alves  <palves@redhat.com>
7686
7687         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
7688         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
7689         (get_fixed_memory_packet_size): New.
7690         (get_memory_packet_size): Use it.
7691         (set_memory_packet_size): Don't override the config size with
7692         DEFAULT_MAX_MEMORY_PACKET_SIZE.
7693         (show_memory_packet_size): Use get_fixed_memory_packet_size.
7694         Don't refer to get_memory_packet_size if not connected to a remote
7695         target.  Show "(default)" if configured size is 0.
7696
7697 2018-05-22  Pedro Alves  <palves@redhat.com>
7698
7699         * remote.c (remote_target::mourn_inferior): Move
7700         discard_pending_stop_replies call here from ...
7701         (_initialize_remote): ... here.
7702
7703 2018-05-22  Pedro Alves  <palves@redhat.com>
7704
7705         * remote.c (compare_section_command): Remove set_general_process
7706         call.
7707
7708 2018-05-22  Pedro Alves  <palves@redhat.com>
7709
7710         * remote.c (struct packet_reg, struct remote_arch_state):
7711         Move higher up in the file.
7712         (remote_state) <m_arch_states>: Store remote_arch_state values
7713         instead of remote_arch_state pointers.
7714         (remote_state::get_remote_arch_state): Adjust.
7715
7716 2018-05-22  Pedro Alves  <palves@redhat.com>
7717
7718         * remote.c: Include <unordered_map>.
7719         (remote_state): Now a class.
7720         (remote_state) <get_remote_arch_state>: Declare method.
7721         <get_remote_arch_state>: New field.
7722         (remote_arch_state) <remote_arch_state>: Declare ctor.
7723         <regs>: Now a unique_ptr.
7724         (remote_gdbarch_data_handle): Delete.
7725         (get_remote_arch_state): Delete.
7726         (remote_state::get_remote_arch_state): New.
7727         (get_remote_state): Adjust to call remote_state's
7728         get_remote_arch_state method.
7729         (init_remote_state): Delete, bits factored out to ...
7730         (remote_arch_state::remote_arch_state): ... this new method.
7731         (get_remote_packet_size, get_memory_packet_size)
7732         (process_g_packet, remote_target::fetch_registers)
7733         (remote_target::prepare_to_store, store_registers_using_G)
7734         (remote_target::store_registers, remote_target::get_trace_status):
7735         Adjust to call remote_state's method.
7736         (_initialize_remote): Remove reference to
7737         remote_gdbarch_data_handle.
7738
7739 2018-05-22  Pedro Alves  <palves@redhat.com>
7740
7741         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
7742         pread>: New method declarations.
7743         (remote_target::open_1): Adjust.
7744         (readahead_cache_invalidate): Rename to ...
7745         (readahead_cache::invalidate): ... this, and adjust to be a class
7746         method.
7747         (readahead_cache_invalidate_fd): Rename to ...
7748         (readahead_cache::invalidate_fd): ... this, and adjust to be a
7749         class method.
7750         (remote_hostio_pwrite): Adjust.
7751         (remote_hostio_pread_from_cache): Rename to ...
7752         (readahead_cache::pread): ... this, and adjust to be a class
7753         method.
7754         (remote_hostio_close): Adjust.
7755
7756 2018-05-22  Pedro Alves  <palves@redhat.com>
7757
7758         * remote.c (remote_hostio_close_cleanup): Delete.
7759         (class scoped_remote_fd): New.
7760         (remote_file_put, remote_file_get): Use it.
7761
7762 2018-05-22  Pedro Alves  <palves@redhat.com>
7763
7764         (struct vCont_action_support): Use bool and initialize all fields.
7765         (struct readahead_cache): Initialize all fields.
7766         (remote_state): Use bool and initialize all fields.
7767         (remote_state::remote_state, remote_state::~remote_state): New.
7768         (new_remote_state): Delete.
7769         (_initialize_remote): Use new to allocate remote_state.
7770
7771 2018-05-22  Pedro Alves  <palves@redhat.com>
7772             張俊芝  <zjz@zjz.name>
7773
7774         PR gdb/22973
7775         * c-exp.y: Include "c-support.h".
7776         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
7777         of tolower.  Use c_ident_is_alpha to scan names.
7778         * c-lang.c: Include "c-support.h".
7779         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
7780         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
7781         * c-support.h: New file, with bits factored out from ...
7782         * cp-name-parser.y: ... this file.
7783         Include "c-support.h".
7784         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
7785         c-support.h and renamed.
7786         (symbol_end, yylex): Adjust.
7787
7788 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7789
7790         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
7791         parameter type to CORE_ADDR.
7792         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
7793         parameter type in declaration to CORE_ADDR.
7794         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
7795         target_auxv_search to get AT_HWCAP and use the result to get the
7796         target description.
7797         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
7798         to CORE_ADDR. Remove the cast of the return value to unsigned
7799         long. Fix error predicate of target_auxv_search.
7800         (ppc_linux_nat_target::read_description): Change the type of the
7801         hwcap variable to CORE_ADDR.
7802
7803 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7804
7805         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
7806         if the size of fpscr is larger than 32 bits.
7807
7808 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7809
7810         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
7811         (ppc32_linux_vsxregmap): New global.
7812         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
7813         regcache_supply_regset, and regcache_collect_regset.
7814         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
7815         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
7816         (fetch_vsx_register, store_vsx_register): Remove.
7817         (fetch_vsx_registers): Add regno parameter. Get regset using
7818         ppc_linux_vsxregset. Use regset to supply registers.
7819         (store_vsx_registers): Add regno parameter. Get regset using
7820         ppc_linux_vsxregset. Use regset to collect registers.
7821         (fetch_register): Call fetch_vsx_registers instead of
7822         fetch_vsx_register.
7823         (store_register): Call store_vsx_registers instead of
7824         store_vsx_register.
7825         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
7826         new regno parameter.
7827         (store_ppc_registers): Call store_vsx_registers with -1 for the
7828         new regno parameter.
7829         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
7830         (ppc_collect_vsxregset): Remove.
7831
7832 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7833
7834         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
7835         offset fields.
7836         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
7837         for vector register offset fields.
7838         (ppc64_fbsd_reg_offsets): Likewise.
7839         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7840         to vector register offset fields.
7841         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7842         to vector register offset fields.
7843         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
7844         vector register offset fields.
7845         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
7846         initializers for vector register offset fields.
7847         (rs6000_aix64_reg_offsets): Likewise.
7848         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
7849         (ppc_supply_vrregset): Remove.
7850         (ppc_collect_vrregset): Remove.
7851         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
7852         (ppc_linux_vrregset) : New function.
7853         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
7854         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
7855         (ppc32_linux_vrregset): Remove.
7856         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
7857         and use result instead of ppc32_linux_vrregset.
7858         (ppc32_linux_reg_offsets): Remove initializers for vector register
7859         offset fields.
7860         (ppc64_linux_reg_offsets): Likewise.
7861         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
7862         * ppc-linux-nat.c: Include regset.h.
7863         (gdb_vrregset_t): Adjust comment to account for little-endian
7864         mode.
7865         (supply_vrregset, fill_vrregset): Remove.
7866         (fetch_altivec_register, store_altivec_register): Remove.
7867         (fetch_altivec_registers): Add regno parameter. Get regset using
7868         ppc_linux_vrregset. Use regset to supply registers.
7869         (store_altivec_registers): Add regno parameter. Get regset using
7870         ppc_linux_vrregset. Use regset to collect registers.
7871         (fetch_register): Call fetch_altivec_registers instead of
7872         fetch_altivec_register.
7873         (store_register): Call store_altivec_registers instead of
7874         store_altivec_register.
7875         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
7876         the new regno parameter.
7877         (store_ppc_registers): Call store_altivec_registers with -1 for
7878         the new regno parameter.
7879
7880 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7881
7882         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
7883         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
7884         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
7885         (gdb_vrregset_t): Change array type size to
7886         PPC_LINUX_SIZEOF_VRREGSET.
7887         (gdb_vsxregset_t): Change array type size to
7888         PPC_LINUX_SIZEOF_VSXREGSET.
7889         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
7890         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
7891         PPC_LINUX_SIZEOF_VSXREGSET.
7892
7893 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7894
7895         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
7896         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
7897         nat/ppc-linux.c.
7898         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
7899         ppc_linux_target_wordsize with tid.
7900         (ppc_linux_nat_target::read_description): Call ppc_linux_target
7901         wordsize with tid.
7902         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
7903         (ppc64_64bit_inferior_p): Add static and inline specifiers.
7904         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
7905         tid parameter. Remove static specifier.
7906         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
7907         (ppc_linux_target_wordsize): New declaration.
7908
7909 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7910
7911         * arch/ppc-linux-common.c: New file.
7912         * arch/ppc-linux-common.h: New file.
7913         * arch/ppc-linux-tdesc.h: New file.
7914         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
7915         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
7916         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
7917         arch/ppc-linux-tdesc.h.
7918         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
7919         arch/ppc-linux-tdesc.h.
7920         (ppc_linux_nat_target::read_description): Remove target
7921         description matching code. Fill a ppc_linux_features struct and
7922         call ppc_linux_match_description with it. Move comment about ISA
7923         2.05 to ppc-linux-common.c.
7924         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
7925         arch/ppc-linux-tdesc.h.
7926         (ppc_linux_core_read_description): Remove target description
7927         matching code. Fill a ppc_linux_features struct and call
7928         ppc_linux_match_description with it.
7929         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
7930         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
7931         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
7932         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
7933         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
7934         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
7935         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
7936         (tdesc_powerpc_e500l): Remove.
7937
7938 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
7939
7940         * ada-lang.c (catch_assert_command): Pass empty string instead
7941         of NULL for excep_string argument.
7942
7943 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7944
7945         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
7946         the width of the requested register exceeds the width of the
7947         `ptrace' data type.
7948
7949 2018-05-21  Tom Tromey  <tom@tromey.com>
7950
7951         * printcmd.c (output_command): Remove.
7952         (output_command_const): Rename to output_command.
7953         * valprint.h (output_command): Rename from output_command_const.
7954         * tracepoint.c (trace_dump_actions): Call output_command.
7955
7956 2018-05-21  Tom Tromey  <tom@tromey.com>
7957
7958         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
7959         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
7960         * ada-lang.h (create_ada_exception_catchpoint): Update.
7961         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
7962         std::string.
7963         (create_excep_cond_exprs, ~ada_catchpoint)
7964         (should_stop_exception, print_one_exception)
7965         (print_mention_exception, print_recreate_exception): Update.
7966         (ada_get_next_arg): Remove.
7967         (catch_ada_exception_command_split): Use std::string.  Change type
7968         of "excep_string", "cond_string".
7969         (catch_ada_exception_command): Update.
7970         (create_ada_exception_catchpoint): Change type of excep_string.
7971         (ada_exception_sal): Remove excep_string parameter.
7972         (~ada_catchpoint): Remove.
7973
7974 2018-05-21  Tom Tromey  <tom@tromey.com>
7975
7976         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
7977         cleanup.
7978
7979 2018-05-21  Tom Tromey  <tom@tromey.com>
7980
7981         * ada-lang.c (ada_exception_message_1, ada_exception_message):
7982         Return unique_xmalloc_ptr.
7983         (print_it_exception): Update.
7984
7985 2018-05-21  Tom Tromey  <tom@tromey.com>
7986
7987         * tracepoint.c (trace_dump_actions): Use std::string.
7988
7989 2018-05-21  Tom Tromey  <tom@tromey.com>
7990
7991         * symfile.c (reread_symbols): Use std::string for original_name.
7992
7993 2018-05-21  Tom Tromey  <tom@tromey.com>
7994
7995         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
7996         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
7997         constructor.
7998
7999 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8000
8001         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8002         instance to...
8003         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8004         * objfiles.c (get_objfile_bfd_data): Allocate
8005         objfile_per_bfd_storage with obstack_new when allocating on
8006         obstack.
8007
8008 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8009
8010         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8011         OBSTACK_ZALLOC.
8012         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8013         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8014         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8015         (add_pending): Likewise.
8016         (parse_symbol): Likewise.
8017         (parse_partial_symbols): Likewise.
8018         (psymtab_to_symtab_1): Likewise.
8019         (new_psymtab): Likewise.
8020         (elfmdebug_build_psymtabs): Likewise.
8021         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8022         * objfiles.c (get_objfile_bfd_data): Likewise.
8023         (objfile_register_static_link): Likewise.
8024         * psymtab.c (allocate_psymtab): Likewise.
8025         * stabsread.c (read_member_functions): Likewise.
8026         * xcoffread.c (xcoff_end_psymtab): Likewise.
8027
8028 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8029
8030         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8031         compiler supports std::is_trivially_constructible.
8032         * common/poison.h: Include obstack.h.
8033         (IsMallocable): Define to is_trivially_constructible if the
8034         compiler supports it, define to true_type otherwise.
8035         (xobnew): New.
8036         (XOBNEW): Redefine.
8037         (xobnewvec): New.
8038         (XOBNEWVEC): Redefine.
8039         * gdb_obstack.h (obstack_zalloc): New.
8040         (OBSTACK_ZALLOC): Redefine.
8041         (obstack_calloc): New.
8042         (OBSTACK_CALLOC): Redefine.
8043         (obstack_new): New.
8044         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8045         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8046         gdbarch.c.
8047         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8048         obstack_calloc/obstack_zalloc.
8049         (gdbarch_obstack_zalloc): Remove.
8050         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8051
8052 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8053
8054         * stack.c (backtrace_command_1): Remove useless variable int i.
8055
8056 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8057
8058         * stack.c (print_frame_info): Fix comment.
8059
8060 2018-05-18  Tom Tromey  <tom@tromey.com>
8061
8062         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8063         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8064         (~dwarf2_per_objfile): Update
8065         (dwarf2_get_dwz_file): Use new.
8066         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8067         unique_ptr.
8068
8069 2018-05-18  Tom Tromey  <tom@tromey.com>
8070
8071         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8072         unique_ptr.
8073         * dwarf2read.c (struct dwp_file): Add constructor and
8074         initializers.
8075         (open_and_init_dwp_file): Return a unique_ptr.
8076         (dwarf2_per_objfile, create_dwp_hash_table)
8077         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8078         (lookup_dwo_unit_in_dwp): Update.
8079         (open_and_init_dwp_file, get_dwp_file): Update.
8080
8081 2018-05-18  Tom Tromey  <tom@tromey.com>
8082
8083         * dwarf2read.c (dwarf2_per_objfile): Update.
8084         (struct mapped_index): Add initializers.
8085         (dwarf2_read_index): Use new.
8086         (dw2_symtab_iter_init): Update.
8087         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8088         unique_ptr.
8089
8090 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8091
8092         * dwarf2read.c (mapped_index) <total_size>: Remove.
8093
8094 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8095
8096         * unittests/format_pieces-selftests.c (test_format_specifier):
8097         Add ARI comments.
8098
8099 2018-05-18  Tom Tromey  <tom@tromey.com>
8100
8101         * c-typeprint.c (maybe_print_hole): New function.
8102         (c_print_type_struct_field_offset): Update.
8103         (c_type_print_base_struct_union): Call maybe_print_hole.
8104
8105 2018-05-17  Keith Seitz  <keiths@redhat.com>
8106
8107         * breakpoint.c (build_bpstat_chain): New function, moved from
8108         bpstat_stop_status.
8109         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8110         If no stop chain is passed, call build_bpstat_chain to build it.
8111         * breakpoint.h (build_bpstat_chain): Declare.
8112         (bpstat_stop_status): Move documentation here from breakpoint.c.
8113         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8114         build the stop chain and pass it to skip_inline_frames.
8115         Pass this stop chain to bpstat_stop_status.
8116         * inline-frame.c: Include breakpoint.h.
8117         (stopped_by_user_bp_inline_frame): New function.
8118         (skip_inline_frames): Add parameter `stop_chain'.
8119         Move documention to inline-frame.h.
8120         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8121         whether the frame should be elided.
8122         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8123         Add moved documentation and update for new parameter.
8124
8125 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8126
8127         PR cli/14975
8128         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8129         unittests/format_pieces-selftests.c.
8130         * common/format.h (format_piece) <operator==>: New.
8131         (format_pieces) <operator[]>: Remove.
8132         * common/format.c (format_pieces::format_pieces): Handle \e.
8133         * unittests/format_pieces-selftests.c: New.
8134
8135 2018-05-17  Tom Tromey  <tom@tromey.com>
8136
8137         PR symtab/23010:
8138         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8139         (dw2_instantiate_symtab): Add skip_partial parameter.
8140         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8141         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8142         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8143         (dw2_expand_symtabs_matching_one)
8144         (dw2_find_pc_sect_compunit_symtab)
8145         (dw2_debug_names_lookup_symbol)
8146         (dw2_debug_names_expand_symtabs_for_function): Update.
8147         (init_cutu_and_read_dies): Add skip_partial parameter.
8148         (process_psymtab_comp_unit, build_type_psymtabs_1)
8149         (process_skeletonless_type_unit, load_partial_comp_unit)
8150         (psymtab_to_symtab_1): Update.
8151         (load_full_comp_unit): Add skip_partial parameter.
8152         (process_imported_unit_die, dwarf2_read_addr_index)
8153         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8154         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8155         (read_signatured_type): Update.
8156
8157 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8158
8159         * value.c (release_value): Remove unused variable.
8160         (record_latest_value): Likewise.
8161         (access_value_history): Likewise.
8162         (preserve_values): Likewise.
8163
8164 2018-05-17  Tom Tromey  <tom@tromey.com>
8165
8166         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8167         Initialize.
8168
8169 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8170
8171         PR gdb/22286
8172         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8173         Also handle registers whose width is not a multiple of
8174         PTRACE_TYPE_RET.
8175         (linux_nat_trad_target::store_register): Likewise.
8176
8177 2018-05-16  Tom Tromey  <tom@tromey.com>
8178
8179         * gdbcore.h (core_bfd): Redefine.
8180         * corelow.c (core_target::close): Update.
8181         (core_target_open): Update.
8182         * progspace.h (struct program_space) <cbfd>: Now a
8183         gdb_bfd_ref_ptr.
8184
8185 2018-05-16  Tom Tromey  <tom@tromey.com>
8186
8187         PR cli/19551:
8188         * symfile-add-flags.h (enum symfile_add_flags)
8189         <SYMFILE_NOT_FILENAME>: New constant.
8190         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8191         objfile name from BFD.
8192         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8193         * minidebug.c (find_separate_debug_file_in_section): Put
8194         ".gnu_debugdata" into BFD's file name.
8195
8196 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8197
8198         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8199         Remove.
8200
8201 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8202
8203         PR binutils/21446
8204         * aarch64-tdep.c (aarch64_analyze_prologue,
8205         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8206         Indicate not interested in errors.
8207
8208 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8209
8210         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8211         Supply the MIPS_ZERO_REGNUM register.
8212
8213 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8214
8215         * mips-tdep.c (mask_address_var): Make variable static.
8216
8217 2018-05-14  Tom Tromey  <tom@tromey.com>
8218
8219         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8220
8221 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8222
8223         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8224         FXSAVE_ADDR for the mxcsr register.
8225
8226 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8227
8228         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8229
8230 2018-05-11  Pedro Alves  <palves@redhat.com>
8231
8232         * corelow.c (core_target) <core_target>: No longer inline.
8233         Initialize m_core_gdbarch, m_core_vec and build the section table
8234         here.
8235         <~core_target>: New.
8236         <core_gdbarch, get_core_register_section>: New methods.
8237         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8238         factored out from ...
8239         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8240         (core_ops): Delete.
8241         (sniff_core_bfd): Add gdbarch parameter.
8242         (core_close): Delete, merged into ...
8243         (core_target::close): ... here.  Delete self.
8244         (core_close_cleanup): Delete.
8245         (core_target_open): Allocate a core_target on the heap.  Use a
8246         unique_ptr instead of a cleanup.  Bits moved into the core_target
8247         ctor.  Adjust to use core_target methods instead of globals.
8248         (get_core_register_section): Rename to ...
8249         (core_target::get_core_register_section): ... this and adjust.
8250         (struct get_core_registers_cb_data): New.
8251         (get_core_registers_cb): Use it.  Use bool.
8252         (core_target::fetch_registers, core_target::files_info)
8253         (core_target::xfer_partial, core_target::read_description)
8254         (core_target::pid_to, core_target::thread_name): Adjust to
8255         reference class fields instead of globals.
8256         * target.h (struct target_ops_deleter, target_ops_up): New.
8257
8258 2018-05-11  Pedro Alves  <palves@redhat.com>
8259
8260         * corefile.c (core_file_command): Move to corelow.c.
8261         * corelow.c (the_core_target): Delete.
8262         (core_file_command): Moved from corefile.c.  Check exec_bfd
8263         instead of the_core_target.  Use target_detach instead of calling
8264         into the_core_target directly.
8265         (maybe_say_no_core_file_now): New.
8266         (core_target::detach): Use it.
8267         (_initialize_corelow): Remove references to the_core_target.
8268         * gdbcore.h (the_core_target): Delete.
8269
8270 2018-05-11  Tom Tromey  <tromey@redhat.com>
8271             Pedro Alves  <palves@redhat.com>
8272
8273         * corefile.c (core_bfd): Remove.
8274         * gdbcore.h (core_bfd): Now a macro.
8275         * progspace.h (struct program_space) <cbfd>: New field.
8276
8277 2018-05-11  Tom Tromey  <tom@tromey.com>
8278
8279         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8280         gdb::def_vector.
8281
8282 2018-05-10  Tom Tromey  <tom@tromey.com>
8283
8284         * configure: Rebuild.
8285         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8286
8287 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8288
8289         PR server/23158:
8290         * regformats/regdat.sh: Adjust script, following the addition
8291         of the new expedite_regs parameter to init_target_desc.
8292
8293 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8294     
8295         PR gdb/23127
8296         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8297         set_gdbarch_significant_addr_bit.
8298         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8299         set_gdbarch_significant_addr_bit.
8300         * utils.c (address_significant): Update to sign extend addr.
8301
8302 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8303
8304         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8305         (xtensa_linux_init_abi): Limit tdep->num_regs by
8306         tdep->num_nopriv_regs.
8307         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8308         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8309         not initialized.
8310
8311 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8312
8313         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8314
8315 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8316
8317         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8318         (I387_MXCSR_INIT_VAL): New constant.
8319         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8320         buffer if it was supplied by the inferior.
8321         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8322         (i387_xsave_get_clear_bv): New function.
8323         (i387_supply_xsave): Only read x87 control registers from the
8324         xsave buffer if the feature is enabled, and the state will have
8325         been written, otherwise, provide a suitable default.
8326         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8327         including x87 control registers.  Update control registers if they
8328         have changed from the default value, and mark features as enabled
8329         as required.
8330         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8331
8332 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8333
8334         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8335
8336 2018-05-07  Tom Tromey  <tom@tromey.com>
8337
8338         * configure: Rebuild.
8339         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8340
8341 2018-05-07  Tom Tromey  <tom@tromey.com>
8342
8343         PR tdep/20362:
8344         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8345         bit.  Use correct value for VDIV.
8346
8347 2018-05-04  Tom Tromey  <tom@tromey.com>
8348
8349         * configure: Rebuild.
8350         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8351
8352 2018-05-04  Tom Tromey  <tom@tromey.com>
8353
8354         * linux-record.c (record_linux_system_call) <case
8355         RECORD_SYS_RECVFROM>: Add "break".
8356
8357 2018-05-04  Tom Tromey  <tom@tromey.com>
8358
8359         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8360         Add missing "break".
8361         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8362         Add missing "break".
8363
8364 2018-05-04  Tom Tromey  <tom@tromey.com>
8365
8366         * rs6000-tdep.c (ppc_process_record_op4)
8367         (ppc_process_record_op63): Add fall-through comment.
8368
8369 2018-05-04  Tom Tromey  <tom@tromey.com>
8370
8371         * i386-tdep.c (i386_process_record): Add fall-through comment.
8372
8373 2018-05-04  Tom Tromey  <tom@tromey.com>
8374
8375         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8376         comment.
8377
8378 2018-05-04  Tom Tromey  <tom@tromey.com>
8379
8380         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8381         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8382         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8383         comment.
8384         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8385         comment.
8386         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8387         comment.
8388
8389 2018-05-04  Tom Tromey  <tom@tromey.com>
8390
8391         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8392
8393 2018-05-04  Tom Tromey  <tom@tromey.com>
8394
8395         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8396         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8397         * symfile.c (section_is_mapped): Fix fall-through comment.
8398         * stabsread.c (define_symbol, read_member_functions): Fix
8399         fall-through comment.
8400         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8401         comment.
8402         * remote.c (remote_wait_as): Fix fall-through comment.
8403         * p-exp.y (yylex): Fix fall-through comment.
8404         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8405         comment.
8406         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8407         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8408         * jv-exp.y (yylex): Fix fall-through comment.
8409         * go-exp.y (lex_one_token): Fix fall-through comment.
8410         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8411         fall-through comment.
8412         * f-exp.y (yylex): Fix fall-through comment.
8413         * dwarf2read.c (process_die): Fix fall-through comments.
8414         * dbxread.c (process_one_symbol): Fix fall-through comment.
8415         * d-exp.y (lex_one_token): Fix fall-through comment.
8416         * cp-name-parser.y (yylex): Fix fall-through comment.
8417         * coffread.c (coff_symtab_read): Fix fall-through comment.
8418         * c-exp.y (lex_one_token): Fix fall-through comment.
8419         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8420         comment.
8421         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8422         comment.
8423
8424 2018-05-04  Tom Tromey  <tom@tromey.com>
8425
8426         PR python/22730:
8427         * NEWS: Mention gdb.execute change.
8428         * gdbcmd.h (execute_control_command): Don't declare.
8429         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8430         execute_control_commands, execute_control_commands_to_string.
8431         * cli/cli-script.h (execute_control_commands)
8432         (execute_control_commands_to_string): Declare.
8433         (execute_control_command): Add from_tty parameter.
8434         * cli/cli-script.c (execute_control_commands)
8435         (execute_control_commands_to_string): New functions.
8436         (execute_user_command): Use execute_control_commands.
8437         (execute_control_command_1): Add "from_tty" parameter.  Update.
8438         (execute_control_command): Likewise.
8439
8440 2018-05-04  Tom Tromey  <tom@tromey.com>
8441
8442         PR python/22731:
8443         * NEWS: Mention that breakpoint commands are writable.
8444         * python/py-breakpoint.c (bppy_set_commands): New function.
8445         (breakpoint_object_getset) <"commands">: Use it.
8446
8447 2018-05-04  Tom Tromey  <tom@tromey.com>
8448
8449         * tracepoint.c (actions_command): Update.
8450         * mi/mi-cmd-break.c (mi_command_line_array)
8451         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8452         (mi_read_next_line): Remove.
8453         (mi_cmd_break_commands): Update.
8454         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8455         function_view.
8456         * cli/cli-script.c (get_command_line): Update.
8457         (process_next_line): Use function_view.  Constify.
8458         (recurse_read_control_structure, read_command_lines)
8459         (read_command_lines_1): Change argument types to function_view.
8460         (do_define_command, document_command): Update.
8461         * breakpoint.h (check_tracepoint_command): Don't declare.
8462         * breakpoint.c (check_tracepoint_command): Remove.
8463         (commands_command_1, create_tracepoint_from_upload): Update.
8464
8465 2018-05-04  Tom Tromey  <tom@tromey.com>
8466
8467         PR gdb/11750:
8468         * cli/cli-script.h (enum command_control_type) <define_control>:
8469         New constant.
8470         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8471         (build_command_line, execute_control_command_1)
8472         (process_next_line): Likewise.
8473         (do_define_command): New function, extracted from define_command.
8474         (define_command): Use it.
8475
8476 2018-05-04  Tom Tromey  <tom@tromey.com>
8477
8478         * tracepoint.c (actions_command): Update.
8479         * cli/cli-script.h (read_command_lines): Update.
8480         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8481         (MAX_TMPBUF): Remove define.
8482         (define_command): Use string_printf.
8483         (document_command): Likewise.
8484         * breakpoint.c (commands_command_1): Update.
8485
8486 2018-05-04  Tom Tromey  <tom@tromey.com>
8487
8488         * top.c (execute_command): Update.
8489         * cli/cli-script.h (print_command_lines): Now varargs.
8490         * cli/cli-script.c (print_command_lines): Now varargs.
8491         (execute_control_command_1) <case while_control, case if_control>:
8492         Update.
8493
8494 2018-05-04  Tom Tromey  <tom@tromey.com>
8495
8496         * tracepoint.c (all_tracepoint_actions): Rename from
8497         all_tracepoint_actions_and_cleanup.  Change return type.
8498         (actions_command, encode_actions_1, encode_actions)
8499         (trace_dump_actions, tdump_command): Update.
8500         * remote.c (remote_download_command_source): Update.
8501         * python/python.c (gdbpy_eval_from_control_command)
8502         (python_command, python_interactive_command): Update.
8503         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8504         * guile/guile.c (guile_command)
8505         (gdbscm_eval_from_control_command, guile_command): Update.
8506         * compile/compile.c (compile_code_command)
8507         (compile_print_command, compile_to_object): Update.
8508         * cli/cli-script.h (struct command_lines_deleter): New.
8509         (counted_command_line): New typedef.
8510         (struct command_line): Add constructor, destructor.
8511         <body_list>: Remove.
8512         <body_list_0, body_list_1>: New members.
8513         (command_line_up): Remove typedef.
8514         (read_command_lines, read_command_lines_1, get_command_line):
8515         Update.
8516         (copy_command_lines): Don't declare.
8517         * cli/cli-script.c (build_command_line): Use "new".
8518         (get_command_line): Return counted_command_line.
8519         (print_command_lines, execute_user_command)
8520         (execute_control_command_1, while_command, if_command): Update.
8521         (realloc_body_list): Remove.
8522         (process_next_line, recurse_read_control_structure): Update.
8523         (read_command_lines, read_command_lines_1): Return counted_command_line.
8524         (free_command_lines): Use "delete".
8525         (copy_command_lines): Remove.
8526         (define_command, document_command, show_user_1): Update.
8527         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8528         a counted_command_line.
8529         * breakpoint.h (counted_command_line): Remove typedef.
8530         (breakpoint_set_commands): Update.
8531         * breakpoint.c (check_no_tracepoint_commands)
8532         (validate_commands_for_breakpoint): Update.
8533         (breakpoint_set_commands): Change commands to be a
8534         counted_command_line.
8535         (commands_command_1, update_dprintf_command_list)
8536         (create_tracepoint_from_upload): Update.
8537
8538 2018-05-04  Tom Tromey  <tom@tromey.com>
8539
8540         * cli/cli-decode.h (cmd_list_element): New constructor.
8541         (~cmd_list_element): New destructor.
8542         (struct cmd_list_element): Add initializers.
8543         * cli/cli-decode.c (do_add_cmd): Use "new".
8544         (delete_cmd): Use "delete".
8545
8546 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8547             Pedro Alves <palves@redhat.com>
8548
8549         PR breakpoints/19806 and support for PR external/20207.
8550         * NEWS: Mention Aarch64 watchpoint improvements.
8551         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8552         watchpoints and PR external/20207 watchpoints.
8553         * nat/aarch64-linux-hw-point.c
8554         (kernel_supports_any_contiguous_range): New.
8555         (aarch64_watchpoint_offset): New.
8556         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8557         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8558         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8559         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8560         next_addr_orig_p.  Support PR external/20207 watchpoints.
8561         (aarch64_downgrade_regs): New.
8562         (aarch64_dr_state_insert_one_point): New parameters offset and
8563         addr_orig.
8564         (aarch64_dr_state_remove_one_point): Likewise.
8565         (aarch64_handle_breakpoint): Update caller.
8566         (aarch64_handle_aligned_watchpoint): Likewise.
8567         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
8568         aligned_offset.
8569         (aarch64_linux_set_debug_regs): Remove const from state.  Call
8570         aarch64_downgrade_regs.
8571         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
8572         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
8573         (DR_CONTROL_MASK): ... this.
8574         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
8575         (unsigned int aarch64_watchpoint_offset): New prototype.
8576         (aarch64_linux_set_debug_regs): Remove const from state.
8577         * utils.c (align_up, align_down): Move to ...
8578         * common/common-utils.c (align_up, align_down): ... here.
8579         * utils.h (align_up, align_down): Move to ...
8580         * common/common-utils.h (align_up, align_down): ... here.
8581
8582 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
8583
8584         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
8585         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
8586         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
8587         Re-implement to match the ABI as summarized in GCC's
8588         gcc/config/sparc/sparc.c.  All callers updated.
8589         (sparc32_store_arguments): Remove assertion.
8590
8591 2018-05-04  Tom Tromey  <tom@tromey.com>
8592
8593         * printcmd.c: Don't include tui.h.
8594         (decode_format): Use skip_spaces.
8595
8596 2018-05-04  Tom Tromey  <tom@tromey.com>
8597
8598         PR gdb/22619:
8599         * printcmd.c (last_count): New global.
8600         (x_command): Use saved count when repeating.
8601
8602 2018-05-04  Tom Tromey  <tom@tromey.com>
8603
8604         * nto-procfs.c (do_closedir_cleanup): Remove.
8605         (procfs_pidlist): Use gdb_dir_up.
8606         * procfs.c (do_closedir_cleanup): Remove.
8607         (proc_update_threads): Use gdb_dir_up.
8608         * common/filestuff.h (struct gdb_dir_deleter): New.
8609         (gdb_dir_up): New typedef.
8610
8611 2018-05-04  Tom Tromey  <tom@tromey.com>
8612
8613         * ada-lang.c (print_mention_exception): Use std::string.
8614
8615 2018-05-04  Tom Tromey  <tom@tromey.com>
8616
8617         * ada-lang.c (create_excep_cond_exprs): Update.
8618         (ada_exception_catchpoint_cond_string): Use std::string.
8619
8620 2018-05-04  Tom Tromey  <tom@tromey.com>
8621
8622         * ada-lang.c (xget_renaming_scope): Return std::string.
8623         (old_renaming_is_invisible): Update.
8624
8625 2018-05-04  Tom Tromey  <tom@tromey.com>
8626
8627         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
8628         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
8629
8630 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
8631
8632         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
8633
8634 2018-05-04  Tom Tromey  <tom@tromey.com>
8635
8636         * remote.c (remote_query_supported_append): Change type.
8637         (remote_check_symbols): Update.
8638
8639 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
8640
8641         PR gdb/11420
8642         * configure.ac: Prepend libpython.
8643         * python/python-config.py: Likewise.
8644         * configure: Regenerate.
8645
8646 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
8647
8648         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
8649
8650 2018-05-03  Pedro Alves  <palves@redhat.com>
8651
8652         * s390-linux-nat.c
8653         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
8654         override.  Write 'true' instead of '1'.
8655         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
8656         declaration.
8657
8658 2018-05-02  Pedro Alves  <palves@redhat.com>
8659
8660         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
8661         add_inf_child_target.
8662         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
8663         add_inf_child_target.
8664         * aix-thread.c (aix_thread_target_info): New.
8665         (aix_thread_target) <shortname, longname, doc>: Delete.
8666         <info>: New.
8667         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
8668         add_inf_child_target.
8669         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
8670         add_inf_child_target.
8671         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
8672         add_inf_child_target.
8673         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
8674         add_inf_child_target.
8675         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
8676         add_inf_child_target.
8677         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
8678         add_inf_child_target.
8679         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
8680         add_inf_child_target.
8681         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
8682         add_inf_child_target.
8683         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
8684         add_inf_child_target.
8685         * bfd-target.c (target_bfd_target_info): New.
8686         (target_bfd) <shortname, longname, doc>: Delete.
8687         <info>: New.
8688         * bsd-kvm.c (bsd_kvm_target_info): New.
8689         (bsd_kvm_target) <shortname, longname, doc>: Delete.
8690         <info>: New.
8691         (bsd_kvm_target::open): Rename to ...
8692         (bsd_kvm_target_open): ... this.  Adjust.
8693         * bsd-uthread.c (bsd_uthread_target_info): New.
8694         (bsd_uthread_target) <shortname, longname, doc>: Delete.
8695         <info>: New.
8696         * corefile.c (core_file_command): Adjust.
8697         * corelow.c (core_target_info): New.
8698         (core_target) <shortname, longname, doc>: Delete.
8699         <info>: New.
8700         (core_target::open): Rename to ...
8701         (core_target_open): ... this.  Adjust.
8702         * ctf.c (ctf_target_info): New.
8703         (ctf_target) <shortname, longname, doc>: Delete.
8704         <info>: New.
8705         (ctf_target::open): Rename to ...
8706         (ctf_target_open): ... this.
8707         (_initialize_ctf): Adjust.
8708         * exec.c (exec_target_info): New.
8709         (exec_target) <shortname, longname, doc>: Delete.
8710         <info>: New.
8711         (exec_target::open): Rename to ...
8712         (exec_target_open): ... this.
8713         * gdbcore.h (core_target_open): Declare.
8714         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
8715         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
8716         add_inf_child_target.
8717         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
8718         add_inf_child_target.
8719         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
8720         add_inf_child_target.
8721         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
8722         add_inf_child_target.
8723         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
8724         add_inf_child_target.
8725         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
8726         add_inf_child_target.
8727         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
8728         add_inf_child_target.
8729         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
8730         add_inf_child_target.
8731         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
8732         add_inf_child_target.
8733         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
8734         add_inf_child_target.
8735         * inf-child.c (inf_child_target_info): New.
8736         (inf_child_target::info): New.
8737         (inf_child_open_target): Remove 'target' parameter.  Use
8738         get_native_target instead.
8739         (inf_child_target::open): Delete.
8740         (add_inf_child_target): New.
8741         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
8742         Delete.
8743         <info>: New.
8744         (add_inf_child_target): Declare.
8745         (inf_child_open_target): Declare.
8746         * linux-thread-db.c (thread_db_target_info): New.
8747         (thread_db_target) <shortname, longname, doc>: Delete.
8748         <info>: New.
8749         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
8750         add_inf_child_target.
8751         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
8752         add_inf_child_target.
8753         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
8754         add_inf_child_target.
8755         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
8756         add_inf_child_target.
8757         * make-target-delegates (print_class): Adjust.
8758         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
8759         add_inf_child_target.
8760         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
8761         add_inf_child_target.
8762         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
8763         add_inf_child_target.
8764         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
8765         add_inf_child_target.
8766         * nto-procfs.c (nto_native_target_info): New.
8767         (nto_procfs_target_native) <shortname, longname, doc>:
8768         Delete.
8769         <info>: New.
8770         (nto_procfs_target_info): New.
8771         (nto_procfs_target_procfs) <shortname, longname, doc>:
8772         Delete.
8773         <info>: New.
8774         (init_procfs_targets): Adjust.
8775         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
8776         add_inf_child_target.
8777         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
8778         add_inf_child_target.
8779         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
8780         add_inf_child_target.
8781         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
8782         add_inf_child_target.
8783         * ravenscar-thread.c (ravenscar_target_info): New.
8784         (ravenscar_thread_target) <shortname, longname, doc>:
8785         Delete.
8786         <info>: New.
8787         * record-btrace.c (record_btrace_target_info):
8788         (record_btrace_target) <shortname, longname, doc>: Delete.
8789         <info>: New.
8790         (record_btrace_target::open): Rename to ...
8791         (record_btrace_target_open): ... this.  Adjust.
8792         * record-full.c (record_longname, record_doc): New.
8793         (record_full_base_target) <shortname, longname, doc>: Delete.
8794         <info>: New.
8795         (record_full_target_info): New.
8796         (record_full_target): <shortname>: Delete.
8797         <info>: New.
8798         (record_full_core_open_1, record_full_open_1): Update comments.
8799         (record_full_base_target::open): Rename to ...
8800         (record_full_open): ... this.
8801         (cmd_record_full_restore): Update.
8802         (_initialize_record_full): Update.
8803         * remote-sim.c (remote_sim_target_info): New.
8804         (gdbsim_target) <shortname, longname, doc>: Delete.
8805         <info>: New.
8806         (gdbsim_target::open): Rename to ...
8807         (gdbsim_target_open): ... this.
8808         (_initialize_remote_sim): Adjust.
8809         * remote.c (remote_doc): New.
8810         (remote_target_info): New.
8811         (remote_target) <shortname, longname, doc>: Delete.
8812         <info>: New.
8813         (extended_remote_target_info): New.
8814         (extended_remote_target) <shortname, longname, doc>: Delete.
8815         <info>: New.
8816         (remote_target::open_1): Make static.  Adjust.
8817         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
8818         * s390-linux-nat.c (_initialize_s390_nat): Use
8819         add_inf_child_target.
8820         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
8821         add_inf_child_target.
8822         * sol-thread.c (thread_db_target_info): New.
8823         (sol_thread_target) <shortname, longname, doc>: Delete.
8824         <info>: New.
8825         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
8826         add_inf_child_target.
8827         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
8828         add_inf_child_target.
8829         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
8830         add_inf_child_target.
8831         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
8832         add_inf_child_target.
8833         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
8834         add_inf_child_target.
8835         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
8836         add_inf_child_target.
8837         * spu-linux-nat.c (_initialize_spu_nat): Use
8838         add_inf_child_target.
8839         * spu-multiarch.c (spu_multiarch_target_info): New.
8840         (spu_multiarch_target) <shortname, longname, doc>: Delete.
8841         <info>: New.
8842         * target-delegates.c: Regenerate.
8843         * target.c: Include <unordered_map>.
8844         (target_ops_p): Delete.
8845         (DEF_VEC_P(target_ops_p)): Delete.
8846         (target_factories): New.
8847         (test_target_info): New.
8848         (test_target_ops::info): New.
8849         (open_target): Adjust to use target_factories.
8850         (add_target_with_completer): Rename to ...
8851         (add_target): ... this.  Change prototype.  Register target_info
8852         and open callback in target_factories.  Register target_info in
8853         command context instead of target_ops.
8854         (add_target): Delete old implementation.
8855         (add_deprecated_target_alias): Change prototype.  Adjust.
8856         (the_native_target): New.
8857         (set_native_target, get_native_target): New.
8858         (find_default_run_target): Use the_native_target.
8859         (find_attach_target, find_run_target): Simplify.
8860         (target_ops::open): Delete.
8861         (dummy_target_info): New.
8862         (dummy_target::shortname, dummy_target::longname)
8863         (dummy_target::doc): Delete.
8864         (dummy_target::info): New.
8865         (debug_target::shortname, debug_target::longname)
8866         (debug_target::doc): Delete.
8867         (debug_target::info): New.
8868         * target.h (struct target_info): New.
8869         (target_ops::~target_ops): Add comment.
8870         (target_ops::info): New.
8871         (target_ops::shortname, target_ops::longname, target_ops::doc): No
8872         longer virtual.  Implement in terms of target_info.
8873         (set_native_target, get_native_target): Declare.
8874         (target_open_ftype): New.
8875         (add_target, add_target_with_completer)
8876         (add_deprecated_target_alias): Change prototype.
8877         (test_target) <shortname, longname, doc>: Delete.
8878         <info>: New.
8879         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
8880         add_inf_child_target.
8881         * tracefile-tfile.c (tfile_target_info): New.
8882         (tfile_target) <shortname, longname, doc>: Delete.
8883         <info>: New.
8884         (tfile_target::open): Rename to ...
8885         (tfile_target_open): ... this.
8886         (_initialize_tracefile_tfile): Adjust.
8887         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
8888         add_inf_child_target.
8889         * windows-nat.c (_initialize_windows_nat): Use
8890         add_inf_child_target.
8891         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
8892         add_inf_child_target.
8893
8894 2018-05-02  Pedro Alves  <palves@redhat.com>
8895
8896         * linux-nat.h (linux_nat_target) <low_new_thread,
8897         low_delete_thread, low_new_fork, low_forget_process,
8898         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
8899         New virtual methods.
8900         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8901         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
8902         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
8903         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8904         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
8905         Delete.
8906         * linux-fork.c (delete_fork): Adjust to call low method.
8907         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
8908         (linux_nat_new_fork, linux_nat_forget_process_hook)
8909         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
8910         (linux_nat_status_is_event):
8911         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
8912         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
8913         to call low method.
8914         (sigtrap_is_event): Rename to ...
8915         (linux_nat_target::low_status_is_event): ... this.
8916         (linux_nat_set_status_is_event): Delete.
8917         (save_stop_reason, linux_nat_wait_1)
8918         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
8919         low methods.
8920         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8921         (linux_nat_set_new_fork, linux_nat_set_forget_process)
8922         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8923         (linux_nat_set_prepare_to_resume): Delete.
8924         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
8925         low virtual methods.
8926         * amd64-linux-nat.c: Likewise.
8927         * arm-linux-nat.c: Likewise.
8928         * i386-linux-nat.c: Likewise.
8929         * ia64-linux-nat.c: Likewise.
8930         * mips-linux-nat.c: Likewise.
8931         * ppc-linux-nat.c: Likewise.
8932         * s390-linux-nat.c: Likewise.
8933         * sparc64-linux-nat.c: Likewise.
8934         * x86-linux-nat.c: Likewise.
8935         * x86-linux-nat.h: Include "nat/x86-linux.h".
8936         (x86_linux_nat_target) <low_new_fork, low_forget_process,
8937         low_prepare_to_resume, low_new_thread, low_delete_thread>:
8938         Override methods.
8939
8940 2018-05-02  Pedro Alves  <palves@redhat.com>
8941
8942         * target.h (target_ops)
8943         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
8944         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
8945         stopped_by_watchpoint, have_continuable_watchpoint,
8946         stopped_data_address, watchpoint_addr_within_range,
8947         can_accel_watchpoint_condition, can_run, thread_alive,
8948         has_all_memory, has_memory, has_stack, has_registers,
8949         has_execution, can_async_p, is_async_p, supports_non_stop,
8950         always_non_stop_p, can_execute_reverse, supports_multi_process,
8951         supports_enable_disable_tracepoint,
8952         supports_disable_randomization, supports_string_tracing,
8953         supports_evaluation_of_breakpoint_conditions,
8954         can_run_breakpoint_commands, filesystem_is_local,
8955         can_download_tracepoint, get_trace_state_variable_value,
8956         set_trace_notes, get_tib_address, use_agent, can_use_agent,
8957         record_is_replaying, record_will_replay,
8958         augmented_libraries_svr4_read>: Adjust to return bool.
8959         * aarch64-linux-nat.c: All implementations adjusted.
8960         * aix-thread.c: All implementations adjusted.
8961         * arm-linux-nat.c: All implementations adjusted.
8962         * breakpoint.c: All implementations adjusted.
8963         * bsd-kvm.c: All implementations adjusted.
8964         * bsd-uthread.c: All implementations adjusted.
8965         * corelow.c: All implementations adjusted.
8966         * ctf.c: All implementations adjusted.
8967         * darwin-nat.c: All implementations adjusted.
8968         * darwin-nat.h: All implementations adjusted.
8969         * exec.c: All implementations adjusted.
8970         * fbsd-nat.c: All implementations adjusted.
8971         * fbsd-nat.h: All implementations adjusted.
8972         * gnu-nat.c: All implementations adjusted.
8973         * gnu-nat.h: All implementations adjusted.
8974         * go32-nat.c: All implementations adjusted.
8975         * ia64-linux-nat.c: All implementations adjusted.
8976         * inf-child.c: All implementations adjusted.
8977         * inf-child.h: All implementations adjusted.
8978         * inf-ptrace.c: All implementations adjusted.
8979         * inf-ptrace.h: All implementations adjusted.
8980         * linux-nat.c: All implementations adjusted.
8981         * linux-nat.h: All implementations adjusted.
8982         * mips-linux-nat.c: All implementations adjusted.
8983         * nto-procfs.c: All implementations adjusted.
8984         * ppc-linux-nat.c: All implementations adjusted.
8985         * procfs.c: All implementations adjusted.
8986         * ravenscar-thread.c: All implementations adjusted.
8987         * record-btrace.c: All implementations adjusted.
8988         * record-full.c: All implementations adjusted.
8989         * remote-sim.c: All implementations adjusted.
8990         * remote.c: All implementations adjusted.
8991         * s390-linux-nat.c: All implementations adjusted.
8992         * sol-thread.c: All implementations adjusted.
8993         * spu-multiarch.c: All implementations adjusted.
8994         * target-delegates.c: All implementations adjusted.
8995         * target.c: All implementations adjusted.
8996         * target.h: All implementations adjusted.
8997         * tracefile-tfile.c: All implementations adjusted.
8998         * tracefile.c: All implementations adjusted.
8999         * tracefile.h: All implementations adjusted.
9000         * windows-nat.c: All implementations adjusted.
9001         * x86-linux-nat.h: All implementations adjusted.
9002         * x86-nat.h: All implementations adjusted.
9003
9004 2018-05-02  Pedro Alves  <palves@redhat.com>
9005
9006         * make-target-delegates (scan_target_h): Don't trim lines here.
9007         Replace sequences of tabs and/or whitespace with a single
9008         whitespace.
9009         (top level, parsing methods): Trim each line before processing it
9010         here.
9011
9012 2018-05-02  Pedro Alves  <palves@redhat.com>
9013             John Baldwin  <jhb@freebsd.org>
9014
9015         * target.h (enum strata) <debug_stratum>: New.
9016         (struct target_ops) <all delegation methods>: Replace by C++
9017         virtual methods, and drop "to_" prefix.  All references updated
9018         throughout.
9019         <to_shortname, to_longname, to_doc, to_data,
9020         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9021         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9022         virtual methods.  All references updated throughout.
9023         <can_attach, supports_terminal_ours, can_create_inferior,
9024         get_thread_control_capabilities, attach_no_wait>: New
9025         virtual methods.
9026         <insert_breakpoint, remove_breakpoint>: Now
9027         TARGET_DEFAULT_NORETURN methods.
9028         <info_proc>: Now returns bool.
9029         <to_magic>: Delete.
9030         (OPS_MAGIC): Delete.
9031         (current_target): Delete.  All references replaced by references
9032         to ...
9033         (target_stack): ... this.  New.
9034         (target_shortname, target_longname): Adjust.
9035         (target_can_run): Now a function declaration.
9036         (default_child_has_all_memory, default_child_has_memory)
9037         (default_child_has_stack, default_child_has_registers)
9038         (default_child_has_execution): Remove target_ops parameter.
9039         (complete_target_initialization): Delete.
9040         (memory_breakpoint_target): New template class.
9041         (test_target_ops): Refactor as a C++ class with virtual methods.
9042         * make-target-delegates (NAME_PART): Tighten.
9043         (POINTER_PART, CP_SYMBOL): New.
9044         (SIMPLE_RETURN_PART): Reimplement.
9045         (VEC_RETURN_PART): Expect less.
9046         (RETURN_PART, VIRTUAL_PART): New.
9047         (METHOD): Adjust to C++ virtual methods.
9048         (scan_target_h): Remove reference to C99.
9049         (dname): Output "target_ops::" prefix.
9050         (write_function_header): Adjust to output a C++ class method.
9051         (write_declaration): New.
9052         (write_delegator): Adjust to output a C++ class method.
9053         (tdname): Output "dummy_target::" prefix.
9054         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9055         method.
9056         (tdefault_names, debug_names): Delete.
9057         (return_types, tdefaults, styles, argtypes_array): New.
9058         (top level): All methods are delegators.
9059         (print_class): New.
9060         (top level): Print dummy_target and debug_target classes.
9061         * target-delegates.c: Regenerate.
9062         * target-debug.h (target_debug_print_enum_info_proc_what)
9063         (target_debug_print_thread_control_capabilities)
9064         (target_debug_print_thread_info_p): New.
9065         * target.c (dummy_target): Delete.
9066         (the_dummy_target, the_debug_target): New.
9067         (target_stack): Now extern.
9068         (set_targetdebug): Push/unpush debug target.
9069         (default_child_has_all_memory, default_child_has_memory)
9070         (default_child_has_stack, default_child_has_registers)
9071         (default_child_has_execution): Remove target_ops parameter.
9072         (complete_target_initialization): Delete.
9073         (add_target_with_completer): No longer call
9074         complete_target_initialization.
9075         (target_supports_terminal_ours): Use regular delegation.
9076         (update_current_target): Delete.
9077         (push_target): No longer check magic number.  Don't call
9078         update_current_target.
9079         (unpush_target): Don't call update_current_target.
9080         (target_is_pushed): No longer check magic number.
9081         (target_require_runnable): Skip for all stratums over
9082         process_stratum.
9083         (target_ops::info_proc): New.
9084         (target_info_proc): Use find_target_at and
9085         find_default_run_target.
9086         (target_supports_disable_randomization): Use regular delegation.
9087         (target_get_osdata): Use find_target_at.
9088         (target_ops::open, target_ops::close, target_ops::can_attach)
9089         (target_ops::attach, target_ops::can_create_inferior)
9090         (target_ops::create_inferior, target_ops::can_run)
9091         (target_can_run): New.
9092         (default_fileio_target): Use regular delegation.
9093         (target_ops::fileio_open, target_ops::fileio_pwrite)
9094         (target_ops::fileio_pread, target_ops::fileio_fstat)
9095         (target_ops::fileio_close, target_ops::fileio_unlink)
9096         (target_ops::fileio_readlink): New.
9097         (target_fileio_open_1, target_fileio_unlink)
9098         (target_fileio_readlink): Always call the target method.  Handle
9099         FILEIO_ENOSYS.
9100         (return_zero, return_zero_has_execution): Delete.
9101         (init_dummy_target): Delete.
9102         (dummy_target::dummy_target, dummy_target::shortname)
9103         (dummy_target::longname, dummy_target::doc)
9104         (debug_target::debug_target, debug_target::shortname)
9105         (debug_target::longname, debug_target::doc): New.
9106         (target_supports_delete_record): Use regular delegation.
9107         (setup_target_debug): Delete.
9108         (maintenance_print_target_stack): Skip debug_stratum.
9109         (initialize_targets): Instantiate the_dummy_target and
9110         the_debug_target.
9111         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9112         use target_stack.
9113         (target_auxv_search, fprint_target_auxv): Adjust.
9114         (info_auxv_command): Adjust to use target_stack.
9115         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9116         * exceptions.c (print_flush): Handle a NULL target_stack.
9117         * regcache.c (target_ops_no_register): Refactor as class with
9118         virtual methods.
9119
9120         * exec.c (exec_target): New class.
9121         (exec_ops): Now an exec_target.
9122         (exec_open, exec_close_1, exec_get_section_table)
9123         (exec_xfer_partial, exec_files_info, exec_has_memory)
9124         (exec_make_note_section): Refactor as exec_target methods.
9125         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9126         Delete.
9127         (exec_target::find_memory_regions): New.
9128         (_initialize_exec): Don't call init_exec_ops.
9129         * gdbcore.h (exec_file_clear): Delete.
9130
9131         * corefile.c (core_target): Delete.
9132         (core_file_command): Adjust.
9133         * corelow.c (core_target): New class.
9134         (the_core_target): New.
9135         (core_close): Remove target_ops parameter.
9136         (core_close_cleanup): Adjust.
9137         (core_target::close): New.
9138         (core_open, core_detach, get_core_registers, core_files_info)
9139         (core_xfer_partial, core_thread_alive, core_read_description)
9140         (core_pid_to_str, core_thread_name, core_has_memory)
9141         (core_has_stack, core_has_registers, core_info_proc): Rework as
9142         core_target methods.
9143         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9144         (_initialize_corelow): Initialize the_core_target.
9145         * gdbcore.h (core_target): Delete.
9146         (the_core_target): New.
9147
9148         * ctf.c: (ctf_target): New class.
9149         (ctf_ops): Now a ctf_target.
9150         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9151         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9152         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9153         methods.
9154         (init_ctf_ops): Delete.
9155         (_initialize_ctf): Don't call it.
9156         * tracefile-tfile.c (tfile_target): New class.
9157         (tfile_ops): Now a tfile_target.
9158         (tfile_open, tfile_close, tfile_files_info)
9159         (tfile_get_tracepoint_status, tfile_trace_find)
9160         (tfile_fetch_registers, tfile_xfer_partial)
9161         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9162         Refactor as tfile_target methods.
9163         (tfile_xfer_partial_features): Remove target_ops parameter.
9164         (init_tfile_ops): Delete.
9165         (_initialize_tracefile_tfile): Don't call it.
9166         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9167         (tracefile_has_stack, tracefile_has_registers)
9168         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9169         tracefile_target methods.
9170         (init_tracefile_ops): Delete.
9171         (tracefile_target::tracefile_target): New.
9172         * tracefile.h: Include "target.h".
9173         (tracefile_target): New class.
9174         (init_tracefile_ops): Delete.
9175
9176         * spu-multiarch.c (spu_multiarch_target): New class.
9177         (spu_ops): Now a spu_multiarch_target.
9178         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9179         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9180         (spu_search_memory, spu_mourn_inferior): Refactor as
9181         spu_multiarch_target methods.
9182         (init_spu_ops): Delete.
9183         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9184         complete_target_initialization.
9185
9186         * ravenscar-thread.c (ravenscar_thread_target): New class.
9187         (ravenscar_ops): Now a ravenscar_thread_target.
9188         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9189         (ravenscar_thread_alive, ravenscar_pid_to_str)
9190         (ravenscar_fetch_registers, ravenscar_store_registers)
9191         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9192         (ravenscar_stopped_by_hw_breakpoint)
9193         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9194         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9195         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9196         methods.
9197         (init_ravenscar_thread_ops): Delete.
9198         (_initialize_ravenscar): Remove references to
9199         init_ravenscar_thread_ops and complete_target_initialization.
9200
9201         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9202         (bsd_uthread_target): New class.
9203         (bsd_uthread_ops): Now a bsd_uthread_target.
9204         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9205         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9206         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9207         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9208         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9209         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9210         (bsd_uthread_target): Delete function.
9211         (_initialize_bsd_uthread): Remove reference to
9212         complete_target_initialization.
9213
9214         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9215         (target_bfd): ... this new class.
9216         (target_bfd_xfer_partial, target_bfd_get_section_table)
9217         (target_bfd_close): Refactor as target_bfd methods.
9218         (target_bfd::~target_bfd): New.
9219         (target_bfd_reopen): Adjust.
9220         (target_bfd::close): New.
9221
9222         * record-btrace.c (record_btrace_target): New class.
9223         (record_btrace_ops): Now a record_btrace_target.
9224         (record_btrace_open, record_btrace_stop_recording)
9225         (record_btrace_disconnect, record_btrace_close)
9226         (record_btrace_async, record_btrace_info)
9227         (record_btrace_insn_history, record_btrace_insn_history_range)
9228         (record_btrace_insn_history_from, record_btrace_call_history)
9229         (record_btrace_call_history_range)
9230         (record_btrace_call_history_from, record_btrace_record_method)
9231         (record_btrace_is_replaying, record_btrace_will_replay)
9232         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9233         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9234         (record_btrace_store_registers, record_btrace_prepare_to_store)
9235         (record_btrace_to_get_unwinder)
9236         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9237         (record_btrace_commit_resume, record_btrace_wait)
9238         (record_btrace_stop, record_btrace_can_execute_reverse)
9239         (record_btrace_stopped_by_sw_breakpoint)
9240         (record_btrace_supports_stopped_by_sw_breakpoint)
9241         (record_btrace_stopped_by_hw_breakpoint)
9242         (record_btrace_supports_stopped_by_hw_breakpoint)
9243         (record_btrace_update_thread_list, record_btrace_thread_alive)
9244         (record_btrace_goto_begin, record_btrace_goto_end)
9245         (record_btrace_goto, record_btrace_stop_replaying_all)
9246         (record_btrace_execution_direction)
9247         (record_btrace_prepare_to_generate_core)
9248         (record_btrace_done_generating_core): Refactor as
9249         record_btrace_target methods.
9250         (init_record_btrace_ops): Delete.
9251         (_initialize_record_btrace): Remove reference to
9252         init_record_btrace_ops.
9253         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9254         the execution_direction global.
9255         (record_full_base_target, record_full_target)
9256         (record_full_core_target): New classes.
9257         (record_full_ops): Now a record_full_target.
9258         (record_full_core_ops): Now a record_full_core_target.
9259         (record_full_target::detach, record_full_target::disconnect)
9260         (record_full_core_target::disconnect)
9261         (record_full_target::mourn_inferior, record_full_target::kill):
9262         New.
9263         (record_full_open, record_full_close, record_full_async): Refactor
9264         as methods of the record_full_base_target class.
9265         (record_full_resume, record_full_commit_resume): Refactor
9266         as methods of the record_full_target class.
9267         (record_full_wait, record_full_stopped_by_watchpoint)
9268         (record_full_stopped_data_address)
9269         (record_full_stopped_by_sw_breakpoint)
9270         (record_full_supports_stopped_by_sw_breakpoint)
9271         (record_full_stopped_by_hw_breakpoint)
9272         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9273         methods of the record_full_base_target class.
9274         (record_full_store_registers, record_full_xfer_partial)
9275         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9276         Refactor as methods of the record_full_target class.
9277         (record_full_can_execute_reverse, record_full_get_bookmark)
9278         (record_full_goto_bookmark, record_full_execution_direction)
9279         (record_full_record_method, record_full_info, record_full_delete)
9280         (record_full_is_replaying, record_full_will_replay)
9281         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9282         (record_full_stop_replaying): Refactor as methods of the
9283         record_full_base_target class.
9284         (record_full_core_resume, record_full_core_kill)
9285         (record_full_core_fetch_registers)
9286         (record_full_core_prepare_to_store)
9287         (record_full_core_store_registers, record_full_core_xfer_partial)
9288         (record_full_core_insert_breakpoint)
9289         (record_full_core_remove_breakpoint)
9290         (record_full_core_has_execution): Refactor
9291         as methods of the record_full_core_target class.
9292         (record_full_base_target::supports_delete_record): New.
9293         (init_record_full_ops): Delete.
9294         (init_record_full_core_ops): Delete.
9295         (record_full_save): Refactor as method of the
9296         record_full_base_target class.
9297         (_initialize_record_full): Remove references to
9298         init_record_full_ops and init_record_full_core_ops.
9299
9300         * remote.c (remote_target, extended_remote_target): New classes.
9301         (remote_ops): Now a remote_target.
9302         (extended_remote_ops): Now an extended_remote_target.
9303         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9304         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9305         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9306         (remote_pass_signals, remote_set_syscall_catchpoint)
9307         (remote_program_signals, )
9308         (remote_thread_always_alive): Remove target_ops parameter.
9309         (remote_thread_alive, remote_thread_name)
9310         (remote_update_thread_list, remote_threads_extra_info)
9311         (remote_static_tracepoint_marker_at)
9312         (remote_static_tracepoint_markers_by_strid)
9313         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9314         (remote_open): Refactor as methods of remote_target.
9315         (extended_remote_open, extended_remote_detach)
9316         (extended_remote_attach, extended_remote_post_attach):
9317         (extended_remote_supports_disable_randomization)
9318         (extended_remote_create_inferior): : Refactor as method of
9319         extended_remote_target.
9320         (remote_set_permissions, remote_open_1, remote_detach)
9321         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9322         (remote_resume, remote_commit_resume, remote_stop)
9323         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9324         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9325         (remote_prepare_to_store, remote_store_registers)
9326         (remote_flash_erase, remote_flash_done, remote_files_info)
9327         (remote_kill, remote_mourn, remote_insert_breakpoint)
9328         (remote_remove_breakpoint, remote_insert_watchpoint)
9329         (remote_watchpoint_addr_within_range)
9330         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9331         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9332         (remote_supports_stopped_by_sw_breakpoint)
9333         (remote_stopped_by_hw_breakpoint)
9334         (remote_supports_stopped_by_hw_breakpoint)
9335         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9336         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9337         (remote_verify_memory): Refactor as methods of remote_target.
9338         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9339         parameter.
9340         (remote_xfer_partial, remote_get_memory_xfer_limit)
9341         (remote_search_memory, remote_rcmd, remote_memory_map)
9342         (remote_pid_to_str, remote_get_thread_local_address)
9343         (remote_get_tib_address, remote_read_description): Refactor as
9344         methods of remote_target.
9345         (remote_target::fileio_open, remote_target::fileio_pwrite)
9346         (remote_target::fileio_pread, remote_target::fileio_close): New.
9347         (remote_hostio_readlink, remote_hostio_fstat)
9348         (remote_filesystem_is_local, remote_can_execute_reverse)
9349         (remote_supports_non_stop, remote_supports_disable_randomization)
9350         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9351         (remote_supports_enable_disable_tracepoint)
9352         (remote_supports_string_tracing)
9353         (remote_can_run_breakpoint_commands, remote_trace_init)
9354         (remote_download_tracepoint, remote_can_download_tracepoint)
9355         (remote_download_trace_state_variable, remote_enable_tracepoint)
9356         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9357         (remote_trace_start, remote_get_trace_status)
9358         (remote_get_tracepoint_status, remote_trace_stop)
9359         (remote_trace_find, remote_get_trace_state_variable_value)
9360         (remote_save_trace_data, remote_get_raw_trace_data)
9361         (remote_set_disconnected_tracing, remote_core_of_thread)
9362         (remote_set_circular_trace_buffer, remote_traceframe_info)
9363         (remote_get_min_fast_tracepoint_insn_len)
9364         (remote_set_trace_buffer_size, remote_set_trace_notes)
9365         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9366         (remote_disable_btrace, remote_teardown_btrace)
9367         (remote_read_btrace, remote_btrace_conf)
9368         (remote_augmented_libraries_svr4_read, remote_load)
9369         (remote_pid_to_exec_file, remote_can_do_single_step)
9370         (remote_execution_direction, remote_thread_handle_to_thread_info):
9371         Refactor as methods of remote_target.
9372         (init_remote_ops, init_extended_remote_ops): Delete.
9373         (remote_can_async_p, remote_is_async_p, remote_async)
9374         (remote_thread_events, remote_upload_tracepoints)
9375         (remote_upload_trace_state_variables): Refactor as methods of
9376         remote_target.
9377         (_initialize_remote): Remove references to init_remote_ops and
9378         init_extended_remote_ops.
9379
9380         * remote-sim.c (gdbsim_target): New class.
9381         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9382         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9383         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9384         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9385         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9386         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9387         Refactor as methods of gdbsim_target.
9388         (gdbsim_ops): Now a gdbsim_target.
9389         (init_gdbsim_ops): Delete.
9390         (gdbsim_cntrl_c): Adjust.
9391         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9392
9393         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9394         (the_amd64_linux_nat_target): New.
9395         (amd64_linux_fetch_inferior_registers)
9396         (amd64_linux_store_inferior_registers): Refactor as methods of
9397         amd64_linux_nat_target.
9398         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9399         * i386-linux-nat.c: Don't include "linux-nat.h".
9400         (i386_linux_nat_target): New class.
9401         (the_i386_linux_nat_target): New.
9402         (i386_linux_fetch_inferior_registers)
9403         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9404         as methods of i386_linux_nat_target.
9405         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9406         * inf-child.c (inf_child_ops): Delete.
9407         (inf_child_fetch_inferior_registers)
9408         (inf_child_store_inferior_registers): Delete.
9409         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9410         methods of inf_child_target.
9411         (inf_child_target::supports_terminal_ours)
9412         (inf_child_target::terminal_init)
9413         (inf_child_target::terminal_inferior)
9414         (inf_child_target::terminal_ours_for_output)
9415         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9416         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9417         New.
9418         (inf_child_open, inf_child_disconnect, inf_child_close)
9419         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9420         (inf_child_post_startup_inferior, inf_child_can_run)
9421         (inf_child_pid_to_exec_file): Refactor as methods of
9422         inf_child_target.
9423         (inf_child_follow_fork): Delete.
9424         (inf_child_target::can_create_inferior)
9425         (inf_child_target::can_attach): New.
9426         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9427         (inf_child_target::has_stack, inf_child_target::has_registers)
9428         (inf_child_target::has_execution): New.
9429         (inf_child_fileio_open, inf_child_fileio_pwrite)
9430         (inf_child_fileio_pread, inf_child_fileio_fstat)
9431         (inf_child_fileio_close, inf_child_fileio_unlink)
9432         (inf_child_fileio_readlink, inf_child_use_agent)
9433         (inf_child_can_use_agent): Refactor as methods of
9434         inf_child_target.
9435         (return_zero, inf_child_target): Delete.
9436         (inf_child_target::inf_child_target): New.
9437         * inf-child.h: Include "target.h".
9438         (inf_child_target): Delete function prototype.
9439         (inf_child_target): New class.
9440         (inf_child_open_target, inf_child_mourn_inferior)
9441         (inf_child_maybe_unpush_target): Delete.
9442         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9443         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9444         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9445         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9446         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9447         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9448         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9449         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9450         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9451         methods of inf_ptrace_target.
9452         (inf_ptrace_target): Delete function.
9453         * inf-ptrace.h: Include "inf-child.h".
9454         (inf_ptrace_target): Delete function declaration.
9455         (inf_ptrace_target): New class.
9456         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9457         * linux-nat.c (linux_target): New.
9458         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9459         (linux_nat_target::~linux_nat_target): New.
9460         (linux_child_post_attach, linux_child_post_startup_inferior)
9461         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9462         (linux_child_remove_fork_catchpoint)
9463         (linux_child_insert_vfork_catchpoint)
9464         (linux_child_remove_vfork_catchpoint)
9465         (linux_child_insert_exec_catchpoint)
9466         (linux_child_remove_exec_catchpoint)
9467         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9468         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9469         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9470         (linux_nat_stopped_data_address)
9471         (linux_nat_stopped_by_sw_breakpoint)
9472         (linux_nat_supports_stopped_by_sw_breakpoint)
9473         (linux_nat_stopped_by_hw_breakpoint)
9474         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9475         (linux_nat_kill, linux_nat_mourn_inferior)
9476         (linux_nat_xfer_partial, linux_nat_thread_alive)
9477         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9478         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9479         (linux_child_static_tracepoint_markers_by_strid)
9480         (linux_nat_is_async_p, linux_nat_can_async_p)
9481         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9482         (linux_nat_supports_multi_process)
9483         (linux_nat_supports_disable_randomization, linux_nat_async)
9484         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9485         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9486         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9487         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9488         methods of linux_nat_target.
9489         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9490         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9491         parameter.
9492         (check_stopped_by_watchpoint): Adjust.
9493         (linux_xfer_partial): Delete.
9494         (linux_target_install_ops, linux_target, linux_nat_add_target):
9495         Delete.
9496         (linux_nat_target::linux_nat_target): New.
9497         * linux-nat.h: Include "inf-ptrace.h".
9498         (linux_nat_target): New.
9499         (linux_target, linux_target_install_ops, linux_nat_add_target):
9500         Delete function declarations.
9501         (linux_target): Declare global.
9502         * linux-thread-db.c (thread_db_target): New.
9503         (thread_db_target::thread_db_target): New.
9504         (thread_db_ops): Delete.
9505         (the_thread_db_target): New.
9506         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9507         (thread_db_update_thread_list, thread_db_pid_to_str)
9508         (thread_db_extra_thread_info)
9509         (thread_db_thread_handle_to_thread_info)
9510         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9511         (thread_db_resume): Refactor as methods of thread_db_target.
9512         (init_thread_db_ops): Delete.
9513         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9514         * x86-linux-nat.c: Don't include "linux-nat.h".
9515         (super_post_startup_inferior): Delete.
9516         (x86_linux_nat_target::~x86_linux_nat_target): New.
9517         (x86_linux_child_post_startup_inferior)
9518         (x86_linux_read_description, x86_linux_enable_btrace)
9519         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9520         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9521         methods of x86_linux_nat_target.
9522         (x86_linux_create_target): Delete.  Bits folded ...
9523         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9524         pointer.
9525         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9526         (x86_linux_nat_target): New class.
9527         (x86_linux_create_target): Delete.
9528         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9529         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9530         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9531         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9532         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9533         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9534         make extern.
9535         (x86_use_watchpoints): Delete.
9536         * x86-nat.h: Include "breakpoint.h" and "target.h".
9537         (x86_use_watchpoints): Delete.
9538         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9539         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9540         (x86_insert_watchpoint, x86_remove_watchpoint)
9541         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9542         (x86_stopped_by_hw_breakpoint): New declarations.
9543         (x86_nat_target): New template class.
9544
9545         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9546         (the_ppc_linux_nat_target): New.
9547         (ppc_linux_fetch_inferior_registers)
9548         (ppc_linux_can_use_hw_breakpoint)
9549         (ppc_linux_region_ok_for_hw_watchpoint)
9550         (ppc_linux_ranged_break_num_registers)
9551         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9552         (ppc_linux_insert_mask_watchpoint)
9553         (ppc_linux_remove_mask_watchpoint)
9554         (ppc_linux_can_accel_watchpoint_condition)
9555         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9556         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9557         (ppc_linux_watchpoint_addr_within_range)
9558         (ppc_linux_masked_watch_num_registers)
9559         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9560         (ppc_linux_read_description): Refactor as methods of
9561         ppc_linux_nat_target.
9562         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
9563
9564         * procfs.c (procfs_xfer_partial): Delete forward declaration.
9565         (procfs_target): New class.
9566         (the_procfs_target): New.
9567         (procfs_target): Delete function.
9568         (procfs_auxv_parse, procfs_attach, procfs_detach)
9569         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
9570         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
9571         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
9572         (procfs_create_inferior, procfs_update_thread_list)
9573         (procfs_thread_alive, procfs_pid_to_str)
9574         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
9575         (procfs_stopped_data_address, procfs_insert_watchpoint)
9576         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
9577         (proc_find_memory_regions, procfs_info_proc)
9578         (procfs_make_note_section): Refactor as methods of procfs_target.
9579         (_initialize_procfs): Adjust.
9580         * sol-thread.c (sol_thread_target): New class.
9581         (sol_thread_ops): Now a sol_thread_target.
9582         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
9583         (sol_thread_fetch_registers, sol_thread_store_registers)
9584         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
9585         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
9586         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
9587         (init_sol_thread_ops): Delete.
9588         (_initialize_sol_thread): Adjust.  Remove references to
9589         init_sol_thread_ops and complete_target_initialization.
9590
9591         * windows-nat.c (windows_nat_target): New class.
9592         (windows_fetch_inferior_registers)
9593         (windows_store_inferior_registers, windows_resume, windows_wait)
9594         (windows_attach, windows_detach, windows_pid_to_exec_file)
9595         (windows_files_info, windows_create_inferior)
9596         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
9597         (windows_close, windows_pid_to_str, windows_xfer_partial)
9598         (windows_get_tib_address, windows_get_ada_task_ptid)
9599         (windows_thread_name, windows_thread_alive): Refactor as
9600         windows_nat_target methods.
9601         (do_initial_windows_stuff): Adjust.
9602         (windows_target): Delete function.
9603         (_initialize_windows_nat): Adjust.
9604
9605         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
9606         (darwin_mourn_inferior, darwin_kill_inferior)
9607         (darwin_create_inferior, darwin_attach, darwin_detach)
9608         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
9609         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
9610         (darwin_supports_multi_process): Refactor as darwin_nat_target
9611         methods.
9612         (darwin_resume_to, darwin_files_info): Delete.
9613         (_initialize_darwin_inferior): Rename to ...
9614         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
9615         * darwin-nat.h: Include "inf-child.h".
9616         (darwin_nat_target): New class.
9617         (darwin_complete_target): Delete.
9618         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
9619         (darwin_target): New.
9620         (i386_darwin_fetch_inferior_registers)
9621         (i386_darwin_store_inferior_registers): Refactor as methods of
9622         darwin_nat_target.
9623         (darwin_complete_target): Delete, with ...
9624         (_initialize_i386_darwin_nat): ... bits factored out here.
9625
9626         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
9627         (the_alpha_linux_nat_target): New.
9628         (alpha_linux_register_u_offset): Refactor as
9629         alpha_linux_nat_target method.
9630         (_initialize_alpha_linux_nat): Adjust.
9631         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
9632         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9633         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
9634         methods of linux_nat_trad_target.
9635         (linux_trad_target): Delete.
9636         * linux-nat-trad.h (linux_trad_target): Delete function.
9637         (linux_nat_trad_target): New class.
9638         * mips-linux-nat.c (mips_linux_nat_target): New class.
9639         (super_fetch_registers, super_store_registers, super_close):
9640         Delete.
9641         (the_mips_linux_nat_target): New.
9642         (mips64_linux_regsets_fetch_registers)
9643         (mips64_linux_regsets_store_registers)
9644         (mips64_linux_fetch_registers, mips64_linux_store_registers)
9645         (mips_linux_register_u_offset, mips_linux_read_description)
9646         (mips_linux_can_use_hw_breakpoint)
9647         (mips_linux_stopped_by_watchpoint)
9648         (mips_linux_stopped_data_address)
9649         (mips_linux_region_ok_for_hw_watchpoint)
9650         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
9651         (mips_linux_close): Refactor as methods of mips_linux_nat.
9652         (_initialize_mips_linux_nat): Adjust to C++ification.
9653
9654         * aix-thread.c (aix_thread_target): New class.
9655         (aix_thread_ops): Now an aix_thread_target.
9656         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
9657         (aix_thread_fetch_registers, aix_thread_store_registers)
9658         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
9659         (aix_thread_thread_alive, aix_thread_pid_to_str)
9660         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
9661         Refactor as methods of aix_thread_target.
9662         (init_aix_thread_ops): Delete.
9663         (_initialize_aix_thread): Remove references to init_aix_thread_ops
9664         and complete_target_initialization.
9665         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
9666         (rs6000_nat_target): New class.
9667         (the_rs6000_nat_target): New.
9668         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
9669         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
9670         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
9671         (super_create_inferior): Delete.
9672         (_initialize_rs6000_nat): Adjust to C++ification.
9673
9674         * arm-linux-nat.c (arm_linux_nat_target): New class.
9675         (the_arm_linux_nat_target): New.
9676         (arm_linux_fetch_inferior_registers)
9677         (arm_linux_store_inferior_registers, arm_linux_read_description)
9678         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
9679         (arm_linux_remove_hw_breakpoint)
9680         (arm_linux_region_ok_for_hw_watchpoint)
9681         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
9682         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
9683         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
9684         arm_linux_nat_target.
9685         (_initialize_arm_linux_nat): Adjust to C++ification.
9686
9687         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
9688         (the_aarch64_linux_nat_target): New.
9689         (aarch64_linux_fetch_inferior_registers)
9690         (aarch64_linux_store_inferior_registers)
9691         (aarch64_linux_child_post_startup_inferior)
9692         (aarch64_linux_read_description)
9693         (aarch64_linux_can_use_hw_breakpoint)
9694         (aarch64_linux_insert_hw_breakpoint)
9695         (aarch64_linux_remove_hw_breakpoint)
9696         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
9697         (aarch64_linux_region_ok_for_hw_watchpoint)
9698         (aarch64_linux_stopped_data_address)
9699         (aarch64_linux_stopped_by_watchpoint)
9700         (aarch64_linux_watchpoint_addr_within_range)
9701         (aarch64_linux_can_do_single_step): Refactor as methods of
9702         aarch64_linux_nat_target.
9703         (super_post_startup_inferior): Delete.
9704         (_initialize_aarch64_linux_nat): Adjust to C++ification.
9705
9706         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
9707         (the_hppa_linux_nat_target): New.
9708         (hppa_linux_fetch_inferior_registers)
9709         (hppa_linux_store_inferior_registers): Refactor as methods of
9710         hppa_linux_nat_target.
9711         (_initialize_hppa_linux_nat): Adjust to C++ification.
9712
9713         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
9714         (the_ia64_linux_nat_target): New.
9715         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
9716         (ia64_linux_stopped_data_address)
9717         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
9718         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
9719         ia64_linux_nat_target methods.
9720         (super_xfer_partial): Delete.
9721         (_initialize_ia64_linux_nat): Adjust to C++ification.
9722
9723         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
9724         (the_m32r_linux_nat_target): New.
9725         (m32r_linux_fetch_inferior_registers)
9726         (m32r_linux_store_inferior_registers): Refactor as
9727         m32r_linux_nat_target methods.
9728         (_initialize_m32r_linux_nat): Adjust to C++ification.
9729
9730         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
9731         (the_m68k_linux_nat_target): New.
9732         (m68k_linux_fetch_inferior_registers)
9733         (m68k_linux_store_inferior_registers): Refactor as
9734         m68k_linux_nat_target methods.
9735         (_initialize_m68k_linux_nat): Adjust to C++ification.
9736
9737         * s390-linux-nat.c (s390_linux_nat_target): New class.
9738         (the_s390_linux_nat_target): New.
9739         (s390_linux_fetch_inferior_registers)
9740         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
9741         (s390_insert_watchpoint, s390_remove_watchpoint)
9742         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
9743         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
9744         (s390_auxv_parse, s390_read_description): Refactor as methods of
9745         s390_linux_nat_target.
9746         (_initialize_s390_nat): Adjust to C++ification.
9747
9748         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
9749         (the_sparc_linux_nat_target): New.
9750         (_initialize_sparc_linux_nat): Adjust to C++ification.
9751         * sparc-nat.c (sparc_fetch_inferior_registers)
9752         (sparc_store_inferior_registers): Remove target_ops parameter.
9753         * sparc-nat.h (sparc_fetch_inferior_registers)
9754         (sparc_store_inferior_registers): Remove target_ops parameter.
9755         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
9756         (the_sparc64_linux_nat_target): New.
9757         (_initialize_sparc64_linux_nat): Adjust to C++ification.
9758
9759         * spu-linux-nat.c (spu_linux_nat_target): New class.
9760         (the_spu_linux_nat_target): New.
9761         (spu_child_post_startup_inferior, spu_child_post_attach)
9762         (spu_child_wait, spu_fetch_inferior_registers)
9763         (spu_store_inferior_registers, spu_xfer_partial)
9764         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
9765         methods.
9766         (_initialize_spu_nat): Adjust to C++ification.
9767
9768         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
9769         (the_tilegx_linux_nat_target): New.
9770         (fetch_inferior_registers, store_inferior_registers):
9771         Refactor as methods.
9772         (_initialize_tile_linux_nat): Adjust to C++ification.
9773
9774         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
9775         (the_xtensa_linux_nat_target): New.
9776         (xtensa_linux_fetch_inferior_registers)
9777         (xtensa_linux_store_inferior_registers): Refactor as
9778         xtensa_linux_nat_target methods.
9779         (_initialize_xtensa_linux_nat): Adjust to C++ification.
9780
9781         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
9782         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
9783         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
9784         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
9785         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
9786         (fbsd_stopped_by_sw_breakpoint)
9787         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
9788         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
9789         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
9790         (fbsd_post_startup_inferior, fbsd_post_attach)
9791         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
9792         (fbsd_set_syscall_catchpoint)
9793         (super_xfer_partial, super_resume, super_wait)
9794         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
9795         (fbsd_handle_debug_trap): Remove target_ops parameter.
9796         (fbsd_nat_add_target): Delete.
9797         * fbsd-nat.h: Include "inf-ptrace.h".
9798         (fbsd_nat_add_target): Delete.
9799         (USE_SIGTRAP_SIGINFO): Define.
9800         (fbsd_nat_target): New class.
9801
9802         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
9803         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
9804         (amd64bsd_target): Delete.
9805         * amd64-bsd-nat.h: New file.
9806         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
9807         "x86-bsd-nat.h".
9808         (amd64_fbsd_nat_target): New class.
9809         (the_amd64_fbsd_nat_target): New.
9810         (amd64fbsd_read_description): Refactor as method of
9811         amd64_fbsd_nat_target.
9812         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9813         (_initialize_amd64fbsd_nat): Adjust to C++ification.
9814         * amd64-nat.h (amd64bsd_target): Delete function declaration.
9815         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
9816         (i386bsd_store_inferior_registers): Remove target_ops parameter.
9817         (i386bsd_target): Delete.
9818         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
9819         (i386bsd_fetch_inferior_registers)
9820         (i386bsd_store_inferior_registers): Declare.
9821         (i386_bsd_nat_target): New class.
9822         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
9823         (the_i386_fbsd_nat_target): New.
9824         (i386fbsd_resume, i386fbsd_read_description): Refactor as
9825         i386_fbsd_nat_target methods.
9826         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9827         (_initialize_i386fbsd_nat): Adjust to C++ification.
9828         * x86-bsd-nat.c (super_mourn_inferior): Delete.
9829         (x86bsd_mourn_inferior, x86bsd_target): Delete.
9830         (_initialize_x86_bsd_nat): Adjust to C++ification.
9831         * x86-bsd-nat.h: Include "x86-nat.h".
9832         (x86bsd_target): Delete declaration.
9833         (x86bsd_nat_target): New class.
9834
9835         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
9836         (the_aarch64_fbsd_nat_target): New.
9837         (aarch64_fbsd_fetch_inferior_registers)
9838         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
9839         aarch64_fbsd_nat_target.
9840         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
9841         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
9842         (the_alpha_bsd_nat_target): New.
9843         (alphabsd_fetch_inferior_registers)
9844         (alphabsd_store_inferior_registers): Refactor as
9845         alpha_bsd_nat_target methods.
9846         (_initialize_alphabsd_nat): Refactor as methods of
9847         alpha_bsd_nat_target.
9848         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
9849         (the_amd64_nbsd_nat_target): New.
9850         (_initialize_amd64nbsd_nat): Adjust to C++ification.
9851         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
9852         (the_amd64_obsd_nat_target): New.
9853         (_initialize_amd64obsd_nat): Adjust to C++ification.
9854         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
9855         (the_arm_fbsd_nat_target): New.
9856         (arm_fbsd_fetch_inferior_registers)
9857         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
9858         (_initialize_arm_fbsd_nat): Refactor as methods of
9859         arm_fbsd_nat_target.
9860         (_initialize_arm_fbsd_nat): Adjust to C++ification.
9861         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
9862         (the_arm_netbsd_nat_target): New.
9863         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
9864         arm_netbsd_nat_target.
9865         (_initialize_arm_netbsd_nat): Adjust to C++ification.
9866         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
9867         (the_hppa_nbsd_nat_target): New.
9868         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
9869         hppa_nbsd_nat_target methods.
9870         (_initialize_hppanbsd_nat): Adjust to C++ification.
9871         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
9872         (the_hppa_obsd_nat_target): New.
9873         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
9874         methods of hppa_obsd_nat_target.
9875         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
9876         add_target.
9877         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
9878         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
9879         add_target.
9880         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
9881         (_initialize_i386obsd_nat): Use add_target.
9882         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
9883         (the_m68k_bsd_nat_target): New.
9884         (m68kbsd_fetch_inferior_registers)
9885         (m68kbsd_store_inferior_registers): Refactor as methods of
9886         m68k_bsd_nat_target.
9887         (_initialize_m68kbsd_nat): Adjust to C++ification.
9888         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
9889         (the_mips_fbsd_nat_target): New.
9890         (mips_fbsd_fetch_inferior_registers)
9891         (mips_fbsd_store_inferior_registers): Refactor as methods of
9892         mips_fbsd_nat_target.
9893         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
9894         add_target.
9895         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
9896         (the_mips_nbsd_nat_target): New.
9897         (mipsnbsd_fetch_inferior_registers)
9898         (mipsnbsd_store_inferior_registers): Refactor as methods of
9899         mips_nbsd_nat_target.
9900         (_initialize_mipsnbsd_nat): Adjust to C++ification.
9901         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
9902         (the_mips64_obsd_nat_target): New.
9903         (mips64obsd_fetch_inferior_registers)
9904         (mips64obsd_store_inferior_registers): Refactor as methods of
9905         mips64_obsd_nat_target.
9906         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
9907         add_target.
9908         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
9909         nbsd_nat_target.
9910         * nbsd-nat.h: Include "inf-ptrace.h".
9911         (nbsd_nat_target): New class.
9912         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
9913         (obsd_wait): Refactor as methods of obsd_nat_target.
9914         (obsd_add_target): Delete.
9915         * obsd-nat.h: Include "inf-ptrace.h".
9916         (obsd_nat_target): New class.
9917         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
9918         (the_ppc_fbsd_nat_target): New.
9919         (ppcfbsd_fetch_inferior_registers)
9920         (ppcfbsd_store_inferior_registers): Refactor as methods of
9921         ppc_fbsd_nat_target.
9922         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
9923         add_target.
9924         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
9925         (the_ppc_nbsd_nat_target): New.
9926         (ppcnbsd_fetch_inferior_registers)
9927         (ppcnbsd_store_inferior_registers): Refactor as methods of
9928         ppc_nbsd_nat_target.
9929         (_initialize_ppcnbsd_nat): Adjust to C++ification.
9930         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
9931         (the_ppc_obsd_nat_target): New.
9932         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
9933         methods of ppc_obsd_nat_target.
9934         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
9935         add_target.
9936         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
9937         (the_sh_nbsd_nat_target): New.
9938         (shnbsd_fetch_inferior_registers)
9939         (shnbsd_store_inferior_registers): Refactor as methods of
9940         sh_nbsd_nat_target.
9941         (_initialize_shnbsd_nat): Adjust to C++ification.
9942         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
9943         (inf_ptrace_xfer_partial): Delete.
9944         (sparc_xfer_partial, sparc_target): Delete.
9945         * sparc-nat.h (sparc_fetch_inferior_registers)
9946         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
9947         (sparc_target): Delete function declaration.
9948         (sparc_target): New template class.
9949         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
9950         (_initialize_sparcnbsd_nat): Adjust to C++ification.
9951         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
9952         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
9953         add_target.
9954         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
9955         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
9956         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
9957         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
9958         add_target.
9959         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
9960         (the_vax_bsd_nat_target): New.
9961         (vaxbsd_fetch_inferior_registers)
9962         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
9963         methods.
9964         (_initialize_vaxbsd_nat): Adjust to C++ification.
9965
9966         * bsd-kvm.c (bsd_kvm_target): New class.
9967         (bsd_kvm_ops): Now a bsd_kvm_target.
9968         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
9969         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
9970         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
9971         bsd_kvm_target.
9972         (bsd_kvm_return_one): Delete.
9973         (bsd_kvm_add_target): Adjust to C++ification.
9974
9975         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
9976         (nto_procfs_target_procfs): New classes.
9977         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
9978         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
9979         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
9980         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
9981         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
9982         (procfs_remove_hw_breakpoint, procfs_resume)
9983         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
9984         (procfs_kill_inferior, procfs_store_registers)
9985         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
9986         as methods of nto_procfs_target.
9987         (nto_procfs_ops): Now an nto_procfs_target_procfs.
9988         (nto_native_ops): Delete.
9989         (procfs_open, procfs_native_open): Delete.
9990         (nto_native_ops): Now an nto_procfs_target_native.
9991         (init_procfs_targets): Adjust to C++ification.
9992         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
9993         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
9994         Refactor as methods of nto_procfs_target.
9995
9996         * go32-nat.c (go32_nat_target): New class.
9997         (the_go32_nat_target): New.
9998         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
9999         (go32_store_registers, go32_xfer_partial, go32_files_info)
10000         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10001         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10002         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10003         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10004         (go32_target): Delete.
10005         (_initialize_go32_nat): Adjust to C++ification.
10006
10007         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10008         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10009         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10010         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10011         gnu_nat_target.
10012         (gnu_target): Delete.
10013         * gnu-nat.h (gnu_target): Delete.
10014         (gnu_nat_target): New class.
10015         * i386-gnu-nat.c (gnu_base_target): New.
10016         (i386_gnu_nat_target): New class.
10017         (the_i386_gnu_nat_target): New.
10018         (_initialize_i386gnu_nat): Adjust to C++ification.
10019
10020 2018-05-02  Pedro Alves  <palves@redhat.com>
10021
10022         * bfd-target.c (target_bfd_xclose): Rename to ...
10023         (target_bfd_close): ... this.
10024         (target_bfd_reopen): Adjust.
10025         * target.c (target_close): Remove references to to_xclose.
10026         * target.h (target_ops::to_xclose): Delete.
10027         (target_ops::to_close): Update comments.
10028
10029 2018-05-02  Pedro Alves  <palves@redhat.com>
10030
10031         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10032         "linux-nat.h".
10033         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10034         * inf-ptrace.c (inf_ptrace_register_u_offset)
10035         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10036         (inf_ptrace_store_register, inf_ptrace_store_registers)
10037         (inf_ptrace_trad_target): Move to ...
10038         * linux-nat-trad.c: ... this new file.
10039         * linux-nat-trad.h: New file.
10040         * linux-nat.c (linux_target_install_ops): Make extern.
10041         (linux_trad_target): Delete.
10042         * linux-nat.h (linux_trad_target): Delete declaration.
10043         (linux_target_install_ops): Declare.
10044         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10045         "linux-nat.h".
10046
10047 2018-05-02  Pedro Alves  <palves@redhat.com>
10048
10049         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10050         procfs_target/add_target here.
10051         * procfs.c (procfs_target): Make static.
10052         (_initialize_procfs): Call add_target here.
10053         * procfs.h (struct target_ops): Remove forward declaration.
10054         (procfs_target): Remove declaration.
10055         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10056
10057 2018-05-02  Pedro Alves  <palves@redhat.com>
10058
10059         * procfs.c (procfs_stopped_by_watchpoint)
10060         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10061         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10062         Forward declare.
10063         (procfs_use_watchpoints): Delete, move contents...
10064         (procfs_target): ... here.
10065         * procfs.h (procfs_use_watchpoints): Delete declaration.
10066         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10067         procfs_use_watchpoints.
10068         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10069         procfs_use_watchpoints.
10070
10071 2018-05-02  Tom Tromey  <tom@tromey.com>
10072
10073         PR python/20084:
10074         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10075         and var_zuinteger_unlimited.
10076         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10077         and PARAM_ZUINTEGER_UNLIMITED.
10078         (set_parameter_value): Handle var_zuinteger and
10079         var_zuinteger_unlimited.
10080         (add_setshow_generic): Likewise.
10081         (parmpy_init): Likewise.
10082
10083 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10084
10085         PR rust/23124
10086         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10087         pointer is not null before dereferencing it.
10088
10089 2018-04-30  Tom Tromey  <tom@tromey.com>
10090
10091         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10092         is_mi_like_p.
10093
10094 2018-04-30  Tom Tromey  <tom@tromey.com>
10095
10096         * breakpoint.c (mention): Remove use of is_mi_like_p.
10097         (print_mention_ranged_breakpoint): Likewise.
10098         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10099         of is_mi_like_p.
10100
10101 2018-04-30  Tom Tromey  <tom@tromey.com>
10102
10103         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10104
10105 2018-04-30  Tom Tromey  <tom@tromey.com>
10106
10107         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10108         (info_spu_event_command): Remove some uses of is_mi_like_p.
10109
10110 2018-04-30  Tom Tromey  <tom@tromey.com>
10111
10112         * python/py-framefilter.c (py_print_single_arg)
10113         (enumerate_locals, py_print_args, py_print_frame): Remove some
10114         uses of is_mi_like_p.
10115
10116 2018-04-30  Tom Tromey  <tom@tromey.com>
10117
10118         * ui-out.c: Update.
10119         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10120         * ui-out.h (ui_out::is_mi_like_p): Now const.
10121         (ui_out::do_is_mi_like_p): Now const.
10122         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10123
10124 2018-04-30  Tom Tromey  <tom@tromey.com>
10125
10126         * varobj.c (varobj_set_visualizer): Use new_reference.
10127         * python/python.c (gdbpy_decode_line): Use new_reference.
10128         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10129         new_reference.
10130
10131 2018-04-30  Tom Tromey  <tom@tromey.com>
10132
10133         * varobj.c (install_new_value): Use new_reference.
10134         * value.h (value_incref): Return void.  Swap intro comment with
10135         value_decref.
10136         * value.c (set_value_parent): Use new_reference.
10137         (value_incref): Return void.  Update intro comment.
10138         (release_value): Use new_reference.
10139         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10140
10141 2018-04-30  Tom Tromey  <tom@tromey.com>
10142
10143         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10144         * gdb_bfd.h (new_bfd_ref): Remove.
10145         (gdb_bfd_open): Update comment.
10146         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10147         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10148         (gdb_bfd_fdopenr): Use new_reference.
10149         * exec.c (exec_file_attach): Use new_reference.
10150
10151 2018-04-30  Tom Tromey  <tom@tromey.com>
10152
10153         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10154         method.
10155
10156 2018-04-30  Tom Tromey  <tom@tromey.com>
10157
10158         * jit.c (jit_read_code_entry): Use type_align.
10159         * i386-tdep.c (i386_gdbarch_init): Don't call
10160         set_gdbarch_long_long_align_bit.
10161         * gdbarch.sh: Remove long_long_align_bit.
10162         * gdbarch.c, gdbarch.h: Rebuild.
10163         * arc-tdep.c (arc_type_align): New function.
10164         (arc_gdbarch_init): Use arc_type_align.  Don't call
10165         set_gdbarch_long_long_align_bit.
10166
10167 2018-04-30  Tom Tromey  <tom@tromey.com>
10168
10169         * rust-lang.c (rust_type_alignment): Remove.
10170         (rust_composite_type): Use type_align.
10171
10172 2018-04-30  Tom Tromey  <tom@tromey.com>
10173
10174         * NEWS: Mention Type.align.
10175         * python/py-type.c (typy_get_alignof): New function.
10176         (type_object_getset): Add "alignof".
10177
10178 2018-04-30  Tom Tromey  <tom@tromey.com>
10179
10180         PR exp/17095:
10181         * NEWS: Update.
10182         * std-operator.def (UNOP_ALIGNOF): New operator.
10183         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10184         New.
10185         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10186         * c-lang.c (c_op_print_tab): Add alignof.
10187         * c-exp.y (ALIGNOF): New token.
10188         (exp): Add "ALIGNOF" production.
10189         (ident_tokens): Add _Alignof and alignof.
10190
10191 2018-04-30  Tom Tromey  <tom@tromey.com>
10192
10193         * i386-tdep.c (i386_type_align): New function.
10194         (i386_gdbarch_init): Update.
10195         * gdbarch.sh (type_align): New method.
10196         * gdbarch.c, gdbarch.h: Rebuild.
10197         * arch-utils.h (default_type_align): Declare.
10198         * arch-utils.c (default_type_align): New function.
10199         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10200         (struct type) <align_log2>: New field.
10201         <instance_flags>: Now a bitfield.
10202         (TYPE_RAW_ALIGN): New macro.
10203         (type_align, type_raw_align, set_type_align): Declare.
10204         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10205         functions.
10206         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10207         (get_alignment, maybe_set_alignment): New functions.
10208         (read_structure_type, read_enumeration_type, read_array_type)
10209         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10210         (read_subrange_type, read_base_type): Set type alignment.
10211
10212 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10213
10214         * dwarf2read.c (read_index_from_section): Use bool.
10215
10216 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10217
10218         PR gdb/22950
10219         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10220         with #ifdef.
10221
10222 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10223
10224         PR build/22873
10225         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10226         last step, and do it atomically.
10227
10228 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10229
10230         * compile/compile-c-types.c (convert_int, convert_float):
10231         Update for C FE v1.
10232
10233 2018-04-27  Tom Tromey  <tom@tromey.com>
10234
10235         PR rust/22545:
10236         * rust-lang.c (rust_inclusive_range_type_p): New function.
10237         (rust_range): Handle inclusive ranges.
10238         (rust_compute_range): Likewise.
10239         * rust-exp.y (struct rust_op) <inclusive>: New field.
10240         (DOTDOTEQ): New constant.
10241         (range_expr): Add "..=" productions.
10242         (operator_tokens): Add "..=" token.
10243         (ast_range): Add "inclusive" parameter.
10244         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10245         ranges.
10246         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10247         bounds values.
10248         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10249         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10250         Update comments.
10251         * expprint.c (print_subexp_standard): Handle new bounds values.
10252         (dump_subexp_body_standard): Likewise.
10253
10254 2018-04-27  Tom Tromey  <tom@tromey.com>
10255
10256         * configure: Rebuild.
10257         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10258         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10259         "OVERRIDE".
10260         (class symbol_needs_eval_context): Likewise.
10261         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10262         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10263         "virtual".
10264         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10265         "override".
10266         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10267         * aarch64-tdep.c (instruction_reader::read): Use "override".
10268         (instruction_reader_test::read): Likewise.
10269         * arm-tdep.c (instruction_reader::read): Use "override".
10270         (instruction_reader_thumb::read): Likewise.
10271
10272 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10273
10274         PR remote/9665
10275         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10276         instead of remote_send.
10277         (remote_send): Remove.
10278
10279 2018-04-26  Pedro Alves  <palves@redhat.com>
10280
10281         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10282         find_function_start_sal instead of find_pc_line.
10283
10284 2018-04-26  Pedro Alves  <palves@redhat.com>
10285
10286         * breakpoint.c (set_breakpoint_location_function): Handle
10287         mst_data_gnu_ifunc.
10288         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10289         * elfread.c (elf_symtab_read): Give data symbols with
10290         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10291         (elf_rel_plt_read): Update comment.
10292         * linespec.c (convert_linespec_to_sals): Handle
10293         mst_data_gnu_ifunc.
10294         (minsym_found): Handle mst_data_gnu_ifunc.
10295         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10296         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10297         * parse.c (find_minsym_type_and_address): Handle
10298         mst_data_gnu_ifunc.
10299         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10300         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10301         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10302         comment.
10303         <mst_data_gnu_ifunc>: New enumerator.
10304
10305 2018-04-26  Pedro Alves  <palves@redhat.com>
10306
10307         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10308         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10309         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10310         Handle it.
10311         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10312         (lookup_minimal_symbol_by_pc): Adjust.
10313         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10314         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10315         * minsyms.h (lookup_msym_prefer): New enum.
10316         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10317         parameter by a lookup_msym_prefer parameter.
10318
10319 2018-04-26  Pedro Alves  <palves@redhat.com>
10320
10321         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10322         ends in "@plt" instead of looking at the symbol's section.
10323
10324 2018-04-26  Pedro Alves  <palves@redhat.com>
10325
10326         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10327         all references.
10328         (find_pc_partial_function_gnu_ifunc): Rename to ...
10329         (find_pc_partial_function): ... this, and remove references to
10330         'is_gnu_ifunc_p'.
10331         (find_pc_partial_function): Delete old implementation.
10332         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10333
10334 2018-04-26  Pedro Alves  <palves@redhat.com>
10335
10336         * linespec.c (struct bound_minimal_symbol_search_key): New.
10337         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10338         skip first line if we found a GNU ifunc minimal symbol by name.
10339         (compare_msymbols): Change parameters to work with a destructured
10340         lhs minsym.
10341         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10342         functions.
10343
10344 2018-04-26  Pedro Alves  <palves@redhat.com>
10345
10346         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10347         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10348         address/name.
10349         (add_location_to_breakpoint): Store the minsym and the objfile in
10350         the breakpoint location.
10351         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10352         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10353         Record the minsym in the sal.
10354         * symtab.h (symtab_and_line) <msymbol>: New field.
10355
10356 2018-04-26  Pedro Alves  <palves@redhat.com>
10357
10358         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10359         unless we actually resolved the ifunc.
10360
10361 2018-04-26  Pedro Alves  <palves@redhat.com>
10362
10363         * c-exp.y (variable production): Prefer ifunc minsyms over
10364         regular function symbols.
10365         * symtab.c (find_gnu_ifunc): New function.
10366         * minsyms.h (lookup_msym_prefer): New enum.
10367         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10368         parameter by a lookup_msym_prefer parameter.
10369         * symtab.h (find_gnu_ifunc): New declaration.
10370
10371 2018-04-26  Pedro Alves  <palves@redhat.com>
10372
10373         * blockframe.c (find_gnu_ifunc_target_type): New function.
10374         (find_function_type): New.
10375         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10376         return a value with a memory address.
10377         (eval_call): For calls to GNU ifunc functions, try to find the
10378         type of the target function from the type that the resolver
10379         returns.
10380         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10381         symbols.
10382         * infcall.c (find_function_return_type): Delete.
10383         (find_function_addr): Add 'function_type' parameter.  For calls to
10384         GNU ifunc functions, try to find the type of the target function
10385         from the type that the resolver returns, and return it via
10386         FUNCTION_TYPE.
10387         (call_function_by_hand_dummy): Adjust to use the function type
10388         returned by find_function_addr.
10389         (find_function_addr): Add 'function_type' parameter and move
10390         description here.
10391         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10392         declarations.
10393
10394 2018-04-26  Pedro Alves  <palves@redhat.com>
10395
10396         * c-exp.y (variable production): Skip finding an alias for ifunc
10397         symbols.
10398
10399 2018-04-26  Pedro Alves  <palves@redhat.com>
10400
10401         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10402
10403 2018-04-25  Pedro Alves  <palves@redhat.com>
10404
10405         * infcmd.c (kill_command): Print the pid as string, not the whole
10406         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10407         message.
10408         * remote.c (remote_detach_1): Print the pid as string, not the
10409         whole thread's ptid.
10410
10411 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10412             Sergio Durigan Junior  <sergiodj@redhat.com>
10413             Pedro Alves  <palves@redhat.com>
10414
10415         * infcmd.c (kill_command): Print message when inferior has
10416         been killed.
10417         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10418         '1'.
10419         (add_inferior): Improve message printed when
10420         'print_inferior_events' is on.
10421         (exit_inferior): Remove message printed when
10422         'print_inferior_events' is on.
10423         (detach_inferior): Improve message printed when
10424         'print_inferior_events' is on.
10425         (initialize_inferiors): Use 'add_inferior_silent' to set
10426         'current_inferior_'.
10427         * inferior.h (print_inferior_events): Declare here as
10428         'extern'.
10429         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10430         '[Detaching...]' messages when 'print_inferior_events' is on.
10431         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10432         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10433         'Detaching after fork from child...', replace it by '... from
10434         parent...'.
10435         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10436         prefix/suffix when printing 'Detaching...' messages.  Print
10437         them when 'print_inferior_events' is on.
10438         * remote.c (remote_detach_1): Print message when detaching
10439         from inferior and '!is_fork_parent'.
10440
10441 2018-04-24  Tom Tromey  <tom@tromey.com>
10442
10443         * cli-out.h: Reindent.
10444
10445 2018-04-24  Tom Tromey  <tom@tromey.com>
10446
10447         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10448         (cli_ui_out::do_field_string): Use fputs_filtered.
10449         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10450
10451 2018-04-23  Tom Tromey  <tom@tromey.com>
10452
10453         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10454         gdb::unique_xmalloc_ptr.
10455
10456 2018-04-23  Tom Tromey  <tom@tromey.com>
10457
10458         * configure: Rebuild.
10459
10460 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10461
10462         PR gdb/23095
10463         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10464         prepare_for_testing.  Set normal_bp to r_debug_state if target
10465         is bsd.
10466
10467 2018-04-21  Pedro Alves  <palves@redhat.com>
10468             Rajendra SY  <rajendra.sy@gmail.com>
10469
10470         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10471         * remote.c (extended_remote_attach): In all-stop mode, mark the
10472         thread as executing.
10473
10474 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10475
10476         * thread.c (thread_apply_all_command): Fix comment.
10477         (thread_command): Fix comment.
10478
10479 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10480
10481         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10482         parameter.
10483         * features/aarch64-core.c (create_feature_aarch64_core):
10484         Regenerate.
10485         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10486         Likewise.
10487         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10488         Likewise.
10489         * features/i386/32bit-avx512.c
10490         (create_feature_i386_32bit_avx512): Likewise.
10491         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10492         Likewise.
10493         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10494         Likewise.
10495         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10496         Likewise.
10497         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10498         Likewise.
10499         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10500         Likewise.
10501         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10502         Likewise.
10503         * features/i386/64bit-avx512.c
10504         (create_feature_i386_64bit_avx512): Likewise.
10505         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10506         Likewise.
10507         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10508         Likewise.
10509         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10510         Likewise.
10511         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10512         Likewise.
10513         * features/i386/64bit-segments.c
10514         (create_feature_i386_64bit_segments): Likewise.
10515         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10516         Likewise.
10517         * features/i386/x32-core.c
10518         (create_feature_i386_x32_core): Likewise.
10519         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10520         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10521         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10522         * target-descriptions.c: In generated code, don't pass xml
10523         filename.
10524
10525 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10526
10527         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10528         (print_xml_feature::visit_post): Likewise.
10529         (print_xml_feature::visit): Likewise.
10530         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10531         (print_xml_feature): Add new class.
10532         * regformats/regdat.sh: Null xmltarget on feature targets.
10533         * target-descriptions.c (struct target_desc): Add xmltarget.
10534         (maintenance_check_tdesc_xml_convert): Add unittest function.
10535         (tdesc_get_features_xml): Add function to get xml.
10536         (maintenance_check_xml_descriptions): Test xml generation.
10537         * xml-tdesc.c (string_read_description_xml): Add function.
10538         * xml-tdesc.h (string_read_description_xml): Add declaration.
10539
10540 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10541
10542         * features/Makefile: Add feature marker to targets with new style
10543         target descriptions.
10544         * regformats/aarch64.dat: Regenerate.
10545         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10546         * regformats/i386/amd64-avx-linux.dat: Likewise.
10547         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10548         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10549         * regformats/i386/amd64-linux.dat: Likewise.
10550         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10551         * regformats/i386/amd64.dat: Likewise.
10552         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10553         * regformats/i386/i386-avx-linux.dat: Likewise.
10554         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10555         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10556         * regformats/i386/i386-linux.dat: Likewise.
10557         * regformats/i386/i386-mmx-linux.dat: Likewise.
10558         * regformats/i386/i386-mpx-linux.dat: Likewise.
10559         * regformats/i386/i386.dat: Likewise.
10560         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10561         * regformats/i386/x32-avx-linux.dat: Likewise.
10562         * regformats/i386/x32-linux.dat: Likewise.
10563         * regformats/tic6x-c62x-linux.dat: Likewise.
10564         * regformats/tic6x-c64x-linux.dat: Likewise.
10565         * regformats/tic6x-c64xp-linux.dat: Likewise.
10566         * regformats/regdat.sh: Parse feature marker.
10567
10568 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10569
10570         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
10571         (tdesc_osabi_name): Likewise.
10572         * target-descriptions.c (tdesc_architecture_name): Add new
10573         function.
10574         (tdesc_osabi_name): Likewise.
10575
10576 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10577
10578         * common/tdesc.c (tdesc_predefined_type): Move to here.
10579         (tdesc_named_type): Likewise.
10580         (tdesc_create_vector): Likewise.
10581         (tdesc_create_struct): Likewise.
10582         (tdesc_set_struct_size): Likewise.
10583         (tdesc_create_union): Likewise.
10584         (tdesc_create_flags): Likewise.
10585         (tdesc_create_enum): Likewise.
10586         (tdesc_add_field): Likewise.
10587         (tdesc_add_typed_bitfield): Likewise.
10588         (tdesc_add_bitfield): Likewise.
10589         (tdesc_add_flag): Likewise.
10590         (tdesc_add_enum_value): Likewise.
10591         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
10592         (struct tdesc_type_vector): Likewise.
10593         (struct tdesc_type_field): Likewise.
10594         (struct tdesc_type_with_fields): Likewise.
10595         (tdesc_create_enum): Add declaration.
10596         (tdesc_add_typed_bitfield): Likewise.
10597         (tdesc_add_enum_value): Likewise.
10598         * target-descriptions.c (tdesc_type_field): Move from here.
10599         (tdesc_type_builtin): Likewise.
10600         (tdesc_type_vector): Likewise.
10601         (tdesc_type_with_fields): Likewise.
10602         (tdesc_predefined_types): Likewise.
10603         (tdesc_named_type): Likewise.
10604         (tdesc_create_vector): Likewise.
10605         (tdesc_create_struct): Likewise.
10606         (tdesc_set_struct_size): Likewise.
10607         (tdesc_create_union): Likewise.
10608         (tdesc_create_flags): Likewise.
10609         (tdesc_create_enum): Likewise.
10610         (tdesc_add_field): Likewise.
10611         (tdesc_add_typed_bitfield): Likewise.
10612         (tdesc_add_bitfield): Likewise.
10613         (tdesc_add_flag): Likewise.
10614         (tdesc_add_enum_value): Likewise.
10615         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
10616         (tdesc_add_typed_bitfield): Likewise.
10617         (tdesc_add_enum_value): Likewise.
10618
10619 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10620
10621         * common/tdesc.c (tdesc_feature::accept): Move to here.
10622         (tdesc_feature::operator==): Likewise.
10623         (tdesc_create_reg): Likewise.
10624         * common/tdesc.h (tdesc_type_kind): Likewise.
10625         (struct tdesc_type): Likewise.
10626         (struct tdesc_feature): Likewise.
10627         * regformats/regdat.sh: Create a feature.
10628         * target-descriptions.c (tdesc_type_kind): Move from here.
10629         (tdesc_type): Likewise.
10630         (tdesc_type_up): Likewise.
10631         (tdesc_feature): Likewise.
10632         (tdesc_create_reg): Likewise.
10633
10634 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10635
10636         * Makefile.in: Add arch/tdesc.c
10637         * common/tdesc.c: New file.
10638         * common/tdesc.h (tdesc_element_visitor): Move to here.
10639         (tdesc_element): Likewise.
10640         (tdesc_reg): Likewise.
10641         (tdesc_reg_up): Likewise.
10642         * regformats/regdef.h (reg): Add offset to constructors.
10643         * target-descriptions.c (tdesc_element_visitor): Move from here.
10644         (tdesc_element): Likewise.
10645         (tdesc_reg): Likewise.
10646         (tdesc_reg_up): Likewise.
10647
10648 2018-04-17  Tom Tromey  <tom@tromey.com>
10649
10650         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
10651         discriminant field.
10652
10653 2018-04-17  Tom Tromey  <tom@tromey.com>
10654
10655         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
10656
10657 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10658
10659         * symtab.c (print_symbol_info): Skip printing filename and line
10660         number when `last' is NULL.
10661         (symtab_symbol_info): Use empty string instead of NULL for first
10662         invocation of print_symbol_info.
10663         (rbreak_command): Pass NULL to `last' parameter of
10664         print_symbol_info.
10665
10666 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
10667
10668         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
10669         instead of nullptr.
10670
10671 2018-04-16  Pedro Alves  <palves@redhat.com>
10672
10673         * MAINTAINERS (sh): Remove.
10674         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
10675         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
10676         (ALLDEPFILES): Remove sh64-tdep.c.
10677         * NEWS: Mentions that support for SH-5/SH64 is removed.
10678         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
10679         (sh*-*-openbsd*): Ditto.
10680         (sh64-*-elf*): Remove.
10681         (sh*): Remove.
10682         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
10683         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
10684         * sh-tdep.c: No longer include "sh64-tdep.h".
10685         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
10686         * sh64-tdep.c, sh64-tdep.h: Remove files.
10687
10688 2018-04-16  Pedro Alves  <palves@redhat.com>
10689
10690         * MAINTAINERS: Remove m88k.
10691         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
10692         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
10693         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
10694         * NEWS: Mention that support for m88k was removed.
10695         * configure.host (m88*-*-*): Remove support.
10696         * configure.nat (m88k-*-*): Remove support.
10697         * configure.tgt (m88*-*-openbsd*): Remove.
10698         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
10699
10700 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
10701
10702         * configure.tgt (x86_tobjs): New variable.
10703         (amd64_tobjs, i386_tobjs): Use it.
10704
10705 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10706
10707         * symtab.c (print_symbol_info): Precede the symbol definition by
10708         the line number when available.
10709         * NEWS: Advertise this enhancement.
10710
10711 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10712
10713         * NEWS (New options): announce set/show record btrace cpu.
10714         * btrace.c: Include record-btrace.h.
10715         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
10716         the vendor is unknown.
10717         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
10718         Maybe overwrite the btrace configuration's cpu.
10719         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
10720         (btrace_fetch): Add cpu parameter.  Update callers.
10721         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
10722         Maybe overwrite the btrace configuration's cpu.  Skip enabling
10723         errata workarounds if the vendor is unknown.
10724         * python/py-record-btrace.c: Include record-btrace.h.
10725         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
10726         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
10727         * record-btrace.c (record_btrace_cpu_state_kind): New.
10728         (record_btrace_cpu): New.
10729         (set_record_btrace_cpu_cmdlist): New.
10730         (record_btrace_get_cpu): New.
10731         (require_btrace_thread, record_btrace_info)
10732         (record_btrace_resume_thread): Call record_btrace_get_cpu.
10733         (cmd_set_record_btrace_cpu_none): New.
10734         (cmd_set_record_btrace_cpu_auto): New.
10735         (cmd_set_record_btrace_cpu): New.
10736         (cmd_show_record_btrace_cpu): New.
10737         (_initialize_record_btrace): Initialize set/show record btrace cpu
10738         commands.
10739         * record-btrace.h (record_btrace_get_cpu): New.
10740
10741 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10742
10743         * record.c (set_record_command): Fix typo in message.
10744
10745 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10746
10747         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
10748
10749 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10750
10751         * infrun.c (process_event_stop_test): Call
10752         gdbarch_in_indirect_branch_thunk.
10753         * gdbarch.sh (in_indirect_branch_thunk): New.
10754         * gdbarch.c: Regenerated.
10755         * gdbarch.h: Regenerated.
10756         * x86-tdep.h: New.
10757         * x86-tdep.c: New.
10758         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
10759         (HFILES_NO_SRCDIR): Add x86-tdep.h.
10760         (ALLDEPFILES): Add x86-tdep.c.
10761         * arch-utils.h (default_in_indirect_branch_thunk): New.
10762         * arch-utils.c (default_in_indirect_branch_thunk): New.
10763         * i386-tdep: Include x86-tdep.h.
10764         (i386_in_indirect_branch_thunk): New.
10765         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
10766         function.
10767         * amd64-tdep: Include x86-tdep.h.
10768         (amd64_in_indirect_branch_thunk): New.
10769         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
10770
10771 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
10772
10773         PR gdb/23053
10774         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
10775         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
10776         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
10777         regression.
10778
10779 2018-04-12  Tom Tromey  <tom@tromey.com>
10780
10781         * rust-lang.c (rust_print_struct_def): Remove univariant code.
10782         (rust_evaluate_subexp): Likewise.
10783
10784 2018-04-12  Pedro Alves  <palves@redhat.com>
10785
10786         * procfs.c (procfs_detach): Make forward declaration's prototype
10787         match definition's protototype.
10788         (proc_get_LDT_entry): Remove stale do_cleanups call.
10789
10790 2018-04-12  Pedro Alves  <palves@redhat.com>
10791
10792         * target.h (target_ops::to_has_exited): Delete.
10793         (target_has_exited): Delete.
10794         * target-delegates.c: Regenerate.
10795
10796 2018-04-11  Pedro Alves  <palves@redhat.com>
10797
10798         * target.c (fileio_fh_t::t): Add comment.
10799         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10800         (target_fileio_close): Handle a NULL target.
10801         (invalidate_fileio_fh): New.
10802         (target_close): Call it.
10803         * remote.c (remote_hostio_send_command): No longer check whether
10804         remote_desc is open.
10805
10806 2018-04-11  Pedro Alves  <palves@redhat.com>
10807
10808         * target.c (fileio_fh_t): Make it a named struct instead of a
10809         typedef.
10810         (fileio_fh_t::is_closed): New method.
10811         (DEF_VEC_O (fileio_fh_t)): Remove.
10812         (fileio_fhandles): Now a std::vector.
10813         (is_closed_fileio_fh): Delete.
10814         (acquire_fileio_fd): Adjust.  Rename parameters.
10815         (release_fileio_fd): Adjust.
10816         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
10817         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10818         (target_fileio_close): Adjust.
10819
10820 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
10821
10822         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
10823         index.
10824
10825 2018-04-10  Pedro Alves  <palves@redhat.com>
10826
10827         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
10828         (scoped_finish_thread_state): New class.
10829         * infcmd.c (run_command_1): Use it instead of finish_thread_state
10830         cleanup.
10831         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
10832         (fetch_inferior_event, normal_stop): Likewise.
10833         * thread.c (finish_thread_state_cleanup): Delete.
10834
10835 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10836             Pedro Alves  <palves@redhat.com>
10837
10838         * value.c: Include "selftest.h" and "common/array-view.h".
10839         (struct range) <operator ==>: New.
10840         (test_ranges_contain): New.
10841         (check_ranges_vector): New.
10842         (test_insert_into_bit_range_vector): New.
10843         (_initialize_values): Register selftests.
10844         * common/array-view.h (operator==, operator!=): New.
10845
10846 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10847
10848         * common/gdb_vecs.h (unordered_remove): Add overload that takes
10849         an iterator.
10850         * inline-frame.c: Include <algorithm>.
10851         (struct inline_state): Add constructor.
10852         (inline_state_s): Remove.
10853         (DEF_VEC_O(inline_state_s)): Remove.
10854         (inline_states): Change type to std::vector.
10855         (find_inline_frame_state): Adjust to std::vector.
10856         (allocate_inline_frame_state): Remove.
10857         (clear_inline_frame_state): Adjust to std::vector.
10858         (skip_inline_frames): Adjust to std::vector.
10859
10860 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10861
10862         * tracepoint.h (struct trace_state_variable): Add constructor.
10863         <name>: Change type to std::string.
10864         * tracepoint.c (tsv_s): Remove.
10865         (DEF_VEC_O(tsv_s)): Remove.
10866         (tvariables): Change to std::vector.
10867         (create_trace_state_variable): Adjust to std::vector.
10868         (find_trace_state_variable): Likewise.
10869         (find_trace_state_variable_by_number): Likewise.
10870         (delete_trace_state_variable): Likewise.
10871         (trace_variable_command): Adjust to std::string.
10872         (delete_trace_variable_command): Likewise.
10873         (tvariables_info_1): Adjust to std::vector.
10874         (save_trace_state_variables): Likewise.
10875         (start_tracing): Likewise.
10876         (merge_uploaded_trace_state_variables): Adjust to std::vector
10877         and std::string.
10878         * target.h (struct target_ops)
10879         <to_download_trace_state_variable>: Pass reference to
10880         trace_state_variable.
10881         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
10882         * target-delegates.c: Re-generate.
10883         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
10884         (mi_tsv_deleted): Likewise.
10885         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
10886         * remote.c (remote_download_trace_state_variable): Change
10887         pointer to reference and adjust.
10888         * make-target-delegates (parse_argtypes): Handle references.
10889         (write_function_header): Likewise.
10890         (munge_type): Likewise.
10891
10892 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10893
10894         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10895         string_view-selftests.c.
10896         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
10897         testsuite.
10898         * unittests/basic_string_view/cons/char/1.cc: Likewise.
10899         * unittests/basic_string_view/cons/char/2.cc: Likewise.
10900         * unittests/basic_string_view/cons/char/3.cc: Likewise.
10901         * unittests/basic_string_view/element_access/char/1.cc:
10902         Likewise.
10903         * unittests/basic_string_view/element_access/char/empty.cc:
10904         Likewise.
10905         * unittests/basic_string_view/element_access/char/front_back.cc:
10906         Likewise.
10907         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
10908         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
10909         Likewise.
10910         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
10911         Likewise.
10912         * unittests/basic_string_view/modifiers/swap/char/1.cc:
10913         Likewise.
10914         * unittests/basic_string_view/operations/compare/char/1.cc:
10915         Likewise.
10916         * unittests/basic_string_view/operations/compare/char/13650.cc:
10917         Likewise.
10918         * unittests/basic_string_view/operations/copy/char/1.cc:
10919         Likewise.
10920         * unittests/basic_string_view/operations/data/char/1.cc:
10921         Likewise.
10922         * unittests/basic_string_view/operations/find/char/1.cc:
10923         Likewise.
10924         * unittests/basic_string_view/operations/find/char/2.cc:
10925         Likewise.
10926         * unittests/basic_string_view/operations/find/char/3.cc:
10927         Likewise.
10928         * unittests/basic_string_view/operations/find/char/4.cc:
10929         Likewise.
10930         * unittests/basic_string_view/operations/rfind/char/1.cc:
10931         Likewise.
10932         * unittests/basic_string_view/operations/rfind/char/2.cc:
10933         Likewise.
10934         * unittests/basic_string_view/operations/rfind/char/3.cc:
10935         Likewise.
10936         * unittests/basic_string_view/operations/substr/char/1.cc:
10937         Likewise.
10938         * unittests/basic_string_view/operators/char/2.cc: Likewise.
10939         * unittests/string_view-selftests.c: New file.
10940
10941 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10942
10943         * unittests/basic_string_view/capacity/1.cc: New file.
10944         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
10945         * unittests/basic_string_view/cons/char/1.cc: New file.
10946         * unittests/basic_string_view/cons/char/2.cc: New file.
10947         * unittests/basic_string_view/cons/char/3.cc: New file.
10948         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
10949         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
10950         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
10951         * unittests/basic_string_view/element_access/char/1.cc: New file.
10952         * unittests/basic_string_view/element_access/char/2.cc: New file.
10953         * unittests/basic_string_view/element_access/char/empty.cc: New file.
10954         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
10955         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
10956         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
10957         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
10958         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
10959         * unittests/basic_string_view/include.cc: New file.
10960         * unittests/basic_string_view/inserters/char/1.cc: New file.
10961         * unittests/basic_string_view/inserters/char/2.cc: New file.
10962         * unittests/basic_string_view/inserters/char/3.cc: New file.
10963         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
10964         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
10965         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
10966         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
10967         * unittests/basic_string_view/literals/types.cc: New file.
10968         * unittests/basic_string_view/literals/values.cc: New file.
10969         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
10970         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
10971         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
10972         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
10973         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
10974         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
10975         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
10976         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
10977         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
10978         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
10979         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
10980         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
10981         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
10982         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
10983         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
10984         * unittests/basic_string_view/operations/data/char/1.cc: New file.
10985         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
10986         * unittests/basic_string_view/operations/find/char/1.cc: New file.
10987         * unittests/basic_string_view/operations/find/char/2.cc: New file.
10988         * unittests/basic_string_view/operations/find/char/3.cc: New file.
10989         * unittests/basic_string_view/operations/find/char/4.cc: New file.
10990         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
10991         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
10992         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
10993         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
10994         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
10995         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
10996         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
10997         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
10998         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
10999         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11000         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11001         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11002         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11003         * unittests/basic_string_view/operators/char/2.cc: New file.
11004         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11005         * unittests/basic_string_view/range_access/char/1.cc: New file.
11006         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11007         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11008         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11009         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11010         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11011         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11012         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11013         * unittests/basic_string_view/typedefs.cc: New file.
11014         * unittests/basic_string_view/types/1.cc: New file.
11015
11016 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11017
11018         * common/gdb_string_view.h: Remove libstdc++ implementation
11019         details, adjust to gdb reality.
11020         * common/gdb_string_view.tcc: Likewise.
11021         * cli/cli-script.c (struct string_view): Remove.
11022         (user_args) <m_args>: Change element type to gdb::string_view.
11023         (user_args::insert_args): Adjust.
11024
11025 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11026
11027         * common/gdb_string_view.h: New file.
11028         * common/gdb_string_view.tcc: New file.
11029
11030 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11031
11032         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11033         * configure: Re-generate.
11034
11035 2018-04-09  Pedro Alves  <palves@redhat.com>
11036
11037         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11038         (set_target_gdbarch): Call
11039         gdb::observers::architecture_changed.notify instead of
11040         observer_notify_architecture_changed.
11041
11042 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11043
11044         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11045         (do_restore_current_traceframe_cleanup): Remove.
11046         (restore_current_traceframe_cleanup_dtor): Remove.
11047         (make_cleanup_restore_current_traceframe): Remove.
11048         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11049         New.
11050         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11051         * infrun.c (fetch_inferior_event): Use
11052         scoped_restore_current_traceframe.
11053
11054 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11055
11056         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11057         Remove.
11058         <n_allocated_type_units>: Remove.
11059         <all_type_units>: Change to std::vector.
11060         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11061         to std::vector change.
11062         (dwarf2_per_objfile::get_cutu): Likewise.
11063         (dwarf2_per_objfile::get_tu): Likewise.
11064         (create_signatured_type_table_from_index): Likewise.
11065         (create_signatured_type_table_from_debug_names): Likewise.
11066         (dw2_symtab_iter_next): Likewise.
11067         (dw2_print_stats): Likewise.
11068         (dw2_expand_all_symtabs): Likewise.
11069         (dw2_expand_marked_cus): Likewise.
11070         (dw2_debug_names_iterator::next): Likewise.
11071         (dwarf2_initialize_objfile): Likewise.
11072         (add_signatured_type_cu_to_table): Likewise.
11073         (create_all_type_units): Likewise.
11074         (add_type_unit): Likewise.
11075         (struct tu_abbrev_offset): Add constructor.
11076         (build_type_psymtabs_1): Adjust to std::vector change.
11077         (print_tu_stats): Likewise.
11078         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11079         (write_debug_names): Likewise.
11080
11081 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11082
11083         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11084         Make an std::vector.
11085         <n_comp_units>: Remove.
11086         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11087         to std::vector change.
11088         (dwarf2_per_objfile::get_cutu): Likewise.
11089         (dwarf2_per_objfile::get_cu): Likewise.
11090         (create_cus_from_index): Likewise.
11091         (create_addrmap_from_index): Likewise.
11092         (create_addrmap_from_aranges): Likewise.
11093         (dwarf2_read_index): Likewise.
11094         (dw2_find_last_source_symtab): Likewise.
11095         (dw2_map_symtabs_matching_filename): Likewise.
11096         (dw2_symtab_iter_next): Likewise.
11097         (dw2_print_stats): Likewise.
11098         (dw2_expand_all_symtabs): Likewise.
11099         (dw2_expand_symtabs_with_fullname): Likewise.
11100         (dw2_expand_marked_cus): Likewise.
11101         (dw2_map_symbol_filenames): Likewise.
11102         (create_cus_from_debug_names): Likewise.
11103         (dwarf2_read_debug_names): Likewise.
11104         (dw2_debug_names_iterator::next): Likewise.
11105         (dwarf2_initialize_objfile): Likewise.
11106         (set_partial_user): Likewise.
11107         (dwarf2_build_psymtabs_hard): Likewise.
11108         (read_comp_units_from_section): Remove arguments, adjust to
11109         std::vector change.
11110         (create_all_comp_units): Adjust to std::vector and
11111         read_comp_units_from_section changes.
11112         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11113         change.
11114         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11115         (psyms_seen_size): Likewise.
11116         (write_gdbindex): Likewise.
11117         (write_debug_names): Likewise.
11118
11119 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11120
11121         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11122         with dwarf2_per_objfile.
11123         (create_cus_from_index): Likewise.
11124         (create_signatured_type_table_from_index): Likewise.
11125         (dwarf2_read_index): Likewise.
11126         (dwarf2_initialize_objfile): Likewise.
11127         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11128         per_cu rather than get_dwarf2_per_objfile.
11129
11130 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11131
11132         * dwarf2read.h (struct signatured_type): Forward declare.
11133         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11134         New methods.
11135         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11136         (dw2_get_cutu): ...this.
11137         (dwarf2_per_objfile::get_cu): Rename from...
11138         (dw2_get_cu): ...this.
11139         (dwarf2_per_objfile::get_tu): New.
11140         (create_addrmap_from_index): Adjust.
11141         (create_addrmap_from_aranges): Adjust.
11142         (dw2_find_last_source_symtab): Adjust.
11143         (dw2_map_symtabs_matching_filename): Adjust.
11144         (dw2_symtab_iter_next): Adjust.
11145         (dw2_print_stats): Adjust.
11146         (dw2_expand_all_symtabs): Adjust.
11147         (dw2_expand_symtabs_with_fullname): Adjust.
11148         (dw2_expand_marked_cus): Adjust.
11149         (dw_expand_symtabs_matching_file_matcher): Adjust.
11150         (dw2_map_symbol_filenames): Adjust.
11151         (dw2_debug_names_iterator::next): Adjust.
11152         (dwarf2_initialize_objfile): Adjust.
11153         (set_partial_user): Adjust.
11154         (dwarf2_build_psymtabs_hard): Adjust.
11155
11156 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11157
11158         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11159         Remove unused variables.
11160         (dw2_map_symtabs_matching_filename): Likewise.
11161         (dwarf2_record_block_ranges): Likewise.
11162         (dwarf2_read_addr_index): Likewise.
11163         (follow_die_offset): Likewise.
11164
11165 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11166
11167         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11168         to symbol_file_add_main.
11169
11170 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11171
11172         PR mi/22299
11173         * mi/mi-console.c (do_fputc_async_safe): New.
11174         (mi_console_file::write_async_safe): New.
11175         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11176         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11177         New.
11178         * ui-file.c (ui_file::putstrn): Adjust call to
11179         fputstrn_unfiltered.
11180         * utils.c (printchar): Replace do_fputs and do_fprintf
11181         parameters by do_fputc.
11182         (fputstr_filtered): Adjust call to printchar.
11183         (fputstr_unfiltered): Likewise.
11184         (fputstrn_filtered): Likewise.
11185         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11186         printchar.
11187         * utils.h (do_fputc_ftype): New typedef.
11188         (fputstrn_unfiltered): Add do_fputc parameter.
11189
11190 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11191
11192         * regformats/i386/i386-avx.dat: Remove.
11193
11194 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11195
11196         PR gdb/22979
11197         * amd64-tdep.c (amd64_none_init_abi): New function.
11198         (amd64_x32_none_init_abi): New function.
11199         (_initialize_amd64_tdep): Register handlers for x86-64 and
11200         x64_32 with GDB_OSABI_NONE.
11201         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11202         GDB_OSABI_NONE osabi.
11203
11204 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11205
11206         PR gdb/22980
11207         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11208         GDB_OSABI_NONE.
11209         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11210         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11211
11212 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11213
11214         * common/byte-vector.h (char_vector): New type.
11215         * target.h (target_read_alloc): Return
11216         gdb::optional<byte_vector>.
11217         (target_read_stralloc): Return gdb::optional<char_vector>.
11218         (target_get_osdata): Return gdb::optional<char_vector>.
11219         * target.c (target_read_alloc_1): Templatize.  Replacement
11220         manual memory management with vector.
11221         (target_read_alloc): Change return type, adjust.
11222         (target_read_stralloc): Change return type, adjust.
11223         (target_get_osdata): Change return type, adjust.
11224         * auxv.c (struct auxv_info) <length>: Remove.
11225         <data>: Change type to gdb::optional<byte_vector>.
11226         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11227         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11228         (target_auxv_search): Adjust.
11229         (fprint_target_auxv): Adjust.
11230         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11231         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11232         (linux_make_corefile_notes): Adjust.
11233         * osdata.c (get_osdata): Adjust.
11234         * remote.c (remote_get_threads_with_qxfer): Adjust.
11235         (remote_memory_map): Adjust.
11236         (remote_traceframe_info): Adjust.
11237         (btrace_read_config): Adjust.
11238         (remote_read_btrace): Adjust.
11239         (remote_pid_to_exec_file): Adjust.
11240         * solib-aix.c (solib_aix_get_library_list): Adjust.
11241         * solib-dsbt.c (decode_loadmap): Don't free buf.
11242         (dsbt_get_initial_loadmaps): Adjust.
11243         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11244         * solib-target.c (solib_target_current_sos): Adjust.
11245         * tracepoint.c (sdata_make_value): Adjust.
11246         * xml-support.c (xinclude_start_include): Adjust.
11247         (xml_fetch_content_from_file): Adjust.
11248         * xml-support.h (xml_fetch_another): Change return type.
11249         (xml_fetch_content_from_file): Change return type.
11250         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11251         * xml-tdesc.c (file_read_description_xml): Adjust.
11252         (fetch_available_features_from_target): Change return type.
11253         (target_fetch_description_xml): Adjust.
11254         (target_read_description_xml): Adjust.
11255
11256 2018-04-06  Tom Tromey  <tom@tromey.com>
11257
11258         * value.c (~value): Update.
11259         (struct value) <contents>: Now unique_xmalloc_ptr.
11260         (value_contents_bits_eq, allocate_value_contents)
11261         (value_contents_raw, value_contents_all_raw)
11262         (value_contents_for_printing, value_contents_for_printing_const)
11263         (set_value_enclosing_type): Update.
11264
11265 2018-04-06  Tom Tromey  <tom@tromey.com>
11266
11267         * value.c (range_s): Remove typedef, VEC.
11268         (struct range): Add operator<.
11269         (range_lessthan): Remove.
11270         (ranges_contain): Change type.
11271         (~value): Update.
11272         (struct value) <unavailable, optimized_out>: Now std::vector.
11273         (value_entirely_available)
11274         (value_entirely_covered_by_range_vector)
11275         (value_entirely_unavailable, value_entirely_optimized_out):
11276         Update.
11277         (insert_into_bit_range_vector): Change argument type.
11278         (find_first_range_overlap): Likewise.
11279         (struct ranges_and_idx, value_contents_bits_eq)
11280         (require_not_optimized_out, require_available): Update.
11281         (ranges_copy_adjusted): Change argument types.
11282         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11283
11284 2018-04-06  Tom Tromey  <tom@tromey.com>
11285
11286         * value.c (~value): Update.
11287         (struct value) <parent>: Now a value_ref_ptr.
11288         (value_parent, set_value_parent, value_address, value_copy):
11289         Update.
11290
11291 2018-04-06  Tom Tromey  <tom@tromey.com>
11292
11293         * value.c (struct value): Add constructor, destructor, and member
11294         initializers.
11295         (allocate_value_lazy, value_decref): Update.
11296
11297 2018-04-06  Tom Tromey  <tom@tromey.com>
11298
11299         * value.c (struct value) <released, next>: Remove.
11300         (all_values): Now a std::vector.
11301         (allocate_value_lazy): Update.
11302         (value_next): Remove.
11303         (value_mark, value_free_to_mark, release_value)
11304         (value_release_to_mark): Update.
11305
11306 2018-04-06  Tom Tromey  <tom@tromey.com>
11307
11308         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11309         (free_value_chain): Remove.
11310         * value.c (free_value_chain): Remove.
11311         (value_release_to_mark): Return a std::vector.
11312         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11313         std::vector.
11314         (check_condition): Update.
11315         * eval.c (fetch_subexp_value): Change "val_chain" to a
11316         std::vector.
11317         * breakpoint.c (update_watchpoint): Update.
11318         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11319
11320 2018-04-06  Tom Tromey  <tom@tromey.com>
11321
11322         * value.h (free_all_values): Remove.
11323         * value.c (free_all_values): Remove.
11324
11325 2018-04-06  Tom Tromey  <tom@tromey.com>
11326
11327         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11328         (value_history_chain, value_history_count): Remove.
11329         (value_history): New global.
11330         (record_latest_value, access_value_history, show_values)
11331         (preserve_values): Update.
11332
11333 2018-04-06  Tom Tromey  <tom@tromey.com>
11334
11335         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11336         * varobj.c (varobj_set_display_format, varobj_set_value)
11337         (install_default_visualizer, construct_visualizer)
11338         (install_new_value, ~varobj, varobj_get_value_type)
11339         (my_value_of_variable, varobj_editable_p): Update.
11340         * c-varobj.c (c_describe_child, c_value_of_variable)
11341         (cplus_number_of_children, cplus_describe_child): Update.
11342         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11343         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11344         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11345
11346 2018-04-06  Tom Tromey  <tom@tromey.com>
11347
11348         * printcmd.c (last_examine_address): Change type to
11349         value_ref_ptr.
11350         (do_examine, x_command): Update.
11351
11352 2018-04-06  Tom Tromey  <tom@tromey.com>
11353
11354         * value.c (release_value): Update.
11355         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11356         (struct bpstats) <val>: Now a value_ref_ptr.
11357         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11358         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11359         (~watchpoint, print_it_watchpoint, watch_command_1)
11360         (invalidate_bp_value_on_memory_change): Update.
11361
11362 2018-04-06  Tom Tromey  <tom@tromey.com>
11363
11364         * varobj.c (varobj_clear_saved_item)
11365         (update_dynamic_varobj_children, install_new_value, ~varobj):
11366         Update.
11367         * value.h (value_incref): Move declaration earlier.
11368         (value_decref): Rename from value_free.
11369         (struct value_ref_policy): New.
11370         (value_ref_ptr): New typedef.
11371         (struct value_deleter): Remove.
11372         (gdb_value_up): Remove typedef.
11373         (release_value): Change return type.
11374         (release_value_or_incref): Remove.
11375         * value.c (set_value_parent): Update.
11376         (value_incref): Change return type.
11377         (value_decref): Rename from value_free.
11378         (value_free_to_mark, free_all_values, free_value_chain): Update.
11379         (release_value): Return value_ref_ptr.
11380         (release_value_or_incref): Remove.
11381         (record_latest_value, set_internalvar, clear_internalvar):
11382         Update.
11383         * stack.c (info_frame_command): Don't call value_free.
11384         * python/py-value.c (valpy_dealloc, valpy_new)
11385         (value_to_value_object): Update.
11386         * printcmd.c (do_examine): Update.
11387         * opencl-lang.c (lval_func_free_closure): Update.
11388         * mi/mi-main.c (register_changed_p): Don't call value_free.
11389         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11390         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11391         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11392         value_free.
11393         * guile/scm-value.c (vlscm_free_value_smob)
11394         (vlscm_scm_from_value): Update.
11395         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11396         (frame_unwind_register_unsigned, get_frame_register_bytes)
11397         (put_frame_register_bytes): Don't call value_free.
11398         * findvar.c (address_from_register): Don't call value_free.
11399         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11400         * dwarf2loc.c (entry_data_value_free_closure)
11401         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11402         (dwarf2_evaluate_loc_desc_full): Update.
11403         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11404         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11405         (~watchpoint, watch_command_1)
11406         (invalidate_bp_value_on_memory_change): Update.
11407         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11408
11409 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11410
11411         PR gdb/23022
11412         * warning.m4: Add -Wno-error=deprecated-register.
11413         * configure: Re-generate.
11414
11415 2018-04-05  Tom Tromey  <tom@tromey.com>
11416
11417         * linespec.h: Remove include of "vec.h".
11418
11419 2018-04-05  Tom Tromey  <tom@tromey.com>
11420
11421         * linespec.c (typep): Remove typedef.
11422         (find_methods, find_superclass_methods): Take a std::vector.
11423         (find_method): Use std::vector.
11424
11425 2018-04-05  Tom Tromey  <tom@tromey.com>
11426
11427         * utils.c (compare_strings): Remove.
11428         * utils.h (compare_strings): Remove.
11429         * objc-lang.h (find_imps): Update.
11430         * objc-lang.c (find_methods): Take a std::vector.
11431         (uniquify_strings, find_imps): Likewise.
11432         * linespec.c (find_methods): Take a std::vector.
11433         (decode_objc): Use std::vector.
11434         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11435         a std::vector.
11436         (find_method, find_function_symbols): Use std::vector.
11437
11438 2018-04-05  Tom Tromey  <tom@tromey.com>
11439
11440         * completer.c (completion_tracker::completion_tracker): Remove
11441         cast.
11442         (completion_tracker::discard_completions): Likewise.
11443         * breakpoint.c (ambiguous_names_p): Remove cast.
11444         * ada-lang.c (_initialize_ada_language): Remove cast.
11445         * utils.h (streq): Update.
11446         (streq_hash): Add new declaration.
11447         * utils.c (streq): Return bool.
11448         (streq_hash): New function.
11449
11450 2018-04-05  Tom Tromey  <tom@tromey.com>
11451
11452         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11453         Remove a string copy.
11454
11455 2018-04-05  Tom Tromey  <tom@tromey.com>
11456
11457         * linespec.c (filter_results): Use std::vector.
11458         (decode_line_2, decode_line_full): Update.
11459
11460 2018-04-05  Tom Tromey  <tom@tromey.com>
11461
11462         * linespec.c (canonical_to_fullform): Return std::string.
11463         (filter_results): Update.
11464         (struct decode_line_2_item): Add constructor.
11465         <fullform, displayform>: Now std::string.
11466         (decode_line_2_compare_items): Now a std::sort comparator.
11467         (decode_line_2): Update.
11468
11469 2018-04-05  Tom Tromey  <tom@tromey.com>
11470
11471         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11472         (unexpected_linespec_error): Update.
11473         (linespec_parse_basic, parse_linespec): Update.
11474
11475 2018-04-05  Tom Tromey  <tom@tromey.com>
11476
11477         * linespec.c (linespec_parse_basic): Reindent.
11478
11479 2018-04-05  Tom Tromey  <tom@tromey.com>
11480
11481         * minsyms.h (iterate_over_minimal_symbols): Update.
11482         * minsyms.c (iterate_over_minimal_symbols): Take a
11483         gdb::function_view.
11484         * linespec.c (struct collect_minsyms): Remove.
11485         (compare_msyms): Now a std::sort comparator.
11486         (add_minsym): Add parameters.
11487         (search_minsyms_for_name): Update.  Use std::vector.
11488
11489 2018-04-03  Tom Tromey  <tom@tromey.com>
11490
11491         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11492         gdb::byte_vector.
11493
11494 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11495
11496         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11497
11498 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11499
11500         PR gdb/16959
11501         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11502         printing static type.
11503
11504 2018-04-01  Tom Tromey  <tom@tromey.com>
11505
11506         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11507         (rs6000_xfer_shared_libraries): Update.
11508
11509 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11510
11511         * common/gdb_vecs.h (char_ptr): Remove.
11512         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11513
11514 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11515
11516         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11517         with std::vector.
11518         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11519
11520 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11521
11522         * tracepoint.h (struct uploaded_tp): Initialize fields.
11523         <actions, step_actions, cmd_strings>: Change type to
11524         std::vector<char *>.
11525         * tracepoint.c (get_uploaded_tp): Allocate with new.
11526         (free_uploaded_tps): Free with delete.
11527         (parse_tracepoint_definition): Adjust to std::vector change.
11528         * breakpoint.c (read_uploaded_action): Likewise.
11529         (create_tracepoint_from_upload): Likewise.
11530         * ctf.c (ctf_write_uploaded_tp): Likewise.
11531         (SET_ARRAY_FIELD): Likewise.
11532         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11533
11534 2018-03-30  Tom Tromey  <tom@tromey.com>
11535
11536         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11537         std::unique_ptr.
11538         (svr4_keep_data_in_core): Update.
11539         (svr4_read_so_list): Update.
11540
11541 2018-03-30  Tom Tromey  <tom@tromey.com>
11542
11543         * windows-nat.c (handle_output_debug_string, handle_exception):
11544         Update.
11545         * target.h (target_read_string): Update.
11546         * target.c (target_read_string): Change "string" to
11547         unique_xmalloc_ptr.
11548         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11549         Update.
11550         * solib-frv.c (frv_current_sos): Update.
11551         * solib-dsbt.c (dsbt_current_sos): Update.
11552         * solib-darwin.c (darwin_current_sos): Update.
11553         * linux-thread-db.c (inferior_has_bug): Update.
11554         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11555         Update.  Remove alloca.
11556         * ada-lang.c (ada_main_name): Update.
11557
11558 2018-03-30  Tom Tromey  <tom@tromey.com>
11559
11560         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11561         (struct dwo_file_deleter): New.
11562         (dwo_file_up): New typedef.
11563         (open_and_init_dwo_file): Use dwo_file_up.
11564         (free_dwo_file_cleanup): Remove.
11565
11566 2018-03-30  Tom Tromey  <tom@tromey.com>
11567
11568         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
11569         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
11570
11571 2018-03-30  Tom Tromey  <tom@tromey.com>
11572
11573         * dwarf2read.c (class free_cached_comp_units): New class.
11574         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
11575         (free_cached_comp_units): Remove function.
11576
11577 2018-03-30  Tom Tromey  <tom@tromey.com>
11578
11579         * utils.h (make_cleanup_unpush_target): Remove.
11580         * inf-ptrace.c (struct target_unpusher): New.
11581         (target_unpush_up) New typedef.
11582         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
11583         target_unpush_up.
11584         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
11585
11586 2018-03-27  Tom Tromey  <tom@tromey.com>
11587
11588         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
11589
11590 2018-03-27  Pedro Alves  <palves@redhat.com>
11591             Tom Tromey  <tom@tromey.com>
11592
11593         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
11594         destructor.  Now a class.
11595         (gdb_readline_wrapper_cleanup): Remove function.
11596         (gdb_readline_wrapper): Remove cleanups.
11597
11598 2018-03-27  Tom Tromey  <tom@tromey.com>
11599
11600         * typeprint.h (struct type_print_options) <local_typedefs,
11601         global_typedefs>: Remove "struct" keyword.
11602         (class typedef_hash_table): New class.
11603         (recursively_update_typedef_hash, add_template_parameters)
11604         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
11605         (find_typedef_in_hash): Don't declare.
11606         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
11607         (typedef_hash_table::recursively_update): Rename from
11608         recursively_update_typedef_hash.  Now a member.
11609         (typedef_hash_table::add_template_parameters): Rename from
11610         add_template_parameters.  Now a member.
11611         (typedef_hash_table::typedef_hash_table): Now a constructor;
11612         rename from create_typedef_hash.
11613         (typedef_hash_table::~typedef_hash_table): Now a destructor;
11614         rename from free_typedef_hash.
11615         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
11616         (do_free_global_table): Remove.
11617         (typedef_hash_table::typedef_hash_table): New constructor; renamed
11618         from copy_type_recursive.
11619         (create_global_typedef_table): Remove.
11620         (typedef_hash_table::find_global_typedef): Now a member of
11621         typedef_hash_table.
11622         (typedef_hash_table::find_typedef): Rename from
11623         find_typedef_in_hash; now a member.
11624         (whatis_exp): Update.
11625         * extension.h (struct ext_lang_type_printers): Add constructor and
11626         destructor.
11627         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
11628         declare.
11629         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
11630         Now a constructor; rename from start_ext_lang_type_printers.
11631         (ext_lang_type_printers): Now a destructor; rename from
11632         free_ext_lang_type_printers.
11633         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
11634         Update.
11635         (c_type_print_base_struct_union): Update.  Remove cleanups.
11636
11637 2018-03-27  Tom Tromey  <tom@tromey.com>
11638
11639         * dwarf-index-write.c: Include <cmath>.
11640
11641 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11642
11643         * NEWS: Add entry describing new "set|show varsize-limit" command.
11644         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
11645         command.
11646         * printcmd.c (_initialize_printcmd): Add "set var" alias of
11647         "set variable".
11648
11649 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
11650
11651         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
11652         dwarf-index-write.c
11653         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
11654         * dwarf-index-common.c: New file.
11655         * dwarf-index-common.h: New file.
11656         * dwarf-index-write.c: New file.
11657         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
11658         (struct dwarf2_section_info): Move from here.
11659         (dwarf2_section_info_def): Likewise.
11660         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
11661         (offset_type): Likewise.
11662         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
11663         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
11664         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
11665         (byte_swap): Likewise.
11666         (MAYBE_SWAP): Likewise.
11667         (dwarf2_per_cu_ptr): Likewise.
11668         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
11669         (struct tu_stats): Likewise.
11670         (struct dwarf2_per_objfile): Likewise.
11671         (struct dwarf2_per_cu_data): Likewise.
11672         (struct signatured_type): Likewise.
11673         (sig_type_ptr): Likewise.
11674         (DEF_VEC_P (sig_type_ptr)): Likewise.
11675         (INDEX4_SUFFIX): Likewise.
11676         (INDEX5_SUFFIX): Likewise.
11677         (DEBUG_STR_SUFFIX): Likewise.
11678         (dwarf2_read_section): Make non-static.
11679         (mapped_index_string_hash): Move from here.
11680         (dwarf5_djb_hash): Likewise.
11681         (file_write): Likewise.
11682         (class data_buf): Likewise.
11683         (struct symtab_index_entry): Likewise.
11684         (struct mapped_symtab): Likewise.
11685         (find_slot): Likewise.
11686         (hash_expand): Likewise.
11687         (add_index_entry): Likewise.
11688         (uniquify_cu_indices): Likewise.
11689         (class c_str_view): Likewise.
11690         (class c_str_view_hasher): Likewise.
11691         (class vector_hasher): Likewise.
11692         (write_hash_table): Likewise.
11693         (psym_index_map): Likewise.
11694         (struct addrmap_index_data): Likewise.
11695         (add_address_entry): Likewise.
11696         (add_address_entry_worker): Likewise.
11697         (write_address_map): Likewise.
11698         (symbol_kind): Likewise.
11699         (write_psymbols): Likewise.
11700         (struct signatured_type_index_data): Likewise.
11701         (write_one_signatured_type): Likewise.
11702         (recursively_count_psymbols): Likewise.
11703         (recursively_write_psymbols): Likewise.
11704         (class debug_names): Likewise.
11705         (check_dwarf64_offsets): Likewise.
11706         (psyms_seen_size): Likewise.
11707         (write_gdbindex): Likewise.
11708         (write_debug_names): Likewise.
11709         (assert_file_size): Likewise.
11710         (write_psymtabs_to_index): Likewise.
11711         (save_gdb_index_command): Likewise.
11712         (_initialize_dwarf2_read): Don't register the "save gdb-index"
11713         command.
11714         * dwarf2read.h: New file.
11715
11716 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11717
11718         PR gdb/22670
11719         * dwarf2read.c (dwarf2_physname): Do not return the demangled
11720         symbol name if the CU's language stores symbol names in linkage
11721         format.
11722         * language.h (struct language_defn)
11723         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
11724         all instances of this struct.
11725
11726 2018-03-26  Tom Tromey  <tom@tromey.com>
11727
11728         * stack.c (backtrace_command_1): Remove verbose code.
11729
11730 2018-03-26  Tom Tromey  <tom@tromey.com>
11731
11732         * python/py-framefilter.c (py_print_type): Don't catch
11733         exceptions.  Return void.
11734         (py_print_value): Likewise.
11735         (py_print_single_arg): Likewise.
11736         (enumerate_args): Don't catch exceptions.
11737         (py_print_args): Likewise.
11738         (py_print_frame): Likewise.
11739         (gdbpy_apply_frame_filter): Catch exceptions here.
11740
11741 2018-03-26  Tom Tromey  <tom@tromey.com>
11742
11743         * stack.c (_initialize_stack): Remove trailing newlines from help
11744         text.  Add "Usage" line to "backtrace" help.
11745
11746 2018-03-26  Tom Tromey  <tom@tromey.com>
11747
11748         PR python/16486:
11749         * python/py-framefilter.c (py_print_args): Call wrap_hint.
11750
11751 2018-03-26  Tom Tromey  <tom@tromey.com>
11752
11753         * python/py-framefilter.c (py_print_single_arg): Return
11754         EXT_LANG_BT_ERROR from catch.
11755
11756 2018-03-26  Tom Tromey  <tom@tromey.com>
11757
11758         PR backtrace/15584:
11759         * stack.c (backtrace_command_1): Move some code into no-filters
11760         "if".
11761
11762 2018-03-26  Tom Tromey  <tom@tromey.com>
11763
11764         * python/py-framefilter.c (throw_quit_or_print_exception): New
11765         function.
11766         (gdbpy_apply_frame_filter): Use it.
11767
11768 2018-03-26  Tom Tromey  <tom@tromey.com>
11769
11770         PR cli/17716:
11771         * python/py-framefilter.c (py_print_type, py_print_value)
11772         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
11773         RETURN_MASK_ERROR.
11774
11775 2018-03-26  Tom Tromey  <tom@tromey.com>
11776
11777         * python/py-framefilter.c (enumerate_args): Use
11778         gdb::unique_xmalloc_ptr.
11779
11780 2018-03-26  Tom Tromey  <tom@tromey.com>
11781
11782         * python/py-framefilter.c (py_print_frame): Return
11783         EXT_LANG_BT_OK.
11784         (gdbpy_apply_frame_filter): Update comment.
11785         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
11786         Remove.
11787         <EXT_LANG_BT_NO_FILTERS>: Change value.
11788
11789 2018-03-26  Tom Tromey  <tom@tromey.com>
11790
11791         PR backtrace/15582:
11792         * stack.c (backtrace_command): Parse "hide" argument.
11793         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
11794         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
11795         constant.
11796
11797 2018-03-26  Tom Tromey  <tom@tromey.com>
11798
11799         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
11800         add "flags".
11801         (backtrace_command): Remove "fulltrace", add "flags".
11802
11803 2018-03-26  Tom Tromey  <tom@tromey.com>
11804
11805         * stack.c (backtrace_command): Rewrite command line parsing.
11806
11807 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11808
11809         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
11810
11811 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11812
11813         * filename-seen-cache.h: Add include guard.
11814
11815 2018-03-26  Keith Seitz  <keiths@redhat.com>
11816
11817         * symfile.c (place_section): Remove "struct" from section_addr_info
11818         in comment.
11819         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
11820         "struct" keyword from section_addr_info.
11821
11822 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
11823
11824         * regformats/regdef.h (reg): Add constructors.
11825
11826 2018-03-25  Pedro Alves  <palves@redhat.com>
11827
11828         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
11829         if then/else bodies in var_func_name extraction.
11830
11831 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
11832
11833         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
11834         lookup_minimal_symbol() to find symbol entry.
11835         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
11836
11837 2018-03-23  Keith Seitz  <keiths@redhat.com>
11838
11839         PR c++/22968
11840         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
11841         nested type definitions for C++, too.
11842
11843 2018-03-23  Tom Tromey  <tom@tromey.com>
11844
11845         * machoread.c (struct oso_el): Add a constructor.  Don't define as
11846         a typedef.
11847         (macho_register_oso): Remove.
11848         (macho_symtab_read): Take a std::vector.
11849         (oso_el_compare_name): Now a std::sort comparator.
11850         (macho_symfile_read_all_oso): Take a std::vector.
11851         (macho_symfile_read): Use std::vector.  Remove cleanups.
11852
11853 2018-03-22  Tom Tromey  <tom@tromey.com>
11854
11855         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
11856         (record_full_goto_bookmark): Use std::string.
11857
11858 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11859
11860         PR tdep/18295
11861         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
11862         a single mask.
11863
11864 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11865
11866         * rs6000-tdep.c (store_insn_p): New function.
11867         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
11868         and cr_reg to their unshifted values. Use store_insn_p to
11869         match LR saves using either R1 or fdata->alloca_reg. Use
11870         store_insn_p to match CR saves. Set alloca_reg_offset
11871         when alloca_reg and framep are set. Remove lr_reg shift
11872         when assigning to fdata->lr_register.
11873
11874 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11875
11876         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
11877         command line args instead of emitting a warning.
11878
11879 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11880
11881         * tracepoint.h (struct static_tracepoint_marker): Initialize
11882         fields, define default constructor, move constructor and move
11883         assignment, disable the rest.
11884         <str_id, extra>: Make std::string.
11885         (release_static_tracepoint_marker): Remove.
11886         (free_current_marker): Remove.
11887         * tracepoint.c (free_current_marker): Remove.
11888         (parse_static_tracepoint_marker_definition): Adjust to
11889         std::string, use new hex2str overload.
11890         (release_static_tracepoint_marker): Remove.
11891         (print_one_static_tracepoint_marker): Get marker by reference
11892         and adjust to std::string.
11893         (info_static_tracepoint_markers_command): Adjust to std::vector
11894         changes
11895         * target.h (static_tracepoint_marker_p): Remove typedef.
11896         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
11897         (struct target_ops) <to_static_tracepoint_marker_at>: Return
11898         bool.
11899         <to_static_tracepoint_markers_by_strid>: Return std::vector.
11900         * target-debug.h
11901         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
11902         (target_debug_print_std_vector_static_tracepoint_marker): New.
11903         (target_debug_print_struct_static_tracepoint_marker_p): Rename
11904         to...
11905         (target_debug_print_static_tracepoint_marker_p): ... this.
11906         * target-delegates.c: Re-generate.
11907         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
11908         Make std::string.
11909         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
11910         (decode_static_tracepoint_spec): Adjust to std::vector.
11911         (tracepoint_print_one_detail): Adjust to std::string.
11912         (strace_marker_decode_location): Adjust to std::string.
11913         (update_static_tracepoint): Adjust to std::string, remove call
11914         to release_static_tracepoint_marker.
11915         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
11916         Adjust to std::vector.
11917         * remote.c (remote_static_tracepoint_marker_at): Return bool.
11918         (remote_static_tracepoint_markers_by_strid): Adjust to
11919         std::vector.
11920         * common/rsp-low.h (hex2str): New overload with explicit count
11921         of bytes.
11922         * common/rsp-low.c (hex2str): New overload with explicit count
11923         of bytes.
11924         * unittests/rsp-low-selftests.c (test_hex2str): New function.
11925         (_initialize_rsp_low_selftests): Add test_hex2str test.
11926         * unittests/tracepoint-selftests.c
11927         (test_parse_static_tracepoint_marker_definition): Adjust to
11928         std::string.
11929
11930 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11931
11932         * tracepoint.c (parse_static_tracepoint_marker_definition):
11933         Consider case where the definition is followed by more
11934         definitions.
11935         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11936         tracepoint-selftests.c.
11937         * unittests/tracepoint-selftests.c: New.
11938
11939 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11940
11941         * MAINTAINERS (Write After Approval): Add Pedro Franco de
11942         Carvalho.
11943
11944 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11945
11946         * symtab.c (find_pc_sect_line): fixed indentation.
11947
11948 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11949
11950         * symtab.c (find_pc_sect_line): now uses binary search.
11951
11952 2018-03-19  Tom Tromey  <tom@tromey.com>
11953
11954         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
11955         "IDENT" production.
11956
11957 2018-03-19  Pedro Alves  <palves@redhat.com>
11958             Tom Tromey  <tom@tromey.com>
11959
11960         * unittests/observable-selftests.c: New file.
11961         * common/observable.h: New file.
11962         * observable.h: New file.
11963         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
11964         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
11965         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
11966         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
11967         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
11968         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
11969         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
11970         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
11971         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
11972         python/py-breakpoint.c, python/py-finishbreakpoint.c,
11973         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
11974         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
11975         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
11976         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
11977         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
11978         tui/tui-interp.c, valops.c: Update all users.
11979         * tui/tui-hooks.c (tui_bp_created_observer)
11980         (tui_bp_deleted_observer, tui_bp_modified_observer)
11981         (tui_inferior_exit_observer, tui_before_prompt_observer)
11982         (tui_normal_stop_observer, tui_register_changed_observer):
11983         Remove.
11984         (tui_observers_token): New global.
11985         (attach_or_detach, tui_attach_detach_observers): New functions.
11986         (tui_install_hooks, tui_remove_hooks): Use
11987         tui_attach_detach_observers.
11988         * record-btrace.c (record_btrace_thread_observer): Remove.
11989         (record_btrace_thread_observer_token): New global.
11990         * observer.sh: Remove.
11991         * observer.c: Rename to observable.c.
11992         * observable.c (namespace gdb_observers): Define new objects.
11993         (observer_debug): Move into gdb_observers namespace.
11994         (struct observer, struct observer_list, xalloc_observer_list_node)
11995         (xfree_observer_list_node, generic_observer_attach)
11996         (generic_observer_detach, generic_observer_notify): Remove.
11997         (_initialize_observer): Update.
11998         Don't include observer.inc.
11999         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12000         (clean mostlyclean): Likewise.
12001         (observer.h, observer.inc): Remove targets.
12002         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12003         (COMMON_SFILES): Use observable.c, not observer.c.
12004         * .gitignore: Remove observer.h.
12005
12006 2018-03-18  Tom Tromey  <tom@tromey.com>
12007
12008         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12009         gdb::def_vector.
12010         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12011
12012 2018-03-17  Tom Tromey  <tom@tromey.com>
12013
12014         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12015
12016 2018-03-17  Tom Tromey  <tom@tromey.com>
12017
12018         * target.c (class scoped_target_fd): New.
12019         (target_fileio_close_cleanup): Remove.
12020         (target_fileio_read_alloc_1): Use scoped_target_fd.
12021
12022 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12023
12024         * silent-rules.mk: New.
12025         * Makefile.in: Include silent-rules.mk
12026         (srcdir, VPATH, top_srcdir): Move up.
12027         (COMPILE): Add ECHO_CXX.
12028         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12029         (init.c): Add ECHO_INIT_C.
12030         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12031         (version.c): Add ECHO_GEN.
12032         (printcmd.o): Add ECHO_CXX.
12033         (target-float.o): Add ECHO_CXX.
12034         (ada-exp.o): Add ECHO_CXX.
12035         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12036         (insight$(EXEEXT)): Add ECHO_CXXLD.
12037         * gnulib/configure.ac: Add AM_SILENT_RULES.
12038         * gnulib/aclocal.m4: Re-generate.
12039         * gnulib/configure: Re-generate.
12040         * gnulib/import/Makefile.in: Re-generate.
12041
12042 2018-03-16  Tom Tromey  <tom@tromey.com>
12043
12044         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12045         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12046         * utils.c (do_free_section_addr_info)
12047         (make_cleanup_free_section_addr_info): Remove.
12048         * symfile.h (struct other_sections): Add constructor.
12049         (struct section_addr_info): Remove.
12050         (section_addr_info): New typedef.
12051         (struct sym_fns) <sym_offsets>: Change type of parameter.
12052         (build_section_addr_info_from_objfile)
12053         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12054         (default_symfile_offsets, symbol_file_add)
12055         (symbol_file_add_from_bfd)
12056         (build_section_addr_info_from_section_table): Update.
12057         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12058         * symfile.c (alloc_section_addr_info): Remove.
12059         (build_section_addr_info_from_section_table): Change return type.
12060         Update.
12061         (build_section_addr_info_from_bfd)
12062         (build_section_addr_info_from_objfile): Likewise.
12063         (free_section_addr_info): Remove.
12064         (relative_addr_info_to_section_offsets): Change type of "addrs".
12065         (addrs_section_compar): Now a std::sort comparator.
12066         (addrs_section_sort): Change return type.
12067         (addr_info_make_relative): Change type of "addrs".  Update.
12068         (default_symfile_offsets, syms_from_objfile_1)
12069         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12070         (symbol_file_add_separate): Update.
12071         (symbol_file_add): Change type of "addrs".  Update.
12072         (add_symbol_file_command): Update.  Remove cleanups.
12073         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12074         cleanups.
12075         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12076         * solib.c (solib_read_symbols): Update.
12077         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12078         * machoread.c (macho_symfile_offsets): Update.
12079         * jit.c (jit_bfd_try_read_symtab): Update.
12080
12081 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12082
12083         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12084         unittests/utils-selftests.c.
12085         * unittests/utils-selftests.c: New file.
12086
12087 2018-03-14  Tom Tromey  <tom@tromey.com>
12088
12089         PR cli/14977:
12090         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12091         for NULL.
12092
12093 2018-03-14  Tom Tromey  <tom@tromey.com>
12094
12095         PR cli/19918:
12096         * printcmd.c (printf_pointer): Allow "-" in format.
12097
12098 2018-03-14  Tom Tromey  <tom@tromey.com>
12099
12100         * printcmd.c (_initialize_printcmd): Add usage to printf.
12101
12102 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12103
12104         * MAINTAINERS: Update my email address.
12105
12106 2018-03-13  Tom Tromey  <tom@tromey.com>
12107
12108         * machoread.c (macho_check_dsym): Change filenamep to a
12109         std::string*.
12110         (macho_symfile_read): Update.
12111         * symfile.c (load_command): Use std::string.
12112
12113 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12114
12115         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12116         to error message string.
12117         (riscv_register_name): Use xsnprintf instead of sprintf.
12118         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12119         internal_error.
12120         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12121         error.
12122         (riscv_push_dummy_call): Likewise.
12123
12124 2018-03-12  Tom Tromey  <tom@tromey.com>
12125
12126         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12127         Use gdb::byte_vector.
12128         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12129
12130 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12131
12132         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12133         parameter type to readable_regcache.
12134         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12135         the declaration.
12136
12137 2018-03-11  Tom Tromey  <tom@tromey.com>
12138
12139         * dwarf2read.c (struct nextfield): Add initializers.
12140         (struct nextfnfield): Remove.
12141         (struct fnfieldlist): Add initializers.  Remove "length" and
12142         "head", use std::vector.
12143         (struct decl_field_list): Remove.
12144         (struct field_info): Add initializers.
12145         <fields, baseclasses>: Now std::vector.
12146         <nbaseclasses, nfnfields, typedef_field_list_count,
12147         nested_types_list_count>: Remove.
12148         (dwarf2_add_field, dwarf2_add_type_defn)
12149         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12150         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12151         (process_structure_scope): Update.
12152
12153 2018-03-11  Tom Tromey  <tom@tromey.com>
12154
12155         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12156         for use by std::sort.
12157         (build_type_psymtabs_1): Use std::vector.
12158
12159 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12160
12161         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12162         and LIBMPFR in the printed configuration.
12163
12164 2018-03-08  Tom Tromey  <tom@tromey.com>
12165
12166         * source.c (get_filename_and_charpos): Use scoped_fd.
12167         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12168         (procfs_pidlist): Likewise.
12169         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12170         (iterate_over_mappings): Likewise.
12171
12172 2018-03-08  Tom Tromey  <tom@tromey.com>
12173
12174         * infcall.c (struct call_return_meta_info)
12175         <stack_temporaries_enabled>: Remove.
12176         (get_call_return_value, call_function_by_hand_dummy): Update.
12177         * thread.c (disable_thread_stack_temporaries): Remove.
12178         (enable_thread_stack_temporaries): Remove.
12179         (thread_stack_temporaries_enabled_p): Return bool.
12180         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12181         (get_last_thread_stack_temporary): Update.
12182         * eval.c (evaluate_subexp): Update.
12183         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12184         class, not a function.
12185         (value_ptr, value_vec): Remove typedefs.
12186         (class thread_info) <stack_temporaries_enabled>: Now bool.
12187         <stack_temporaries>: Now a std::vector.
12188         (thread_stack_temporaries_enabled_p)
12189         (value_in_thread_stack_temporaries): Return bool.
12190
12191 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12192
12193         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12194         (getpkt_or_notif_sane_1): Likewise.
12195
12196 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12197
12198         * build-id.c (build_id_to_debug_bfd): Use std::string.
12199
12200 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12201
12202         * build-id.c (find_separate_debug_file_by_buildid): Return
12203         std::string.
12204         * build-id.h (find_separate_debug_file_by_buildid): Return
12205         std::string.
12206         * coffread.c (coff_symfile_read): Adjust to std::string.
12207         * elfread.c (elf_symfile_read): Adjust to std::string.
12208         * symfile.c (separate_debug_file_exists): Change parameter to
12209         std::string.
12210         (find_separate_debug_file): Return std::string.
12211         (find_separate_debug_file_by_debuglink): Return std::string.
12212         * symfile.h (find_separate_debug_file_by_debuglink): Return
12213         std::string.
12214
12215 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12216
12217         * common/xml-utils.c (xml_escape_text): Move code to...
12218         (xml_escape_text_append): ... this new function.
12219         * common/xml-utils.h (xml_escape_text_append): New declaration.
12220         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12221         New function.
12222         (_initialize_xml_utils): register test_xml_escape_text_append as
12223         a selftest.
12224
12225 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12226
12227         * defs.h: Remove MAX_REGISTER_SIZE.
12228         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12229         asserts.
12230         * python/py-unwind.c (pyuw_sniffer): Likewise.
12231
12232 2018-03-07  Tom Tromey  <tom@tromey.com>
12233
12234         * linux-tdep.c (linux_info_proc): Update.
12235         * target.h (struct target_ops) <to_fileio_readlink>: Return
12236         optional<string>.
12237         (target_fileio_readlink): Return optional<string>.
12238         * remote.c (remote_hostio_readlink): Return optional<string>.
12239         * inf-child.c (inf_child_fileio_readlink): Return
12240         optional<string>.
12241         * target.c (target_fileio_readlink): Return optional<string>.
12242
12243 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12244
12245         * regcache.c (cooked_read_test): Add riscv to the list of
12246         architectures that have a save_reggroup.
12247
12248 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12249
12250         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12251         value is not a dynamic class object.
12252
12253 2018-03-06  Tom Tromey  <tom@tromey.com>
12254
12255         * rust-exp.y: Formatting fixes.
12256
12257 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12258
12259         * riscv-tdep.c (riscv_register_name): Remove target description
12260         support.
12261         (riscv_gdbarch_init): Remove target description check.
12262
12263 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12264
12265         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12266         comment.
12267         * riscv-tdep.h: Likewise.
12268
12269 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12270
12271         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12272         (riscv_pseudo_register_write): Delete.
12273         (riscv_gdbarch_init): Remove all use of pseudo registers.
12274
12275 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12276
12277         * record-btrace.c (btrace_print_lines): Replace cleanup
12278         parameter with RAII equivalents.
12279         (btrace_insn_history): Replace cleanup with RAII equivalents.
12280         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12281         make_cleanup_ui_out_tuple_begin_end): Remove.
12282         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12283         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12284         make_cleanup_ui_out_list_begin_end): Remove.
12285
12286 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12287
12288         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12289         parameter types to std::vector.  Use bool.
12290         (record_btrace_wait): Replace VEC(tp_t) with
12291         std::vector<thread_info *>.
12292         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12293
12294 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12295
12296         * record-btrace.c (record_btrace_disable_callback): Remove.
12297         (struct scoped_btrace_disable): New.
12298         (record_btrace_open): Use scoped_btrace_disable.
12299
12300 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12301
12302         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12303         reading values from registers.
12304
12305 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12306
12307         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12308         where appropriate.
12309
12310 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12311
12312         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12313         change parameter type.  Use GDB's print functions, and use
12314         core_addr_to_string where appropriate.
12315         (riscv_push_dummy_call): Use core_addr_to_string where
12316         appropriate, update call to riscv_print_arg_location, and reindent
12317         a few lines.
12318         (riscv_return_value): Update call to riscv_print_arg_location.
12319
12320 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12321             Tim Newsome <tim@sifive.com>
12322             Albert Ou <a0u@eecs.berkeley.edu>
12323             Darius Rad <darius@bluespec.com>
12324
12325         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12326         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12327         (ALLDEPFILES): Add riscv-tdep.c
12328         * configure.tgt: Add riscv support.
12329         * riscv-tdep.c: New file.
12330         * riscv-tdep.h: New file.
12331         * NEWS: Mention new target.
12332         * MAINTAINERS: Add entry for riscv.
12333
12334 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12335
12336         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12337         fields within aggregates.
12338
12339 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12340
12341         * record-btrace.c (btrace_print_lines): Change type of flags to
12342         gdb_disassembly_flags.
12343
12344 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12345
12346         * fbsd-nat.c: Include "inf-ptrace.h".
12347         (USE_SIGTRAP_SIGINFO): Conditionally define.
12348         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12349         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12350         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12351         function.
12352         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12353         Likewise.
12354         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12355         Likewise.
12356         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12357         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12358         "supports_stopped_by_hw_breakpoint" target methods.
12359
12360 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12361
12362         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12363         * fbsd-nat.c (debug_fbsd_nat): New variable.
12364         (show_fbsd_nat_debug): New function.
12365         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12366         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12367
12368 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12369
12370         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12371         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12372         prototype.
12373         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12374         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12375         method.
12376
12377 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12378
12379         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12380         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12381
12382 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12383
12384         * charset.c (struct charset_vector): New.
12385         (charsets): Change type to charset_vector.
12386         (find_charset_names): Adjust.
12387         (add_one): Adjust.
12388         (_initialize_charset): Adjust.
12389
12390 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12391
12392         * progspace.h (struct program_space) <deleted_solibs>: Change
12393         type to std::vector<std::string>.
12394         * progspace.c (clear_program_space_solib_cache): Adjust.
12395         * breakpoint.c (print_solib_event): Adjust.
12396         (check_status_catch_solib): Adjust.
12397         * solib.c (update_solib_list): Adjust.
12398         * ui-out.h (class ui_out) <field_string>: New overload.
12399         * ui-out.c (ui_out::field_string): New overload.
12400
12401 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12402
12403         * progspace.h (struct program_space): Add constructor and
12404         destructor, initialize fields.
12405         (add_program_space): Remove.
12406         * progspace.c (add_program_space): Rename to...
12407         (program_space::program_space): ... this.
12408         (release_program_space): Rename to...
12409         (program_space::~program_space): ... this.
12410         (delete_program_space): Use delete to delete program_space.
12411         (initialize_progspace): Use new to allocate program_space.
12412         * inferior.c (add_inferior_with_spaces): Likewise.
12413         (clone_inferior_command): Likewise.
12414         * infrun.c (follow_fork_inferior): Likewise.
12415         (handle_vfork_child_exec_or_exit): Likewise.
12416
12417 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12418
12419         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12420         (delim_string_to_char_ptr_vec): Return std::vector of
12421         gdb::unique_xmalloc_ptr.
12422         (dirnames_to_char_ptr_vec_append): Take std::vector of
12423         gdb::unique_xmalloc_ptr.
12424         (dirnames_to_char_ptr_vec): Return std::vector of
12425         gdb::unique_xmalloc_ptr.
12426         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12427         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12428         (delim_string_to_char_ptr_vec): Return an std::vector of
12429         gdb::unique_xmalloc_ptr, adjust the code.
12430         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12431         gdb::unique_xmalloc_ptr, adjust the code.
12432         (dirnames_to_char_ptr_vec): Return an std::vector of
12433         gdb::unique_xmalloc_ptr, adjust the code.
12434         * auto-load.c (auto_load_safe_path_vec): Change type to
12435         std::vector of gdb::unique_xmalloc_ptr.
12436         (auto_load_expand_dir_vars): Return an std::vector of
12437         gdb::unique_xmalloc_ptr, adjust the code.
12438         (auto_load_safe_path_vec_update): Adjust.
12439         (filename_is_in_auto_load_safe_path_vec): Adjust.
12440         (auto_load_objfile_script_1): Adjust.
12441         * build-id.c (build_id_to_debug_bfd): Adjust.
12442         * linux-thread-db.c (thread_db_load_search): Adjust.
12443         * source.c (add_path): Adjust.
12444         (openp): Adjust.
12445         * symfile.c (find_separate_debug_file): Adjust.
12446         * utils.c (do_free_char_ptr_vec): Remove.
12447         (make_cleanup_free_char_ptr_vec): Remove.
12448
12449 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12450
12451         PR gdb/22907
12452         * common/pathstuff.c: Conditionally include "<windows.h>".
12453
12454 2018-03-01  Georg Sauthoff  <mail@georg.so>
12455
12456         PR gdb/22888
12457         * gcore.in: Quote variables and switch interpreter to bash.
12458
12459 2018-03-01  Tom Tromey  <tom@tromey.com>
12460
12461         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12462         assertion.  Add assertion for discriminant_index.
12463         (quirk_rust_enum): Use correct base type name in univariant case.
12464
12465 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12466
12467         * record.c (get_call_history_modifiers): Return a
12468         record_print_flags.
12469         (cmd_record_call_history): Adjust.
12470         * record-btrace.c (record_btrace_call_history): Adjust.
12471         (record_btrace_call_history_range): Adjust.
12472         (record_btrace_call_history_from): Adjust.
12473         * target-debug.h (target_debug_print_record_print_flags): New.
12474         * target-delegates.c: Re-generate.
12475         * target.c (target_call_history): Change flags type.
12476         (target_call_history_from): Likewise.
12477         (target_call_history_range): Likewise.
12478         * target.h (struct target_ops) <target_call_history>: Likewise.
12479         (target_call_history_from): Likewise.
12480         (target_call_history_range): Likewise.
12481
12482 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12483             Simon Marchi  <simon.marchi@polymtl.ca>
12484
12485         * common/common-utils.c: Include "sys/stat.h".
12486         (is_regular_file): Move here from "source.c"; change return
12487         type to "bool".
12488         * common/common-utils.h (is_regular_file): New prototype.
12489         * common/pathstuff.c (contains_dir_separator): New function.
12490         * common/pathstuff.h (contains_dir_separator): New prototype.
12491         * source.c: Don't include "sys/stat.h".
12492         (is_regular_file): Move to "common/common-utils.c".
12493
12494 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12495
12496         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12497         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12498         * auto-load.c: Include "common/pathstuff.h".
12499         * common/common-def.h (current_directory): Move here.
12500         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12501         function.
12502         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12503         prototype.
12504         * common/pathstuff.c: New file.
12505         * common/pathstuff.h: New file.
12506         * compile/compile.c: Include "common/pathstuff.h".
12507         * defs.h (current_directory): Move to "common/common-defs.h".
12508         * dwarf2read.c: Include "common/pathstuff.h".
12509         * exec.c: Likewise.
12510         * guile/scm-safe-call.c: Likewise.
12511         * linux-thread-db.c: Likewise.
12512         * main.c: Likewise.
12513         * nto-tdep.c: Likewise.
12514         * objfiles.c: Likewise.
12515         * source.c: Likewise.
12516         * symtab.c: Likewise.
12517         * utils.c: Include "common/pathstuff.h".
12518         (gdb_realpath): Move to "common/pathstuff.c".
12519         (gdb_realpath_keepfile): Likewise.
12520         (gdb_abspath): Likewise.
12521         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12522         (gdb_realpath_keepfile): Likewise.
12523         (gdb_abspath): Likewise.
12524
12525 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12526
12527         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12528         wildcard process pid for super_resume for kernels with a
12529         specific bug.
12530
12531 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12532
12533         * compile/compile.c (get_args): Add additional comments
12534         explaining function.
12535
12536 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12537             Tom Tromey  <tom@tromey.com>
12538
12539         * target.h (memory_write_request_s): Remove typedef.  Don't define
12540         VEC.
12541         (target_write_memory_blocks): Change argument to std::vector.
12542         (struct memory_write_request): Add constructor.
12543         * target-memory.c (compare_block_starting_address): Return bool.
12544         Change argument types.
12545         (claim_memory): Change arguments to use std::vector.
12546         (split_regular_and_flash_blocks, blocks_to_erase)
12547         (compute_garbled_blocks): Likewise.
12548         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12549         (target_write_memory_blocks): Change argument to std::vector.
12550         * symfile.c (struct load_section_data): Add constructor and
12551         destructor.  Use std::vector for "requests".
12552         (struct load_progress_data): Add initializers.
12553         (load_section_callback): Update.  Use "new".
12554         (clear_memory_write_data): Remove.
12555         (generic_load): Update.
12556
12557 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12558
12559         * arch/aarch64.h: Use common/tdesc.h.
12560
12561 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12562
12563         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
12564         architecture with a 64-bit ABI.
12565
12566 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12567
12568         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
12569         ahead of target description loading.
12570
12571 2018-02-26  Tom Tromey  <tom@tromey.com>
12572
12573         * stack.c (backtrace_command_1): Update.
12574         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
12575         of "flags".
12576         * python/py-framefilter.c (py_print_frame)
12577         (gdbpy_apply_frame_filter): Change type of "flags".
12578         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
12579         of "flags".
12580         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
12581         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
12582         * extension.h (enum frame_filter_flag): Rename from
12583         frame_filter_flags.
12584         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
12585         (apply_ext_lang_frame_filter): Change type of "flags".
12586         * extension.c (apply_ext_lang_frame_filter): Change type of
12587         "flags".
12588         * extension-priv.h (struct extension_language_ops)
12589         <apply_frame_filter>: Change type of "flags".
12590
12591 2018-02-26  Tom Tromey  <tom@tromey.com>
12592
12593         PR python/16497:
12594         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
12595         off-by-one in py_end computation.
12596         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
12597         PRINT_MORE_FRAMES.
12598         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
12599         constant.
12600
12601 2018-02-26  Tom Tromey  <tom@tromey.com>
12602
12603         * dwarf2read.c (struct variant_field): New.
12604         (struct nextfield) <variant>: New field.
12605         (dwarf2_add_field): Handle DW_TAG_variant_part.
12606         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
12607         discriminated union.
12608         (read_structure_type): Handle DW_TAG_variant_part.
12609         (handle_struct_member_die): New function, extracted from
12610         process_structure_scope.  Handle DW_TAG_variant.
12611         (process_structure_scope): Handle discriminated unions.  Call
12612         handle_struct_member_die.
12613
12614 2018-02-26  Tom Tromey  <tom@tromey.com>
12615
12616         * rust-lang.h (rust_last_path_segment): Declare.
12617         * rust-lang.c (rust_last_path_segment): Now public.  Change
12618         contract.
12619         (struct disr_info): Remove.
12620         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
12621         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
12622         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
12623         (rust_enum_p, rust_enum_variant): New function.
12624         (rust_underscore_fields): Remove "offset" parameter.
12625         (rust_print_enum): New function.
12626         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
12627         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
12628         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
12629         enums.
12630         (rust_internal_print_type): New function, from rust_print_type.
12631         Remove enum code.
12632         (rust_print_type): Call rust_internal_print_type.
12633         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
12634         Update enum handling.
12635         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
12636         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
12637         (rust_union_quirks): New functions.
12638         (process_full_comp_unit, process_full_type_unit): Call
12639         rust_union_quirks.
12640         (process_structure_scope): Update rust_unions if necessary.
12641
12642 2018-02-26  Tom Tromey  <tom@tromey.com>
12643
12644         * value.h (value_union_variant): Declare.
12645         * valops.c (value_union_variant): New function.
12646         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
12647         (struct discriminant_info): New.
12648         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
12649         enumerator.
12650         (struct main_type) <flag_discriminated_union>: New field.
12651
12652 2018-02-26  Tom Tromey  <tom@tromey.com>
12653
12654         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12655         unittests/unpack-selftests.c.
12656         * unittests/unpack-selftests.c: New file.
12657         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
12658
12659 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12660
12661         * dwarf2read.c (struct partial_die_info) <read>: New method.
12662         (read_partial_die): Remove the declaration.
12663         (load_partial_dies): Update.
12664         (partial_die_info::partial_die_info):
12665         (read_partial_die): Change it to partial_die_info::read.
12666
12667 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12668
12669         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
12670         (fixup_partial_die): Remove declaration.
12671         (scan_partial_symbols): Update.
12672         (partial_die_parent_scope): Likewise.
12673         (partial_die_full_name): Likewise.
12674         (fixup_partial_die): Change it to partial_die_info::fixup.
12675
12676 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12677
12678         * dwarf2read.c (read_partial_die): Update the declaration.
12679         (load_partial_dies): Caller update.
12680         (read_partial_die): Remove one argument abbrev_len.
12681
12682 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12683
12684         * dwarf2read.c (struct partial_die_info): Add ctor, delete
12685         assignment operator.
12686         (load_partial_dies): Use ctor and copy ctor.
12687         (read_partial_die): Update.
12688         (dwarf2_cu::find_partial_die): Use ctor.
12689
12690 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12691
12692         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
12693         (find_partial_die_in_comp_unit): Change it to
12694         dwarf2_cu::find_partial_die.
12695         (find_partial_die): Update.
12696
12697 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12698
12699         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
12700         is NULL.
12701
12702 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12703
12704         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
12705
12706 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
12707
12708         * arch/amd64.h: Use common/tdesc.h.
12709         * arch/i386.c: Likewise.
12710         * arch/i386.h: Likewise.
12711         * arch/tic6x.c: Likewise.
12712         * arch/tdesc.h: Move file from here...
12713         * common/tdesc.h: ...to here.
12714         * features/aarch64-core.c: Regenerate.
12715         * features/aarch64-fpu.c: Regenerate.
12716         * features/i386/32bit-avx.c: Regenerate.
12717         * features/i386/32bit-avx512.c: Regenerate.
12718         * features/i386/32bit-core.c: Regenerate.
12719         * features/i386/32bit-linux.c: Regenerate.
12720         * features/i386/32bit-mpx.c: Regenerate.
12721         * features/i386/32bit-pkeys.c: Regenerate.
12722         * features/i386/32bit-sse.c: Regenerate.
12723         * features/i386/64bit-avx.c: Regenerate.
12724         * features/i386/64bit-avx512.c: Regenerate.
12725         * features/i386/64bit-core.c: Regenerate.
12726         * features/i386/64bit-linux.c: Regenerate.
12727         * features/i386/64bit-mpx.c: Regenerate.
12728         * features/i386/64bit-pkeys.c: Regenerate.
12729         * features/i386/64bit-segments.c: Regenerate.
12730         * features/i386/64bit-sse.c: Regenerate.
12731         * features/i386/x32-core.c: Regenerate.
12732         * features/tic6x-c6xp.c: Regenerate.
12733         * features/tic6x-core.c: Regenerate.
12734         * features/tic6x-gp.c: Regenerate.
12735         * target-descriptions.c: Use common/tdesc.h.
12736         * target-descriptions.h: Likewise.
12737
12738 2018-02-24  Tom Tromey  <tom@tromey.com>
12739
12740         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
12741         (try_thread_db_load_from_dir, thread_db_load_search): Use
12742         std::string.
12743         (info_auto_load_libthread_db_compare): Return bool.  Change
12744         argument types.
12745         (info_auto_load_libthread_db): Use std::vector, std::string.
12746         Remove cleanups.
12747
12748 2018-02-24  Tom Tromey  <tom@tromey.com>
12749
12750         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
12751         std::string.
12752         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
12753         std::string*.
12754         * gdbarch.c: Rebuild.
12755         * gdbarch.h: Rebuild.
12756         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
12757         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
12758         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
12759         std::string*.
12760
12761 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
12762
12763         * gdbtypes.h (sect_offset): Change type to uint64_t.
12764         (sect_offset_str): New function.
12765         * dwarf2read.c (create_addrmap_from_aranges): Use
12766         sect_offset_str.
12767         (error_check_comp_unit_head): Likewise.
12768         (create_debug_type_hash_table): Likewise.
12769         (read_cutu_die_from_dwo): Likewise.
12770         (init_cutu_and_read_dies): Likewise.
12771         (init_cutu_and_read_dies_no_follow): Likewise.
12772         (process_psymtab_comp_unit_reader): Likewise.
12773         (partial_die_parent_scope): Likewise.
12774         (peek_die_abbrev): Likewise.
12775         (process_queue): Likewise.
12776         (dwarf2_physname): Likewise.
12777         (read_namespace_alias): Likewise.
12778         (read_import_statement): Likewise.
12779         (create_dwo_cu_reader): Likewise.
12780         (create_cus_hash_table): Likewise.
12781         (lookup_dwo_cutu): Likewise.
12782         (inherit_abstract_dies): Likewise.
12783         (read_func_scope): Likewise.
12784         (read_call_site_scope): Likewise.
12785         (dwarf2_add_member_fn): Likewise.
12786         (read_common_block): Likewise.
12787         (read_module_type): Likewise.
12788         (read_typedef): Likewise.
12789         (read_subrange_type): Likewise.
12790         (load_partial_dies): Likewise.
12791         (read_partial_die): Likewise.
12792         (find_partial_die): Likewise.
12793         (read_str_index): Likewise.
12794         (dwarf2_string_attr): Likewise.
12795         (build_error_marker_type): Likewise.
12796         (lookup_die_type): Likewise.
12797         (dump_die_shallow): Likewise.
12798         (follow_die_ref): Likewise.
12799         (dwarf2_fetch_die_loc_sect_off): Likewise.
12800         (dwarf2_fetch_constant_bytes): Likewise.
12801         (follow_die_sig): Likewise.
12802         (get_signatured_type): Likewise.
12803         (get_DW_AT_signature_type): Likewise.
12804         (dwarf2_find_containing_comp_unit): Likewise.
12805         (set_die_type): Likewise.
12806
12807 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
12808
12809         * arch/aarch64.c: Include "common-defs.h".
12810         * arch/amd64.c: Likewise.
12811         * arch/i386.c: Likewise.
12812
12813 2018-02-21  Tom Tromey  <tom@tromey.com>
12814
12815         * value.h: (extract_field_op): Update.
12816         * eval.c (extract_field_op): Return a const char *.
12817         * expression.h (parse_expression_for_completion): Update.
12818         * completer.c (complete_expression): Update.
12819         (add_struct_fields): Make fieldname const.
12820         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
12821         (mark_completion_tag, parse_exp_in_context_1): Update.
12822         (parse_expression_for_completion): Change "name" to
12823         unique_xmalloc_ptr*.
12824
12825 2018-02-21  Tom Tromey  <tom@tromey.com>
12826
12827         * infcall.c (call_function_by_hand_dummy): Use std::vector.
12828
12829 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12830
12831         * avr-tdep.c (avr_read_pc): Change parameter type to
12832         readable_regcache.
12833         * gdbarch.sh (read_pc): Likewise.
12834         * gdbarch.c: Re-generated.
12835         * gdbarch.h: Re-generated.
12836         * hppa-tdep.c (hppa_read_pc): Change parameter type to
12837         readable_regcache.
12838         * ia64-tdep.c (ia64_read_pc): Likewise.
12839         * mips-tdep.c (mips_read_pc): Likewise.
12840         * spu-tdep.c (spu_read_pc): Likewise.
12841
12842 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12843
12844         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
12845         * regcache-dump.c: New file.
12846         * regcache.c: Move register_dump to regcache-dump.c.
12847         (maintenance_print_registers): Likewise.
12848         (maintenance_print_raw_registers): Likewise.
12849         (maintenance_print_cooked_registers): Likewise.
12850         (maintenance_print_register_groups): Likewise.
12851         (maintenance_print_remote_registers): Likewise.
12852         (_initialize_regcache): Likewise.
12853         * regcache.h (register_dump): Moved from regcache.c.
12854
12855 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12856
12857         * regcache.c (regcache::regcache): Update.
12858         (regcache::invalidate): Move it to detached_regcache::invalidate.
12859         (get_thread_arch_aspace_regcache): Update.
12860         (regcache::raw_update): Update.
12861         (regcache::cooked_read): Remove some code.
12862         (regcache::cooked_read_value): Likewise.
12863         (regcache::raw_write): Remove assert on m_readonly_p.
12864         (regcache::raw_supply_integer): Move it to
12865         detached_regcache::raw_supply_integer.
12866         (regcache::raw_supply_zeroed): Likewise.
12867         * regcache.h (detached_regcache) <raw_supply_integer>: New
12868         declaration.
12869         <raw_supply_zeroed, invalidate>: Likewise.
12870         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
12871         <invalidate>: Likewise.
12872         <m_readonly_p>: Removed.
12873
12874 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12875
12876         * infcmd.c (get_return_value): Let stop_regs point to
12877         get_current_regcache.
12878         * regcache.c (regcache::regcache): Remove.
12879         (register_dump_reg_buffer): New class.
12880         (regcache_print): Adjust.
12881         * regcache.h (regcache): Remove constructors.
12882
12883 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12884
12885         * regcache.c (class register_dump): New class.
12886         (register_dump_regcache, register_dump_none): New class.
12887         (register_dump_remote, register_dump_groups): New class.
12888         (regcache_print): Update.
12889         * regcache.h (regcache_dump_what): Move it to regcache.c.
12890         (regcache) <dump>: Remove.
12891
12892 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12893
12894         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
12895          reg_buffer_rw *.
12896         (jit_unwind_reg_set_impl): Call raw_supply.
12897         (jit_frame_sniffer): Use reg_buffer_rw.
12898         * record-full.c (record_full_core_regbuf): Change its type.
12899         (record_full_core_open_1): Use reg_buffer_rw.
12900         (record_full_close): Likewise.
12901         (record_full_core_fetch_registers): Use regcache->raw_supply.
12902         (record_full_core_store_registers): Likewise.
12903         * regcache.c (regcache::get_register_status): Move it to
12904         reg_buffer.
12905         (regcache_raw_set_cached_value): Remove.
12906         (regcache::raw_set_cached_value): Remove.
12907         (regcache::raw_write): Call raw_supply.
12908         (regcache::raw_supply): Move it to reg_buffer_rw.
12909         * regcache.h (regcache_raw_set_cached_value): Remove.
12910         (reg_buffer_rw): New class.
12911
12912 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12913
12914         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
12915         readonly_detached_regcache.
12916         (dummy_frame_prev_register): Use regcache->cooked_read.
12917         * frame.c (frame_save_as_regcache): Change return type.
12918         (frame_pop): Update.
12919         * frame.h (frame_save_as_regcache): Update declaration.
12920         * inferior.h (get_infcall_suspend_state_regcache): Update
12921         declaration.
12922         * infrun.c (infcall_suspend_state) <registers>: use
12923         readonly_detached_regcache.
12924         (save_infcall_suspend_state): Don't use regcache_dup.
12925         (get_infcall_suspend_state_regcache): Change return type.
12926         * linux-fork.c (struct fork_info) <savedregs>: Change to
12927         readonly_detached_regcache.
12928         <pc>: New field.
12929         (fork_save_infrun_state): Don't use regcache_dup.
12930         (info_checkpoints_command): Adjust.
12931         * mi/mi-main.c (register_changed_p): Update declaration.
12932         (mi_cmd_data_list_changed_registers): Use
12933         readonly_detached_regcache.
12934         (register_changed_p): Change parameter type to
12935         readonly_detached_regcache.
12936         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
12937         readonly_detached_regcache.
12938         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
12939         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
12940         New.
12941         (regcache::save): Move it to reg_buffer.
12942         (regcache::restore): Change parameter type.
12943         (regcache_dup): Remove.
12944         * regcache.h (reg_buffer) <save>: New method.
12945         (readonly_detached_regcache): New class.
12946         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
12947         readonly_detached_regcache.
12948         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
12949
12950 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12951
12952         * frame.c (frame_save_as_regcache): Use regcache method save.
12953         (frame_pop): Use regcache method restore.
12954         * infrun.c (restore_infcall_suspend_state): Likewise.
12955         * linux-fork.c (fork_load_infrun_state): Likewise.
12956         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
12957         save.
12958         * regcache.c (regcache_save): Remove.
12959         (regcache::restore): More asserts.
12960         (regcache_cpy): Remove.
12961         * regcache.h (regcache_save): Remove the declaration.
12962         (regcache::restore): Move from private to public.
12963         Remove the friend declaration of regcache_cpy.
12964         (regcache_cpy): Remove declaration.
12965
12966 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12967
12968         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
12969         parameter type to 'readable_regcache *'.
12970         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12971         * arm-tdep.c (arm_neon_quad_read): Likewise.
12972         (arm_pseudo_read): Likewise.
12973         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12974         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12975         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12976         * gdbarch.c: Re-generated.
12977         * gdbarch.h: Re-generated.
12978         * gdbarch.sh (pseudo_register_read): Change parameter type to
12979         'readable_regcache *'.
12980         (pseudo_register_read_value): Likewise.
12981         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
12982         (h8300_pseudo_register_read): Likewise.
12983         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
12984         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12985         (i386_pseudo_register_read_into_value): Likewise.
12986         (i386_pseudo_register_read_value): Likewise.
12987         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
12988         declaration.
12989         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
12990         * m32c-tdep.c (m32c_raw_read): Likewise.
12991         (m32c_read_flg): Likewise.
12992         (m32c_banked_register): Likewise.
12993         (m32c_banked_read): Likewise.
12994         (m32c_sb_read): Likewise.
12995         (m32c_part_read): Likewise.
12996         (m32c_cat_read): Likewise.
12997         (m32c_r3r2r1r0_read): Likewise.
12998         (m32c_pseudo_register_read): Likewise.
12999         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13000         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13001         (mep_pseudo_cr64_read): Likewise.
13002         (mep_pseudo_register_read): Likewise.
13003         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13004         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13005         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13006         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13007         (regcache::cooked_read): Likewise.
13008         (regcache::cooked_read_value): Likewise.
13009         (regcache_cooked_read_signed):
13010         (regcache::cooked_read): Likewise.
13011         * regcache.h (readable_regcache): New class.
13012         (regcache): Inherit readable_regcache.  Move some methods to
13013         readable_regcache.
13014         * rl78-tdep.c (rl78_pseudo_register_read): Change
13015         parameter type to 'readable_regcache *'.
13016         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13017         (e500_pseudo_register_read): Change parameter type to
13018         'readable_regcache *'.
13019         (dfp_pseudo_register_read): Likewise.
13020         (vsx_pseudo_register_read): Likewise.
13021         (efpr_pseudo_register_read): Likewise.
13022         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13023         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13024         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13025         (sh64_pseudo_register_read): Likewise.
13026         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13027         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13028         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13029         (spu_pseudo_register_read): Likewise.
13030         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13031         (xtensa_pseudo_register_read): Likewise.
13032
13033 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13034
13035         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13036         (regcache::arch): Move it to reg_buffer::arch.
13037         (regcache::register_buffer): Likewise.
13038         (regcache::assert_regnum): Likewise.
13039         (regcache::num_raw_registers): Likewise.
13040         * regcache.h (reg_buffer): New class.
13041         (regcache): Inherit reg_buffer.
13042
13043 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13044
13045         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13046         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13047
13048 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13049
13050         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13051
13052 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13053
13054         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13055         (SFILES): Remove common/*.c files.
13056         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13057         * common/common.host: Add common reference.
13058         * configure.ac: Likewise.
13059         * configure: Regenerate.
13060
13061 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13062
13063         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13064         (block_initialize_namespace): Use new.
13065         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13066         (dwarf2_free_objfile): Use delete.
13067         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13068         (copy_type_recursive): Use new.
13069         * gdb_obstack.h (allocate_on_obstack): New.
13070
13071 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13072
13073         PR gdb/22849
13074         * inferior.c (exit_inferior_1): Reset inf->control.
13075
13076 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13077
13078         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13079         declaration.
13080
13081 2018-02-14  Pedro Alves  <palves@redhat.com>
13082
13083         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13084         frame_cleanup_after_sniffer on exception.
13085
13086 2018-02-14  Tom Tromey  <tom@tromey.com>
13087
13088         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13089         const.
13090         (solib_bfd_open): Make pathname const.
13091         * solib.c (solib_bfd_open): Make pathname const.
13092         * solib-spu.c (spu_bfd_fopen): Make name const.
13093         (spu_bfd_open): Make pathname const.
13094         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13095         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13096
13097 2018-02-14  Tom Tromey  <tom@tromey.com>
13098
13099         * symfile.c (symfile_bfd_open): Update.
13100         * source.h (openp, source_full_path_of, find_and_open_source):
13101         Change argument type to unique_xmalloc_ptr.
13102         * source.c (openp): Take a unique_xmalloc_ptr.
13103         (source_full_path_of, find_and_open_source): Likewise.
13104         (open_source_file, symtab_to_fullname): Update.
13105         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13106         unique_xmalloc_ptr.
13107         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13108         (exec_file_find): Update.
13109         * psymtab.c (psymtab_to_fullname): Update.
13110         * nto-tdep.h (nto_find_and_open_solib): Update.
13111         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13112         unique_xmalloc_ptr.
13113         * exec.c (exec_file_attach): Update.
13114         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13115         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13116
13117 2018-02-14  Tom Tromey  <tom@tromey.com>
13118
13119         * solib.c: Include source.h.
13120         * nto-tdep.c: Include source.h.
13121         * mi/mi-cmd-env.c: Include source.h.
13122         * infcmd.c: Include source.h.
13123         * exec.c: Include source.h.
13124         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13125         (add_path, directory_switch, source_path, init_source_path): Move
13126         declarations...
13127         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13128         (add_path, directory_switch, source_path, init_source_path):
13129         ...here.
13130
13131 2018-02-14  Tom Tromey  <tom@tromey.com>
13132
13133         * solist.h (exec_file_find, solib_find): Return
13134         unique_xmalloc_ptr.
13135         (solib_bfd_fopen): Take a const char *.
13136         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13137         (exec_file_find, solib_find): Likewise.
13138         (solib_bfd_fopen): Do not take ownership of "pathname".
13139         (solib_bfd_open): Use unique_xmalloc_ptr.
13140         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13141         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13142         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13143         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13144
13145 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13146
13147         * ada-lang.c (name_match_type_from_name): Remove reference to
13148         ada_name_for_lookup in function's documentation.
13149         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13150
13151 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13152
13153         * defs.h (enum openp_flags): New enum.
13154         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13155         Move to enum openp_flags.
13156         (openp_flags): New enum flags.
13157         (openp): Change parameter type to openp_flags.
13158         * source.c (openp): Change parameter type to openp_flags.
13159         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13160         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13161
13162 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13163
13164         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13165         per-command.
13166
13167 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13168
13169         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13170         into...
13171         (class dwarf2_queue_guard): ...the destructor of this new class.
13172         (dw2_do_instantiate_symtab): Create instance of the new class
13173         dwarf2_queue_guard, remove cleanup.
13174
13175 2018-02-09  Tom Tromey  <tom@tromey.com>
13176
13177         * source.c (find_source_lines): Don't reference past the end of
13178         the vector.
13179
13180 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13181
13182         * remote.c (remote_btrace_maybe_reopen): Change error message.
13183         * btrace.c (btrace_enable): Likewise.
13184         (parse_xml_btrace): Likewise.
13185         (parse_xml_btrace_conf): Likewise.
13186
13187 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13188
13189         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13190         (linux_enable_pt, linux_enable_bts): Call
13191         diagnose_perf_event_open_fail.
13192
13193 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13194
13195         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13196         Remove parameter and change return type.  Update callers.  Move it.
13197         (linux_enable_bts, linux_enable_pt): Improve error message.
13198         (linux_enable_pt): Remove zero buffer size check.
13199         (linux_enable_btrace): Improve error messages.  Remove NULL return
13200         check.
13201
13202 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13203
13204         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13205         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13206         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13207         (linux_supports_pt, linux_supports_btrace): Remove.
13208         (linux_enable_bts): Call cpu_supports_bts.
13209         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13210         * remote.c (remote_supports_btrace): Remove.
13211         (init_remote_ops): Remove remote_supports_btrace.
13212         * target-delegates.c: Regenerated.
13213         * target.c (target_supports_btrace): Remove.
13214         * target.h (target_ops) <to_supports_btrace>: Remove
13215         (target_supports_btrace): Remove.
13216         * x86-linux-nat.c (x86_linux_create_target): Remove
13217         linux_supports_btrace.
13218
13219 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13220
13221         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13222         btrace failed.
13223         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13224         exception and use message in own exception.
13225
13226 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13227
13228         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13229         (perf_event_pt_event_type): Use gdb_file_up.
13230         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13231         scoped_fd, and scoped_mmap.
13232
13233 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13234
13235         * common/scoped_mmap.h: New.
13236         * unittests/scoped_mmap-selftest.c: New.
13237         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13238         unittests/scoped_mmap-selftest.c.
13239
13240 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13241
13242         * common/scoped_fd.h: New.
13243         * unittests/scoped_fd-selftest.c: New.
13244         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13245         unittests/scoped_fd-selftest.c.
13246
13247 2018-02-09  Tom Tromey  <tom@tromey.com>
13248
13249         * auto-load.c (auto_load_section_scripts): Use
13250         gdb::unique_xmalloc_ptr.
13251
13252 2018-02-09  Tom Tromey  <tom@tromey.com>
13253
13254         * auto-load.c (execute_script_contents): Use std::string.
13255
13256 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13257
13258         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13259         Python function, rather than a new command.
13260
13261 2018-02-08  Tom Tromey  <tom@tromey.com>
13262
13263         * solib.c (solib_find_1): Use std::string.
13264         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13265
13266 2018-02-08  Tom Tromey  <tom@tromey.com>
13267
13268         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13269
13270 2018-02-08  Tom Tromey  <tom@tromey.com>
13271
13272         * source.c (find_source_lines): Use gdb::def_vector.
13273
13274 2018-02-08  Tom Tromey  <tom@tromey.com>
13275
13276         * macrocmd.c (struct temporary_macro_definition): New.
13277         (macro_define_command): Use temporary_macro_definition.  Remove
13278         cleanups.
13279         (free_macro_definition_ptr): Remove.
13280
13281 2018-02-08  Tom Tromey  <tom@tromey.com>
13282
13283         * macroexp.c (maybe_expand): Use std::string.
13284
13285 2018-02-08  Tom Tromey  <tom@tromey.com>
13286
13287         * macroexp.c (struct macro_buffer): Add initializers for some
13288         members.
13289         (init_buffer, init_shared_buffer, free_buffer)
13290         (free_buffer_return_text): Remove.
13291         (macro_buffer): New constructors.
13292         (~macro_buffer): New destructor.
13293         (macro_buffer::set_shared): New method.
13294         (macro_buffer::resize_buffer, macro_buffer::appendc)
13295         (macro_buffer::appendmem): Now methods, not free functions.
13296         (set_token, append_tokens_without_splicing, stringify)
13297         (macro_stringify): Update.
13298         (gather_arguments): Change return type.  Remove argc_p argument,
13299         add args_ptr argument.  Use std::vector.
13300         (substitute_args): Remove argc argument.  Accept std::vector.
13301         (expand): Update.  Use std::vector.
13302         (scan, macro_expand, macro_expand_next): Update.
13303
13304 2018-02-08  Tom Tromey  <tom@tromey.com>
13305
13306         * symtab.c (default_collect_symbol_completion_matches_break_on):
13307         Use unique_xmalloc_ptr.
13308         * macroscope.h: (sal_macro_scope, user_macro_scope)
13309         (default_macro_scope): Return unique_xmalloc_ptr.
13310         * macroscope.c (sal_macro_scope, user_macro_scope)
13311         (default_macro_scope): Return unique_xmalloc_ptr.
13312         * macroexp.h (macro_expand, macro_expand_once): Return
13313         unique_xmalloc_ptr.
13314         * macroexp.c (macro_expand, macro_expand_once): Return
13315         unique_xmalloc_ptr.
13316         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13317         (info_macro_command, info_macros_command): Use
13318         unique_xmalloc_ptr.
13319         * compile/compile-c-support.c (write_macro_definitions): Use
13320         unique_xmalloc_ptr.
13321         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13322
13323 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13324
13325         * value.c (value_static_field): Assign field type instead of
13326         containing type when returning an optimized out value.
13327
13328 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13329
13330         * ft32-tdep.c (ft32_read_pc): Remove.
13331         (ft32_write_pc): Remove.
13332         (ft32_gdbarch_init): Update.
13333         * m32r-tdep.c (m32r_read_pc): Remove.
13334         (m32r_gdbarch_init): Update.
13335         * mep-tdep.c (mep_read_pc): Remove.
13336         (mep_gdbarch_init): Update.
13337         * microblaze-tdep.c (microblaze_write_pc): Remove.
13338         (microblaze_gdbarch_init): Update.
13339         * mn10300-tdep.c (mn10300_read_pc): Remove.
13340         (mn10300_write_pc): Remove.
13341         (mn10300_gdbarch_init): Update.
13342         * moxie-tdep.c (moxie_read_pc): Remove.
13343         (moxie_write_pc): Remove.
13344         (moxie_gdbarch_init): Update.
13345
13346 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13347
13348         * expprint.c (print_subexp_standard): Handle
13349         OP_F77_UNDETERMINED_ARGLIST.
13350         (dump_subexp_body_standard): Likewise.
13351
13352 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13353
13354         * target-descriptions.c (tdesc_element_visitor) Add empty
13355         implementations.
13356         (tdesc_type): Move make_gdb_type from here.
13357         (tdesc_type_builtin): Likewise.
13358         (tdesc_type_vector): Likewise.
13359         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13360         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13361         (make_gdb_type_union): Likewise.
13362         (make_gdb_type_flags): Likewise.
13363         (make_gdb_type_enum): Likewise.
13364         (make_gdb_type): New function.
13365         (tdesc_register_type): Use static make_gdb_type.
13366
13367 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13368
13369         * infcmd.c (default_print_one_register_info): Align natural-format
13370         column values consistently one under another.
13371         (pad_to_column): New function.
13372
13373 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13374
13375         * dwarf2read.c (dwarf2_physname): Move commment.
13376
13377 2018-02-01  Leszek Swirski  <leszeks@google.com>
13378
13379         * varobj.c (varobj_formatted_print_options): Allow recursive
13380         pretty printing if pretty printing is enabled.
13381
13382 2018-02-01  Leszek Swirski  <leszeks@google.com>
13383
13384         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13385         names after a structop as a filename.
13386
13387 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13388
13389         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13390         (arm_record_coproc_data_proc): Likewise.
13391
13392 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13393
13394         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13395
13396 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13397
13398         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13399         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13400
13401 2018-01-31  Pedro Alves  <palves@redhat.com>
13402
13403         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13404         * inflow.c (child_terminal_save_inferior): Wrap reference to
13405         tcgetpgrp in HAVE_TERMIOS_H.
13406         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13407         _WIN32.
13408         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13409         always iterate over all inferiors.
13410         (gdbsim_cntrl_c): Adjust.
13411         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13412
13413 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13414
13415         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13416         index type is objfile-owned if the element type is as well.
13417
13418 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13419
13420         GDB 8.1 released.
13421
13422 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13423
13424         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13425         "features/s390x-linux64.c".
13426         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13427         s390_linux32 and s390x_linux64.
13428         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13429         default tdesc.
13430         * s390-tdep.c: Include "features/s390-linux32.c" and
13431         "features/s390x-linux64.c".
13432         (s390_tdesc_valid): Add check for tdesc_has_registers.
13433         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13434         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13435         tdesc_s390x_linux64.
13436         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13437         tdesc_s390x_linux64 to...
13438         * s390-tdep.h: ...here.
13439
13440 2018-01-30  Pedro Alves  <palves@redhat.com>
13441
13442         PR gdb/13211
13443         * config.in, configure: Regenerate.
13444         * configure.ac: Check for getpgid.
13445         * go32-nat.c (go32_pass_ctrlc): New.
13446         (go32_target): Install it.
13447         * inf-child.c (inf_child_target): Install
13448         child_terminal_save_inferior, child_pass_ctrlc and
13449         child_interrupt.
13450         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13451         (inf_ptrace_target): No longer install it.
13452         * infcmd.c (interrupt_target_1): Adjust.
13453         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13454         (child_interrupt): Declare.
13455         (inferior::terminal_state): New.
13456         * inflow.c (struct terminal_info): Update comments.
13457         (inferior_process_group): Delete.
13458         (terminal_is_ours): Delete.
13459         (gdb_tty_state): New.
13460         (child_terminal_init): Adjust.
13461         (is_gdb_terminal, sharing_input_terminal_1)
13462         (sharing_input_terminal): New functions.
13463         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13464         Set the process's actual process group in the foreground if
13465         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13466         mark terminal as the inferior's if not sharing GDB's terminal.
13467         Don't check attach_flag.
13468         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13469         pass down a target_terminal_state.
13470         (child_terminal_save_inferior): New, factored out from ...
13471         (child_terminal_ours_1): ... this.  Handle
13472         target_terminal_state::is_ours_for_output.
13473         (child_interrupt, child_pass_ctrlc): New.
13474         (inflow_inferior_exit): Clear the inferior's terminal_state.
13475         (copy_terminal_info): Copy the inferior's terminal state.
13476         (_initialize_inflow): Remove reference to terminal_is_ours.
13477         * inflow.h (inferior_process_group): Delete.
13478         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13479         * procfs.c (procfs_target): Don't install procfs_interrupt.
13480         (procfs_interrupt): Delete.
13481         * remote.c (remote_serial_quit_handler): Adjust.
13482         (remote_interrupt): Remove ptid parameter.  Adjust.
13483         * target-delegates.c: Regenerate.
13484         * target.c: Include "terminal.h".
13485         (target_terminal::terminal_state): Rename to ...
13486         (target_terminal::m_terminal_state): ... this.
13487         (target_terminal::init): Adjust.
13488         (target_terminal::inferior): Adjust to per-inferior
13489         terminal_state.
13490         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13491         (target_terminal::ours, target_terminal::ours_for_output): Use
13492         target_terminal_is_ours_kind.
13493         (target_interrupt): Remove ptid parameter.  Adjust.
13494         (default_target_pass_ctrlc): Adjust.
13495         * target.h (target_ops::to_terminal_save_inferior): New field.
13496         (target_ops::to_interrupt): Remove ptid_t parameter.
13497         (target_interrupt): Remove ptid_t parameter.  Update comment.
13498         (target_pass_ctrlc): Update comment.
13499         * target/target.h (target_terminal_state): New scoped enum,
13500         factored out of ...
13501         (target_terminal::terminal_state): ... here.
13502         (target_terminal::inferior): Update comments.
13503         (target_terminal::restore_inferior): New.
13504         (target_terminal::is_inferior, target_terminal::is_ours)
13505         (target_terminal::is_ours_for_output): Adjust.
13506         (target_terminal::scoped_restore_terminal_state): Adjust to
13507         rename, and call restore_inferior() instead of inferior().
13508         (target_terminal::scoped_restore_terminal_state::m_state): Change
13509         type.
13510         (target_terminal::terminal_state): Rename to ...
13511         (target_terminal::m_terminal_state): ... this and change type.
13512
13513 2018-01-30  Pedro Alves  <palves@redhat.com>
13514
13515         * linux-nat.c (wait_for_signal): New function.
13516         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13517         directly.
13518         (async_terminal_is_ours)
13519         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13520         (linux_nat_add_target): Don't override
13521         to_terminal_inferior/to_terminal_ours.
13522
13523 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13524
13525         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13526
13527 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13528
13529         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13530         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13531         dwarf2_per_objfile_free here.
13532         (dwarf2_per_objfile_free): Remove.
13533         (_initialize_dwarf2_read): Don't register
13534         dwarf2_per_objfile_free as a registry cleanup.
13535
13536 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13537
13538         Avoid compilation errors in MinGW native builds
13539
13540         The error is triggered by including python-internal.h, and the
13541         error message is:
13542
13543              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13544                       from build-gnulib/import/math.h:27,
13545                       from d:/usr/Python26/include/pyport.h:235,
13546                       from d:/usr/Python26/include/Python.h:58,
13547                       from python/python-internal.h:94,
13548                       from python/py-arch.c:24:
13549              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13550         using ::hypot;
13551                 ^~~~~
13552
13553         This happens because Python headers define 'hypot' to expand t
13554         '_hypot' in the Windows builds.
13555         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13556         'hypoth'.  This avoids a compilation error.
13557
13558 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13559
13560         * MAINTAINERS (Write After Approval): Fix ordering.
13561
13562 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13563
13564         * MAINTAINERS (Write After Approval): Add Alan Hayward.
13565
13566 2018-01-26  Alan Modra  <amodra@gmail.com>
13567
13568         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
13569         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
13570         Remove nop.  Make const.  Comment.
13571         (powerpc32_plt_stub_so_2): New.
13572         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
13573         Correct count.  Update uses.
13574         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
13575         Move common code reading PLT entry word.  Correct
13576         powerpc32_plt_stub PLT address calculation.
13577         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
13578         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
13579         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
13580         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
13581         (ppc64_standard_linkage8): Likewise.
13582         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
13583         Correct insns description.
13584         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
13585
13586 2018-01-24  Pedro Alves  <palves@redhat.com>
13587
13588         GCC PR libstdc++/83906
13589         * gdbtypes.c (operator==(const dynamic_prop &,
13590         const dynamic_prop &)): New.
13591         (operator==(const range_bounds &, const range_bounds &)): New.
13592         (check_types_equal): Use them instead of memcmp.
13593         * gdbtypes.h (operator==(const dynamic_prop &,
13594         const dynamic_prop &)): Declare.
13595         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
13596         (operator==(const range_bounds &, const range_bounds &)): Declare.
13597         (operator!=(const range_bounds &, const range_bounds &)): Declare.
13598
13599 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13600
13601         * s390-linux-tdep.c (s390_record_address_mask)
13602         (s390_record_calc_disp_common, s390_record_calc_disp)
13603         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13604         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13605         (s390_process_record): Move to s390-tdep.c.
13606         (s390_linux_init_abi_any): Adjust.
13607         * s390-tdep.c (s390_record_address_mask)
13608         (s390_record_calc_disp_common, s390_record_calc_disp)
13609         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13610         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13611         (s390_process_record): Moved from s390-linux-tdep.c
13612         (s390_gdbarch_init): Adjust.
13613
13614 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13615
13616         * s390-linux-nat.c (s390-tdep.h): New include.
13617         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
13618         (HFILES_NO_SRCDIR): Add s390-tdep.h.
13619         (ALLDEPFILES): Add s390-tdep.c.
13620         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
13621         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
13622         * s390-tdep.h: ...this.  New file.
13623         * s390-linux-tdep.c (s390-tdep.h): New include.
13624         (_initialize_s390_tdep): Rename to...
13625         (_initialize_s390_linux_tdep): ...this and adjust.
13626         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
13627         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
13628         s390-tdep.h.
13629         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
13630         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
13631         (s390_is_partial_instruction, s390_software_single_step)
13632         (is_non_branch_ril, s390_displaced_step_copy_insn)
13633         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
13634         (s390_prologue_data, s390_addr, s390_store, s390_load)
13635         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
13636         (s390_register_call_saved, s390_guess_tracepoint_registers)
13637         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
13638         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
13639         (s390_pseudo_register_name, s390_pseudo_register_type)
13640         (s390_pseudo_register_read, s390_pseudo_register_write)
13641         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
13642         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
13643         (s390_addr_bits_remove, s390_address_class_type_flags)
13644         (s390_address_class_type_flags_to_name)
13645         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
13646         (s390_function_arg_float, s390_function_arg_vector)
13647         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
13648         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
13649         (s390_frame_align, s390_register_return_value, s390_return_value)
13650         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
13651         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
13652         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
13653         (s390_trad_frame_prev_register, s390_unwind_cache)
13654         (s390_prologue_frame_unwind_cache)
13655         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
13656         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
13657         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
13658         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
13659         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
13660         (s390_frame_base_address, s390_local_base_address)
13661         (s390_frame_base, s390_gcc_target_options)
13662         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
13663         (s390_validate_reg_range, s390_tdesc_valid)
13664         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
13665         * s390-tdep.c: ...this.  New file.
13666
13667 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13668
13669         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
13670         (s390_process_record, s390_gdbarch_tdep_alloc)
13671         (s390_linux_init_abi_any): Use/set new hook.
13672
13673 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13674
13675         * s390-linux-tdep.c (osabi.h): New include.
13676         (s390_linux_init_abi_31, s390_linux_init_abi_64)
13677         (s390_linux_init_abi_any): New functions.
13678         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
13679
13680 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13681
13682         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
13683         tdesc_has_registers check
13684
13685 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13686
13687         * s390-linux-tdep.c (s390_tdesc_valid): New function.
13688         (s390_validate_reg_range): New macro.
13689         (s390_gdbarch_init): Adjust.
13690
13691 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13692
13693         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
13694         (s390_gdbarch_tdep_alloc): Adjust.
13695         (s390_gdbarch_init): Adjust.
13696
13697 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13698
13699         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
13700         <have_tdb>: Change type to bool.
13701         (s390_gdbarch_tdep_alloc): Adjust.
13702         (s390_gdbarch_init): Adjust.
13703
13704 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13705
13706         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
13707         (gdbarch_tdep) <have_upper, have_vx>: New fields.
13708         (s390_gdbarch_tdep_alloc): New function.
13709         (s390_gdbarch_init): Allocate tdep at start and use its fields
13710         instead of separate variables.
13711
13712 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13713
13714         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
13715         when looking for cached gdbarch and add comment for remaining.
13716
13717 2018-01-22  Pedro Alves  <palves@redhat.com>
13718             Sergio Durigan Junior  <sergiodj@redhat.com>
13719
13720         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
13721         case.
13722
13723 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
13724
13725         * MAINTAINERS: Update my company e-mail address.
13726
13727 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13728
13729         * regcache.c (cooked_write_test): New function.
13730         (_initialize_regcache): Register the test.
13731
13732 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13733
13734         * ia64-tdep.c (ia64_pseudo_register_read): Call
13735         regcache->cooked_read instead of regcache_cooked_read_unsigned.
13736         * m32c-tdep.c (m32c_cat_read): Likewise.
13737         (m32c_r3r2r1r0_read): Likewise.
13738         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13739         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13740
13741 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13742
13743         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
13744         method raw_read instead of regcache_raw_read.
13745         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13746         * arm-tdep.c (arm_neon_quad_read): Likewise.
13747         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13748         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13749         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13750         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
13751         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13752         (i386_pseudo_register_read_into_value): Likewise.
13753         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13754         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13755         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13756         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
13757         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
13758         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
13759         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13760         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
13761         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
13762
13763 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13764
13765         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
13766         * configure.tgt: Remove target mt.
13767         * mt-tdep.c: Remove.
13768         * regcache.c (cooked_read_test): Remove the check for mt.
13769
13770 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13771
13772         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
13773         instead of gdbarch_pseudo_register_read_value.
13774
13775 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13776
13777         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
13778         language is Ada.
13779
13780 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13781
13782         * linespec.c (create_sals_line_offset): Remove code that preserved
13783         the symtab_and_line's line number.
13784
13785 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13786
13787         * varobj.c (varobj_create): Don't set valid_block when creating a
13788         floating varobj.
13789
13790 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13791
13792         * varobj.c (varobj_create): Remove out of date comment.
13793
13794 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13795
13796         PR mi/20395
13797         * ada-exp.y (write_var_from_sym): Pass extra parameter when
13798         updating innermost block.
13799         * parse.c (innermost_block_tracker::update): Take extra type
13800         parameter, and check types match before updating innermost block.
13801         (write_dollar_variable): Update innermost block for registers.
13802         * parser-defs.h (enum innermost_block_tracker_type): New enum.
13803         (innermost_block_tracker::innermost_block_tracker): Initialise
13804         m_types member.
13805         (innermost_block_tracker::reset): Take type parameter.
13806         (innermost_block_tracker::update): Take type parameter, and pass
13807         type through as needed.
13808         (innermost_block_tracker::m_types): New member.
13809         * varobj.c (varobj_create): Pass type when reseting innermost
13810         block.
13811
13812 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13813
13814         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
13815         * ada-lang.c (resolve_subexp): Likewise.
13816         * breakpoint.c (set_breakpoint_condition) Likewise.
13817         (watch_command_1) Likewise.
13818         * c-exp.y (variable): Likewise.
13819         * d-exp.y (PrimaryExpression): Likewise.
13820         * f-exp.y (variable): Likewise.
13821         * go-exp.y (variable): Likewise.
13822         * m2-exp.y (variable): Likewise.
13823         * objfiles.c (objfile::~objfile): Likewise.
13824         * p-exp.y (variable): Likewise.
13825         * parse.c (innermost_block): Change type.
13826         * parser-defs.h (class innermost_block_tracker): New.
13827         (innermost_block): Change to innermost_block_tracker.
13828         * printcmd.c (display_command): Switch to innermost_block API.
13829         (do_one_display): Likewise.
13830         * rust-exp.y (do_one_display): Likewise.
13831         * symfile.c (clear_symtab_users): Likewise.
13832         * varobj.c (varobj_create): Switch to innermost_block API, replace
13833         use of innermost_block with block stored on varobj object.
13834
13835 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13836
13837         * expression.h (innermost_block): Remove declaration.
13838         * varobj.c: Add 'parser-defs.h' include.
13839
13840 2018-01-19  Tom Tromey  <tom@tromey.com>
13841
13842         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
13843         symbols in the static and global blocks.
13844
13845 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
13846
13847         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
13848         gdb_ptrace.h, and move including gdb_wait.h ...
13849         * nat/linux-ptrace.h: ... to here.
13850
13851 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13852
13853         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
13854         inf_ptrace_detach_success.
13855         (inf_ptrace_detach_success): Add inferior parameter, use it
13856         instead of inferior_ptid, pass it to detach_inferior.
13857         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
13858         parameter.
13859         * inferior.c (detach_inferior): Add overload that takes an
13860         inferior object.
13861         * inferior.h (detach_inferior): Likewise.
13862         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
13863         use inferior_ptid, adjust call to inf_ptrace_detach_success.
13864         * linux-thread-db.c (thread_db_detach): Use inf parameter.
13865
13866 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13867
13868         * target.h (struct target_ops) <to_detach>: Add inferior
13869         parameter.
13870         (target_detach): Likewise.
13871         * target.c (dispose_inferior): Pass inferior down.
13872         (target_detach): Pass inferior down.  Assert that it is equal to
13873         the current inferior.
13874         * aix-thread.c (aix_thread_detach): Pass inferior down.
13875         * corefile.c (core_file_command): Pass current_inferior() down.
13876         * corelow.c (core_detach): Add inferior parameter.
13877         * darwin-nat.c (darwin_detach): Likewise.
13878         * gnu-nat.c (gnu_detach): Likewise.
13879         * inf-ptrace.c (inf_ptrace_detach): Likewise.
13880         * infcmd.c (detach_command): Pass current_inferior() down to
13881         target_detach.
13882         * infrun.c (follow_fork_inferior): Pass parent_inf to
13883         target_detach.
13884         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
13885         target_detach.
13886         * linux-nat.c (linux_nat_detach): Add inferior parameter.
13887         * linux-thread-db.c (thread_db_detach): Likewise.
13888         * nto-procfs.c (procfs_detach): Likewise.
13889         * procfs.c (procfs_detach): Likewise.
13890         * record.c (record_detach): Likewise.
13891         * record.h (struct inferior): Forward-declare.
13892         (record_detach): Add inferior parameter.
13893         * remote-sim.c (gdbsim_detach): Likewise.
13894         * remote.c (remote_detach_1): Likewise.
13895         (remote_detach): Likewise.
13896         (extended_remote_detach): Likewise.
13897         * sol-thread.c (sol_thread_detach): Likewise.
13898         * target-debug.h (target_debug_print_inferior_p): New macro.
13899         * target-delegates.c: Re-generate.
13900         * top.c (kill_or_detach): Pass inferior down to target_detach.
13901         * windows-nat.c (windows_detach): Add inferior parameter.
13902
13903 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13904
13905         * target.h (struct target_ops) <to_detach>: Remove args
13906         parameter.
13907         (target_detach): Likewise.
13908         * target.c (dispose_inferior): Adjust.
13909         (target_detach): Remove args parameter, adjust.
13910         * aix-thread.c (aix_thread_detach): Adjust.
13911         * corefile.c (core_file_command): Adjust.
13912         * corelow.c (core_detach): Adjust.
13913         * darwin-nat.c (darwin_detach): Adjust.
13914         * gnu-nat.c (gnu_detach): Adjust.
13915         * inf-ptrace.c (inf_ptrace_detach): Adjust.
13916         * infcmd.c (detach_command): Adjust
13917         * infrun.c (follow_fork_inferior): Adjust.
13918         (handle_vfork_child_exec_or_exit): Adjust.
13919         * linux-fork.c (linux_fork_detach): Remove args parameter.
13920         * linux-fork.h (linux_fork_detach): Likewise.
13921         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
13922         * linux-thread-db.c (thread_db_detach): Likewise.
13923         * nto-procfs.c (procfs_detach): Likewise.
13924         * procfs.c (procfs_detach): Likewise.
13925         (do_detach): Remove signo parameter.
13926         * record.c (record_detach): Remove args parameter.
13927         * record.h (record_detach): Likewise.
13928         * remote-sim.c (gdbsim_detach): Likewise.
13929         * remote.c (remote_detach_1): Likewise.
13930         (remote_detach): Likewise.
13931         (extended_remote_detach): Likewise.
13932         * sol-thread.c (sol_thread_detach): Likewise.
13933         * target-delegates.c: Re-generate.
13934         * top.c (struct qt_args) <args>: Remove field.
13935         (kill_or_detach): Don't pass args.
13936         (quit_force): Don't set args.
13937         * windows-nat.c (windows_detach): Remove args parameter.
13938
13939 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13940
13941         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
13942         (arm_linux_init_abi): Install it.
13943
13944 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13945
13946         * osabi.c (gdb_osabi_names): Extend the regexp for
13947         arm-linux-gnueabihf.
13948
13949 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13950
13951         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
13952         m_abbrevs.
13953         (abbrev_table::add_abbrev): Update.
13954         (abbrev_table::lookup_abbrev): Update.
13955
13956 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13957
13958         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
13959
13960 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
13961
13962         * compile/compile.c (compile_to_object): Convert "triplet_rx"
13963         to "std::string".
13964
13965 2018-01-17  Tom Tromey  <tom@tromey.com>
13966
13967         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
13968
13969 2018-01-17  Tom Tromey  <tom@tromey.com>
13970
13971         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
13972         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
13973         (create_array_type_with_stride): Update.
13974         * dwarf2read.c (set_die_type): Update.
13975
13976 2018-01-17  Tom Tromey  <tom@tromey.com>
13977
13978         * dwarf2read.c (delayed_method_info): Remove typedef.
13979         (dwarf2_cu::method_info): Now a std::vector.
13980         (add_to_method_list): Update.
13981         (free_delayed_list): Remove.
13982         (compute_delayed_physnames): Update.
13983         (process_full_comp_unit, process_full_type_unit): Clear the method
13984         list.  Remove cleanups.
13985         (psymtab_include_file_name): Add name_holder parameter.  Use
13986         unique_xmalloc_ptr.
13987         (dwarf_decode_lines): Update.
13988
13989 2018-01-17  Tom Tromey  <tom@tromey.com>
13990             Simon Marchi  <simon.marchi@ericsson.com>
13991
13992         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
13993         (dwarf2_per_objfile::free_cached_comp_units)
13994         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13995         (init_cutu_and_read_dies_no_follow): Update.
13996         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
13997         (dwarf2_cu::~dwarf2_cu): New.
13998         (free_heap_comp_unit, free_stack_comp_unit): Remove.
13999         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14000
14001 2018-01-17  Tom Tromey  <tom@tromey.com>
14002             Simon Marchi  <simon.marchi@ericsson.com>
14003
14004         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14005         (struct die_reader_specs) <abbrev_table>: New member.
14006         (struct abbrev_table): Add constructor.
14007         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14008         <abbrev_obstack>: Now an auto_obstack.
14009         (abbrev_table_up): New typedef.
14010         (init_cu_die_reader): Add abbrev_table parameter.
14011         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14012         Add result_dwo_abbrev_table.
14013         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14014         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14015         Update.
14016         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14017         parameter.
14018         (skip_children): Update.
14019         (abbrev_table::alloc_abbrev): Rename from
14020         abbrev_table_alloc_abbrev.
14021         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14022         (abbrev_table::lookup_abbrev): Rename from
14023         abbrev_table_lookup_abbrev.
14024         (abbrev_table_read_table): Return abbrev_table_up.
14025         (abbrev_table_free, abbrev_table_free_cleanup)
14026         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14027         (load_partial_dies): Update.
14028
14029 2018-01-17  Tom Tromey  <tom@tromey.com>
14030
14031         * dwarf2read.c (dwarf2_compute_name): Update comment.
14032         (read_func_scope, read_variable): Update.
14033         (new_symbol): Remove.
14034         (new_symbol_full): Rename to new_symbol.
14035
14036 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14037
14038         PR gdb/16577
14039         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14040         a warning instead of throwing an error, set section size to 0 and return
14041         NULL.
14042         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14043
14044 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14045
14046         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14047         std::string.
14048         (linux_ptrace_attach_fail_reason_string): Likewise.
14049         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14050         Likewise.
14051         (linux_ptrace_attach_fail_reason_string): Likewise.
14052         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14053
14054 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14055
14056         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14057
14058 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14059
14060         PR gdb/21559
14061         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14062         checking for fs_base/gs_base fields in struct user_regs_struct.
14063         * configure: Regenerate.
14064
14065 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14066
14067         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14068         function.
14069         (aarch64_linux_init_abi): Install it to gdbarch hook
14070         gcc_target_options.
14071
14072 2018-01-15  Pedro Alves  <palves@redhat.com>
14073
14074         * common/signals-state-save-restore.c
14075         (save_original_signals_state): Fix typos.
14076
14077 2017-01-12  Tom Tromey  <tom@tromey.com>
14078             Sergio Durigan Junior  <sergiodj@redhat.com>
14079
14080         * Makefile.in (install-only): Install gdb-add-index.
14081
14082 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14083
14084         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14085
14086 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14087
14088         * infrun.c (keep_going_pass_signal): Clear step-over info when
14089         insert_breakpoints fails.
14090
14091 2018-01-11  Pedro Alves  <palves@redhat.com>
14092
14093         PR gdb/22583
14094         * infrun.c (resume): Rename to ...
14095         (resume_1): ... this.
14096         (resume): Reimplement as wrapper around resume_1.
14097
14098 2018-01-11  Pedro Alves  <palves@redhat.com>
14099
14100         PR remote/22597
14101         * remote.c (remote_parse_stop_reply): Default to the last-set
14102         general thread instead of to 'magic_null_ptid'.
14103
14104 2018-01-10  Pedro Alves  <palves@redhat.com>
14105
14106         * language.h (language_get_symbol_name_matcher): Rename ...
14107         (get_symbol_name_matcher): ... this.
14108         * language.c (language_get_symbol_name_matcher): Ditto.
14109         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14110         callers adjusted.
14111
14112 2018-01-10  Pedro Alves  <palves@redhat.com>
14113
14114         PR gdb/22670
14115         * dwarf2read.c
14116         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14117         Adjust to use language_get_symbol_name_matcher instead of
14118         language_defn::la_get_symbol_name_matcher.
14119         * language.c (language_get_symbol_name_matcher): If in Ada mode
14120         and the lookup name is a verbatim match, return Ada's matcher.
14121         * language.h (language_get_symbol_name_matcher): Adjust comment.
14122         (ada_lookup_name_info::verbatim_p):: New method.
14123
14124 2018-01-10  Pedro Alves  <palves@redhat.com>
14125
14126         PR gdb/22670
14127         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14128         minsym's language is language_auto or language_cplus, pass down
14129         language_ada instead.
14130         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14131
14132 2018-01-10  Pedro Alves  <palves@redhat.com>
14133
14134         PR gdb/22670
14135         * minsyms.c (linkage_name_str): New function.
14136         (iterate_over_minimal_symbols): Use it.
14137
14138 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14139
14140         * NEWS: Document that 'info proc' now works on FreeBSD.
14141
14142 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14143
14144         * configure.ac: Check for kinfo_getfile in libutil.
14145         * configure: Regenerate.
14146         * config.in: Regenerate.
14147         * fbsd-nat.c: Include "fbsd-tdep.h".
14148         (fbsd_fetch_cmdline): New.
14149         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14150         rather than calling error.
14151         (fbsd_info_proc): New.
14152         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14153         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14154         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14155
14156 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14157
14158         * fbsd-nat.c (struct free_deleter): Remove.
14159         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14160
14161 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14162
14163         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14164         NULL for an empty pathname.
14165
14166 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14167
14168         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14169         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14170         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14171         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14172         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14173         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14174         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14175         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14176         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14177         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14178         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14179         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14180         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14181         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14182         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14183
14184 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14185
14186         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14187         (gnu_xfer_auxv): New function.
14188         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14189         TARGET_OBJECT_AUXV.
14190
14191 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14192             Simon Marchi  <simon.marchi@ericsson.com>
14193
14194         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14195         common/selftest.c.
14196         (COMMON_OBS): Remove selftest.o.
14197         * configure.ac: Append selftest-arch.c and common/selftest.c to
14198         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14199         * configure: Re-generated.
14200         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14201         GDB_SELF_TEST.
14202         (maintenance_info_selftests): Likewise.
14203
14204 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14205
14206         * ada-valprint.c (val_print_packed_array_elements): Use
14207         proper number of elements when printing an array indexed
14208         by an enumeration type.
14209
14210 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14211
14212         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14213         (dw2_get_file_names_reader): Adjust.
14214         (lookup_dwo_signatured_type): Adjust.
14215         (lookup_dwp_signatured_type): Adjust.
14216         (lookup_signatured_type): Adjust.
14217         (create_type_unit_group): Adjust.
14218         (get_type_unit_group): Adjust.
14219         (process_psymtab_comp_unit_reader): Adjust.
14220         (build_type_psymtabs_reader): Adjust.
14221         (scan_partial_symbols): Adjust.
14222         (add_partial_symbol): Adjust.
14223         (add_partial_subprogram): Adjust.
14224         (peek_die_abbrev): Adjust.
14225         (fixup_go_packaging): Adjust.
14226         (process_imported_unit_die): Adjust.
14227         (dwarf2_compute_name): Adjust.
14228         (dwarf2_physname): Adjust.
14229         (read_import_statement): Adjust.
14230         (handle_DW_AT_stmt_list): Adjust.
14231         (read_file_scope): Adjust.
14232         (read_func_scope): Adjust.
14233         (read_lexical_block_scope): Adjust.
14234         (read_call_site_scope): Adjust.
14235         (read_variable): Adjust.
14236         (dwarf2_rnglists_process): Adjust.
14237         (dwarf2_ranges_process): Adjust.
14238         (dwarf2_ranges_read): Adjust.
14239         (dwarf2_get_pc_bounds): Adjust.
14240         (dwarf2_record_block_ranges): Adjust.
14241         (dwarf2_add_field): Adjust.
14242         (dwarf2_add_member_fn): Adjust.
14243         (read_structure_type): Adjust.
14244         (process_structure_scope): Adjust.
14245         (read_enumeration_type): Adjust.
14246         (read_array_type): Adjust.
14247         (mark_common_block_symbol_computed): Adjust.
14248         (read_common_block): Adjust.
14249         (read_namespace_type): Adjust.
14250         (read_namespace): Adjust.
14251         (read_module_type): Adjust.
14252         (read_tag_pointer_type): Adjust.
14253         (read_tag_ptr_to_member_type): Adjust.
14254         (read_tag_string_type): Adjust.
14255         (read_subroutine_type): Adjust.
14256         (read_typedef): Adjust.
14257         (read_base_type): Adjust.
14258         (attr_to_dynamic_prop): Adjust.
14259         (read_subrange_type): Adjust.
14260         (read_unspecified_type): Adjust.
14261         (dwarf2_read_abbrevs): Adjust.
14262         (load_partial_dies): Adjust.
14263         (read_partial_die): Adjust.
14264         (find_partial_die): Adjust.
14265         (guess_partial_die_structure_name): Adjust.
14266         (fixup_partial_die): Adjust.
14267         (read_attribute_value): Adjust.
14268         (read_addr_index): Adjust.
14269         (read_addr_index_from_leb128): Adjust.
14270         (read_str_index): Adjust.
14271         (dwarf2_string_attr): Adjust.
14272         (get_debug_line_section): Adjust.
14273         (dwarf_decode_line_header): Adjust.
14274         (lnp_state_machine::check_line_address): Adjust.
14275         (dwarf_decode_lines_1): Adjust.
14276         (dwarf_decode_lines): Adjust.
14277         (dwarf2_start_symtab): Adjust.
14278         (var_decode_location): Adjust.
14279         (new_symbol_full): Adjust.
14280         (dwarf2_const_value_data): Adjust.
14281         (dwarf2_const_value_attr): Adjust.
14282         (dwarf2_const_value): Adjust.
14283         (die_type): Adjust.
14284         (die_containing_type): Adjust.
14285         (build_error_marker_type): Adjust.
14286         (lookup_die_type): Adjust.
14287         (guess_full_die_structure_name): Adjust.
14288         (anonymous_struct_prefix): Adjust.
14289         (determine_prefix): Adjust.
14290         (dwarf2_name): Adjust.
14291         (follow_die_ref_or_sig): Adjust.
14292         (follow_die_offset): Adjust.
14293         (follow_die_ref): Adjust.
14294         (follow_die_sig_1): Adjust.
14295         (follow_die_sig): Adjust.
14296         (get_signatured_type): Adjust.
14297         (get_DW_AT_signature_type): Adjust.
14298         (decode_locdesc): Adjust.
14299         (dwarf_decode_macros): Adjust.
14300         (cu_debug_loc_section): Adjust.
14301         (fill_in_loclist_baton): Adjust.
14302         (dwarf2_symbol_mark_computed): Adjust.
14303         (init_one_comp_unit): Don't assign
14304         dwarf2_cu::dwarf2_per_objfile.
14305         (set_die_type): Adjust.
14306
14307 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14308
14309         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14310         <dwarf2_per_objfile>: New field.
14311         (dwarf2_per_objfile): Remove global.
14312         (get_dwarf2_per_objfile): New function.
14313         (set_dwarf2_per_objfile): New function.
14314         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14315         dwarf2_per_objfile.
14316         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14317         (read_abbrev_offset): Likewise.
14318         (read_indirect_string): Likewise.
14319         (read_indirect_line_string): Likewise.
14320         (read_indirect_string_at_offset): Likewise.
14321         (read_indirect_string_from_dwz): Likewise.
14322         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14323         dwarf2_per_objfile.
14324         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14325         (create_all_comp_units): Change objfile parameter to
14326         dwarf2_per_objfile.
14327         (create_all_type_units): Likewise.
14328         (process_queue): Add dwarf2_per_objfile parameter.
14329         (read_and_check_comp_unit_head): Likewise.
14330         (lookup_dwo_unit_in_dwp): Likewise.
14331         (get_dwp_file): Likewise.
14332         (process_cu_includes): Likewise.
14333         (struct free_dwo_file_cleanup_data): New struct.
14334         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14335         set_dwarf2_per_objfile.
14336         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14337         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14338         context, adjust calls.
14339         (dw2_instantiate_symtab): Likewise.
14340         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14341         (dw2_get_cu): Likewise.
14342         (create_cu_from_index_list): Change objfile parameter to
14343         dwarf2_per_objfile.
14344         (create_cus_from_index_list): Get dwarf2_per_objfile from
14345         context, adjust calls.
14346         (create_cus_from_index): Likewise.
14347         (create_signatured_type_table_from_index): Change objfile
14348         parameter to dwarf2_per_objfile.
14349         (create_signatured_type_table_from_debug_names): Change objfile
14350         parameter to dwarf2_per_objfile.
14351         (create_addrmap_from_index): Likewise.
14352         (create_addrmap_from_aranges): Likewise.
14353         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14354         (dw2_setup): Remove.
14355         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14356         context.
14357         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14358         get_dwarf2_per_objfile.
14359         (dw2_forget_cached_source_info): Likewise.
14360         (dw2_map_symtabs_matching_filename): Likewise.
14361         (struct dw2_symtab_iterator) <index>: Remove.
14362         <dwarf2_per_objfile>: New field.
14363         (dw2_symtab_iter_init): Replace index parameter with
14364         dwarf2_per_objfile.
14365         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14366         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14367         (dw2_print_stats): Likewise.
14368         (dw2_dump): Likewise.
14369         (dw2_expand_symtabs_for_function): Likewise.
14370         (dw2_expand_all_symtabs): Likewise.
14371         (dw2_expand_symtabs_with_fullname): Likewise.
14372         (dw2_expand_marked_cus): Replace index and objfile parameters
14373         with dwarf2_per_objfile.
14374         (dw_expand_symtabs_matching_file_matcher): Add
14375         dwarf2_per_objfile parameter and adjust calls.
14376         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14377         adjust calls.
14378         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14379         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14380         adjust calls.
14381         (create_cus_from_debug_names_list): Replace objfile parameter
14382         with dwarf2_per_objfile and adjust calls.
14383         (create_cus_from_debug_names): Likewise.
14384         (dwarf2_read_debug_names): Likewise.
14385         (mapped_debug_names::namei_to_name): Adjust call.
14386         (dw2_debug_names_iterator::next): Likewise.
14387         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14388         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14389         (dw2_debug_names_dump): Likewise.
14390         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14391         (dw2_debug_names_expand_symtabs_matching): Likewise.
14392         (dwarf2_initialize_objfile): Likewise.
14393         (dwarf2_build_psymtabs): Likewise.
14394         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14395         this_cu.
14396         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14397         (read_and_check_comp_unit_head): Likewise.
14398         (read_abbrev_offset): Likewise.
14399         (create_debug_type_hash_table): Likewise.
14400         (create_debug_types_hash_table): Likewise.
14401         (create_all_type_units): Replace objfile parameter with
14402         dwarf2_per_objfile.
14403         (add_type_unit): Add dwarf2_per_objfile parameter.
14404         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14405         with dwarf2_per_objfile.
14406         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14407         (lookup_dwp_signatured_type): Likewise.
14408         (lookup_signatured_type): Likewise.
14409         (read_cutu_die_from_dwo): Likewise.
14410         (init_tu_and_read_dwo_dies): Likewise.
14411         (init_cutu_and_read_dies): Likewise.
14412         (init_cutu_and_read_dies_no_follow): Likewise.
14413         (allocate_type_unit_groups_table): Add objfile parameter.
14414         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14415         (get_type_unit_group): Likewise.
14416         (process_psymtab_comp_unit): Update call.
14417         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14418         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14419         (print_tu_stats): Likewise.
14420         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14421         in void* parameter.
14422         (build_type_psymtabs): Change objfile parameter to
14423         dwarf2_per_objfile.
14424         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14425         passed in void* parameter.
14426         (process_skeletonless_type_units): Change objfile parameter to
14427         dwarf2_per_objfile.
14428         (set_partial_user): Likewise.
14429         (dwarf2_build_psymtabs_hard): Likewise.
14430         (read_comp_units_from_section): Likewise.
14431         (create_all_comp_units): Likewise.
14432         (scan_partial_symbols): Update calls.
14433         (add_partial_symbol): Likewise.
14434         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14435         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14436         (process_queue): Add dwarf2_per_objfile parameter.
14437         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14438         (compute_compunit_symtab_includes): Likewise.
14439         (process_cu_includes): Add dwarf2_per_objfile parameter.
14440         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14441         (process_full_type_unit): Likewise.
14442         (process_imported_unit_die): Update call.
14443         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14444         (read_file_scope): Likewise.
14445         (allocate_dwo_file_hash_table): Add objfile parameter.
14446         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14447         (create_cus_hash_table): Likewise.
14448         (create_dwp_hash_table): Likewise.
14449         (create_dwo_unit_in_dwp_v1): Likewise.
14450         (create_dwp_v2_section): Likewise.
14451         (create_dwo_unit_in_dwp_v2): Likewise.
14452         (lookup_dwo_unit_in_dwp): Likewise.
14453         (try_open_dwop_file): Likewise.
14454         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14455         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14456         cleanup to include a reference to dwarf2_per_objfile.
14457         (open_dwp_file): Add dwarf2_per_objfile parameter.
14458         (open_and_init_dwp_file): Likewise.
14459         (get_dwp_file): Likewise.
14460         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14461         (queue_and_load_all_dwo_tus): Update call.
14462         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14463         data.
14464         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14465         (dwarf2_ranges_process): Likewise.
14466         (dwarf2_get_pc_bounds): Likewise.
14467         (mark_common_block_symbol_computed): Likewise.
14468         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14469         (dwarf2_read_abbrevs): Update call.
14470         (read_partial_die): Use dwarf2_per_objfile from cu.
14471         (find_partial_die): Likewise.
14472         (fixup_partial_die): Likewise.
14473         (read_attribute_value): Likewise.
14474         (read_indirect_string_at_offset_from): Add objfile parameter.
14475         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14476         parameter.
14477         (read_indirect_string_from_dwz): Add objfile parameter.
14478         (read_indirect_string): Add objfile parameter.
14479         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14480         (read_addr_index): Use dwarf2_per_objfile from cu.
14481         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14482         call dw2_setup.
14483         (read_str_index): Use dwarf2_per_objfile from cu.
14484         (get_debug_line_section): Likewise.
14485         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14486         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14487         (new_symbol_full): Use dwarf2_per_objfile from cu.
14488         (build_error_marker_type): Likewise.
14489         (lookup_die_type): Likewise.
14490         (determine_prefix): Likewise.
14491         (follow_die_offset): Likewise.
14492         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14493         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14494         (dwarf2_fetch_die_type_sect_off): Likewise.
14495         (dwarf2_get_die_type): Likewise.
14496         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14497         (get_signatured_type): Likewise.
14498         (get_DW_AT_signature_type): Likewise.
14499         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14500         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14501         (cu_debug_loc_section): Likewise.
14502         (fill_in_loclist_baton): Likewise.
14503         (dwarf2_symbol_mark_computed): Likewise.
14504         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14505         dwarf2_per_objfile.
14506         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14507         parameter.
14508         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14509         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14510         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14511         (set_die_type): Use dwarf2_free_objfile from cu.
14512         (get_die_type_at_offset): Likewise.
14513         (dwarf2_per_objfile_free): Don't assign global variable.
14514         (debug_names) <constructor>: Add dwarf2_per_objfile
14515         parameter, update m_debugstrlookup construction.
14516         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14517         parameter.
14518         <m_dwarf2_per_objfile>: New field.
14519         <lookup>: Use m_dwarf2_per_objfile.
14520         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14521         (psyms_seen_size): Likewise.
14522         (write_gdbindex): Replace objfile parameter with
14523         dwarf2_per_objfile.
14524         (write_debug_names): Likewise.
14525         (write_psymtabs_to_index): Likewise.
14526         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14527         calls.
14528
14529 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14530
14531         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14532         <dwarf2_per_objfile>: New field.
14533         (struct dwarf2_per_cu_data) <objfile>: Remove.
14534         <dwarf2_per_objfile>: New field.
14535         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14536         of objfile.
14537         (create_signatured_type_table_from_index): Likewise.
14538         (create_debug_type_hash_table): Likewise.
14539         (fill_in_sig_entry_from_dwo_entry): Likewise.
14540         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14541         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14542         objfile.
14543         (create_partial_symtab): Access objfile through
14544         dwarf2_per_objfile.
14545         (process_psymtab_comp_unit_reader): Likewise.
14546         (read_comp_units_from_section): Likewise.
14547         (scan_partial_symbols): Likewise.
14548         (add_partial_symbol): Likewise.
14549         (add_partial_subprogram): Likewise.
14550         (peek_die_abbrev): Likewise.
14551         (fixup_go_packaging): Likewise.
14552         (process_full_comp_unit): Likewise.
14553         (process_full_type_unit): Likewise.
14554         (process_imported_unit_die): Likewise.
14555         (dwarf2_compute_name): Likewise.
14556         (dwarf2_physname): Likewise.
14557         (read_import_statement): Likewise.
14558         (create_cus_hash_table): Assign dwarf2_physname instead of
14559         objfile.
14560         (read_func_scope): Access objfile through dwarf2_per_objfile.
14561         (read_lexical_block_scope): Likewise.
14562         (read_call_site_scope): Likewise.
14563         (read_variable): Likewise.
14564         (dwarf2_rnglists_process): Likewise.
14565         (dwarf2_ranges_process): Likewise.
14566         (dwarf2_ranges_read): Likewise.
14567         (dwarf2_record_block_ranges): Likewise.
14568         (dwarf2_add_field): Likewise.
14569         (dwarf2_add_member_fn): Likewise.
14570         (read_structure_type): Likewise.
14571         (process_structure_scope): Likewise.
14572         (read_enumeration_type): Likewise.
14573         (read_array_type): Likewise.
14574         (read_common_block): Likewise.
14575         (read_namespace_type): Likewise.
14576         (read_namespace): Likewise.
14577         (read_module_type): Likewise.
14578         (read_tag_pointer_type): Likewise.
14579         (read_tag_ptr_to_member_type): Likewise.
14580         (read_tag_string_type): Likewise.
14581         (read_subroutine_type): Likewise.
14582         (read_typedef): Likewise.
14583         (read_base_type): Likewise.
14584         (attr_to_dynamic_prop): Likewise.
14585         (read_subrange_type): Likewise.
14586         (read_unspecified_type): Likewise.
14587         (load_partial_dies): Likewise.
14588         (read_partial_die): Likewise.
14589         (find_partial_die): Likewise.
14590         (guess_partial_die_structure_name): Likewise.
14591         (fixup_partial_die): Likewise.
14592         (read_attribute_value): Likewise.
14593         (read_addr_index_from_leb128): Likewise.
14594         (dwarf2_read_addr_index): Likewise.
14595         (dwarf2_string_attr): Likewise.
14596         (lnp_state_machine::check_line_address): Likewise.
14597         (dwarf_decode_lines_1): Likewise.
14598         (dwarf_decode_lines): Likewise.
14599         (dwarf2_start_symtab): Likewise.
14600         (var_decode_location): Likewise.
14601         (new_symbol_full): Likewise.
14602         (dwarf2_const_value_data): Likewise.
14603         (dwarf2_const_value_attr): Likewise.
14604         (dwarf2_const_value): Likewise.
14605         (die_type): Likewise.
14606         (die_containing_type): Likewise.
14607         (lookup_die_type): Likewise.
14608         (guess_full_die_structure_name): Likewise.
14609         (anonymous_struct_prefix): Likewise.
14610         (dwarf2_name): Likewise.
14611         (follow_die_ref_or_sig): Likewise.
14612         (follow_die_offset): Likewise.
14613         (follow_die_ref): Likewise.
14614         (dwarf2_fetch_die_loc_sect_off): Likewise.
14615         (dwarf2_fetch_constant_bytes): Likewise.
14616         (dwarf2_fetch_die_type_sect_off): Likewise.
14617         (dwarf2_get_die_type): Likewise.
14618         (follow_die_sig): Likewise.
14619         (decode_locdesc): Likewise.
14620         (dwarf2_per_cu_objfile): Likewise.
14621         (dwarf2_per_cu_text_offset): Likewise.
14622         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
14623         objfile.
14624         (set_die_type): Access objfile through
14625         dwarf2_per_objfile.
14626
14627 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14628
14629         * valprint.c (converted_character_d): Remove typedef.
14630         (DEF_VEC_O (converted_character_d)): Remove.
14631         (count_next_character): Use std::vector.
14632         (print_converted_chars_to_obstack): Likewise.
14633         (generic_printstr): Likewise.
14634
14635 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14636
14637         * xml-support.h (struct gdb_xml_value): Add constructor.
14638         <value>: Change type to unique_xmalloc_ptr.
14639         (gdb_xml_value_s): Remove typedef.
14640         (DEF_VEC_O (gdb_xml_value_s)): Remove.
14641         (gdb_xml_element_start_handler): Change parameter type to
14642         std::vector.
14643         (xml_find_attribute): Likewise.
14644         * xml-support.c (xml_find_attribute): Change parameter type to
14645         std::vector and adjust.
14646         (gdb_xml_values_cleanup): Remove.
14647         (gdb_xml_parser::start_element): Adjust to std::vector.
14648         (xinclude_start_include): Change paraeter type to std::vector
14649         and adjust.
14650         * btrace.c (check_xml_btrace_version): Likewise.
14651         (parse_xml_btrace_block): Likewise.
14652         (parse_xml_btrace_pt_config_cpu): Likewise.
14653         (parse_xml_btrace_pt): Likewise.
14654         (parse_xml_btrace_conf_bts): Likewise.
14655         (parse_xml_btrace_conf_pt): Likewise.
14656         * memory-map.c (memory_map_start_memory): Likewise.
14657         (memory_map_start_property): Likewise.
14658         * osdata.c (osdata_start_osdata): Likewise.
14659         (osdata_start_item): Likewise.
14660         (osdata_start_column): Likewise.
14661         * remote.c (start_thread): Likewise.
14662         * solib-aix.c (library_list_start_library): Likewise.
14663         (library_list_start_list): Likewise.
14664         * solib-svr4.c (library_list_start_library): Likewise.
14665         (svr4_library_list_start_list): Likewise.
14666         * solib-target.c (library_list_start_segment): Likewise.
14667         (library_list_start_section): Likewise.
14668         (library_list_start_library): Likewise.
14669         (library_list_start_list): Likewise.
14670         * tracepoint.c (traceframe_info_start_memory): Likewise.
14671         (traceframe_info_start_tvar): Likewise.
14672         * xml-syscall.c (syscall_start_syscall): Likewise.
14673         * xml-tdesc.c (tdesc_start_target): Likewise.
14674         (tdesc_start_feature): Likewise.
14675         (tdesc_start_reg): Likewise.
14676         (tdesc_start_union): Likewise.
14677         (tdesc_start_struct): Likewise.
14678         (tdesc_start_flags): Likewise.
14679         (tdesc_start_enum): Likewise.
14680         (tdesc_start_field): Likewise.
14681         (tdesc_start_enum_value): Likewise.
14682         (tdesc_start_vector): Likewise.
14683
14684 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14685
14686         * extension.h (struct xmethod_worker) <clone>: Remove.
14687         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
14688         Remove.
14689         (python_xmethod_worker::clone): Remove.
14690         * valops.c (find_overload_match): Use std::move instead of
14691         clone.
14692
14693 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14694
14695         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
14696         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
14697         <free_xmethod_worker_data>: Remove.
14698         <get_matching_xmethod_workers>: Chance VEC to std::vector.
14699         <get_xmethod_arg_types>: Remove.
14700         <get_xmethod_result_type>: Remove.
14701         <invoke_xmethod>: Remove.
14702         * extension.c (new_xmethod_worker): Remove.
14703         (clone_xmethod_worker): Remove.
14704         (get_matching_xmethod_workers): Return void, pass std::vector by
14705         pointer.
14706         (get_xmethod_arg_types): Rename to...
14707         (xmethod_worker::get_arg_types): ... this, and adjust.
14708         (get_xmethod_result_type): Rename to...
14709         (xmethod_worker::get_result_type): ... this, and adjust.
14710         (invoke_xmethod): Remove.
14711         (free_xmethod_worker): Remove.
14712         (free_xmethod_worker_vec): Remove.
14713         * extension.h (enum ext_lang_rc): Move here from
14714         extension-priv.h.
14715         (struct xmethod_worker): Add constructor and destructor.
14716         <data>: Remove.
14717         <value>: Remove.
14718         <invoke, clone, do_get_result_type, do_get_arg_types>: New
14719         virtual pure methods.
14720         <get_arg_types, get_result_type>: New methods.
14721         (xmethod_worker_ptr): Remove typedef.
14722         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
14723         (xmethod_worker_vec): Remove typedef.
14724         (xmethod_worker_up): New typedef.
14725         (invoke_xmethod): Remove.
14726         (clone_xmethod_worker): Remove.
14727         (free_xmethod_worker): Remove.
14728         (free_xmethod_worker_vec): Remove.
14729         (get_xmethod_arg_types): Remove.
14730         (get_xmethod_result_type): Remove.
14731         * valops.c (find_method_list): Use std::vector, don't use
14732         intermediate vector.
14733         (value_find_oload_method_list): Use std::vector.
14734         (find_overload_match): Use std::vector.
14735         (find_oload_champ): Use std::vector.
14736         * value.c (value_free): Use operator delete.
14737         (value_of_xmethod): Rename to...
14738         (value_from_xmethod): ... this.  Don't assign
14739         xmethod_worker::value, take rvalue-reference.
14740         (result_type_of_xmethod): Adjust.
14741         (call_xmethod): Adjust.
14742         * value.h: Include extension.h.
14743         (struct xmethod_worker): Don't forward-declare.
14744         (value_of_xmethod): Rename to...
14745         (value_from_xmethod): ... this, take rvalue-reference.
14746         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
14747         (struct python_xmethod_worker): ... this, add constructor and
14748         destructor.
14749         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
14750         (gdbpy_free_xmethod_worker_data): Rename to...
14751         (python_xmethod_worker::~python_xmethod_worker): ... this and
14752         adjust.
14753         (gdbpy_clone_xmethod_worker_data): Rename to...
14754         (python_xmethod_worker::clone): ... this and adjust.
14755         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
14756         temporary vector.
14757         (gdbpy_get_xmethod_arg_types): Rename to...
14758         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
14759         (gdbpy_get_xmethod_result_type): Rename to...
14760         (python_xmethod_worker::do_get_result_type): ... this and
14761         adjust.
14762         (gdbpy_invoke_xmethod): Rename to...
14763         (python_xmethod_worker::invoke): ... this and adjust.
14764         (new_python_xmethod_worker): Rename to...
14765         (python_xmethod_worker::python_xmethod_worker): ... this and
14766         adjust.
14767         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
14768         Remove.
14769         (gdbpy_free_xmethod_worker_data): Remove.
14770         (gdbpy_get_matching_xmethod_workers): Use std::vector.
14771         (gdbpy_get_xmethod_arg_types): Remove.
14772         (gdbpy_get_xmethod_result_type): Remove.
14773         (gdbpy_invoke_xmethod): Remove.
14774         * python/python.c (python_extension_ops): Remove obsolete
14775         callbacks.
14776
14777 2018-01-05  Pedro Alves  <palves@redhat.com>
14778
14779         PR gdb/18653
14780         * common/signals-state-save-restore.c
14781         (save_original_signals_state): New parameter 'quiet'.  Warn if we
14782         find a custom handler preinstalled, instead of internal erroring.
14783         But only warn if !quiet.
14784         * common/signals-state-save-restore.h
14785         (save_original_signals_state): New parameter 'quiet'.
14786         * main.c (captured_main_1): Move save_original_signals_state call
14787         after option handling, and pass QUIET.
14788
14789 2018-01-05  Pedro Alves  <palves@redhat.com>
14790
14791         * spu-tdep.c (spu_catch_start): Pass
14792         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
14793
14794 2018-01-05  Pedro Alves  <palves@redhat.com>
14795
14796         PR gdb/22670
14797         * ada-lang.c (literal_symbol_name_matcher): New function.
14798         (ada_get_symbol_name_matcher): Use it for
14799         symbol_name_match_type::SEARCH_NAME.
14800         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
14801         it down instead of assuming symbol_name_match_type::FULL.
14802         * block.h (block_lookup_symbol): New parameter 'match_type'.
14803         * c-valprint.c (print_unpacked_pointer): Use
14804         lookup_symbol_search_name instead of lookup_symbol.
14805         * compile/compile-object-load.c (get_out_value_type): Pass down
14806         symbol_name_match_type::SEARCH_NAME.
14807         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
14808         symbol_name_match_type::FULL.
14809         * cp-support.c (cp_get_symbol_name_matcher): Handle
14810         symbol_name_match_type::SEARCH_NAME.
14811         * infrun.c (insert_exception_resume_breakpoint): Use
14812         lookup_symbol_search_name.
14813         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
14814         * psymtab.c (maintenance_check_psymtabs): Use
14815         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
14816         * stack.c (print_frame_args): Use lookup_symbol_search_name and
14817         SYMBOL_SEARCH_NAME.
14818         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
14819         if symbol_name_match_type::SEARCH_NAME.
14820         (lookup_symbol_in_language): Pass down
14821         symbol_name_match_type::FULL.
14822         (lookup_symbol_search_name): New.
14823         (lookup_language_this): Pass down
14824         symbol_name_match_type::SEARCH_NAME.
14825         (lookup_symbol_aux, lookup_local_symbol): New parameter
14826         'match_type'.  Pass it down.
14827         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
14828         (lookup_symbol_search_name): New declaration.
14829         (lookup_symbol_in_block): New 'match_type' parameter.
14830
14831 2018-01-05  Pedro Alves  <palves@redhat.com>
14832
14833         PR gdb/22670
14834         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
14835         ada_lookup_symbol.
14836         (ada_lookup_symbol): Reimplement in terms of
14837         ada_lookup_symbol_list, bits factored out from
14838         ada_lookup_encoded_symbol.
14839
14840 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14841
14842         * ada-exp.y (write_object_renaming): When subscripting an array
14843         using a symbol as the index, pass the block in call to
14844         ada_lookup_encoded_symbol when looking that symbol up.
14845
14846 2018-01-05  Jerome Guitton  <guitton@adacore.com>
14847
14848         * ada-lang.c (ada_array_length): Use ada_index_type instead of
14849         TYPE_INDEX_TYPE.
14850
14851 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14852
14853         * ada-lang.c (ada_to_fixed_value_create): Add handling of
14854         the case where VALUE_LVAL (val0) is not lval_memory.
14855
14856 2018-01-05  Xavier Roirand  <roirand@adacore.com>
14857
14858         * ada-valprint.c (print_optional_low_bound): Handle
14859         character-indexed array printing like boolean-indexed array
14860         printing.
14861
14862 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14863
14864         * NEWS: Create a new section for the next release branch.
14865         Rename the section of the current branch, now that it has
14866         been cut.
14867
14868 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14869
14870         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
14871         * version.in: Bump version to 8.1.50.DATE-git.
14872
14873 2018-01-03  Xavier Roirand  <roirand@adacore.com>
14874
14875         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
14876         Add field.
14877         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
14878         Add field.
14879         (default_exception_support_info) <catch_handlers_sym>: Add field.
14880         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
14881         (ada_exception_name_addr_1): Add "catch handlers" handling.
14882         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
14883         Update all callers.
14884         (create_excep_cond_exprs) <ex>: Add parameter.
14885         (re_set_exception): Update create_excep_cond_exprs call.
14886         (print_it_exception, print_one_exception, print_mention_exception)
14887         (print_recreate_exception): Add "catch handler" handling.
14888         (allocate_location_catch_handlers, re_set_catch_handlers)
14889         (check_status_catch_handlers, print_it_catch_handlers)
14890         (print_one_catch_handlers, print_mention_catch_handlers)
14891         (print_recreate_catch_handlers): New function.
14892         (catch_handlers_breakpoint_ops): New variable.
14893         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
14894         Add parameter.  Add "catch handler" handling.
14895         (ada_exception_sym_name, ada_exception_breakpoint_ops):
14896         Add "catch handler" handling.
14897         (ada_exception_catchpoint_cond_string): Add "catch handler"
14898         handling.
14899         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
14900         call.
14901         (catch_ada_handlers_command): New function.
14902         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
14903         operations structure.
14904         (_initialize_ada_language): Add "catch handlers" command entry.
14905         * NEWS: Document "catch handlers" feature.
14906
14907 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14908
14909         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
14910         account when creating the array type of the slice.
14911         (ada_value_slice): Likewise.
14912
14913 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14914
14915         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
14916         New enum value.
14917         (create_array_type_with_stride): Add byte_stride_prop parameter.
14918         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
14919         New parameter.  Update all callers in this file.
14920         (array_type_has_dynamic_stride): New function.
14921         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
14922         of arrays with dynamic byte strides.
14923         * dwarf2read.c (read_array_type): Add support for dynamic
14924         DW_AT_byte_stride attributes.
14925
14926 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14927
14928         * dwarf2read.c (read_unspecified_type): Treat
14929         DW_TAG_enumeration_type DIEs from Ada units as stubs.
14930
14931 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14932
14933         Update copyright year range in all GDB files.
14934
14935 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
14936
14937         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
14938         and gdb/testsuite/gdb.base/step-line.c.
14939
14940 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14941
14942         * copyright.py (main): Dump the contents of
14943         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
14944         even if BY_HAND is empty.
14945
14946 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14947
14948         * top.c (print_gdb_version): Update Copyright year in version
14949         message.
14950
14951 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14952
14953         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
14954
14955 For older changes see ChangeLog-2017.
14956 \f
14957 Local Variables:
14958 mode: change-log
14959 left-margin: 8
14960 fill-column: 74
14961 version-control: never
14962 coding: utf-8
14963 End: