[PowerPC] Fix indentation in arch/ppc-linux-common.c
[external/binutils.git] / gdb / ChangeLog
1 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2
3         * arch/ppc-linux-common.c (ppc_linux_match_description):
4         Parenthesize tdesc assignements and indent them properly.
5
6 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
7
8         * ppc-linux-nat.c (fetch_register): Change if statement to else
9         if.
10         (store_register): Likewise.
11
12 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
13
14         * rs6000-tdep.c: Remove reggroups.h include.
15         (rs6000_pseudo_register_reggroup_p): Remove.
16         (rs6000_gdbarch_init): Remove call to
17         set_tdesc_pseudo_register_reggroup_p.
18
19 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
20
21         * reggroups.c (default_register_reggroup_p): Return true for
22         decfloat registers and float_reggroup.
23
24 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
25
26         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
27         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
28         ppc_linux_collect_vrregset by regcache_collect_regset.
29
30 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
31
32         * linux-tdep.c (linux_collect_regset_section_cb): Use
33         std::vector<gdb_byte> instead of char * and malloc for buf.
34         Remove xfree.
35
36 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
37
38         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
39         symtab_start instead of always using language_unknown.
40
41 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
42
43         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
44         READ_P parameter, catch and ignore register access errors from
45         either the old or new MISA location.
46         (riscv_has_feature): Update call to riscv_read_misa_reg.
47
48 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
49
50         * python/py-function.c (convert_values_to_python): Return
51         gdbpy_ref<>.  Add header comment.
52         (fnpy_call): Adjust.
53
54 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
55
56         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
57         (cmdpy_completer_handle_brkchars): Adjust.
58         (cmdpy_completer): Adjust.
59
60 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
61
62         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
63         Pass correct regnum to raw_supply_zeroed.
64
65 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
66
67         * regcache.c (cooked_read_test): Add CSKY to the list of
68         architectures with a save_reggroup
69
70 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
71
72         PR gdb/23368
73         * infrun.c (follow_exec): In the follow_exec_mode_new case,
74         transfer terminal state from old new new inferior.
75         * terminal.h (swap_terminal_info): New function.
76         * inflow.c (swap_terminal_info): New function.
77
78 2018-10-23  Tom Tromey  <tom@tromey.com>
79
80         * record-btrace.c (get_thread_current_frame_id): Rename from
81         get_thread_current_frame.  Return a frame_id.
82         (record_btrace_start_replaying): Update.
83
84 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
85
86         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
87         for CSRs.
88
89 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
90
91         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
92         have_nonsteppable_watchpoint attribute to 1.
93
94 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
95
96         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
97         register names.
98         (struct register_alias): Rename to...
99         (struct riscv_register_alias): ...this, and update comment.
100         (riscv_register_aliases): Update type, and alias names.  Remove
101         CSR names from this list.
102         (riscv_register_name): Use riscv_gdb_reg_names for int and float
103         register names.  Add an extra assertion.
104         (riscv_is_regnum_a_named_csr): New function.
105         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
106
107 2018-10-22  Jim Wilson  <jimw@sifive.com>
108
109         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
110         FP reg smaller than FP reg size, and fill with -1 instead of 0.
111
112         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
113         (riscv_register_type): Use them.
114         (riscv_print_one_register_info): Handle union of floats same as float.
115         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
116         riscv_fpreg_q_type fields.
117
118 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
119
120         * gdbarch.sh (gdbarch_num_cooked_regs): New.
121         * gdbarch.h: Re-generate.
122         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
123         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
124         * eval.c (evaluate_subexp_standard): Likewise.
125         * findvar.c (value_of_register): Likewise.
126         (value_of_register_lazy): Likewise.
127         (address_from_register): Likewise.
128         * frame.c (get_frame_register_bytes): Likewise.
129         * gdbarch-selftests.c (register_to_value_test): Likewise.
130         * h8300-tdep.c (h8300_register_type): Likewise.
131         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
132         (i386_svr4_reg_to_regnum): Likewise.
133         * infcmd.c (default_print_registers_info): Likewise.
134         (registers_info): Likewise.
135         (print_vector_info): Likewise.
136         (default_print_float_info): Likewise.
137         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
138         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
139         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
140         (mi_cmd_data_list_changed_registers): Likewise.
141         (mi_cmd_data_list_register_values): Likewise.
142         (mi_cmd_data_write_register_values): Likewise.
143         (mi_cmd_trace_frame_collected): Likewise.
144         * mips-tdep.c (print_gp_register_row): Likewise.
145         (mips_print_registers_info): Likewise.
146         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
147         * regcache.c (init_regcache_descr): Likewise.
148         (register_size): Likewise.
149         (register_dump::dump): Likewise.
150         (cooked_read_test): Likewise.
151         (cooked_write_test): Likewise.
152         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
153         (rs6000_gdbarch_init): Likewise.
154         * stabsread.c (stab_reg_to_regnum): Likewise.
155         * stack.c (info_frame_command): Likewise.
156         * target-descriptions.c (tdesc_register_name): Likewise.
157         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
158         * tui/tui-regs.c (tui_show_register_group): Likewise.
159         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
160         (user_reg_map_regnum_to_name): Likewise.
161         (value_of_user_reg): Likewise.
162         (maintenance_print_user_registers): Likewise.
163         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
164         (xtensa_register_name): Likewise.
165         (xtensa_register_type): Likewise.
166         (xtensa_reg_to_regnum): Likewise.
167         (xtensa_pseudo_register_read): Likewise.
168         (xtensa_pseudo_register_write): Likewise.
169
170 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
171
172         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
173         correctly-sized buffer with raw_read.
174         (amd64_pseudo_register_write): Use correctly-sized buffer for
175         raw_read/raw_write.
176
177 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
178
179         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
180         in add_prefix_cmd of set print type.
181
182 2018-10-19  Tom Tromey  <tom@tromey.com>
183
184         PR tui/18388:
185         * NEWS: Mention tabset deprecation.
186         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
187         (update_tab_width): New function.
188         (tui_set_tab_width, tui_show_tab_width): New functions.
189         (tui_set_tab_width_command): Use update_tab_width.
190         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
191         Add new "set tui tab-width" command.
192         * tui/tui-source.c (tui_set_source_content): Update.
193         * tui/tui-disasm.c (tui_set_disassem_content): Update.
194         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
195         Don't declare.
196         (tui_tab_width): Declare.
197         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
198         (tui_set_default_tab_len): Remove.
199
200 2018-10-19  Tom Tromey  <tom@tromey.com>
201
202         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
203         (key_is_backspace, tui_getc): Don't declare.
204         * tui/tui-io.c (key_is_start_sequence): Now static.
205         (key_is_end_sequence, key_is_backspace): Remove.
206         (tui_getc): Now static.
207
208 2018-10-19  Tom Tromey  <tom@tromey.com>
209
210         * symfile.c (reread_symbols): Clear "static_links".
211
212 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
213
214         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
215         define.
216         (aarch64_linux_sigframe_init): Extra boundary checks.
217
218 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
219
220         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
221         the possibly non-existent tdesc type 'vec128', but the type of raw
222         register v16 instead.
223
224 2018-10-19  Gary Benson <gbenson@redhat.com>
225
226         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
227
228 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
229
230         PR cli/23785
231         * cli/cli-dump.c (restore_binary_file): Check if "file" is
232         NULL.
233
234 2018-10-17  Paul Koning  <paul_koning@dell.com>
235
236         * charset.c (convert_between_encodings): Fix unsigned overflow.
237
238 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
239
240         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
241         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
242         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
243         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
244         New functions.
245         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
246         and fbsd_info_proc_mappings_header.
247         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
248         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
249         New.
250
251 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
252
253         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
254         Solaris Maintainer.
255
256 2018-10-15  Tom Tromey  <tom@tromey.com>
257
258         * tui/tui.c (strcat_to_buf): Remove casts.
259         * tui/tui-winsource.c (tui_show_source_line)
260         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
261         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
262         * tui/tui-windata.c (tui_first_data_item_displayed)
263         (tui_delete_data_content_windows, tui_erase_data_content)
264         (tui_display_all_data, tui_display_data_from)
265         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
266         * tui/tui-win.c (tui_set_win_height)
267         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
268         casts.
269         * tui/tui-win.c (tui_resize_all): Remove casts.
270         (tui_scroll_backward_command, tui_set_focus)
271         (tui_set_tab_width_command): Likewise.
272         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
273         * tui/tui-regs.c (tui_show_register_group): Remove cast.
274         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
275         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
276         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
277         Remove casts.
278
279 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
280
281         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
282         AArch64/ARM maintainer.
283
284 2018-10-11  Gary Benson <gbenson@redhat.com>
285
286         * interps.h (interp::m_name): Make private and mutable.
287         * interps.c (interp::~interp): Free m_name.
288
289 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
290             Simon Marchi <simark@simark.ca>
291
292         * README (`configure' options): Add documentation for new
293         "--enable-unit-tests" option.
294         * acinclude.m4: Include "selftest.m4".
295         * configure: Regenerate.
296         * configure.ac: Use "GDB_AC_SELFTEST".
297         * maint.c (maintenance_selftest): Update message informing
298         that selftests have been disabled.
299         (maintenance_info_selftests): Likewise.
300         * selftest.m4: New file.
301
302 2018-10-10  Gary Benson <gbenson@redhat.com>
303
304         * remote.c (remote_target::remote_send_printf): Add
305         missing va_end found by Coverity.
306
307 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
308
309         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
310
311 2018-10-09  Tom Tromey  <tom@tromey.com>
312
313         * configure: Rebuild.
314         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
315         * NEWS: Update --enable-ubsan documentation.
316
317 2018-10-09  Gary Benson <gbenson@redhat.com>
318
319         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
320         found by Coverity.
321
322 2018-10-08  Tom Tromey  <tom@tromey.com>
323
324         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
325         variable.
326         (riscv_fbsd_init_abi): Likewise.
327
328 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
329         * valops.c (value_struct_elt_for_reference): Rename local variable
330         to work around the shadowing a previous local warning.
331
332 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
333
334         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
335         * NEWS: Mention new FreeBSD/riscv native configuration.
336         * configure.host: Add riscv*-*-freebsd*.
337         * configure.nat: Likewise.
338         * riscv-fbsd-nat.c: New file.
339
340 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
341
342         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
343         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
344         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
345         * NEWS: Mention new FreeBSD/riscv target.
346         * configure.tgt: Add riscv*-*-freebsd*.
347         * riscv-fbsd-tdep.c: New file.
348         * riscv-fbsd-tdep.h: New file.
349
350 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
351
352         * regcache.h (struct regcache_map_entry): Note that this type can
353         be used with traditional frame caches.
354         * trad-frame.c (trad_frame_set_reg_regmap): New.
355         * trad-frame.h (trad_frame_set_reg_regmap): New.
356
357 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
358
359         PR c++/16841
360         * valops.c (get_virtual_base_offset): New function.
361         (value_struct_elt_for_reference): Use it to get virtual base offset
362         and add it in calculating class member address.
363
364 2018-10-08   John Darrington <john@darrington.wattle.id.au>
365
366     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
367       (check_producer): Check if the producer is codewarrior.
368       (producer_is_codewarrior): New function.
369       (lnp_state_machine::record_line): Ignore is_stmt flag for records
370        produced by codewarrior.
371       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
372
373 2018-10-06  Tom Tromey  <tom@tromey.com>
374
375         PR python/19399:
376         * python/py-inferior.c: Add "architecture" entry.
377         (infpy_architecture): New function.
378
379 2018-10-06  Tom Tromey  <tom@tromey.com>
380
381         PR python/21765:
382         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
383         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
384         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
385         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
386
387 2018-10-06  Tom Tromey  <tom@tromey.com>
388
389         PR build/17077:
390         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
391         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
392         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
393         #include.
394
395 2018-10-06  Tom Tromey  <tom@tromey.com>
396
397         * python/py-breakpoint.c (bppy_get_location): Handle a
398         bp_breakpoint without a location.
399
400 2018-10-06  Tom Tromey  <tom@tromey.com>
401
402         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
403         (_RegEx): Reformat help text.
404         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
405         (AnyCallerIs, AnyCallerMatches): Reformat help text.
406         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
407         text.
408         * python/lib/gdb/command/xmethods.py (InfoXMethod)
409         (EnableXMethod, DisableXMethod): Remove help indentation.
410         Capitalize meta-syntactic variables.
411         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
412         (EnableUnwinder, DisableUnwinder): Remove help indentation.
413         Capitalize meta-syntactic variables.
414         * python/lib/gdb/command/explore.py (ExploreCommand)
415         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
416         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
417         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
418         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
419         Remove help indentation.
420         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
421         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
422         (DisableFrameFilter, SetFrameFilterPriority)
423         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
424
425 2018-10-06  Tom Tromey  <tom@tromey.com>
426
427         PR tui/28819:
428         * tui/tui-io.c (gdb_wgetch): New function.
429         (tui_mld_getc, tui_getc): Use it.
430
431 2018-10-05  Tom Tromey  <tom@tromey.com>
432
433         * sol-thread.c (sol_thread_target::wait): Rename inner
434         "save_ptid".
435
436 2018-10-04  Tom Tromey  <tom@tromey.com>
437
438         * configure: Rebuild.
439         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
440
441 2018-10-04  Tom Tromey  <tom@tromey.com>
442
443         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
444         declaration of "block".
445
446 2018-10-04  Tom Tromey  <tom@tromey.com>
447
448         * common/filestuff.c (fdwalk): Remove inner declaration of
449         "result".
450
451 2018-10-04  Tom Tromey  <tom@tromey.com>
452
453         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
454         "structs_addr" and hoist declaration.
455
456 2018-10-04  Tom Tromey  <tom@tromey.com>
457
458         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
459         variable "size".
460
461 2018-10-04  Tom Tromey  <tom@tromey.com>
462
463         * mdebugread.c (parse_partial_symbols): Use std::string.
464
465 2018-10-04  Tom Tromey  <tom@tromey.com>
466
467         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
468         * p-valprint.c (pascal_val_print): Split inner "i" variable.
469         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
470         header.
471         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
472         more inner scope.
473         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
474         * varobj.c (varobj_update): Rename inner "newobj",
475         "type_changed".
476         * valprint.c (generic_emit_char): Rename inner "buf".
477         * valops.c (find_overload_match): Rename inner "temp".
478         (value_struct_elt_for_reference): Declare "v" in more inner
479         scope.
480         * v850-tdep.c (v850_push_dummy_call): Rename "len".
481         * unittests/array-view-selftests.c (run_tests): Rename inner
482         "vec".
483         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
484         header.
485         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
486         "tsv" in more inner scope.
487         (print_one_static_tracepoint_marker): Rename inner
488         "tuple_emitter".
489         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
490         (tic6x_push_dummy_call): Don't redeclare "addr".
491         * target-float.c: Declare "dto" lower.
492         * symtab.c (lookup_local_symbol): Rename inner "sym".
493         (find_pc_sect_line): Rename inner "pc".
494         * stack.c (print_frame): Don't redeclare "gdbarch".
495         (return_command): Rename inner "gdbarch".
496         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
497         "sp".
498         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
499         header.
500         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
501         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
502         scope.
503         * remote.c (remote_target::update_thread_list): Don't redeclare
504         "tp".
505         (remote_target::process_initial_stop_replies): Rename inner
506         "thread".
507         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
508         (remote_target::wait_as): Don't redeclare "stop_reply".
509         (remote_target::get_thread_local_address): Rename inner
510         "result".
511         (remote_target::get_tib_address): Likewise.
512
513         * regcache.c (cooked_read_test): Rename "regnum".
514         * record-btrace.c (cmd_record_btrace_start): Rename inner
515         "exception".
516         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
517         loop header.
518         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
519         header.
520         (ppu2spu_sniffer): Rename inner "buf".
521         * parse.c (operator_check_standard): Rename inner "type",
522         "objfile".
523         * p-valprint.c (pascal_val_print): Introduce new scope for
524         "low_bound", "high_bound".
525         * p-exp.y (yylex): Declare "i" in loop header.
526         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
527         Lower declaration of "s".
528         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
529         header.
530         (nios2_push_dummy_call): Rename "len".
531         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
532         "buf".
533         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
534         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
535         (linux_xfer_osdata_modules): Likewise.
536         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
537         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
538         (mips_o64_push_dummy_call): Likewise.
539         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
540         "op".
541         * mi/mi-main.c (list_available_thread_groups): Rename inner
542         "tuple_emitter".
543         (mi_cmd_data_read_memory): Rename inner "opts".
544         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
545         "tuple_emitter".
546         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
547         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
548         more inner scope.
549         (parse_partial_symbols): Rename inner "pst", "p", "name"
550         * main.c (captured_main_1): Rename inner "i"s.
551         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
552         "oso2".
553         * linux-tdep.c (linux_info_proc): Rename inner "filename".
554         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
555         * infrun.c (handle_no_resumed): Don't redeclare "thread".
556         (handle_signal_stop): Rename inner "gdbarch".
557         (handle_command): Declare "signum" in loop header.
558         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
559         "status".
560         (examine_prologue): Rename inner "sol" and "sof".
561         (ia64_extract_return_value): Rename inner "val".  Declare another
562         "val" in a more inner scope.
563         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
564         inner scope.
565         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
566         "except".
567         * findvar.c (default_read_var_value): Don't redeclare "addr".
568         * f-exp.y (yylex): Declare "i" in loop header.
569         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
570         Rename inner "type", "expect_type".
571         (evaluate_subexp_for_sizeof): Rename inner "pc".
572         * elfread.c (elf_symfile_read): Rename inner "abfd".
573         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
574         "bytes_read".
575         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
576         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
577         (dwarf_decode_line_header): Rename inner "lh".
578         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
579         "offset".  Declare "i" in loop header.
580         (disassemble_dwarf_expression): Rename inner "addr_size".
581         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
582         inner "result".
583         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
584         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
585         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
586         "inner_list_emitter".
587         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
588         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
589         declaration in a block.
590         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
591         * cp-valprint.c (cp_print_value_fields): Don't redeclare
592         "obstack_final_size".
593         * cp-support.c (inspect_type): Declare "i" in loop header.
594         * compile/compile.c (compile_instance::insert_symbol_error):
595         Rename inner "e".
596         * common/agent.c (agent_run_command): Remove inner "ret"
597         declaration.
598         * coffread.c (coff_symfile_read): Rename inner "name".
599         (coff_symfile_read): Rename inner "abfd".
600         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
601         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
602         "high".
603         * c-exp.y (lex_one_token): Move "len" declaration lower.
604         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
605         "gdbarch".
606         (create_exception_master_breakpoint): Likewise.  Don't redeclare
607         "b".
608         (watch_command_1): Declare "mark" later.
609         (clear_command): Don't shadow "a" or "b".
610         (delete_command): Rename inner "b".
611         (delete_trace_command): Likewise.
612         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
613         "op".
614         (arm_gdbarch_init): Remove inner "e_flags".
615         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
616         "offset" in inner blocks.
617
618 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
619
620         * dwarf-index-write.c (file_write): Don't write if the vector is
621         empty.
622
623 2018-10-05  Tom de Vries  <tdevries@suse.de>
624
625         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
626         PyArg_ParseTuple call.
627
628 2018-10-05  Tom de Vries  <tdevries@suse.de>
629
630         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
631         PyArg_ParseTuple call.
632
633 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
634
635         * psymtab.c (recursively_search_psymtabs): Reformat parameters
636         to avoid exceeding 80 characters per line limit.
637
638 2018-10-04  Tom Tromey  <tom@tromey.com>
639
640         * symfile.c (syms_from_objfile_1, finish_new_objfile)
641         (reread_symbols): Update.
642         * complaints.h (clear_complaints): Remove argument.
643         * complaints.c (enum complaint_series): Remove.
644         (series): Remove global.
645         (complaint_internal): Update.
646         (clear_complaints): Remove argument.
647
648 2018-10-04  Tom Tromey  <tom@tromey.com>
649
650         * symfile.c (symbol_file_add_with_addrs): Do not print "no
651         debugging symbols" message if there is a separate debug objfile.
652
653 2018-10-04  Tom Tromey  <tom@tromey.com>
654
655         PR cli/19551:
656         * symfile.c (symbol_file_add_with_addrs): Update output.
657         * psymtab.c (require_partial_symbols): Update output.
658
659 2018-10-04  Tom Tromey  <tom@tromey.com>
660
661         PR cli/22234:
662         * complaints.c: Emit \n.
663
664 2018-10-04  Tom Tromey  <tom@tromey.com>
665
666         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
667         (separate_debug_file_exists, find_separate_debug_file)
668         (add_symbol_file_command, reread_symbols, allocate_symtab)
669         (allocate_compunit_symtab): Use filtered printing, not
670         unfiltered.
671         * psymtab.c (require_partial_symbols, dump_psymtab)
672         (allocate_psymtab): Use filtered printing, not unfiltered.
673
674 2018-10-04  Tom Tromey  <tom@tromey.com>
675
676         * complaints.c (complaint_internal): Correctly check complaint
677         count.
678
679 2018-10-04  Tom Tromey  <tom@tromey.com>
680
681         * complaints.h (struct complaints): Remove declaration.
682         * complaints.c (clear_complaints): Remove an unused variable.
683
684 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
685
686         * MAINTAINERS (Write After Approval): Add self.
687
688 2018-10-03  Tom Tromey  <tom@tromey.com>
689
690         * guile/scm-value.c (gdbscm_value_to_string): Initialize
691         "buffer_contents".
692         * coffread.c (coff_symtab_read): Initialize "newobj".
693
694 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
695
696         * dwarf2read.c (read_func_scope): Remove struct keyword in
697         range-based for.
698
699 2018-10-03  Tom Tromey  <tom@tromey.com>
700
701         * README: Mention --enable-ubsan.
702         * NEWS: Mention --enable-ubsan.
703         * acinclude.m4: Include sanitize.m4.
704         * configure: Rebuild.
705         * configure.ac: Call AM_GDB_UBSAN.
706         * sanitize.m4: New file.
707
708 2018-10-03  Tom Tromey  <tom@tromey.com>
709
710         * expression.h (enum exp_opcode): Use uint8_t as base type.
711         * expprint.c (op_name): Handle invalid opcodes.
712
713 2018-10-03  Tom Tromey  <tom@tromey.com>
714
715         * parse.c (prefixify_expression): Add assert.
716         (parse_exp_in_context_1): Throw exception if the expression is
717         empty.
718
719 2018-10-03  Tom Tromey  <tom@tromey.com>
720
721         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
722
723 2018-10-03  Tom Tromey  <tom@tromey.com>
724
725         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
726
727 2018-10-03  Tom Tromey  <tom@tromey.com>
728
729         * dwarf2read.c (read_subrange_type): Make "negative_mask"
730         unsigned.
731
732 2018-10-03  Tom Tromey  <tom@tromey.com>
733
734         * findvar.c (extract_integer): Do work in an unsigned type.
735
736 2018-10-03  Tom Tromey  <tom@tromey.com>
737
738         * common/enum-flags.h (enum_flags::operator~): Add static assert.
739         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
740         base type.
741         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
742         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
743         type.
744         * c-lang.h (enum c_string_type_values): Use unsigned as base
745         type.
746         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
747
748 2018-10-03  Tom Tromey  <tom@tromey.com>
749
750         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
751         <~dwarf2_frame_state_reg_info>: Update.
752         <dwarf2_frame_state_reg_info>: Update.
753         <alloc_regs>: Add assertion.  Update.
754         <reg>: Now a std::vector.
755         <num_regs>: Remove.
756         <swap>: Update.
757         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
758         (execute_cfa_program_test, dwarf2_frame_cache): Update.
759
760 2018-10-03  Tom Tromey  <tom@tromey.com>
761
762         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
763
764 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
765
766         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
767
768 2018-10-02  Tom Tromey  <tom@tromey.com>
769
770         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
771
772 2018-10-02  John Darrington <john@darrington.wattle.id.au>
773
774         * NEWS: Mention changed commands.
775         * ser-uds.c: New file.
776         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
777         * configure: Regenerate.
778         * Makefile.in: Add new file.
779         * serial.c (serial_open): Check if filename is a socket
780           and lookup the appropriate interface accordingly.
781
782 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
783
784         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
785         define.
786         (AARCH64_EXTRA_MAGIC): Likewise.
787         (AARCH64_FPSIMD_MAGIC): Likewise.
788         (AARCH64_SVE_MAGIC): Likewise.
789         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
790         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
791         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
792         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
793         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
794         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
795         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
796         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
797         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
798         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
799         (read_aarch64_ctx): Add function.
800         (aarch64_linux_sigframe_init): Detect FP registers.
801
802 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
803
804         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
805         (AARCH64_D0_REGNUM): Likewise.
806         (AARCH64_S0_REGNUM): Likewise.
807         (AARCH64_H0_REGNUM): Likewise.
808         (AARCH64_B0_REGNUM): Likewise.
809         (AARCH64_SVE_V0_REGNUM): Likewise.
810         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
811         (AARCH64_D0_REGNUM): Likewise.
812         (AARCH64_S0_REGNUM): Likewise.
813         (AARCH64_H0_REGNUM): Likewise.
814         (AARCH64_B0_REGNUM): Likewise.
815         (AARCH64_SVE_V0_REGNUM): Likewise.
816
817 2018-10-01  Gary Benson <gbenson@redhat.com>
818
819         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
820         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
821         prfpregset_t instead of gdb_prfpregset_t.
822         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
823         * configure, config.in: Rebuild.
824
825 2018-10-01  Gary Benson <gbenson@redhat.com>
826
827         * common/gdb_proc_service.h: New file, factored out from...
828         * gdb_proc_service.h: Moved common code to the above file.
829         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
830
831 2018-10-01  Gary Benson <gbenson@redhat.com>
832
833         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
834         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
835
836 2018-10-01  Gary Benson <gbenson@redhat.com>
837
838         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
839         (AC_CHECK_HEADERS): Check for linux/elf.h.
840         * configure, config.in: Rebuild.
841         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
842         doesn't define elf_fpregset_t.
843
844 2018-10-01  Gary Benson <gbenson@redhat.com>
845
846         * gdb_proc_service.h: Whitespace change.
847
848 2018-10-01  Tom Tromey  <tom@tromey.com>
849
850         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
851         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
852         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
853
854 2018-10-01  Tom Tromey  <tom@tromey.com>
855
856         * README: Minor change.
857
858 2018-09-30  Pedro Alves  <palves@redhat.com>
859
860         * darwin-nat-info.c (darwin_debug_regions_recurse)
861         (info_mach_exceptions_command): Remove unused local variables.
862         * darwin-nat.c (darwin_decode_notify_message)
863         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
864         (darwin_stop_inferior, darwin_setup_exceptions)
865         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
866         (darwin_nat_target::attach, darwin_nat_target::detach)
867         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
868         local variables.
869         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
870         variables.
871
872 2018-09-29  Tom Tromey  <tom@tromey.com>
873
874         * README: Remove some leftover text.
875
876 2018-09-29  Tom Tromey  <tom@tromey.com>
877
878         * PROBLEMS: Rewrite.
879         * README: Update.
880
881 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
882
883         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
884         case with explicit breakpoint kind.
885         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
886         'additional_info' and related logic.
887         (riscv_debug_breakpoints): New variable.
888         (riscv_breakpoint_kind_from_pc): Use the length of the existing
889         instruction to determine the breakpoint kind.
890         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
891         flag.  Update description of 'set/show riscv
892         use-compressed-breakpoints' flag.
893
894 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
895
896         (NEWS): Mention changes to frame related commands.
897         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
898         (add_prefix_cmd_suppress_notification): New function.
899         (add_com_suppress_notification): Call
900         add_cmd_suppress_notification.
901         * command.h (add_cmd_suppress_notification): Declare.
902         (add_prefix_cmd_suppress_notification): Declare.
903         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
904         (parse_frame_specification): Moved from stack.c, with
905         simplification to handle a single argument.
906         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
907         switch to the selected frame.  Add a header comment.
908         * stack.c: Remove 'safe-ctype.h' include.
909         (find_frame_for_function): Add declaration.
910         (find_frame_for_address): New function.
911         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
912         (frame_selection_by_function_completer): New function.
913         (info_frame_command): Rename to...
914         (info_frame_command_core): ...this, and update parameter types.
915         (select_frame_command): Rename to...
916         (select_frame_command_core): ...this, and update parameter types.
917         (frame_command): Rename to...
918         (frame_command_core): ...this, and update parameter types.
919         (class frame_command_helper): New class to wrap implementations of
920         frame related sub-commands.
921         (frame_apply_cmd_list): New static global.
922         (frame_cmd_list): Make static.
923         (select_frame_cmd_list): New global for sub-commands.
924         (info_frame_cmd_list): New global for sub-commands.
925         (_initialize_stack): Register sub-commands for 'frame',
926         'select-frame', and 'info frame'.  Update 'frame apply' commands
927         to use frame_apply_cmd_list.  Move function local static
928         frame_apply_list to file static frame_apply_cmd_list for
929         consistency.
930         * stack.h (select_frame_command): Delete declarationn.
931         (select_frame_for_mi): Declare new function.
932
933 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
934
935         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
936         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
937         and NOP.
938
939 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
940
941         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
942
943 2018-09-26  Tom Tromey  <tom@tromey.com>
944
945         * valops.c (auto_abandon): Remove dead code.
946
947 2018-09-26  Tom Tromey  <tom@tromey.com>
948
949         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
950
951 2018-09-24  Tom Tromey  <tom@tromey.com>
952
953         * common/pathstuff.c (get_standard_cache_dir): Make
954         "xdg_cache_home" and "home" const.
955         * top.c (init_history): Make "tmpenv" const.
956         * main.c (get_init_files): Make "homedir" const.
957
958 2018-09-23  Tom Tromey  <tom@tromey.com>
959
960         PR python/18852:
961         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
962
963 2018-09-23  Tom Tromey  <tom@tromey.com>
964
965         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
966         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
967         * python/python-internal.h (gdbpy_handle_exception): Declare.
968         * python/py-utils.c (gdbpy_handle_exception): New function.
969
970 2018-09-23  Tom Tromey  <tom@tromey.com>
971
972         PR python/17284:
973         * python/py-type.c (typy_template_argument): Check for negative
974         argument number.
975
976 2018-09-23  Tom Tromey  <tom@tromey.com>
977
978         PR python/14062:
979         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
980
981 2018-09-23  Tom Tromey  <tom@tromey.com>
982
983         PR python/18170:
984         * python/py-value.c (valpy_int): Allow conversion from pointer
985         type.
986
987 2018-09-23  Tom Tromey  <tom@tromey.com>
988
989         PR python/20126:
990         * python/py-value.c (valpy_int): Respect type sign.
991
992 2018-09-23  Tom Tromey  <tom@tromey.com>
993
994         PR python/18352;
995         * python/py-value.c (valpy_float): Allow conversions from int or
996         char.
997         (valpy_int, valpy_long): Allow conversions from float.
998
999 2018-09-23  Tom Tromey  <tom@tromey.com>
1000
1001         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1002         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1003
1004 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1005
1006         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1007         __sighndlr.
1008         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1009
1010 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1011
1012         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1013         target_terminal::ours().
1014
1015 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1016
1017         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1018         of vl to ULONGEST.
1019
1020 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1021
1022         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1023         redundant condition.
1024
1025 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1026
1027         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1028
1029         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1030         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1031         * sol-thread.c (ps_pdmodel): Don't guard definition.
1032
1033         * procfs.c: Fix formatting.
1034
1035         * procfs.c (sysset_t_alloc): Remove.
1036         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1037         (procfs_debug_inferior): Likewise.
1038         (procfs_set_exec_trap): Likewise.
1039         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1040         (proc_set_traced_sysexit): Likewise.
1041
1042         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1043         (dead_procinfo): Likewise.
1044         (proc_warn): Likewise.
1045         (proc_error): Likewise.
1046         (proc_get_LDT_entry): Likewise.
1047         (do_attach): Likewise.
1048         (procfs_target::pid_to_str): Likewise.
1049         (iterate_over_mappings): Likewise.
1050
1051         * procfs.c (create_procinfo): Fix ARI warning.
1052         (proc_get_status): Likewise.
1053         (proc_stop_process): Likewise.
1054         (proc_run_process): Likewise.
1055         (proc_kill): Likewise.
1056         (proc_get_LDT_entry): Likewise.
1057         (procfs_find_LDT_entry): Likewise.
1058         (proc_update_threads): Likewise.
1059         (proc_iterate_over_threads): Likewise.
1060         (do_attach): Likewise.
1061         (procfs_xfer_memory): Likewise.
1062         (invalidate_cache): Likewise.
1063         (procfs_target::resume): Likewise.
1064         (procfs_init_inferior): Likewise.
1065         (procfs_set_exec_trap): Likewise.
1066         (procfs_target::thread_alive): Likewise.
1067         (procfs_target::pid_to_exec_file): Likewise.
1068         (iterate_over_mappings): Likewise.
1069         (procfs_target::make_corefile_notes): Likewise.
1070         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1071
1072         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1073         (procfs_find_LDT_entry): Likewise.
1074         * sol-thread.c (ps_lgetLDT): Likewise.
1075
1076 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1077
1078         PR tdep/17903
1079         * procfs.c (procfs_target): Declare pid_to_exec_file.
1080         (procfs_target::pid_to_exec_file): New.
1081
1082 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1083
1084         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1085         renaming.
1086         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1087         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1088
1089 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1090
1091         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1092         (supply_fpregset, fill_fpregset): Move ...
1093         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1094         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1095         Remove references to ioctl-based procfs.
1096         Include <sys/reg.h>.
1097         Remove PR_MODEL_NATIVE guards.
1098         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1099         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1100
1101 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1102
1103         PR gdb/20981:
1104         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1105         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1106         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1107
1108 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1109
1110         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1111         (fbsd_print_sockaddr_in6): Likewise.
1112
1113 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1114             Chris January  <chris.january@arm.com>
1115
1116         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1117         (evaluate_subexp_standard): Return a dummy type when
1118         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1119         OP_F77_UNDETERMINED_ARGLIST case.
1120         * expression.h (enum noside): Update comment.
1121
1122 2018-09-19  George Vasick <george.vasick@oracle.com>
1123
1124         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1125
1126 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1127             April Chin <april.chin@oracle.com>
1128             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1129
1130         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1131         uint_t lwpid_t.
1132         (create_procinfo): Print pids in /proc without leading zeros.
1133
1134 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1135
1136         * nios2-tdep.c (nios2_gcc_target_options): New.
1137         (nios2_gdb_arch_init): Install new hook.
1138
1139 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1140
1141         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1142         New file.
1143         * update-gnulib.sh: Apply patch.
1144         * configure: Re-generate.
1145
1146 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1147
1148         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1149         description.  Make "info proc" command descriptions more
1150         consistent.
1151
1152 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1153
1154         * NEWS: Mention 'info proc files' command.
1155
1156 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1157
1158         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1159         descriptors for IP_FILES and IP_ALL.
1160
1161 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1162
1163         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1164         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1165         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1166         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1167         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1168         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1169         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1170         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1171         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1172         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1173         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1174         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1175         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1176         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1177         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1178         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1179         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1180         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1181         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1182         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1183         (struct fbsd_sockaddr_un): New types.
1184         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1185         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1186         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1187         (fbsd_core_info_proc_files): New functions.
1188         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1189         IP_ALL.
1190         * fbsd-tdep.h (fbsd_info_proc_files_header)
1191         (fbsd_info_proc_files_entry): New.
1192
1193 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1194
1195         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1196         * infcmd.c (info_proc_cmd_files): New function.
1197         (_initialize_infcmd): Register 'info proc files' command.
1198
1199 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1200
1201         * gnulib/aclocal-m4-deps.mk: Re-generate.
1202         * gnulib/aclocal.m4: Re-generate.
1203         * gnulib/config.in: Re-generate.
1204         * gnulib/configure: Re-generate.
1205         * gnulib/import/Makefile.am: Re-generate.
1206         * gnulib/import/Makefile.in: Re-generate.
1207         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1208         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1209         * gnulib/import/arpa_inet.in.h: New file.
1210         * gnulib/import/inet_ntop.c: New file.
1211         * gnulib/import/m4/arpa_inet_h.m4: New file.
1212         * gnulib/import/m4/inet_ntop.m4: New file.
1213         * gnulib/import/m4/netinet_in_h.m4: New file.
1214         * gnulib/import/m4/socklen.m4: New file.
1215         * gnulib/import/m4/sockpfaf.m4: New file.
1216         * gnulib/import/m4/stdalign.m4: New file.
1217         * gnulib/import/m4/sys_uio_h.m4: New file.
1218         * gnulib/import/netinet_in.in.h: New file.
1219         * gnulib/import/stdalign.in.h: New file.
1220         * gnulib/import/sys_socket.c: New file.
1221         * gnulib/import/sys_socket.in.h: New file.
1222         * gnulib/import/sys_uio.in.h: New file.
1223         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1224         module.
1225
1226 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1227
1228         * gnulib/aclocal-m4-deps.mk: New file.
1229         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1230         deterministically.
1231
1232 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1233
1234         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1235         KVE_PATH.
1236
1237 2018-09-18  Tom Tromey  <tom@tromey.com>
1238
1239         * compile/compile-object-load.c (struct
1240         link_hash_table_cleanup_data): Add constructor and destructor.
1241         Use DISABLE_COPY_AND_ASSIGN.
1242         (~link_hash_table_cleanup_data): Rename from
1243         link_hash_table_free.  Now a destructor.
1244         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1245
1246 2018-09-18  Tom Tromey  <tom@tromey.com>
1247
1248         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1249         * compile/compile-object-load.c (struct munmap_list): Move to
1250         header file.
1251         (munmap_list::add): Rename from munmap_list_add; rewrite.
1252         (munmap_list::~munmap_list): Rename from munmap_list_free.
1253         (munmap_listp_free_cleanup): Remove.
1254         (compile_object_load): Update.
1255         * compile/compile-object-load.h (struct munmap_list): Move from
1256         compile-object-load.c.  Rewrite.
1257
1258 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1259
1260         * aarch64-tdep.c (pass_in_v): Use register size.
1261         (aarch64_extract_return_value): Likewise.
1262         (aarch64_store_return_value): Likewise.
1263
1264 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1265
1266         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1267         rlim_t.
1268
1269 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1270
1271         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1272         Fix short help line.
1273
1274 2018-09-17  Tom Tromey  <tom@tromey.com>
1275
1276         PR python/20445:
1277         * configure: Rebuild.
1278         * configure.ac: Conditionally use -DNDEBUG for Python.
1279
1280 2018-09-17  Tom Tromey  <tom@tromey.com>
1281
1282         * configure: Rebuild.
1283         * configure.ac: Use gmp as a library dependency when checking for
1284         mpfr.
1285
1286 2018-09-17  Pedro Alves  <palves@redhat.com>
1287
1288         * python/py-inferior.c (find_inferior_object): Delete.
1289
1290 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1291
1292         * compile/compile-cplus-types.c
1293         (compile_cplus_instance::enter_scope): Don't use new_scope after
1294         std::move.
1295
1296 2018-09-17  Tom Tromey  <tom@tromey.com>
1297
1298         * common/pathstuff.c (get_standard_cache_dir): Use
1299         ~/Library/Caches on macOS.
1300         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1301
1302 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1303
1304         PR python/23669
1305         * breakpoint.c (commands_cmd_element): New.
1306         (_initialize_breakpoint): Assign commands_cmd_element.
1307         * breakpoint.h (commands_cmd_element): New.
1308         * cli/cli-script.c (while_cmd_element, if_command,
1309         define_cmd_element): New.
1310         (command_name_equals): Remove.
1311         (process_next_line): Compare commands by pointer, not by name.
1312         (_initialize_cli_script): Assign the various cmd_list_element
1313         variables.
1314         * compile/compile.c (compile_cmd_element): New.
1315         (_initialize_compile): Assign compile_cmd_element.
1316         * compile/compile.h (compile_cmd_element): New.
1317         * guile/guile.c (guile_cmd_element): New.
1318         (install_gdb_commands): Assign guile_cmd_element.
1319         * guile/guile.h (guile_cmd_element): New.
1320         * python/python.c (python_cmd_element): New.
1321         (_initialize_python): Assign python_cmd_element.
1322         * python/python.h (python_cmd_element): New.
1323         * tracepoint.c (while_stepping_cmd_element): New.
1324         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1325         * tracepoint.h (while_stepping_cmd_element): New.
1326
1327 2018-09-17  Tom Tromey  <tom@tromey.com>
1328
1329         * infrun.c (save_infcall_suspend_state): Return
1330         infcall_suspend_state_up.
1331         (save_infcall_control_state): Return infcall_control_state_up.
1332         * inferior.h (save_infcall_suspend_state)
1333         (save_infcall_control_state): Declare later.  Return unique
1334         pointers.
1335
1336 2018-09-17  Tom Tromey  <tom@tromey.com>
1337
1338         * infrun.c (struct stop_context): Declare constructor,
1339         destructor, "changed" method.
1340         (stop_context::stop_context): Rename from save_stop_context.
1341         (stop_context::~stop_context): Rename from
1342         release_stop_context_cleanup.
1343         (normal_stop): Update.
1344         (stop_context::changed): Rename from stop_context_changed.  Return
1345         bool.
1346
1347 2018-09-17  Tom Tromey  <tom@tromey.com>
1348
1349         * inferior.h (struct infcall_suspend_state_deleter): New.
1350         (infcall_suspend_state_up): New typedef.
1351         (struct infcall_control_state_deleter): New.
1352         (infcall_control_state_up): New typedef.
1353         (make_cleanup_restore_infcall_suspend_state)
1354         (make_cleanup_restore_infcall_control_state): Don't declare.
1355         * infcall.c (call_function_by_hand_dummy): Update.
1356         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1357         (make_cleanup_restore_infcall_suspend_state): Remove.
1358         (do_restore_infcall_control_state_cleanup)
1359         (make_cleanup_restore_infcall_control_state): Remove.
1360
1361 2018-09-17  Tom Tromey  <tom@tromey.com>
1362
1363         * gdbthread.h (struct thread_control_state): Add initializer.
1364         (class thread_info) <control>: Remove initializer.
1365         * inferior.h (struct inferior_control_state): Add initializer.
1366         (class inferior) <control>: Remove initializer.
1367         (exit_inferior_1): Update.
1368         * infrun.c (struct infcall_control_state): Add constructors.
1369         (save_infcall_control_state): Use new.
1370         (restore_infcall_control_state, discard_infcall_control_state):
1371         Use delete.
1372
1373 2018-09-17  Tom Tromey  <tom@tromey.com>
1374
1375         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1376         unique_ptr.
1377         <siginfo_data>: Now a unique_xmalloc_ptr.
1378         (save_infcall_suspend_state, restore_infcall_suspend_state)
1379         (discard_infcall_suspend_state)
1380         (get_infcall_suspend_state_regcache): Update.
1381
1382 2018-09-17  Tom Tromey  <tom@tromey.com>
1383
1384         * gdbthread.h (struct thread_suspend_state): Add initializers.
1385         (class thread_info) <suspend>: Remove initializer.
1386         * infrun.c (struct infcall_suspend_state): Add initializers.
1387         (save_infcall_suspend_state): Use new.
1388         (discard_infcall_suspend_state): Use delete.
1389
1390 2018-09-16  Tom Tromey  <tom@tromey.com>
1391
1392         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1393         Remove.
1394         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1395         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1396         (py_varobj_iter_new): Likewise.
1397         (py_varobj_get_iterator): Use gdbpy_ref.
1398
1399 2018-09-16  Tom Tromey  <tom@tromey.com>
1400
1401         * python/py-threadevent.c (py_get_event_thread): Simplify.
1402         * python/py-inferior.c (infpy_thread_from_thread_handle):
1403         Return immediately after calling thread_to_thread_object.  Use
1404         Py_RETURN_NONE.
1405         (thread_to_thread_object): Set the exception on a NULL return.
1406
1407 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1408
1409         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1410
1411 2018-09-16  Tom Tromey  <tom@tromey.com>
1412
1413         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1414         Remove.
1415
1416 2018-09-16  Tom Tromey  <tom@tromey.com>
1417
1418         * python/python-internal.h (thread_to_thread_object): Change
1419         return type.
1420         * python/py-inferior.c (thread_to_thread_object): Return a new
1421         reference.
1422         (infpy_thread_from_thread_handle): Update.
1423         * python/py-infthread.c (gdbpy_selected_thread): Update.
1424         * python/py-stopevent.c (create_stop_event_object): Update.
1425         * python/py-threadevent.c (py_get_event_thread): Return a new
1426         reference.
1427         (py_get_event_thread): Update.
1428         * python/py-event.h (py_get_event_thread): Change return type.
1429         * python/py-continueevent.c (create_continue_event_object):
1430         Update.
1431
1432 2018-09-16  Tom Tromey  <tom@tromey.com>
1433
1434         * python/py-progspace.c (pspy_get_objfiles): Update.
1435         * python/python-internal.h (objfile_to_objfile_object): Change
1436         return type.
1437         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1438         Update.
1439         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1440         Update.
1441         * python/python.c (gdbpy_get_current_objfile): Update.
1442         (gdbpy_objfiles): Update.
1443         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1444         Update.
1445         (objfile_to_objfile_object): Return a new reference.
1446         * python/py-symtab.c (stpy_get_objfile): Update.
1447         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1448         Update.
1449
1450 2018-09-16  Tom Tromey  <tom@tromey.com>
1451
1452         * python/py-inferior.c (infpy_get_progspace): Update.
1453         * python/python-internal.h (pspace_to_pspace_object): Change
1454         return type.
1455         * python/py-newobjfileevent.c
1456         (create_clear_objfiles_event_object): Update.
1457         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1458         Update.
1459         * python/python.c (gdbpy_get_current_progspace): Update.
1460         (gdbpy_progspaces): Update.
1461         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1462         reference.
1463         * python/py-objfile.c (objfpy_get_progspace): Update.
1464         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1465         Update.
1466
1467 2018-09-16  Tom Tromey  <tom@tromey.com>
1468
1469         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1470         (solib_name, block_for_pc, find_pc_line): New functions.
1471         (execute_unwinders): Update.
1472         * python/py-block.c (gdbpy_block_for_pc): Remove.
1473         * python/py-inferior.c (infpy_get_progspace): New function.
1474         (inferior_object_getset) <progspace>: Add.
1475         * python/py-progspace.c (pspy_objfiles): Rewrite.
1476         (pspy_solib_name, pspy_block_for_pc)
1477         (pspy_find_pc_line, pspy_is_valid): New functions.
1478         (progspace_object_methods): Add entries for solib_name,
1479         block_for_pc, find_pc_line, is_valid.
1480         * python/python-internal.h (gdbpy_block_for_pc)
1481         (build_objfiles_list): Don't declare.
1482         * python/python.c: Don't include solib.h.
1483         (gdbpy_solib_name, gdbpy_find_pc_line)
1484         (gdbpy_get_current_progspace, build_objfiles_list)
1485         (gdbpy_objfiles): Remove.
1486         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1487         solib_name, find_pc_line>: Remove entries.
1488
1489 2018-09-16  Tom Tromey  <tom@tromey.com>
1490
1491         * top.c (new_ui_command): Use GNU style for metasyntactic
1492         variables.
1493         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1494         variables.
1495         * maint.c (maintenance_translate_address): Remove "<>" around
1496         text.
1497         * interps.c (interpreter_exec_cmd): Use GNU style for
1498         metasyntactic variables.
1499         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1500         metasyntactic variables.
1501         * tracepoint.c (tfind_range_command): Use GNU style for
1502         metasyntactic variables.
1503         (tfind_outside_command): Likewise.
1504         (_initialize_tracepoint): Likewise.
1505         * remote.c (extended_remote_target::create_inferior): Use GNU
1506         style for metasyntactic variables.
1507         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1508         metasyntactic variables.
1509         (adi_assign_command): Likewise.
1510
1511 2018-09-16  Tom Tromey  <tom@tromey.com>
1512
1513         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1514         metasyntactic variables.  Print message if no disassembler options
1515         are available.
1516
1517 2018-09-15  Tom Tromey  <tom@tromey.com>
1518
1519         * infcmd.c (get_inferior_args): Return const char *.
1520         * inferior.h (get_inferior_args): Return type now const.
1521         * linux-tdep.c (linux_fill_prpsinfo): Update.
1522         * procfs.c (procfs_target::make_corefile_notes): Update.
1523
1524 2018-09-07  Tom Tromey  <tom@tromey.com>
1525
1526         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1527         inside the TRY.
1528
1529 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1530
1531         * nios2-tdep.c (nios2_type_align): New.
1532         (nios2_gdb_arch_init): Install type_align hook.
1533
1534 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1535
1536         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1537         type that is neither object file owned, nor gdbarch owned.
1538         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1539         gdbarch is non-NULL.
1540         (alloc_type_instance): Allocate non-objfile owned types on the
1541         gdbarch obstack.
1542         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1543         using TYPE_ALLOC to ensure memory is allocated on the correct
1544         obstack.
1545         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1546         obstack, or the gdbarch obstack.
1547         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1548
1549 2018-09-14  Tom Tromey  <tom@tromey.com>
1550
1551         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1552         block.
1553
1554 2018-09-14  Tom Tromey  <tom@tromey.com>
1555
1556         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1557
1558 2018-09-13  Tom Tromey  <tom@tromey.com>
1559
1560         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1561         static.
1562
1563 2018-09-13  Tom Tromey  <tom@tromey.com>
1564
1565         * exec.c (try_open_exec_file): Use std::string.
1566
1567 2018-09-13  Tom Tromey  <tom@tromey.com>
1568
1569         * utils.h (gdb_bfd_errmsg): Return std::string.
1570         * exec.c (exec_file_attach): Update.
1571         * compile/compile-object-load.c (compile_object_load): Update.
1572         * utils.c (gdb_bfd_errmsg): Return std::string.
1573
1574 2018-09-13  Tom Tromey  <tom@tromey.com>
1575
1576         * procfs.c (struct procinfo_deleter): New.
1577         (procinfo_up): New typedef.
1578         (do_destroy_procinfo_cleanup): Remove.
1579         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
1580
1581 2018-09-13  Tom Tromey  <tom@tromey.com>
1582
1583         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
1584
1585 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1586 2018-09-13  Tom Tromey  <tom@tromey.com>
1587
1588         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
1589         (pspy_get_objfiles): New function.
1590         (progspace_object_methods): New.
1591         (pspace_object_type): Add tp_methods callback.
1592         * python/python-internal.h (build_objfiles_list): New
1593         declaration.
1594         * python/python.c (build_objfiles_list): New function.
1595         (gdbpy_objfiles): Implement using build_objfiles_list.
1596         * NEWS: Mention the Progspace.objfiles method.
1597
1598 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1599
1600         * python/py-inferior.c (infpy_get_progspace): New function.
1601         (inferior_object_getset): Add progspace property.
1602         * NEWS: Mention the new property.
1603
1604 2018-09-13  Tom Tromey  <tom@tromey.com>
1605
1606         PR rust/23650:
1607         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
1608
1609 2018-09-13  Tom Tromey  <tom@tromey.com>
1610
1611         PR rust/23626:
1612         * rust-lang.c (rust_enum_variant): Now static.
1613         (rust_empty_enum_p): New function.
1614         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
1615         Handle empty enum.
1616
1617 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1618
1619         * python/py-inferior.c (infpy_repr): New.
1620         (inferior_object_type): Register infpy_repr.
1621         * python/py-objfile.c (objfpy_repr): New.
1622         (objfile_object_type): Register objfpy_repr.
1623
1624 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1625
1626         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
1627
1628 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1629
1630         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
1631         typo.
1632
1633 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
1634
1635         * common/common-utils.c: Don't include '<sys/stat.h>'.
1636         (is_regular_file): Move to...
1637         * common/filestuff.c (is_regular_file): ... here.
1638         * common/common-utils.h (is_regular_file): Move to...
1639         * common/filestuff.h (is_regular_file): ... here.
1640
1641 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
1642
1643         * skip.c (debug_skip): New variable.
1644         (skiplist_entry::do_skip_file_p): Add debug output.
1645         (skiplist_entry::do_skip_gfile_p): Likewise.
1646         (skiplist_entry::skip_function_p): Likewise.
1647         (_initialize_step_skip): Create debug command.
1648         * NEWS: Mention set/show debug skip.
1649
1650 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1651
1652         * darwin-nat.c (should_disable_startup_with_shell):
1653         New function.
1654         (darwin_nat_target::create_inferior): Add call.
1655
1656 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1657
1658         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
1659         inf_port, msg_state>: Initialize.
1660         (struct darwin_thread_info) <signaled, single_step>: Change
1661         type and initialize.
1662         (struct darwin_thread_info) <event>: Initialize.
1663
1664 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1665
1666         PR gdb/23555
1667         PR gdb/23558
1668         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
1669         guesses.
1670
1671 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1672
1673         Revert:
1674         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1675
1676         PR gdb/23555
1677         PR gdb/23558
1678         * gnulib/aclocal.m4: Regenerate.
1679         * gnulib/config.in: Regenerate.
1680         * gnulib/configure: Regenerate.
1681         * gnulib/import/Makefile.am: Update.
1682         * gnulib/import/Makefile.in: Update.
1683         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1684         * gnulib/import/_Noreturn.h: ... this.
1685         * gnulib/import/alloca.in.h: Update.
1686         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
1687         * gnulib/import/arg-nonnull.h: ... this.
1688         * gnulib/import/assure.h: Update.
1689         * gnulib/import/at-func.c: Update.
1690         * gnulib/import/basename-lgpl.c: Update.
1691         * gnulib/import/extra/snippet/c++defs.h: Rename to...
1692         * gnulib/import/c++defs.h: ... this.
1693         * gnulib/import/canonicalize-lgpl.c: Update.
1694         * gnulib/import/cdefs.h: Update.
1695         * gnulib/import/chdir-long.c: Update.
1696         * gnulib/import/chdir-long.h: Update.
1697         * gnulib/import/cloexec.c: Update.
1698         * gnulib/import/cloexec.h: Update.
1699         * gnulib/import/close.c: Update.
1700         * gnulib/import/closedir.c: Update.
1701         * gnulib/import/config.charset: Update.
1702         * gnulib/import/dirent-private.h: Update.
1703         * gnulib/import/dirent.in.h: Update.
1704         * gnulib/import/dirfd.c: Update.
1705         * gnulib/import/dirname-lgpl.c: Update.
1706         * gnulib/import/dirname.h: Update.
1707         * gnulib/import/dosname.h: Update.
1708         * gnulib/import/dup-safer-flag.c: Update.
1709         * gnulib/import/dup-safer.c: Update.
1710         * gnulib/import/dup.c: Update.
1711         * gnulib/import/dup2.c: Update.
1712         * gnulib/import/errno.in.h: Update.
1713         * gnulib/import/error.c: Update.
1714         * gnulib/import/error.h: Update.
1715         * gnulib/import/exitfail.c: Update.
1716         * gnulib/import/exitfail.h: Update.
1717         * gnulib/import/extra/update-copyright: Update.
1718         * gnulib/import/fchdir.c: Update.
1719         * gnulib/import/fcntl.c: Update.
1720         * gnulib/import/fcntl.in.h: Update.
1721         * gnulib/import/fd-hook.c: Update.
1722         * gnulib/import/fd-hook.h: Update.
1723         * gnulib/import/fd-safer-flag.c: Update.
1724         * gnulib/import/fd-safer.c: Update.
1725         * gnulib/import/fdopendir.c: Update.
1726         * gnulib/import/filename.h: Update.
1727         * gnulib/import/filenamecat-lgpl.c: Update.
1728         * gnulib/import/filenamecat.h: Update.
1729         * gnulib/import/flexmember.h: Update.
1730         * gnulib/import/float+.h: Update.
1731         * gnulib/import/float.c: Update.
1732         * gnulib/import/float.in.h: Update.
1733         * gnulib/import/fnmatch.c: Update.
1734         * gnulib/import/fnmatch.in.h: Update.
1735         * gnulib/import/fnmatch_loop.c: Update.
1736         * gnulib/import/fpucw.h: Update.
1737         * gnulib/import/frexp.c: Update.
1738         * gnulib/import/frexpl.c: Update.
1739         * gnulib/import/fstat.c: Update.
1740         * gnulib/import/fstatat.c: Update.
1741         * gnulib/import/getcwd-lgpl.c: Update.
1742         * gnulib/import/getcwd.c: Update.
1743         * gnulib/import/getdtablesize.c: Update.
1744         * gnulib/import/getlogin_r.c: Update.
1745         * gnulib/import/getprogname.c: Update.
1746         * gnulib/import/getprogname.h: Update.
1747         * gnulib/import/gettext.h: Update.
1748         * gnulib/import/gettimeofday.c: Update.
1749         * gnulib/import/glob-libc.h: Update.
1750         * gnulib/import/glob.c: Update.
1751         * gnulib/import/glob.in.h: Update.
1752         * gnulib/import/glob_internal.h: Update.
1753         * gnulib/import/glob_pattern_p.c: Update.
1754         * gnulib/import/globfree.c: Update.
1755         * gnulib/import/hard-locale.c: Update.
1756         * gnulib/import/hard-locale.h: Update.
1757         * gnulib/import/intprops.h: Update.
1758         * gnulib/import/inttypes.in.h: Update.
1759         * gnulib/import/isnan.c: Update.
1760         * gnulib/import/isnand-nolibm.h: Update.
1761         * gnulib/import/isnand.c: Update.
1762         * gnulib/import/isnanl-nolibm.h: Update.
1763         * gnulib/import/isnanl.c: Update.
1764         * gnulib/import/itold.c: Update.
1765         * gnulib/import/libc-config.h: Update.
1766         * gnulib/import/limits.in.h: Update.
1767         * gnulib/import/localcharset.c: Update.
1768         * gnulib/import/localcharset.h: Update.
1769         * gnulib/import/localtime-buffer.c: Update.
1770         * gnulib/import/localtime-buffer.h: Update.
1771         * gnulib/import/lstat.c: Update.
1772         * gnulib/import/m4/00gnulib.m4: Update.
1773         * gnulib/import/m4/__inline.m4: Update.
1774         * gnulib/import/m4/absolute-header.m4: Update.
1775         * gnulib/import/m4/alloca.m4: Update.
1776         * gnulib/import/m4/builtin-expect.m4: Update.
1777         * gnulib/import/m4/canonicalize.m4: Update.
1778         * gnulib/import/m4/chdir-long.m4: Update.
1779         * gnulib/import/m4/close.m4: Update.
1780         * gnulib/import/m4/closedir.m4: Update.
1781         * gnulib/import/m4/configmake.m4: Update.
1782         * gnulib/import/m4/d-ino.m4: Update.
1783         * gnulib/import/m4/d-type.m4: Update.
1784         * gnulib/import/m4/dirent_h.m4: Update.
1785         * gnulib/import/m4/dirfd.m4: Update.
1786         * gnulib/import/m4/dirname.m4: Update.
1787         * gnulib/import/m4/double-slash-root.m4: Update.
1788         * gnulib/import/m4/dup.m4: Update.
1789         * gnulib/import/m4/dup2.m4: Update.
1790         * gnulib/import/m4/eealloc.m4: Update.
1791         * gnulib/import/m4/environ.m4: Update.
1792         * gnulib/import/m4/errno_h.m4: Update.
1793         * gnulib/import/m4/error.m4: Update.
1794         * gnulib/import/m4/exponentd.m4: Update.
1795         * gnulib/import/m4/exponentl.m4: Update.
1796         * gnulib/import/m4/extensions.m4: Update.
1797         * gnulib/import/m4/extern-inline.m4: Update.
1798         * gnulib/import/m4/fchdir.m4: Update.
1799         * gnulib/import/m4/fcntl-o.m4: Update.
1800         * gnulib/import/m4/fcntl.m4: Update.
1801         * gnulib/import/m4/fcntl_h.m4: Update.
1802         * gnulib/import/m4/fdopendir.m4: Update.
1803         * gnulib/import/m4/filenamecat.m4: Update.
1804         * gnulib/import/m4/flexmember.m4: Update.
1805         * gnulib/import/m4/float_h.m4: Update.
1806         * gnulib/import/m4/fnmatch.m4: Update.
1807         * gnulib/import/m4/fnmatch_h.m4: Update.
1808         * gnulib/import/m4/fpieee.m4: Update.
1809         * gnulib/import/m4/frexp.m4: Update.
1810         * gnulib/import/m4/frexpl.m4: Update.
1811         * gnulib/import/m4/fstat.m4: Update.
1812         * gnulib/import/m4/fstatat.m4: Update.
1813         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1814         * gnulib/import/m4/getcwd-path-max.m4: Update.
1815         * gnulib/import/m4/getcwd.m4: Update.
1816         * gnulib/import/m4/getdtablesize.m4: Update.
1817         * gnulib/import/m4/getlogin.m4: Update.
1818         * gnulib/import/m4/getlogin_r.m4: Update.
1819         * gnulib/import/m4/getpagesize.m4: Update.
1820         * gnulib/import/m4/getprogname.m4: Update.
1821         * gnulib/import/m4/gettimeofday.m4: Update.
1822         * gnulib/import/m4/glibc21.m4: Update.
1823         * gnulib/import/m4/glob.m4: Update.
1824         * gnulib/import/m4/glob_h.m4: Update.
1825         * gnulib/import/m4/gnulib-cache.m4: Update.
1826         * gnulib/import/m4/gnulib-common.m4: Update.
1827         * gnulib/import/m4/gnulib-comp.m4: Update.
1828         * gnulib/import/m4/gnulib-tool.m4: Update.
1829         * gnulib/import/m4/hard-locale.m4: Update.
1830         * gnulib/import/m4/include_next.m4: Update.
1831         * gnulib/import/m4/inttypes-pri.m4: Update.
1832         * gnulib/import/m4/inttypes.m4: Update.
1833         * gnulib/import/m4/isnand.m4: Update.
1834         * gnulib/import/m4/isnanl.m4: Update.
1835         * gnulib/import/m4/largefile.m4: Update.
1836         * gnulib/import/m4/limits-h.m4: Update.
1837         * gnulib/import/m4/localcharset.m4: Update.
1838         * gnulib/import/m4/locale-fr.m4: Update.
1839         * gnulib/import/m4/locale-ja.m4: Update.
1840         * gnulib/import/m4/locale-zh.m4: Update.
1841         * gnulib/import/m4/localtime-buffer.m4: Update.
1842         * gnulib/import/m4/longlong.m4: Update.
1843         * gnulib/import/m4/lstat.m4: Update.
1844         * gnulib/import/m4/malloc.m4: Update.
1845         * gnulib/import/m4/malloca.m4: Update.
1846         * gnulib/import/m4/math_h.m4: Update.
1847         * gnulib/import/m4/mbrtowc.m4: Update.
1848         * gnulib/import/m4/mbsinit.m4: Update.
1849         * gnulib/import/m4/mbsrtowcs.m4: Update.
1850         * gnulib/import/m4/mbstate_t.m4: Update.
1851         * gnulib/import/m4/memchr.m4: Update.
1852         * gnulib/import/m4/memmem.m4: Update.
1853         * gnulib/import/m4/mempcpy.m4: Update.
1854         * gnulib/import/m4/memrchr.m4: Update.
1855         * gnulib/import/m4/mkdir.m4: Update.
1856         * gnulib/import/m4/mkstemp.m4: Update.
1857         * gnulib/import/m4/mmap-anon.m4: Update.
1858         * gnulib/import/m4/mode_t.m4: Update.
1859         * gnulib/import/m4/msvc-inval.m4: Update.
1860         * gnulib/import/m4/msvc-nothrow.m4: Update.
1861         * gnulib/import/m4/multiarch.m4: Update.
1862         * gnulib/import/m4/nocrash.m4: Update.
1863         * gnulib/import/m4/off_t.m4: Update.
1864         * gnulib/import/m4/onceonly.m4: Update.
1865         * gnulib/import/m4/open-cloexec.m4: Update.
1866         * gnulib/import/m4/open.m4: Update.
1867         * gnulib/import/m4/openat.m4: Update.
1868         * gnulib/import/m4/opendir.m4: Update.
1869         * gnulib/import/m4/pathmax.m4: Update.
1870         * gnulib/import/m4/rawmemchr.m4: Update.
1871         * gnulib/import/m4/readdir.m4: Update.
1872         * gnulib/import/m4/readlink.m4: Update.
1873         * gnulib/import/m4/realloc.m4: Update.
1874         * gnulib/import/m4/rename.m4: Update.
1875         * gnulib/import/m4/rewinddir.m4: Update.
1876         * gnulib/import/m4/rmdir.m4: Update.
1877         * gnulib/import/m4/save-cwd.m4: Update.
1878         * gnulib/import/m4/secure_getenv.m4: Update.
1879         * gnulib/import/m4/setenv.m4: Update.
1880         * gnulib/import/m4/signal_h.m4: Update.
1881         * gnulib/import/m4/ssize_t.m4: Update.
1882         * gnulib/import/m4/stat-time.m4: Update.
1883         * gnulib/import/m4/stat.m4: Update.
1884         * gnulib/import/m4/std-gnu11.m4: Update.
1885         * gnulib/import/m4/stdbool.m4: Update.
1886         * gnulib/import/m4/stddef_h.m4: Update.
1887         * gnulib/import/m4/stdint.m4: Update.
1888         * gnulib/import/m4/stdio_h.m4: Update.
1889         * gnulib/import/m4/stdlib_h.m4: Update.
1890         * gnulib/import/m4/strchrnul.m4: Update.
1891         * gnulib/import/m4/strdup.m4: Update.
1892         * gnulib/import/m4/strerror.m4: Update.
1893         * gnulib/import/m4/string_h.m4: Update.
1894         * gnulib/import/m4/strstr.m4: Update.
1895         * gnulib/import/m4/strtok_r.m4: Update.
1896         * gnulib/import/m4/sys_socket_h.m4: Update.
1897         * gnulib/import/m4/sys_stat_h.m4: Update.
1898         * gnulib/import/m4/sys_time_h.m4: Update.
1899         * gnulib/import/m4/sys_types_h.m4: Update.
1900         * gnulib/import/m4/tempname.m4: Update.
1901         * gnulib/import/m4/time_h.m4: Update.
1902         * gnulib/import/m4/unistd-safer.m4: Update.
1903         * gnulib/import/m4/unistd_h.m4: Update.
1904         * gnulib/import/m4/warn-on-use.m4: Update.
1905         * gnulib/import/m4/wchar_h.m4: Update.
1906         * gnulib/import/m4/wchar_t.m4: Update.
1907         * gnulib/import/m4/wctype_h.m4: Update.
1908         * gnulib/import/m4/wint_t.m4: Update.
1909         * gnulib/import/malloc.c: Update.
1910         * gnulib/import/malloc/scratch_buffer.h: Update.
1911         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1912         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1913         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1914         * gnulib/import/malloca.c: Update.
1915         * gnulib/import/malloca.h: Update.
1916         * gnulib/import/malloca.valgrind: Update.
1917         * gnulib/import/math.in.h: Update.
1918         * gnulib/import/mbrtowc.c: Update.
1919         * gnulib/import/mbsinit.c: Update.
1920         * gnulib/import/mbsrtowcs-impl.h: Update.
1921         * gnulib/import/mbsrtowcs-state.c: Update.
1922         * gnulib/import/mbsrtowcs.c: Update.
1923         * gnulib/import/memchr.c: Update.
1924         * gnulib/import/memmem.c: Update.
1925         * gnulib/import/mempcpy.c: Update.
1926         * gnulib/import/memrchr.c: Update.
1927         * gnulib/import/mkdir.c: Update.
1928         * gnulib/import/mkstemp.c: Update.
1929         * gnulib/import/msvc-inval.c: Update.
1930         * gnulib/import/msvc-inval.h: Update.
1931         * gnulib/import/msvc-nothrow.c: Update.
1932         * gnulib/import/msvc-nothrow.h: Update.
1933         * gnulib/import/open.c: Update.
1934         * gnulib/import/openat-die.c: Update.
1935         * gnulib/import/openat-priv.h: Update.
1936         * gnulib/import/openat-proc.c: Update.
1937         * gnulib/import/openat.c: Update.
1938         * gnulib/import/openat.h: Update.
1939         * gnulib/import/opendir.c: Update.
1940         * gnulib/import/pathmax.h: Update.
1941         * gnulib/import/pipe-safer.c: Update.
1942         * gnulib/import/rawmemchr.c: Update.
1943         * gnulib/import/readdir.c: Update.
1944         * gnulib/import/readlink.c: Update.
1945         * gnulib/import/realloc.c: Update.
1946         * gnulib/import/ref-add.sin: Update.
1947         * gnulib/import/ref-del.sin: Update.
1948         * gnulib/import/rename.c: Update.
1949         * gnulib/import/rewinddir.c: Update.
1950         * gnulib/import/rmdir.c: Update.
1951         * gnulib/import/same-inode.h: Update.
1952         * gnulib/import/save-cwd.c: Update.
1953         * gnulib/import/save-cwd.h: Update.
1954         * gnulib/import/scratch_buffer.h: Update.
1955         * gnulib/import/secure_getenv.c: Update.
1956         * gnulib/import/setenv.c: Update.
1957         * gnulib/import/signal.in.h: Update.
1958         * gnulib/import/stat-time.c: Update.
1959         * gnulib/import/stat-time.h: Update.
1960         * gnulib/import/stat-w32.c: Update.
1961         * gnulib/import/stat-w32.h: Update.
1962         * gnulib/import/stat.c: Update.
1963         * gnulib/import/stdbool.in.h: Update.
1964         * gnulib/import/stddef.in.h: Update.
1965         * gnulib/import/stdint.in.h: Update.
1966         * gnulib/import/stdio.in.h: Update.
1967         * gnulib/import/stdlib.in.h: Update.
1968         * gnulib/import/str-two-way.h: Update.
1969         * gnulib/import/strchrnul.c: Update.
1970         * gnulib/import/strdup.c: Update.
1971         * gnulib/import/streq.h: Update.
1972         * gnulib/import/strerror-override.c: Update.
1973         * gnulib/import/strerror-override.h: Update.
1974         * gnulib/import/strerror.c: Update.
1975         * gnulib/import/string.in.h: Update.
1976         * gnulib/import/stripslash.c: Update.
1977         * gnulib/import/strnlen1.c: Update.
1978         * gnulib/import/strnlen1.h: Update.
1979         * gnulib/import/strstr.c: Update.
1980         * gnulib/import/strtok_r.c: Update.
1981         * gnulib/import/sys_stat.in.h: Update.
1982         * gnulib/import/sys_time.in.h: Update.
1983         * gnulib/import/sys_types.in.h: Update.
1984         * gnulib/import/tempname.c: Update.
1985         * gnulib/import/tempname.h: Update.
1986         * gnulib/import/time.in.h: Update.
1987         * gnulib/import/unistd--.h: Update.
1988         * gnulib/import/unistd-safer.h: Update.
1989         * gnulib/import/unistd.in.h: Update.
1990         * gnulib/import/unsetenv.c: Update.
1991         * gnulib/import/verify.h: Update.
1992         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1993         * gnulib/import/wchar.in.h: Update.
1994         * gnulib/import/wctype.in.h: Update.
1995         * gnulib/import/xalloc-oversized.h: Update.
1996         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1997         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1998
1999 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2000
2001         * record-btrace.c (get_thread_current_frame): Remove
2002         old_inferior_ptid.
2003
2004 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2005
2006         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2007         with check_tag to 1 if and only if the type is tagged and the
2008         component being searched cannot been found in the current
2009         view. Otherwise, always call ada_to_fixed_type with
2010         check_tag to 0.
2011
2012 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2013
2014         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2015         declaration.
2016         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2017         * ada-varobj.c (ada_varobj_get_number_of_children,
2018         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2019
2020 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2021
2022         * ada-valprint.c (ada_value_print): Use type instead of
2023         enclosing type.
2024
2025 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2026
2027         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2028         an array of access to unconstrained array.
2029
2030 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2031
2032         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2033         (ada_check_typedef): Use it.
2034
2035 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2036
2037         * ada-varobj.c (ada_varobj_describe_struct_child)
2038         (ada_varobj_describe_child): Handle union case like struct one.
2039
2040 2018-09-10  Tom Tromey  <tom@tromey.com>
2041
2042         PR python/18380:
2043         * python/python.c (_initialize_python): Make example in "python"
2044         help work in Python 3.
2045
2046 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2047
2048         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2049         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2050         $(EXEEXT) to the script, as it is not a program.
2051
2052 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2053
2054         * python/py-prettyprint.c (pretty_print_one_value): Return
2055         gdbpy_ref<>.
2056         (print_string_repr): Adjust.
2057         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2058         * python/python-internal.h (apply_varobj_pretty_printer): Return
2059         gdbpy_ref<>.
2060         * varobj.c (varobj_value_get_print_value): Adjust.
2061
2062 2018-09-08  Tom Tromey  <tom@tromey.com>
2063
2064         PR python/16047:
2065         * python/py-prettyprint.c (pretty_print_one_value): Check for
2066         to_string method.
2067
2068 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2069
2070         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2071         replace_operator_with_call.
2072
2073 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2074
2075         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2076
2077 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2078
2079         * ada-typeprint.c (print_range): Print the bounds using TYPE
2080         rather than its TYPE_TARGET_TYPE.
2081
2082 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2083
2084         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2085         call to ada_to_fixed_value_create.
2086
2087 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2088
2089         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2090
2091 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2092
2093         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2094         by calls to error.
2095
2096 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2097
2098         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2099         Move update of loop variable "fi".
2100
2101 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2102
2103         * ada-lang.c (value_assign_to_component): In the case of
2104         big-endian targets, extract the bits of the given VAL
2105         using an src_offset of zero if container is not a scalar.
2106
2107 2018-09-06  Simon Ser  <contact@emersion.fr>
2108
2109         PR gdb/23105
2110         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2111         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2112         * fbsd-tdep.c (fbsd_make_note_desc): New.
2113         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2114         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2115         * target.h (enum target_object) Add FreeBSD-specific
2116         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2117
2118 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2119
2120         * compile/compile-c.h (generate_c_for_variable_locations):
2121         Change reference to pointer.
2122         * compile/compile-c-support.c (compile_program) <compute>:
2123         Likewise.
2124         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2125         (generate_c_for_for_one_variable): Likewise
2126         (generate_c_for_variable_locations): Likewise
2127         * compile/compile-c-types.c (compile_c_instance::convert_type):
2128         Likewise
2129         * compile/compile-cplus-symbols.c (convert_one_symbol):
2130         std::move the scope passed to enter_scope.
2131         * compile/compile-cplus-types.c
2132         (compile_cplus_instance::enter_scope): Make parameter
2133         rvalue-reference.
2134         (compile_cplus_instance::new_scope): Change reference to
2135         pointer.
2136         (compile_cplus_instance::convert_type): Likewise
2137         (compile_cplus_convert_typedef): std::move the scope passed to
2138         enter_scope.
2139         (compile_cplus_convert_struct_or_union): Likewise.
2140         (compile_cplus_convert_enum): Likewise.
2141         (compile_cplus_convert_namespace): Likewise.
2142         * compile/compile-cplus.h (compile_cplus_instance)
2143         <enter_scope>: Make parameter rvalue-reference.
2144         * compile/compile-internal.h (compile_instance)
2145         <get_cached_type>: Likewise
2146         * compile/compile-loc2c.c (push): Likewise
2147         (pushf): Likewise
2148         (unary): Likewise
2149         (binary): Likewise
2150         (print_label): Likewise
2151         (pushf_register_address): Likewise
2152         (pushf_register): Likewise
2153         (do_compile_dwarf_expr_to_c): Likewise
2154         (compile_dwarf_expr_to_c): Likewise
2155         (compile_dwarf_bounds_to_c): Likewise
2156         * compile/compile.c (compile_instance::get_cached_type):
2157         Likewise
2158         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2159         (compile_dwarf_bounds_to_c): Likewise
2160         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2161         (dwarf2_compile_property_to_c): Likewise
2162         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2163         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2164         Likewise
2165
2166 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2167
2168         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2169         * tui/tui-data.c (init_content_element): Don't initialize it.
2170
2171 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2172
2173         * tui/tui-data.h (struct tui_win_info)
2174         <detail::opaque>: Remove.
2175         * tui/tui-data.c (init_win_info): Remove assignment.
2176
2177 2018-09-05  Tom Tromey  <tom@tromey.com>
2178
2179         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2180         -Wformat-nonliteral.
2181         * target-float.c (host_float_ops<T>::to_string)
2182         (host_float_ops<T>::from_string): Use
2183         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2184         * configure: Rebuild.
2185
2186 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2187
2188         * printcmd.c (printf_c_string): Use
2189         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2190         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2191
2192 2018-09-05  Tom Tromey  <tom@tromey.com>
2193
2194         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2195
2196 2018-09-05  Tom de Vries  <tdevries@suse.de>
2197
2198         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2199         with resolve_abstract_p == true.
2200         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2201         defaulting to false. Propagate resolve_abstract_p to
2202         dwarf2_fetch_die_loc_sect_off.
2203         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2204         parameter, defaulting to false.
2205         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2206         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2207         parameter.
2208         * dwarf2read.h (struct die_info): Forward-declare.
2209         (die_info_ptr): New typedef.
2210         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2211
2212 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2213
2214         GDB 8.2 released.
2215
2216 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2217             Pedro Alves  <palves@redhat.com>
2218
2219         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2220         "aclocal-m4-deps.mk".  Include file here.
2221         $(srcdir)/aclocal.m4: Add "configure.ac".
2222         * gnulib/aclocal-m4-deps.mk: New file.
2223         * gnulib/update-gnulib.sh: Automatically update
2224         "aclocal-m4-deps.mk".
2225
2226 2018-09-04  Tom Tromey  <tom@tromey.com>
2227
2228         * configure: Rebuild.
2229         * configure.ac: Remove multi-ice code.
2230
2231 2018-09-04  Tom Tromey  <tom@tromey.com>
2232
2233         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2234         (ada-exp.o): Update.
2235
2236 2018-09-04  Tom Tromey  <tom@tromey.com>
2237
2238         * Makefile.in (printcmd.o, target-float.o): Remove.
2239         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2240
2241 2018-09-04  Tom Tromey  <tom@tromey.com>
2242
2243         * gnulib/Makefile.in: Remove obsolete comment.
2244         * Makefile.in: Remove obsolete comment.
2245
2246 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2247
2248         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2249         line with '+'.
2250
2251 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2252
2253         * riscv-tdep.c: Add 'prologue-value.h' include.
2254         (struct riscv_unwind_cache): New struct.
2255         (riscv_debug_unwinder): New global.
2256         (riscv_scan_prologue): Update arguments, capture register details
2257         from prologue scan.
2258         (riscv_skip_prologue): Reformat arguments line, move end of
2259         prologue calculation into riscv_scan_prologue.
2260         (riscv_frame_cache): Update return type, create
2261         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2262         details.
2263         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2264         (riscv_frame_prev_register): Use the trad_frame within the
2265         riscv_unwind_cache.
2266         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2267         flag.
2268
2269 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2270
2271         * trad-frame.h (trad_frame_set_realreg): Declare.
2272         (trad_frame_set_addr): Declare.
2273         * trad-frame.c (trad_frame_set_realreg): Define new function.
2274         (trad_frame_set_addr): Define new function.
2275         (trad_frame_set_reg_realreg): Use new function.
2276         (trad_frame_set_reg_addr): Use new function.
2277
2278 2018-09-01  Keith Seitz  <keiths@redhat.com>
2279
2280         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2281         pulongest instead of "%lld".
2282         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2283         ATTRIBUTE_UNUSED.
2284
2285 2018-08-31  Tom Tromey  <tom@tromey.com>
2286
2287         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2288         variant part type.
2289
2290 2018-08-31  Pedro Alves  <palves@redhat.com>
2291
2292         * gdbarch.h: Regenerate.
2293
2294 2018-08-31  Pedro Alves  <palves@redhat.com>
2295
2296         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2297         * target.h (Hardware watchpoint interfaces): Describe
2298         continuable/steppable/non-steppable watchpoints.
2299         * gdbarch.h, gdbarch.c: Regenerate.
2300
2301 2018-08-31  Pedro Alves  <palves@redhat.com>
2302
2303         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2304         Delete.
2305         * s390-linux-nat.c
2306         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2307         * target.h (target_ops::have_continuable_watchpoint): Delete.
2308         (target_have_continuable_watchpoint): Delete.
2309         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2310         * target-delegates.c: Regenerate.
2311
2312 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2313
2314         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2315         the files present in "gnulib/import/m4/".
2316
2317 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2318
2319         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2320         c.sw, c.swsp, and c.sdsp.
2321
2322 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2323
2324         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2325         (riscv_read_misa_reg): Don't cache value read into inferior data.
2326         (riscv_new_inferior_data): Delete.
2327         (riscv_inferior_data_cleanup): Delete.
2328         (riscv_inferior_data): Delete.
2329         (riscv_invalidate_inferior_data): Delete.
2330         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2331
2332 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2333
2334         * compile/compile-cplus-types.c
2335         (compile_cplus_instance::leave_scope): Take the address of scope
2336         object.
2337         (compile_cplus_instance::convert_qualified_base): Compare quals
2338         to 0.
2339
2340 2018-08-30  Keith Seitz  <keiths@redhat.com>
2341
2342         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2343         Use "%s" and host_address_to_string instead of "%p" in printf.
2344
2345 2018-08-29  Keith Seitz  <keiths@redhat.com>
2346
2347         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2348         and compile-cplus-types.c.
2349         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2350         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2351         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2352         Declare.
2353         * compile/compile-c-support.c: Include compile-cplus.h.
2354         (load_libcompile): Templatize.
2355         (get_compile_context): "New" function.
2356         (c_get_compile_context): Use get_compile_context.
2357         (cplus_get_compile_context): New function.
2358         (cplus_push_user_expression, cplus_pop_user_expression)
2359         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2360         (cplus_compute_program): Define new structs/functions.
2361         * compile/compile-cplus-symmbols.c: New file.
2362         * compile/compile-cplus-types.c: New file.
2363         * compile/compile-cplus.h: New file.
2364         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2365         Declare.
2366         * compile/compile-object-load.c (get_out_value_type): Use
2367         strncmp_iw when comparing symbol names.
2368         (compile_object_load): Add mst_bss and mst_data.
2369         * compile/compile.c (_initialize_compile): Remove
2370         -Wno-implicit-function-declaration from `compile_args'.
2371         * compile/gcc-cp-plugin.h: New file.
2372         * NEWS: Mention C++ compile support and new debug options.
2373
2374 2018-08-29  Keith Seitz  <keiths@redhat.com>
2375
2376         * linespec.c (collect_info::add_symbol): Make virtual.
2377         (struct symbol_searcher_collect_info): New struct.
2378         (symbol_searcher::find_all_symbols): New method.
2379         * symtab.h (class symbol_searcher): New class.
2380
2381 2018-08-29  Keith Seitz  <keiths@redhat.com>
2382
2383         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2384         Change to vector of block_symbol.  Update all users.
2385         (struct collect_info) <symbols>: Likewise.
2386         (collect_info::add_symbol): Take block_symbol as argument.
2387         Update all callers.
2388         (decode_compound_collector) <m_symbols>: Change type to vector
2389         of block_symbol.  Update all users.
2390         (decode_compound_collector::operator ()): Change parameter type
2391         to block_symbol.
2392         (find_method, find_function_symbols, find_linespec_symbols)
2393         (find_label_symbols_in_block, find_label_symbols): Change symbol
2394         vectors to block_symbol vectors.
2395         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2396         block_symbol.
2397
2398 2018-08-29  Keith Seitz  <keiths@redhat.com>
2399
2400         * linespec.c (symbolp): Remove typedef and VEC definitions.
2401         (bound_minimal_symbol_d): Likewise.
2402
2403 2018-08-29  Keith Seitz  <keiths@redhat.com>
2404
2405         * linespec.c (decode_compound_collector::decode_compound_collector):
2406         Remove initialization for `m_symtabs'.
2407         (decode_compound_collector::release_symbols): Change return type
2408         to std::vector.  Update all callers.
2409         (class decode_compound_collector) <m_symbols>: Change type to
2410         std::vector.
2411         (lookup_prefix_sym): Change return type to std::vector.  Update all
2412         callers.
2413         (compare_symbols): Remove.
2414         (std_compare_symbols): Rename to `compare_symbols'.
2415         (find_method): Change `sym_classes' parameter to std::vector.
2416         Update all callers.  Use std::sort to sort sym_classes.
2417         (find_linespec_symbols): Remove cleanup.
2418
2419 2018-08-29  Keith Seitz  <keiths@redhat.com>
2420
2421         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2422         std::vector.  Update all users.
2423         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2424         (struct collect_info) <minimal_symbols>: Likewise.
2425         (compare_msymbols): Return bool.  Change parameters to const
2426         bound_minimal_symbol references.
2427         (find_method, find_function_symbols, find_linespec_symbols): Change
2428         `minsyms' parameter to std::vector.  Update all callers.
2429
2430 2018-08-29  Keith Seitz  <keiths@redhat.com>
2431
2432         * linespec.c (struct linespec) <label_symbols>: Change type to
2433         std::vector.  Update all users.
2434         (find_label_symbols_in_block): Change `result' parameter to
2435         std::vector.  Update all callers.
2436         (find_label_symbols): Return std::vector.  Update all callers.
2437
2438 2018-08-29  Keith Seitz  <keiths@redhat.com>
2439
2440         * linespec.c (struct linespec) <function_symbols>: Change type to
2441         std::vector.  Update all users.
2442         (struct collect_info) <function_symbols>: Likewise.
2443         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2444         (std_compare_symbols): New function.
2445         (find_method, find_function_symbols, find_linespec_symbols)
2446         (find_label_symbols_in_block): Change `symbols' parameter to
2447         std::vector.  Update all callers.
2448         (find_label_symbols): Likewise for `function_symbols' and
2449         `label_funcs_ret'.
2450
2451 2018-08-29  Keith Seitz  <keiths@redhat.com>
2452
2453         * linespec.c (symtab_vector_up): Define.
2454         (struct linespec) <file_symtabs>: Change type to std::vector *.
2455         Update all uses.
2456         (struct collect_info) <file_symtabs>: Likewise.
2457         (collect_symtabs_from_filename): Return symtab_vector_up.
2458         Update all callers.
2459         (decode_objc): Remove cleanup.
2460         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2461         (symtab_collector::release_symtabs): Return symtab_vector_up.
2462         Update all callers.
2463         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2464         Update all users.
2465         (collect_symtabs_from_filename, symtabs_from_filename): Return
2466         symtab_vector_up.  Update all callers.
2467
2468 2018-08-29  Tom Tromey  <tom@tromey.com>
2469
2470         * csky-tdep.c (csky_analyze_prologue): Use
2471         core_addr_to_string_nz.
2472
2473 2018-08-29  Tom Tromey  <tom@tromey.com>
2474
2475         * windows-nat.c (struct xlate_exception) <them>: Change type to
2476         DWORD.
2477         (xlate): Fix formatting.  Remove last entry.
2478         (struct xlate_exception, xlate): Comment out.
2479         (windows_nat_target::resume): Use ranged for.
2480
2481 2018-08-29  Jim Wilson  <jimw@sifive.com>
2482
2483         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2484         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2485         of NT_PRFPREG.
2486         (riscv_linux_nat_target::store_registers): Likewise.
2487
2488 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2489
2490         PR gdb/23555
2491         PR gdb/23558
2492         * gnulib/aclocal.m4: Regenerate.
2493         * gnulib/config.in: Regenerate.
2494         * gnulib/configure: Regenerate.
2495         * gnulib/import/Makefile.am: Update.
2496         * gnulib/import/Makefile.in: Update.
2497         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2498         * gnulib/import/_Noreturn.h: ... this.
2499         * gnulib/import/alloca.in.h: Update.
2500         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2501         * gnulib/import/arg-nonnull.h: ... this.
2502         * gnulib/import/assure.h: Update.
2503         * gnulib/import/at-func.c: Update.
2504         * gnulib/import/basename-lgpl.c: Update.
2505         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2506         * gnulib/import/c++defs.h: ... this.
2507         * gnulib/import/canonicalize-lgpl.c: Update.
2508         * gnulib/import/cdefs.h: Update.
2509         * gnulib/import/chdir-long.c: Update.
2510         * gnulib/import/chdir-long.h: Update.
2511         * gnulib/import/cloexec.c: Update.
2512         * gnulib/import/cloexec.h: Update.
2513         * gnulib/import/close.c: Update.
2514         * gnulib/import/closedir.c: Update.
2515         * gnulib/import/config.charset: Update.
2516         * gnulib/import/dirent-private.h: Update.
2517         * gnulib/import/dirent.in.h: Update.
2518         * gnulib/import/dirfd.c: Update.
2519         * gnulib/import/dirname-lgpl.c: Update.
2520         * gnulib/import/dirname.h: Update.
2521         * gnulib/import/dosname.h: Update.
2522         * gnulib/import/dup-safer-flag.c: Update.
2523         * gnulib/import/dup-safer.c: Update.
2524         * gnulib/import/dup.c: Update.
2525         * gnulib/import/dup2.c: Update.
2526         * gnulib/import/errno.in.h: Update.
2527         * gnulib/import/error.c: Update.
2528         * gnulib/import/error.h: Update.
2529         * gnulib/import/exitfail.c: Update.
2530         * gnulib/import/exitfail.h: Update.
2531         * gnulib/import/extra/update-copyright: Update.
2532         * gnulib/import/fchdir.c: Update.
2533         * gnulib/import/fcntl.c: Update.
2534         * gnulib/import/fcntl.in.h: Update.
2535         * gnulib/import/fd-hook.c: Update.
2536         * gnulib/import/fd-hook.h: Update.
2537         * gnulib/import/fd-safer-flag.c: Update.
2538         * gnulib/import/fd-safer.c: Update.
2539         * gnulib/import/fdopendir.c: Update.
2540         * gnulib/import/filename.h: Update.
2541         * gnulib/import/filenamecat-lgpl.c: Update.
2542         * gnulib/import/filenamecat.h: Update.
2543         * gnulib/import/flexmember.h: Update.
2544         * gnulib/import/float+.h: Update.
2545         * gnulib/import/float.c: Update.
2546         * gnulib/import/float.in.h: Update.
2547         * gnulib/import/fnmatch.c: Update.
2548         * gnulib/import/fnmatch.in.h: Update.
2549         * gnulib/import/fnmatch_loop.c: Update.
2550         * gnulib/import/fpucw.h: Update.
2551         * gnulib/import/frexp.c: Update.
2552         * gnulib/import/frexpl.c: Update.
2553         * gnulib/import/fstat.c: Update.
2554         * gnulib/import/fstatat.c: Update.
2555         * gnulib/import/getcwd-lgpl.c: Update.
2556         * gnulib/import/getcwd.c: Update.
2557         * gnulib/import/getdtablesize.c: Update.
2558         * gnulib/import/getlogin_r.c: Update.
2559         * gnulib/import/getprogname.c: Update.
2560         * gnulib/import/getprogname.h: Update.
2561         * gnulib/import/gettext.h: Update.
2562         * gnulib/import/gettimeofday.c: Update.
2563         * gnulib/import/glob-libc.h: Update.
2564         * gnulib/import/glob.c: Update.
2565         * gnulib/import/glob.in.h: Update.
2566         * gnulib/import/glob_internal.h: Update.
2567         * gnulib/import/glob_pattern_p.c: Update.
2568         * gnulib/import/globfree.c: Update.
2569         * gnulib/import/hard-locale.c: Update.
2570         * gnulib/import/hard-locale.h: Update.
2571         * gnulib/import/intprops.h: Update.
2572         * gnulib/import/inttypes.in.h: Update.
2573         * gnulib/import/isnan.c: Update.
2574         * gnulib/import/isnand-nolibm.h: Update.
2575         * gnulib/import/isnand.c: Update.
2576         * gnulib/import/isnanl-nolibm.h: Update.
2577         * gnulib/import/isnanl.c: Update.
2578         * gnulib/import/itold.c: Update.
2579         * gnulib/import/libc-config.h: Update.
2580         * gnulib/import/limits.in.h: Update.
2581         * gnulib/import/localcharset.c: Update.
2582         * gnulib/import/localcharset.h: Update.
2583         * gnulib/import/localtime-buffer.c: Update.
2584         * gnulib/import/localtime-buffer.h: Update.
2585         * gnulib/import/lstat.c: Update.
2586         * gnulib/import/m4/00gnulib.m4: Update.
2587         * gnulib/import/m4/__inline.m4: Update.
2588         * gnulib/import/m4/absolute-header.m4: Update.
2589         * gnulib/import/m4/alloca.m4: Update.
2590         * gnulib/import/m4/builtin-expect.m4: Update.
2591         * gnulib/import/m4/canonicalize.m4: Update.
2592         * gnulib/import/m4/chdir-long.m4: Update.
2593         * gnulib/import/m4/close.m4: Update.
2594         * gnulib/import/m4/closedir.m4: Update.
2595         * gnulib/import/m4/configmake.m4: Update.
2596         * gnulib/import/m4/d-ino.m4: Update.
2597         * gnulib/import/m4/d-type.m4: Update.
2598         * gnulib/import/m4/dirent_h.m4: Update.
2599         * gnulib/import/m4/dirfd.m4: Update.
2600         * gnulib/import/m4/dirname.m4: Update.
2601         * gnulib/import/m4/double-slash-root.m4: Update.
2602         * gnulib/import/m4/dup.m4: Update.
2603         * gnulib/import/m4/dup2.m4: Update.
2604         * gnulib/import/m4/eealloc.m4: Update.
2605         * gnulib/import/m4/environ.m4: Update.
2606         * gnulib/import/m4/errno_h.m4: Update.
2607         * gnulib/import/m4/error.m4: Update.
2608         * gnulib/import/m4/exponentd.m4: Update.
2609         * gnulib/import/m4/exponentl.m4: Update.
2610         * gnulib/import/m4/extensions.m4: Update.
2611         * gnulib/import/m4/extern-inline.m4: Update.
2612         * gnulib/import/m4/fchdir.m4: Update.
2613         * gnulib/import/m4/fcntl-o.m4: Update.
2614         * gnulib/import/m4/fcntl.m4: Update.
2615         * gnulib/import/m4/fcntl_h.m4: Update.
2616         * gnulib/import/m4/fdopendir.m4: Update.
2617         * gnulib/import/m4/filenamecat.m4: Update.
2618         * gnulib/import/m4/flexmember.m4: Update.
2619         * gnulib/import/m4/float_h.m4: Update.
2620         * gnulib/import/m4/fnmatch.m4: Update.
2621         * gnulib/import/m4/fnmatch_h.m4: Update.
2622         * gnulib/import/m4/fpieee.m4: Update.
2623         * gnulib/import/m4/frexp.m4: Update.
2624         * gnulib/import/m4/frexpl.m4: Update.
2625         * gnulib/import/m4/fstat.m4: Update.
2626         * gnulib/import/m4/fstatat.m4: Update.
2627         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2628         * gnulib/import/m4/getcwd-path-max.m4: Update.
2629         * gnulib/import/m4/getcwd.m4: Update.
2630         * gnulib/import/m4/getdtablesize.m4: Update.
2631         * gnulib/import/m4/getlogin.m4: Update.
2632         * gnulib/import/m4/getlogin_r.m4: Update.
2633         * gnulib/import/m4/getpagesize.m4: Update.
2634         * gnulib/import/m4/getprogname.m4: Update.
2635         * gnulib/import/m4/gettimeofday.m4: Update.
2636         * gnulib/import/m4/glibc21.m4: Update.
2637         * gnulib/import/m4/glob.m4: Update.
2638         * gnulib/import/m4/glob_h.m4: Update.
2639         * gnulib/import/m4/gnulib-cache.m4: Update.
2640         * gnulib/import/m4/gnulib-common.m4: Update.
2641         * gnulib/import/m4/gnulib-comp.m4: Update.
2642         * gnulib/import/m4/gnulib-tool.m4: Update.
2643         * gnulib/import/m4/hard-locale.m4: Update.
2644         * gnulib/import/m4/include_next.m4: Update.
2645         * gnulib/import/m4/inttypes-pri.m4: Update.
2646         * gnulib/import/m4/inttypes.m4: Update.
2647         * gnulib/import/m4/isnand.m4: Update.
2648         * gnulib/import/m4/isnanl.m4: Update.
2649         * gnulib/import/m4/largefile.m4: Update.
2650         * gnulib/import/m4/limits-h.m4: Update.
2651         * gnulib/import/m4/localcharset.m4: Update.
2652         * gnulib/import/m4/locale-fr.m4: Update.
2653         * gnulib/import/m4/locale-ja.m4: Update.
2654         * gnulib/import/m4/locale-zh.m4: Update.
2655         * gnulib/import/m4/localtime-buffer.m4: Update.
2656         * gnulib/import/m4/longlong.m4: Update.
2657         * gnulib/import/m4/lstat.m4: Update.
2658         * gnulib/import/m4/malloc.m4: Update.
2659         * gnulib/import/m4/malloca.m4: Update.
2660         * gnulib/import/m4/math_h.m4: Update.
2661         * gnulib/import/m4/mbrtowc.m4: Update.
2662         * gnulib/import/m4/mbsinit.m4: Update.
2663         * gnulib/import/m4/mbsrtowcs.m4: Update.
2664         * gnulib/import/m4/mbstate_t.m4: Update.
2665         * gnulib/import/m4/memchr.m4: Update.
2666         * gnulib/import/m4/memmem.m4: Update.
2667         * gnulib/import/m4/mempcpy.m4: Update.
2668         * gnulib/import/m4/memrchr.m4: Update.
2669         * gnulib/import/m4/mkdir.m4: Update.
2670         * gnulib/import/m4/mkstemp.m4: Update.
2671         * gnulib/import/m4/mmap-anon.m4: Update.
2672         * gnulib/import/m4/mode_t.m4: Update.
2673         * gnulib/import/m4/msvc-inval.m4: Update.
2674         * gnulib/import/m4/msvc-nothrow.m4: Update.
2675         * gnulib/import/m4/multiarch.m4: Update.
2676         * gnulib/import/m4/nocrash.m4: Update.
2677         * gnulib/import/m4/off_t.m4: Update.
2678         * gnulib/import/m4/onceonly.m4: Update.
2679         * gnulib/import/m4/open-cloexec.m4: Update.
2680         * gnulib/import/m4/open.m4: Update.
2681         * gnulib/import/m4/openat.m4: Update.
2682         * gnulib/import/m4/opendir.m4: Update.
2683         * gnulib/import/m4/pathmax.m4: Update.
2684         * gnulib/import/m4/rawmemchr.m4: Update.
2685         * gnulib/import/m4/readdir.m4: Update.
2686         * gnulib/import/m4/readlink.m4: Update.
2687         * gnulib/import/m4/realloc.m4: Update.
2688         * gnulib/import/m4/rename.m4: Update.
2689         * gnulib/import/m4/rewinddir.m4: Update.
2690         * gnulib/import/m4/rmdir.m4: Update.
2691         * gnulib/import/m4/save-cwd.m4: Update.
2692         * gnulib/import/m4/secure_getenv.m4: Update.
2693         * gnulib/import/m4/setenv.m4: Update.
2694         * gnulib/import/m4/signal_h.m4: Update.
2695         * gnulib/import/m4/ssize_t.m4: Update.
2696         * gnulib/import/m4/stat-time.m4: Update.
2697         * gnulib/import/m4/stat.m4: Update.
2698         * gnulib/import/m4/std-gnu11.m4: Update.
2699         * gnulib/import/m4/stdbool.m4: Update.
2700         * gnulib/import/m4/stddef_h.m4: Update.
2701         * gnulib/import/m4/stdint.m4: Update.
2702         * gnulib/import/m4/stdio_h.m4: Update.
2703         * gnulib/import/m4/stdlib_h.m4: Update.
2704         * gnulib/import/m4/strchrnul.m4: Update.
2705         * gnulib/import/m4/strdup.m4: Update.
2706         * gnulib/import/m4/strerror.m4: Update.
2707         * gnulib/import/m4/string_h.m4: Update.
2708         * gnulib/import/m4/strstr.m4: Update.
2709         * gnulib/import/m4/strtok_r.m4: Update.
2710         * gnulib/import/m4/sys_socket_h.m4: Update.
2711         * gnulib/import/m4/sys_stat_h.m4: Update.
2712         * gnulib/import/m4/sys_time_h.m4: Update.
2713         * gnulib/import/m4/sys_types_h.m4: Update.
2714         * gnulib/import/m4/tempname.m4: Update.
2715         * gnulib/import/m4/time_h.m4: Update.
2716         * gnulib/import/m4/unistd-safer.m4: Update.
2717         * gnulib/import/m4/unistd_h.m4: Update.
2718         * gnulib/import/m4/warn-on-use.m4: Update.
2719         * gnulib/import/m4/wchar_h.m4: Update.
2720         * gnulib/import/m4/wchar_t.m4: Update.
2721         * gnulib/import/m4/wctype_h.m4: Update.
2722         * gnulib/import/m4/wint_t.m4: Update.
2723         * gnulib/import/malloc.c: Update.
2724         * gnulib/import/malloc/scratch_buffer.h: Update.
2725         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2726         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2727         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2728         * gnulib/import/malloca.c: Update.
2729         * gnulib/import/malloca.h: Update.
2730         * gnulib/import/malloca.valgrind: Update.
2731         * gnulib/import/math.in.h: Update.
2732         * gnulib/import/mbrtowc.c: Update.
2733         * gnulib/import/mbsinit.c: Update.
2734         * gnulib/import/mbsrtowcs-impl.h: Update.
2735         * gnulib/import/mbsrtowcs-state.c: Update.
2736         * gnulib/import/mbsrtowcs.c: Update.
2737         * gnulib/import/memchr.c: Update.
2738         * gnulib/import/memmem.c: Update.
2739         * gnulib/import/mempcpy.c: Update.
2740         * gnulib/import/memrchr.c: Update.
2741         * gnulib/import/mkdir.c: Update.
2742         * gnulib/import/mkstemp.c: Update.
2743         * gnulib/import/msvc-inval.c: Update.
2744         * gnulib/import/msvc-inval.h: Update.
2745         * gnulib/import/msvc-nothrow.c: Update.
2746         * gnulib/import/msvc-nothrow.h: Update.
2747         * gnulib/import/open.c: Update.
2748         * gnulib/import/openat-die.c: Update.
2749         * gnulib/import/openat-priv.h: Update.
2750         * gnulib/import/openat-proc.c: Update.
2751         * gnulib/import/openat.c: Update.
2752         * gnulib/import/openat.h: Update.
2753         * gnulib/import/opendir.c: Update.
2754         * gnulib/import/pathmax.h: Update.
2755         * gnulib/import/pipe-safer.c: Update.
2756         * gnulib/import/rawmemchr.c: Update.
2757         * gnulib/import/readdir.c: Update.
2758         * gnulib/import/readlink.c: Update.
2759         * gnulib/import/realloc.c: Update.
2760         * gnulib/import/ref-add.sin: Update.
2761         * gnulib/import/ref-del.sin: Update.
2762         * gnulib/import/rename.c: Update.
2763         * gnulib/import/rewinddir.c: Update.
2764         * gnulib/import/rmdir.c: Update.
2765         * gnulib/import/same-inode.h: Update.
2766         * gnulib/import/save-cwd.c: Update.
2767         * gnulib/import/save-cwd.h: Update.
2768         * gnulib/import/scratch_buffer.h: Update.
2769         * gnulib/import/secure_getenv.c: Update.
2770         * gnulib/import/setenv.c: Update.
2771         * gnulib/import/signal.in.h: Update.
2772         * gnulib/import/stat-time.c: Update.
2773         * gnulib/import/stat-time.h: Update.
2774         * gnulib/import/stat-w32.c: Update.
2775         * gnulib/import/stat-w32.h: Update.
2776         * gnulib/import/stat.c: Update.
2777         * gnulib/import/stdbool.in.h: Update.
2778         * gnulib/import/stddef.in.h: Update.
2779         * gnulib/import/stdint.in.h: Update.
2780         * gnulib/import/stdio.in.h: Update.
2781         * gnulib/import/stdlib.in.h: Update.
2782         * gnulib/import/str-two-way.h: Update.
2783         * gnulib/import/strchrnul.c: Update.
2784         * gnulib/import/strdup.c: Update.
2785         * gnulib/import/streq.h: Update.
2786         * gnulib/import/strerror-override.c: Update.
2787         * gnulib/import/strerror-override.h: Update.
2788         * gnulib/import/strerror.c: Update.
2789         * gnulib/import/string.in.h: Update.
2790         * gnulib/import/stripslash.c: Update.
2791         * gnulib/import/strnlen1.c: Update.
2792         * gnulib/import/strnlen1.h: Update.
2793         * gnulib/import/strstr.c: Update.
2794         * gnulib/import/strtok_r.c: Update.
2795         * gnulib/import/sys_stat.in.h: Update.
2796         * gnulib/import/sys_time.in.h: Update.
2797         * gnulib/import/sys_types.in.h: Update.
2798         * gnulib/import/tempname.c: Update.
2799         * gnulib/import/tempname.h: Update.
2800         * gnulib/import/time.in.h: Update.
2801         * gnulib/import/unistd--.h: Update.
2802         * gnulib/import/unistd-safer.h: Update.
2803         * gnulib/import/unistd.in.h: Update.
2804         * gnulib/import/unsetenv.c: Update.
2805         * gnulib/import/verify.h: Update.
2806         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2807         * gnulib/import/wchar.in.h: Update.
2808         * gnulib/import/wctype.in.h: Update.
2809         * gnulib/import/xalloc-oversized.h: Update.
2810         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2811         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2812
2813 2018-08-16  Gary Benson <gbenson@redhat.com>
2814
2815         PR gdb/13000:
2816         * gdb/main.c (captured_main_1): Exit with nonzero status
2817         in batch mode if the last command to be executed failed.
2818         * NEWS: Mention the above.
2819
2820 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
2821
2822         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
2823         end of warning message.
2824
2825 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2826
2827         PR gdb/22943:
2828         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
2829         (aarch64_extract_return_value): Use
2830         aapcs_is_vfp_call_or_return_candidate.
2831         (aarch64_return_in_memory): Likewise.
2832         (aarch64_store_return_value): Likewise.
2833
2834 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2835
2836         * aarch64-tdep.c
2837         (aapcs_is_vfp_call_or_return_candidate): Make static
2838         (pass_in_v_or_stack): Remove function.
2839         (pass_in_v_vfp_candidate): New function.
2840         (aarch64_push_dummy_call): Check for float register candidates.
2841
2842 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2843
2844         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
2845         (aapcs_is_vfp_call_or_return_candidate_1): New function.
2846         (aapcs_is_vfp_call_or_return_candidate): Likewise.
2847
2848 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
2849
2850         PR build/23399
2851         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
2852         (struct ipa_sym_addresses): Rename to...
2853         (struct ipa_sym_addresses_common): ... this.
2854         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
2855
2856 2018-08-28  Tom Tromey  <tom@tromey.com>
2857
2858         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2859         (token_fifo): Now a std::vector.
2860         (yylex, c_parse): Update.
2861         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2862         (token_fifo): Now a std::vector.
2863         (yylex, d_parse): Update.
2864         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2865         (token_fifo): Now a std::vector.
2866         (yylex, go_parse): Update.
2867
2868 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
2869
2870         * parser-defs.h (struct type_stack) <elements>: Change type to
2871         std::vector<union type_stack_elt>.
2872         <depth, size>: Remove.
2873         * parse.c (parse_exp_in_context_1): Adjust.
2874         (type_stack_reserve): Remove.
2875         (check_type_stack_depth): Remove.
2876         (insert_into_type_stack): Adjust to std::vector.
2877         (insert_type): Likewise.
2878         (push_type): Likewise.
2879         (push_type_int): Likewise.
2880         (insert_type_address_space): Likewise.
2881         (pop_type): Likewise.
2882         (pop_type_int): Likewise.
2883         (pop_typelist): Likewise.
2884         (pop_type_stack): Likewise.
2885         (append_type_stack): Likewise.
2886         (push_type_stack): Likewise.
2887         (get_type_stack): Likewise.
2888         (type_stack_cleanup): Likewise.
2889         (push_typelist): Likewise.
2890         (follow_types): Likewise.
2891         (_initialize_parse): Likewise.
2892
2893 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2894
2895         * NEWS: Mention csky target.
2896
2897 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
2898             Hafiz Abid Qadeer  <abidh@codesourcery.com>
2899             Don Breazeal  <donb@codesourcery.com>
2900
2901         * csky-linux-tdep.c: New file.
2902         * csky-tdep.c: Likewise.
2903         * csky-tdep.h: Likewise.
2904         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
2905         csky-tdep.o.
2906         (HFILES_NO_SRCDIR): Add csky-tdep.h.
2907         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
2908         * configure.tgt: Add csky support.
2909
2910 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
2911
2912         * python/py-framefilter.c (py_print_frame): Print frame architecture
2913         when printing on an MI output.
2914
2915 2018-08-27  Tom Tromey  <tom@tromey.com>
2916
2917         PR build/23087:
2918         * configure: Rebuild.
2919         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
2920
2921 2018-08-27  Tom Tromey  <tom@tromey.com>
2922
2923         * aarch64-linux-tdep.c
2924         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
2925         casts to int.
2926
2927 2018-08-27  Tom Tromey  <tom@tromey.com>
2928
2929         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
2930         unsigned.
2931         (ppc64_standard_linkage1, ppc64_standard_linkage2)
2932         (ppc64_standard_linkage3, ppc64_standard_linkage4)
2933         (ppc64_standard_linkage5, ppc64_standard_linkage6)
2934         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
2935         unsigned.
2936
2937 2018-08-27  Tom Tromey  <tom@tromey.com>
2938
2939         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
2940         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
2941
2942 2018-08-27  Tom Tromey  <tom@tromey.com>
2943
2944         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
2945         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
2946         ULONGEST_MAX.
2947         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
2948         ULONGEST_MAX.
2949         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
2950         ULONGEST_MAX.
2951         * sparc-linux-tdep.c (sparc32_linux_sigframe)
2952         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
2953         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
2954         ULONGEST_MAX.
2955         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
2956         (ppc64_linux_sigaction_tramp_frame)
2957         (ppc32_linux_sighandler_tramp_frame)
2958         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2959         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
2960         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
2961         * mn10300-linux-tdep.c (am33_linux_sigframe)
2962         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
2963         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
2964         * mips-linux-tdep.c (mips_linux_o32_sigframe)
2965         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
2966         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
2967         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
2968         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
2969         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
2970         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
2971         * microblaze-linux-tdep.c
2972         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2973         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
2974         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
2975         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
2976         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
2977         * common/common-types.h (ULONGEST_MAX): New define.
2978         (CORE_ADDR_MAX): Fix formatting.
2979         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
2980         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
2981         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
2982         (arm_linux_rt_sigreturn_tramp_frame)
2983         (arm_eabi_linux_sigreturn_tramp_frame)
2984         (arm_eabi_linux_rt_sigreturn_tramp_frame)
2985         (thumb2_eabi_linux_sigreturn_tramp_frame)
2986         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
2987         (arm_linux_restart_syscall_tramp_frame)
2988         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
2989         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
2990         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
2991         ULONGEST_MAX.
2992         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
2993
2994 2018-08-27  Tom Tromey  <tom@tromey.com>
2995
2996         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
2997         CORE_ADDR_MAX.
2998         * mips-tdep.c (mips_deal_with_atomic_sequence)
2999         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3000         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3001         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3002         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3003         CORE_ADDR_MAX.
3004         * aarch64-tdep.c (aarch64_software_single_step): Use
3005         CORE_ADDR_MAX.
3006
3007 2018-08-27  Tom Tromey  <tom@tromey.com>
3008
3009         * linespec.c (complete_linespec_component): Add cast to "char".
3010         * completer.c (completion_tracker::build_completion_result): Add
3011         cast to "char".
3012
3013 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3014
3015         * solist.h (struct solist, struct target_so_ops): Fix
3016         indentation.
3017
3018 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3019
3020         * ada-tasks.c (ada_task_info_s): Remove typedef.
3021         (DEF_VEC_O(ada_task_info_s)): Remove.
3022         (struct ada_tasks_inferior_data): Initialize fields.
3023         <task_list>: Make an std::vector.
3024         (get_ada_tasks_inferior_data): Allocate with new.
3025         (ada_get_task_number): Adjust.
3026         (get_task_number_from_id): Likewise.
3027         (valid_task_id): Likewise.
3028         (ada_get_task_info_from_ptid): Likewise.
3029         (iterate_over_live_ada_tasks): Likewise.
3030         (add_ada_task): Likewise.
3031         (read_known_tasks): Likewise.
3032         (ada_build_task_list): Likewise.
3033         (print_ada_task_info): Likewise.
3034         (info_task): Likewise.
3035         (task_command_1): Likewise.
3036
3037 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3038
3039         * ada-lang.c (add_angle_brackets): Return std::string.
3040
3041 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3042
3043         * python/py-threadevent.c (py_get_event_thread): Initialize
3044         pythread.
3045
3046 2018-08-24  Pedro Alves  <palves@redhat.com>
3047
3048         * python/py-bpevent.c (create_breakpoint_event_object): Use
3049         copy-initialization.
3050         * python/py-continueevent.c (emit_continue_event): Use
3051         copy-initialization.
3052         * python/py-exitedevent.c (create_exited_event_object): Return a
3053         gdbpy_ref<>.
3054         (emit_exited_event): Use copy-initialization.
3055         * python/py-inferior.c (python_new_inferior)
3056         (python_inferior_deleted, add_thread_object): Use
3057         copy-initialization.
3058         * python/py-infevents.c (create_inferior_call_event_object)
3059         (create_register_changed_event_object)
3060         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3061         (emit_inferior_call_event, emit_memory_changed_event)
3062         (emit_register_changed_event): Use copy-initialization.
3063         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3064         Return a gdbpy_ref<>.
3065         (emit_new_objfile_event): Use copy-initialization.
3066         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3067         (emit_clear_objfiles_event): Use copy-initialization.
3068         * python/py-signalevent.c (create_signal_event_object): Use
3069         copy-initialization.
3070         * python/py-threadevent.c (create_thread_event_object): Use
3071         copy-initialization.
3072
3073 2018-08-24  Pedro Alves  <palves@redhat.com>
3074             Simon Marchi  <simon.marchi@ericsson.com>
3075
3076         PR gdb/23379
3077         * python/py-continueevent.c: Include "gdbthread.h".
3078         (create_continue_event_object): Add intro comment.  Add 'ptid'
3079         parameter.  Use it to find thread to pass to
3080         create_thread_event_object.
3081         (emit_continue_event): Pass PTID down to
3082         create_continue_event_object.
3083         * python/py-event.h (py_get_event_thread): Declare.
3084         (create_thread_event_object): Remove default from 'thread'
3085         parameter.
3086         * python/py-stopevent.c (create_stop_event_object): Use
3087         py_get_event_thread.
3088         * python/py-threadevent.c (get_event_thread): Rename to ...
3089         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3090         and use it to find the thread.
3091         (create_thread_event_object): Assert that THREAD isn't null.
3092         Don't find the event thread here.
3093
3094 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3095
3096         * block.h (blockrange, blockranges): New struct declarations.
3097         (struct block): Add new field named `ranges'.
3098         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3099         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3100         macros for accessing ranges in struct block.
3101         (make_blockranges): New declaration.
3102         block.c (make_blockranges): New function.
3103         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3104         for block.
3105         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3106         * blockframe.c (cache_pc_function_block): New static global.
3107         (clear_pc_function_cache): Clear cache_pc_function_block.
3108         (find_pc_partial_function): Move comment to symtab.h.  Add
3109         support for non-contiguous blocks.
3110         * cli/cli-cmds.c (block.h): Include.
3111         (print_disassembly): Handle printing of non-contiguous blocks.
3112         (disassemble_current_function): Likewise.
3113         (disassemble_command): Likewise.
3114
3115         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3116         BLOCK_START.
3117         * blockframe.c (get_pc_function_start): Likewise.
3118         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3119         (gcc_symbol_address): Likewise.
3120         * compile/compile-object-run.c (compile_object_run): Likewise.
3121         * compile/compile.c (get_expr_block_and_pc): Likewise.
3122         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3123         (func_addr_to_tail_call_list): Likewise.
3124         * findvar.c (default_read_var_value): Likewise.
3125         * inline-frame.c (inline_frame_this_id): Likewise.
3126         (skip-inline_frames): Likewise.
3127         * infcmd.c (until_next_command): Likewise.
3128         * linespec.c (convert_linespec_to_sals): Likewise.
3129         * parse.c (parse_exp_in_context_1): Likewise.
3130         * printcmd.c (build_address_symbolic): likewise.
3131         (info_address_command): Likewise.
3132         symtab.c (find_function_start_sal): Likewise.
3133         (skip_prologue_sal): Likewise.
3134         (find_function_alias_target): Likewise.
3135         (find_gnu_ifunc): Likewise.
3136         * stack.c (find_frame_funname): Likewise.
3137         * symtab.c (fixup_symbol_section): Likewise.
3138         (find_function_start_sal): Likewise.
3139         (skip_prologue_sal): Likewsie.
3140         (find_function_alias_target): Likewise.
3141         (find_gnu_ifunc): Likewise.
3142         * tracepoint.c (info_scope_command): Likewise.
3143         * value.c (value_fn_field): Likewise.
3144
3145         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3146         in place of find_pc_partial_function.
3147         * blockframe.c (find_function_entry_range_from_pc): New function.
3148         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3149         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3150         for each range in a block.
3151
3152
3153 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3154
3155         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3156         incrementation.
3157
3158 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3159
3160         * solib-svr4.c (read_program_headers_from_bfd): Return
3161         gdb::optional<gdb::byte_vector>.
3162         (svr4_exec_displacement): Adjust.
3163
3164 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3165
3166         * solib-svr4.c (read_program_header): Return
3167         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3168         (find_program_interpreter): Return
3169         gdb::optional<gdb::byte_vector>.
3170         (scan_dyntag_auxv): Adjust.
3171         (enable_break): Adjust.
3172         (svr4_exec_displacement): Adjust.
3173
3174 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3175
3176         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3177         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3178
3179 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3180
3181         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3182         string_vprintf.
3183         * guile/scm-utils.c (gdbscm_printf): Likewise.
3184         * serial.c (serial_printf): Likewise.
3185         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3186
3187 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3188
3189         * stack.c (print_frame): Print frame architecture when printing on
3190         an MI output.
3191         * NEWS: Mention new "arch" attribute in frame output.
3192
3193 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3194
3195         * arch/aarch64.h (aarch64_regnum): Update comment.
3196
3197 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3198
3199         * NEWS: Add SVE to 8.2 section.
3200
3201 2018-08-21  Pedro Alves  <palves@redhat.com>
3202
3203         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3204         out from gdbscm_parse_function_args.
3205         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3206         gdbscm_parse_function_args_1.
3207
3208 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3209
3210         PR gdb/17816
3211         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3212         operator.
3213
3214 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3215
3216         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3217
3218 2018-08-19  Michael Spang  <spang@google.com>
3219
3220         PR gdb/11786
3221         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3222         for PT_TLS segments.
3223
3224 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3225
3226         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3227         dwarf_variable_value.
3228         * dwarf2-frame.c (class dwarf_expr_executor):
3229         Add override for dwarf_variable_value.
3230         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3231         (class symbol_needs_eval_context): Likewise.
3232         (indirect_synthetic_pointer): Add forward declaration.
3233         (sect_variable_value): New function.
3234         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3235         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3236         for DW_OP_GNU_variable_value.
3237
3238 2018-08-16  Tom Tromey  <tom@tromey.com>
3239
3240         * top.c (read_command_file): Update.
3241         (command_line_input): Remove "repeat" argument.
3242         * ada-lang.c (get_selections): Update.
3243         * linespec.c (decode_line_2): Update.
3244         * defs.h (command_line_input): Remove argument.
3245         * cli/cli-script.c (read_next_line): Update.
3246         * python/py-gdb-readline.c: Update.
3247
3248 2018-08-17  Tom Tromey  <tom@tromey.com>
3249
3250         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3251         command_line_input.
3252
3253 2018-08-15  Tom Tromey  <tom@tromey.com>
3254
3255         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3256
3257 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3258
3259         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3260         If used, use find_pc_partial_function to find address range
3261         to disassemble.
3262         * mi/mi-main.c (mi_cmd_list_features): Report
3263         "data-disassemble-a-option" feature.
3264         * NEWS: Mention new -data-disassemble option -a.
3265
3266 2018-08-13  Tom Tromey  <tom@tromey.com>
3267
3268         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3269
3270 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3271
3272         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3273         (aarch64_linux_collect_sve_regset): Likewise.
3274         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3275         * regcache.h (regcache_map_entry_size): New function.
3276
3277 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3278
3279         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3280         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3281         (SVE_HEADER_VL_LENGTH): Likewise.
3282         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3283         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3284         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3285         (SVE_HEADER_SIZE_OFFSET): Likewise.
3286         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3287         (SVE_HEADER_VL_OFFSET): Likewise.
3288         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3289         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3290         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3291         (SVE_HEADER_SIZE): Likewise.
3292         (aarch64_linux_core_read_vq): Add function.
3293         (aarch64_linux_core_read_description): Check for SVE section.
3294
3295 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3296
3297         * aarch64-fbsd-tdep.c
3298         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3299         collect_size.
3300         * aarch64-linux-tdep.c
3301         (aarch64_linux_iterate_over_regset_sections): Likewise.
3302         * alpha-linux-tdep.c
3303         (alpha_linux_iterate_over_regset_sections):
3304         * alpha-nbsd-tdep.c
3305         (alphanbsd_iterate_over_regset_sections): Likewise.
3306         * amd64-fbsd-tdep.c
3307         (amd64fbsd_iterate_over_regset_sections): Likewise.
3308         * amd64-linux-tdep.c
3309         (amd64_linux_iterate_over_regset_sections): Likewise.
3310         * arm-bsd-tdep.c
3311         (armbsd_iterate_over_regset_sections): Likewise.
3312         * arm-fbsd-tdep.c
3313         (arm_fbsd_iterate_over_regset_sections): Likewise.
3314         * arm-linux-tdep.c
3315         (arm_linux_iterate_over_regset_sections): Likewise.
3316         * corelow.c (get_core_registers_cb): Likewise.
3317         (core_target::fetch_registers): Likewise.
3318         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3319         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3320         * gdbarch.h (void): Regenerate.
3321         * gdbarch.sh: Add supply_size and collect_size.
3322         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3323         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3324         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3325         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3326         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3327         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3328         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3329         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3330         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3331         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3332         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3333         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3334         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3335         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3336         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3337         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3338         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3339         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3340         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3341         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3342         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3343         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3344         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3345         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3346         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3347         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3348         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3349         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3350         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3351         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3352
3353 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3354
3355         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3356         with string_printf.
3357
3358 2018-08-10  Keith Seitz  <keiths@redhat.com>
3359
3360         * compile/compile-c-support.c (add_code_header, add_code_footer):
3361         Move into policy class.
3362         (c_push_user_expression, pop_user_expression_nop)
3363         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3364         (compile_program): New host class.
3365         (c_compile_program): New typedef.
3366         (c_compute_porgram): Use c_compile_program.
3367
3368 2018-08-10  Keith Seitz  <keiths@redhat.com>
3369
3370         * compile/compile-internal.h (compile_instance::~compile_instance):
3371         Remove calls to htab_delete.
3372         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3373         * compile.c (compile_instance::compile_instance): Initialize
3374         htab unique pointers.
3375         (compile_instance::get_cached_type, compile_instance::insert_type)
3376         (compile_instance::error_symbol_once): Update for unique_ptr.
3377
3378 2018-08-10  Keith Seitz  <keiths@redhat.com>
3379
3380         * compile/compile-c-symbols.c (struct symbol_error)
3381         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3382         (compile_instance::insert_symbol_error)
3383         (compile_instance::error_symbol_once): Move to ...
3384         * compile/compile.c: ... here.
3385
3386 2018-08-10  Keith Seitz  <keiths@redhat.com>
3387
3388         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3389         instead of `new_compile_instance'.
3390         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3391         Update description.
3392         If the symbol error map is not initialized, create it.
3393         (generate_c_for_for_one_symbol): Do not check/initialize
3394         the symbol error map.
3395         * compile/compile-c-types.c (compile_c_instance): Make a class.
3396         Update all callers.
3397         (compile_instance::compile_instance): Initialize the type cache.
3398         (get_cached_type): New function.
3399         (insert_type): Update description.
3400         (compile_c_instance::m_default_cflags): Define.
3401         (convert_type): Update description.  Use get_cached_type.
3402         (delete_instance): Moved to destructor.
3403         (new_compile_instance): Moved to constructor.
3404         * compile/compile-c.h (compile_c_instance): Make class inheriting
3405         from compile_instance.
3406         <base>: Remove field.
3407         <type_map, symbol_err_map>: Move to base class.
3408         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3409         * compile/compile-internal.h (compile_instance): Make class.
3410         <type_map_t, symbol_err_map_t>: Define.
3411         <fe>: Rename to `m_gcc_fe'.
3412         <scope, block, gcc_target_options>: Add `m_' prefix.
3413         <m_type_map, m_symbol_err_map>: New fields, moved from
3414         compile_c_instance.
3415         <destroy>: Remove.
3416         (convert_type, new_compile_instance): Remove.
3417         * compile/compile.c (cleanup_compile_instance): Remove.
3418         (compile_to_object): Use unique_ptr to eliminate cleanups.
3419         (compile_instance::set_print_callback, compile_instance::version)
3420         (compile_instance::set_verbose)
3421         (compile_instance::set_driver_filename)
3422         (compile_instance::set_triplet_regexp)
3423         (compile_instance::set_arguments)
3424         (compile_instance::set_source_file)
3425         (compile_instance::compile): Define.
3426
3427 2018-08-10  Keith Seitz  <keiths@redhat.com>
3428
3429         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3430         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3431         gcc-c-fe.def to define C plugin.
3432         (delete_instance): Delete `c_plugin'.
3433         (new_compile_instance): Initialize `c_plugin'.
3434         * compile/compile-c.h: Include gcc_c_plugin.h.
3435         (struct compile_c_instance) <c_plugin>: New member.
3436         * gcc-c-plugin.h: New file.
3437         Update all callers with API change.
3438
3439 2018-08-10  Keith Seitz  <keiths@redhat.com>
3440
3441         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3442         (HFILES_NO_SRCDIR): ... to here.
3443         Add compile-internal.h and compile-c.h.
3444         * compile/compile-c-support.c: Include compile-c.h.
3445         * compile/compile-c-symbols.c: Include compile-c.h.
3446         (generate_c_for_variable_locations): Update comment.
3447         * compile/compile-c-types.c: Include compile-c.h.
3448         * compile/compile-c.h: New file -- moved C language declarations
3449         from other files here.
3450         * compile/compile-internal.h: Do not include hashtab.h or
3451         common/enum-flags.h.
3452         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3453         (gcc_convert_symbol, gcc_symbol_address)
3454         (generate_c_for_variable_locations, c_get_mode_for_size)
3455         (c_get_range_decl_name): Definitions moved to compile-c.h.
3456         * compile/compile-loc2c.c: Include compile-c.h.
3457
3458 2018-08-10  Keith Seitz  <keiths@redhat.com>
3459
3460         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3461         (c_symbol_substitution_name): ... this.
3462         Update all callers.
3463
3464 2018-08-10  Keith Seitz  <keiths@redhat.com>
3465
3466         * compile/compile-c-support.c (c_compute_program): Use
3467         unique_xmalloc_ptr to eliminate cleanup.
3468         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3469         Return a unique_xmalloc_ptr and eliminate cleanup.
3470         * compile/compile-internal.h (generate_c_for_variable_locations):
3471         Return unique_xmalloc_ptr and update description.
3472
3473 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3474
3475         * corelow.c (core_target::get_core_register_section): Rename
3476         min_size to section_min_size.
3477
3478 2018-08-09  Jim Wilson  <jimw@sifive.com>
3479
3480         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3481         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3482         * NEWS: Mention new GNU/Linux RISC-V target.
3483         * configure.host: Add riscv*-*-linux*.
3484         * configure.nat: Add riscv*.
3485         * configure.tgt: Add riscv*-*-linux*.
3486         * riscv-linux-nat.c: New file.
3487         * riscv-linux-tdep.c: New file.
3488
3489 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3490
3491         * infrun.c (resume): Make static, add forward declaration.
3492         (proceed): Update header comment.
3493         * infrun.h (resume): Delete declaration.
3494
3495 2018-08-09  Tom Tromey  <tom@tromey.com>
3496
3497         * riscv-tdep.h: Minor formatting fixes.
3498
3499 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3500
3501         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3502         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3503         (test_mkdir_recursive): Likewise.
3504         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3505
3506 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3507
3508         * valarith.c (value_subscripted_rvalue): If an array is not in
3509         memory, and we don't know the upper bound, then we can't know that
3510         the requested element exists or not.
3511
3512 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3513
3514         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3515         (target_options_to_string): Add comment.
3516
3517 2018-08-08  Tom Tromey  <tom@tromey.com>
3518
3519         * unittests/scoped_mmap-selftests.c: Check result of "write".
3520
3521 2018-08-08  Jim Wilson  <jimw@sifive.com>
3522
3523         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3524         (decode_register_index_short): New.
3525         (decode_j_type_insn, decode_cj_type_insn): New.
3526         (decode_b_type_insn, decode_cb_type_insn): New.
3527         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3528         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3529         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3530         is_c_sw_insn instead of is_sw_insn.
3531         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3532         (riscv_software_single_step): New.
3533         * riscv-tdep.h (riscv_software_single_step): Declare.
3534
3535         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3536         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3537
3538 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3539
3540         PR gdb/18050:
3541         * target.c (dispose_inferior): Don't dispose of inferiors that are
3542         already killed.
3543
3544 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3545
3546         * remote.c (remote_target::download_tracepoint): Change char* to
3547         const char*.
3548
3549 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3550
3551         * target.h (target_options_to_string): Return an std::string.
3552         * target.c (str_comma_list_concat_elem): Return void, use
3553         std::string.
3554         (do_option): Likewise.
3555         (target_options_to_string): Return an std::string.
3556         * linux-nat.c (linux_nat_target::wait): Adjust.
3557         * target-debug.h (target_debug_print_options): Adjust.
3558
3559 2018-08-07  Tom Tromey  <tom@tromey.com>
3560
3561         * Makefile.in (CPPFLAGS): New variable.
3562         (INTERNAL_CPPFLAGS): Use it.
3563
3564 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3565
3566         * NEWS: Mention the index cache.
3567
3568 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3569
3570         * common/pathstuff.h (get_standard_cache_dir): New.
3571         * common/pathstuff.c (get_standard_cache_dir): New.
3572         * build-id.h (build_id_to_string): New.
3573         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
3574         DEBUG_STR_SUFFIX): Move to here.
3575         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
3576         DEBUG_STR_SUFFIX): Move from there.
3577         (write_psymtabs_to_index): Make non-static, add basename
3578         parameter.  Write to temporary files, rename when done.
3579         (save_gdb_index_command): Adjust call to
3580         write_psymtabs_to_index.
3581         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
3582         field.
3583         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
3584         (get_gdb_index_contents_from_cache): New.
3585         (get_gdb_index_contents_from_cache_dwz): New.
3586         (dwarf2_initialize_objfile): Read index from cache.
3587         (dwarf2_build_psymtabs): Save to index.
3588         * dwarf-index-cache.h: New file.
3589         * dwarf-index-cache.c: New file.
3590         * dwarf-index-write.h: New file.
3591
3592 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3593
3594         * gnulib/aclocal.m4: Re-generate.
3595         * gnulib/config.in: Re-generate.
3596         * gnulib/configure: Re-generate.
3597         * gnulib/import/Makefile.am: Re-generate.
3598         * gnulib/import/Makefile.in: Re-generate.
3599         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3600         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3601         * gnulib/import/m4/mkdir.m4: New file.
3602         * gnulib/import/mkdir.c: New file.
3603         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
3604         module.
3605
3606 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3607
3608         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
3609         * common/scoped_mmap.c: New file.
3610         * common/scoped_mmap.h (destroy): New method.
3611         (~scoped_mmap, reset): Use destroy.
3612         (scoped_mmap): New move constructor.
3613         (mmap_file): New declaration.
3614         * unittests/scoped_mmap-selftests.c (test_normal,
3615         test_invalid_filename, run_tests): New functions.
3616         (_initialize_scoped_mmap_selftests): Register selftest.
3617
3618 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3619
3620         * dwarf2read.c (read_gdb_index_from_section): Rename to...
3621         (read_gdb_index_from_buffer): ... this.  Remove section
3622         parameter, add buffer parameter.
3623         (get_gdb_index_contents_ftype,
3624         get_gdb_index_contents_dwz_ftype): New typedefs.
3625         (dwarf2_read_gdb_index): Add callback parameters to get the
3626         index contents.
3627         (get_gdb_index_contents_from_section): New.
3628         (dwarf2_initialize_objfile): Update call to
3629         dwarf2_read_gdb_index.
3630
3631 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3632
3633         * common/filestuff.h (gdb_fopen_cloexec): New overload.
3634         (gdb_open_cloexec): Likewise.
3635         * nat/linux-osdata.c (command_from_pid): Use string_printf.
3636         (commandline_from_pid): Likewise.
3637         (linux_xfer_osdata_threads): Likewise.
3638         (linux_xfer_osdata_fds): Likewise.
3639         * ada-lang.c (is_package_name): Likewise.
3640         * auxv.c (procfs_xfer_auxv): Likewise.
3641         * breakpoint.c (print_one_breakpoint_location): Use
3642         uiout::field_fmt.
3643         (print_one_catch_solib): Use string_printf.
3644         * coff-pe-read.c (add_pe_exported_sym): Likewise.
3645         (add_pe_forwarded_sym): Likewise.
3646         * dwarf2read.c (create_type_unit_group): Likewise.
3647         (build_error_marker_type): Likewise.
3648         * infcall.c (get_function_name): Likewise.
3649         * valprint.c (print_converted_chars_to_obstack): Likewise.
3650         * xtensa-tdep.c (xtensa_register_type): Likewise.
3651
3652 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
3653
3654         * remote.c (remote_target::download_tracepoint): Fix format
3655         string errors.
3656
3657 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3658
3659         * tracefile.c: Include common/byte-vector.h.
3660         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
3661         with trace_regblock_size if needed.  Update uses of buf.
3662
3663 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3664
3665         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
3666         std::vector<unsigned char>.
3667         * tracepoint.c (collection_list::collection_list): Remove
3668         m_regs_mask initializer from initializer list.  Resize
3669         m_regs_mask using the largest remote register number.
3670         (collection_list::add_remote_register): Remove size check on
3671         m_regs_mask.  Use at to access element.
3672         (collection_list::stringify): Change type of temp_buf to
3673         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
3674         stringify the register mask.  Use pack_hex_byte for the register
3675         mask.
3676
3677 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3678
3679         * tracepoint.h (class collection_list) <add_register>: Remove.
3680         <add_remote_register, add_ax_registers, add_local_register>:
3681         Declare.
3682         <add_memrange>: Add scope parameter.
3683         * tracepoint.c (encode_actions_1): Likewise.
3684         (collection_list::add_register): Rename to ...
3685         (collection_list::add_remote_register): ... this.  Update
3686         comment.
3687         (collection_list::add_ax_registers, add_local_register): New
3688         methods.
3689         (collection_list::add_memrange): Add scope parameter.  Call
3690         add_local_register instead of add_register.
3691         (finalize_tracepoint_aexpr): New function.
3692         (collection_list::collect_symbol): Update calls to add_memrange.
3693         Call add_local_register instead of add_register.  Call
3694         add_ax_registers.  Call finalize_tracepoint_aexpr.
3695         (encode_actions_1): Get remote regnos for $reg action.  Call
3696         add_remote_register, add_ax_registers, and add_local_register.
3697         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
3698         (validate_actionline): Call finalize_tracepoint_aexpr.
3699
3700 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3701
3702         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
3703         Replace array buf with gdb::char_vector buf, of size
3704         get_remote_packet_size ().  Replace references to buf and
3705         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
3706         and xsnprintf with snprintf.  Raise errors if the buffer is too
3707         small.
3708
3709 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3710
3711         * remote.c (remote_target::download_tracepoint): Fix the has_more
3712         predicate in the QTDP action list iteration.
3713
3714 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3715
3716         * remote.c (remote_target::download_tracepoint): Fix indentation
3717         in for block.
3718
3719 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3720
3721         * proc-api.c (_initialize_proc_api): Remove c, unused.
3722         * procfs.c (procfs_init_inferior): Remove signals, unused.
3723         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
3724         unused.
3725
3726 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
3727             Andrew Burgess  <andrew.burgess@embecosm.com>
3728
3729         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
3730         'W_STOPCODE (0)' as this could be ambiguous.
3731
3732 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
3733
3734         * ser-tcp.c (net_open): Fix thinko when deciding whether to
3735         disable TCP's Nagle algorithm (use "ai_protocol" instead of
3736         "ai_socktype").
3737
3738 2018-08-02  Tom Tromey  <tom@tromey.com>
3739
3740         PR symtab/16842.
3741         * dwarf2read.c (read_func_scope): Set symtab on template parameter
3742         symbols.
3743         (process_structure_scope): Likewise.
3744
3745 2018-08-02  Xavier Roirand  <roirand@adacore.com>
3746
3747         PR gdb/22629:
3748         * darwin-nat.c (darwin_kill_inferior): Fix handling of
3749         kill inferior.
3750
3751 2018-08-02  Tom Tromey  <tom@tromey.com>
3752
3753         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
3754         (darwin_suspend_inferior, darwin_resume_inferior)
3755         (darwin_decode_notify_message, darwin_resume_inferior_threads)
3756         (darwin_check_new_threads): Check result of get_darwin_inferior.
3757
3758 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
3759
3760         GDB 8.1.1 released.
3761
3762 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
3763
3764         * varobj.c (varobj_get_path_expr_parent): Report an error if
3765         parent is a dynamic varobj.
3766
3767 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3768
3769         * gnulib/aclocal.m4: Re-generate.
3770         * gnulib/config.in: Re-generate.
3771         * gnulib/configure: Re-generate.
3772         * gnulib/import/Makefile.in: Re-generate.
3773         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3774         * gnulib/import/m4/onceonly.m4: Re-generate.
3775
3776 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3777
3778         * target-descriptions.c (struct xml_test_tdesc): New.
3779         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
3780         (record_xml_tdesc): Update.
3781         (maintenance_check_xml_descriptions): Update.
3782         * target-descriptions.h (record_xml_tdesc): Update comment.
3783
3784 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3785
3786         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
3787         checking array bounds are defined.
3788
3789 2018-07-30  Tom Tromey  <tom@tromey.com>
3790
3791         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
3792         irreflexivity violation.
3793
3794 2018-07-30  Tom Tromey  <tom@tromey.com>
3795
3796         * cli/cli-decode.c (lookup_cmd): Remove lint code.
3797         * value.c (unpack_long): Remove lint code.
3798         * valops.c (value_ind): Remove lint code.
3799         * valarith.c (value_x_binop, value_x_unop, value_equal)
3800         (value_pos): Remove lint code.
3801
3802 2018-07-28  Tom de Vries  <tdevries@suse.de>
3803
3804         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
3805         with undefined upper bound as <optimized out>.
3806
3807 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
3808
3809         * gcore.in: Rename variable "name" to "prefix".  Expand
3810         "usage" text.
3811
3812 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
3813
3814         * windows-nat.c (windows_nat_target::create_inferior): Update to
3815         call close() in global namespace.
3816
3817 2018-07-26  Tom Tromey  <tom@tromey.com>
3818
3819         * dwarf-index-write.c (add_address_entry): Don't add objfile
3820         offsets.
3821         * dbxread.c (find_stab_function): Rename from
3822         find_stab_function_addr.  Return a bound_minimal_symbol.
3823         (read_dbx_symtab): Use raw_text_low, raw_text_high.
3824         Don't add objfile offsets.
3825         (end_psymtab): Use raw_text_low, raw_text_high,
3826         MSYMBOL_VALUE_RAW_ADDRESS.
3827         (read_ofile_symtab): Update.
3828         (process_one_symbol): Update.
3829         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
3830         offsets.
3831         (dw2_relocate): Remove.
3832         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
3833         searching addrmap.
3834         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
3835         Update.
3836         (process_psymtab_comp_unit_reader, add_partial_symbol)
3837         (add_partial_subprogram, dwarf2_ranges_read): Update.
3838         (load_partial_dies): Update.
3839         (add_address_entry): Don't add objfile offsets.
3840         (dwarf2_build_include_psymtabs): Update.
3841         (create_addrmap_from_aranges): Don't add objfile offsets.
3842         (dw2_find_pc_sect_compunit_symtab): Update.
3843         * mdebugread.c (parse_symbol): Don't add objfile offsets.
3844         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
3845         Update.
3846         (parse_partial_symbols): Don't add objfile offsets.  Use
3847         raw_text_low, raw_text_high.  Update.
3848         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
3849         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
3850         or call 'relocate' quick function.  Clear psymbol_map.
3851         * psympriv.h (struct partial_symbol) <address>: Add section
3852         offset.
3853         <set_unrelocated_address>: Rename from set_address.
3854         <raw_text_low, raw_text_high>: New methods.
3855         <text_low, text_high>: Add objfile parameter.
3856         (add_psymbol_to_bcache): Add 'section' parameter.  Call
3857         set_unrelocated_address.
3858         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3859         (find_pc_psymbol): Update.
3860         (fixup_psymbol_section, relocate_psymtabs): Remove.
3861         (dump_psymtab, psym_functions): Update.
3862         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
3863         parameter.
3864         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
3865         (start_psymtab_common): Update.
3866         * symfile-debug.c (debug_qf_relocate): Remove.
3867         (debug_sym_quick_functions): Update.
3868         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
3869         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
3870         Update.
3871
3872 2018-07-26  Tom Tromey  <tromey@redhat.com>
3873
3874         * dbxread.c (end_psymtab): Use text_high_valid and
3875         text_low_valid.
3876         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
3877         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
3878         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3879         Update comment.
3880         <text_low_valid, text_high_valid>: New fields.
3881         <set_text_low, set_text_high>: Update.
3882         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
3883
3884 2018-07-26  Tom Tromey  <tom@tromey.com>
3885
3886         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
3887         Update.
3888         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
3889         textlow and texthigh fields.
3890         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
3891         Update.
3892         * mdebugread.c (parse_lines, parse_partial_symbols)
3893         (psymtab_to_symtab_1): Update.
3894         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3895         Rename fields.  Update comment.  Now private.
3896         <text_low, text_high, set_text_low, set_text_high>: New methods.
3897         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3898         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
3899         (start_psymtab_common, maintenance_info_psymtabs)
3900         (maintenance_check_psymtabs): Update.
3901         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
3902         texthigh fields.
3903         (scan_xcoff_symtab): Update.
3904
3905 2018-07-26  Tom Tromey  <tromey@redhat.com>
3906
3907         * psympriv.h (struct partial_symbol) <unrelocated_address,
3908         address, set_address>: New methods.
3909         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
3910         (fixup_psymbol_section, relocate_psymtabs): Update.
3911         (print_partial_symbols): Add 'objfile' parameter.  Update.
3912         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
3913         Update.
3914
3915 2018-07-26  Tom Tromey  <tom@tromey.com>
3916
3917         * dwarf-index-write.c (write_psymbols, debug_names::insert)
3918         (debug_names::write_psymbols): Update.
3919         * psympriv.h (struct partial_symbol): Derive from
3920         general_symbol_info.
3921         <obj_section>: New method.
3922         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
3923         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3924         (find_pc_sect_psymbol, fixup_psymbol_section)
3925         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
3926         (print_partial_symbols, recursively_search_psymtabs)
3927         (compare_psymbols, psymbol_hash, psymbol_compare)
3928         (add_psymbol_to_bcache, maintenance_check_psymtabs)
3929         (psymbol_name_matches, psym_fill_psymbol_map): Update.
3930
3931 2018-07-26  Tom Tromey  <tromey@redhat.com>
3932
3933         * dbxread.c (end_psymtab): Remove dead code.
3934
3935 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
3936
3937         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
3938         DWARF unwinders are disabled.
3939         * dwarf2-frame.c: Add dwarf2read.h include.
3940         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
3941         disabled.
3942         (dwarf2_frame_unwinders_enabled_p): Define.
3943         (show_dwarf_unwinders_enabled_p): New function.
3944         (_initialize_dwarf2_frame): Register switch to control DWARF
3945         unwinder use.
3946         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
3947         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
3948         (show_dwarf_cmdlist): Remove static keyword.
3949         * dwarf2read.h (set_dwarf_cmdlist): Declare.
3950         (show_dwarf_cmdlist): Declare.
3951         * NEWS: Document new feature.
3952
3953 2018-07-26  Tom de Vries  <tdevries@suse.de>
3954
3955         PR breakpoints/23366
3956         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
3957
3958 2018-07-26  Tom de Vries  <tdevries@suse.de>
3959
3960         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
3961         DW_AT_count can't be translated to a dynamic prop.
3962
3963 2018-07-25  Tom de Vries  <tdevries@suse.de>
3964
3965         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
3966         try/catch.
3967
3968 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
3969
3970         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
3971
3972 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
3973
3974         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
3975
3976 2018-07-24  Keith Seitz  <keiths@redhat.comt
3977
3978         PR symtab/23010
3979         * dwarf2read.c (dw2_add_symbol_to_list): New function.
3980         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
3981         instead of add_symbol_to_list.
3982         (read_file_scope): Call prepare_one_comp_unit before reading
3983         any other DIEs.
3984
3985 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
3986
3987         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
3988
3989 2018-07-24  Tom Tromey  <tom@tromey.com>
3990
3991         * utils.c (malloc, realloc, free): Don't declare.
3992         * configure, config.in: Rebuild.
3993         * configure.ac: Don't check for declarations of free, malloc, or
3994         realloc.
3995
3996 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3997
3998         * aarch64-linux-nat.c
3999         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4000         variable.
4001         * arm-linux-nat.c (fetch_regs): Likewise.
4002         (store_regs): Likewise.
4003         (fetch_vfp_regs): Likewise.
4004         (store_vfp_regs): Likewise.
4005         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4006         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4007         (arm_linux_nat_target::insert_watchpoint): Likewise.
4008         (arm_linux_nat_target::remove_watchpoint): Likewise.
4009         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4010         Likewise.
4011         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4012         Likewise.
4013         * ppc-linux-nat.c (fetch_register): Likewise.
4014         (fetch_all_gp_regs): Likewise.
4015         (fetch_ppc_registers): Likewise.
4016         (store_all_gp_regs): Likewise.
4017         (store_ppc_registers): Likewise.
4018         (hwdebug_insert_point): Likewise.
4019         (can_use_watchpoint_cond_accel): Likewise.
4020         * remote-sim.c (gdb_os_write_stdout): Likewise.
4021
4022 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4023             Tom Tromey  <tom@tromey.com>
4024
4025         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4026         test for it.
4027         * configure: Rebuild.
4028
4029 2018-07-22  Tom Tromey  <tom@tromey.com>
4030
4031         * regformats/regdat.sh: Define xmltarget_${name} inside
4032         #ifndef IN_PROCESS_AGENT.
4033
4034 2018-07-22  Tom Tromey  <tom@tromey.com>
4035
4036         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4037
4038 2018-07-22  Tom Tromey  <tom@tromey.com>
4039
4040         * symfile.c (reread_symbols): Notify iter, not objfile.
4041
4042 2018-07-22  Tom Tromey  <tom@tromey.com>
4043
4044         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4045         Use arch_ops.
4046         (ravenscar_thread_target::prepare_to_store): Likewise.
4047
4048 2018-07-22  Tom Tromey  <tom@tromey.com>
4049
4050         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4051         unused variable.  Call value_fetch_lazy when needed.
4052         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4053         Remove unused variable.  Call value_fetch_lazy when needed.
4054
4055 2018-07-22  Tom Tromey  <tom@tromey.com>
4056
4057         * m32c-tdep.c (mark_dma): Return void.
4058         (make_regs): Remove unused declarations.
4059
4060 2018-07-22  Tom Tromey  <tom@tromey.com>
4061
4062         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4063         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4064         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4065         bkscm_get_valid_block_smob_arg_unsafe for effect.
4066
4067 2018-07-22  Tom Tromey  <tom@tromey.com>
4068
4069         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4070         value_type.
4071
4072 2018-07-22  Tom Tromey  <tom@tromey.com>
4073
4074         * windows-nat.c (saved_context): Conditionally define.
4075         * remote.c (remote_target::remote_btrace_maybe_reopen):
4076         Conditionally declare "warned".
4077         * inflow.c (sigquit_ours): Conditionally define.
4078         (new_tty): Move "tty" declaration inside #if.
4079         * guile/guile.c (guile_datadir): Conditionally define.
4080         * charset.c (set_be_le_names): Move some declarations inside #if.
4081         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4082         #if.
4083         (parse_xml_btrace_conf): Likewise.
4084
4085 2018-07-22  Tom Tromey  <tom@tromey.com>
4086
4087         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4088
4089 2018-07-22  Tom Tromey  <tom@tromey.com>
4090
4091         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4092         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4093         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4094         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4095         * stack.c (frame_apply_level_command): Remove unused variable.
4096         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4097         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4098         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4099         unused variable.
4100         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4101         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4102         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4103         variable.
4104         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4105         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4106         variable.
4107         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4108         Remove unused variable.
4109         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4110         variable.
4111         * common/tdesc.c (print_xml_feature::visit): Remove unused
4112         variable.
4113         * compile/compile-object-load.c (store_regs): Remove unused
4114         variables.
4115         * complaints.c (clear_complaints): Remove unused variable.
4116         * corelow.c (core_target_open): Remove unused variable.
4117         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4118         variable.
4119         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4120         variable.
4121         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4122         variable.
4123         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4124         variable.
4125         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4126         variable.
4127         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4128         variable.
4129         * ia64-tdep.c (examine_prologue): Remove unused variable.
4130         * infcall.c (run_inferior_call): Remove unused variable.
4131         * inferior.c (exit_inferior): Remove unused variable.
4132         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4133         * linespec.c (decode_line_2): Remove unused variable.
4134         * linux-nat.c (super_close): Remove.
4135         * linux-tdep.c (linux_info_proc): Remove unused variable.
4136         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4137         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4138         Remove unused variable.
4139         * parse.c (find_minsym_type_and_address): Remove unused variable.
4140         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4141         variable.
4142         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4143         variable.
4144         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4145         variables.
4146         * record-btrace.c (record_btrace_target::store_registers): Remove
4147         unused variable.
4148         (cmd_show_record_btrace_cpu): Remove unused variable.
4149         * riscv-tdep.c (riscv_register_reggroup_p)
4150         (riscv_push_dummy_call, riscv_return_value): Remove unused
4151         variable.
4152         * rust-exp.y (literal): Remove unused variable.
4153         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4154         unused variable.
4155         <STRUCTOP_ANONYMOUS>: Likewise.
4156         * s390-linux-tdep.c (s390_linux_init_abi_31)
4157         (s390_linux_init_abi_64): Remove unused variable.
4158         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4159         (file_select_thread, net_windows_open, _initialize_ser_windows):
4160         Remove unused variables.
4161         * symtab.c (find_pc_sect_line): Remove unused variable.
4162         * target-memory.c (compute_garbled_blocks): Remove unused
4163         variable.
4164         (target_write_memory_blocks): Remove unused variable.
4165         * target.c (target_stack::unpush): Remove unused variables.
4166         * tracepoint.c (start_tracing, all_tracepoint_actions)
4167         (merge_uploaded_trace_state_variables)
4168         (print_one_static_tracepoint_marker): Remove unused variable.
4169         * unittests/basic_string_view/element_access/char/1.cc (test01):
4170         Remove unused variable.
4171         * windows-nat.c (windows_continue, windows_add_all_dlls)
4172         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4173         Remove unused variables.
4174
4175 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4176
4177         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4178         attr_profile in HAVE_ELF.
4179         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4180         HAVE_ELF.
4181
4182 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4183
4184         * frame.c (frame_register_unwind): Change parameter name.
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.h (frame_register_unwind): Likewise.
4190         (frame_unwind_register): Likewise.
4191         (frame_unwind_register_value): Likewise.
4192         (frame_unwind_register_signed): Likewise.
4193         (frame_unwind_register_unsigned): Likewise.
4194         (frame_unwind_arch): Likewise.
4195
4196 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4197
4198         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4199         ISA maintenance.
4200
4201 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4202
4203         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4204         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4205         hand.
4206
4207 2018-07-20  Keith Seitz  <keiths@redhat.com>
4208
4209         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4210         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4211         m_compunit_symtab, m_language>: Add "m_" prefix.
4212         Update all uses.
4213         * buildsym.c: Update all uses.
4214
4215 2018-07-20  Tom Tromey  <tom@tromey.com>
4216
4217         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4218         * buildsym.h (record_line_ftype): Remove typedef.
4219
4220 2018-07-20  Tom Tromey  <tom@tromey.com>
4221
4222         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4223         (end_expandable_symtab): Likewise.
4224         (end_symtab_get_static_block): Likewise.
4225         (end_symtab_from_static_block): Likewise.
4226         * buildsym-legacy.c (augment_type_symtab): Remove.
4227         (end_expandable_symtab): Remove.
4228         (end_symtab_get_static_block): Remove.
4229         (end_symtab_from_static_block): Remove.
4230
4231 2018-07-20  Tom Tromey  <tom@tromey.com>
4232
4233         * dwarf2read.c: Include buildsym.h.
4234         (struct dwarf2_cu) <builder>: New method.
4235         (fixup_go_packaging): Update.
4236         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4237         use scoped_free_pendings.
4238         (using_directives): Add "cu" parameter, remove "language".
4239         (read_import_statement, setup_type_unit_groups, )
4240         (read_func_scope, read_lexical_block_scope)
4241         (dwarf2_record_block_ranges, read_namespace): Update.
4242         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4243         (lnp_state_machine::handle_end_sequence): Update.
4244         (class lnp_state_machine) <m_cu>: New member.
4245         <m_record_line_callback>: Remove.
4246         <m_currently_recording_lines>: New member.
4247         (lnp_state_machine::handle_set_file): Update.
4248         (noop_record_line): Remove.
4249         (dwarf_record_line_p): Add cu parameter.
4250         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4251         (lnp_state_machine::record_line)
4252         (lnp_state_machine::lnp_state_machine)
4253         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4254         (dwarf_decode_lines): Update.
4255         (dwarf2_start_subfile): Add cu parameter.
4256         (dwarf2_start_symtab, new_symbol): Update.
4257         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4258         Remove dwarf2_per_objfile parameter.
4259         (dwarf_decode_macros): Update.
4260
4261 2018-07-20  Tom Tromey  <tom@tromey.com>
4262
4263         * stabsread.c (define_symbol): Update.
4264         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4265         * dwarf2read.c (new_symbol): Update.
4266         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4267         * cp-namespace.c: Include buildsym.h.
4268         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4269         * buildsym-legacy.c (get_buildsym_compunit): New function.
4270
4271 2018-07-20  Tom Tromey  <tom@tromey.com>
4272
4273         * xcoffread.c: Include buildsym-legacy.h.
4274         * windows-nat.c: Include buildsym-legacy.h.
4275         * stabsread.c: Include buildsym-legacy.h.
4276         * mdebugread.c: Include buildsym-legacy.h.
4277         * buildsym-legacy.h: New file.
4278         * buildsym-legacy.c: New file, from buildsym.c.
4279         * go32-nat.c: Include buildsym-legacy.h.
4280         * dwarf2read.c: Include buildsym-legacy.h.
4281         * dbxread.c: Include buildsym-legacy.h.
4282         * cp-namespace.c: Include buildsym-legacy.h.
4283         * coffread.c: Include buildsym-legacy.h.
4284         * buildsym.h: Move some contents to buildsym-legacy.h.
4285         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4286         buildsym-legacy.c.
4287         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4288
4289 2018-07-20  Tom Tromey  <tom@tromey.com>
4290
4291         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4292         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4293         (buildsym_compunit::buildsym_compunit)
4294         (buildsym_compunit::~buildsym_compunit)
4295         (buildsym_compunit::get_macro_table): Define.
4296
4297 2018-07-20  Tom Tromey  <tom@tromey.com>
4298
4299         * buildsym.c (reset_symtab_globals): Remove.
4300         (buildsym_compunit::end_symtab_from_static_block): Update.
4301         (buildsym_compunit::augment_type_symtab): Update.
4302         (end_symtab_from_static_block): Call free_buildsym_compunit.
4303         (augment_type_symtab, end_symtab, end_expandable_symtab):
4304         Likewise.
4305
4306 2018-07-20  Tom Tromey  <tom@tromey.com>
4307
4308         * arch-utils.c: Do not include buildsym.h.
4309         * mipsread.c: Do not include buildsym.h.
4310         * machoread.c: Do not include buildsym.h.
4311         * elfread.c: Do not include buildsym.h.
4312
4313 2018-07-20  Tom Tromey  <tom@tromey.com>
4314
4315         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4316         initialization.
4317         (buildsym_compunit): Add new constructor.
4318         (struct buildsym_compunit) <get_last_source_file, finish_block,
4319         record_block_range, start_subfile, patch_subfile_names,
4320         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4321         set_last_source_start_addr, get_last_source_start_addr,
4322         get_local_using_directives, set_local_using_directives,
4323         get_global_using_directives, outermost_context_p,
4324         get_current_context_stack, get_context_stack_depth,
4325         get_current_subfile, get_local_symbols, get_file_symbols,
4326         get_global_symbols, record_debugformat, record_producer,
4327         push_context, pop_context, end_symtab_get_static_block,
4328         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4329         New public methods.
4330         <record_pending_block, finish_block_internal, make_blockvector,
4331         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4332         private methods.
4333         Update all users.
4334
4335 2018-05-22  Tom Tromey  <tom@tromey.com>
4336
4337         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4338         parameter.
4339         (finish_block_internal): Update.
4340
4341 2018-07-20  Tom Tromey  <tom@tromey.com>
4342
4343         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4344         parameter.
4345         (finish_block_internal): Update.
4346
4347 2018-07-20  Tom Tromey  <tom@tromey.com>
4348
4349         * buildsym.h (EXTERN): Don't define or undef.
4350         * buildsym.c (EXTERN): Don't define.
4351
4352 2018-07-20  Tom Tromey  <tom@tromey.com>
4353
4354         * buildsym.c: Remove TODO comment.
4355
4356 2018-07-20  Tom Tromey  <tom@tromey.com>
4357
4358         * coffread.c (coff_symtab_read): Update.
4359         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4360         (xcoff_new_init): Update.
4361         * mipsread.c (mipscoff_new_init): Update.
4362         * mdebugread.c (mdebug_build_psymtabs): Update.
4363         * elfread.c (elf_new_init): Update.
4364         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4365         Update.
4366         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4367         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4368         (stabsect_build_psymtabs): Update.
4369         * buildsym.h (buildsym_init): Don't declare.
4370         * buildsym.c: Update comment.
4371         (prepare_for_building): Remove.
4372         (start_symtab, restart_symtab): Update.
4373         (reset_symtab_globals): Update comment.
4374         (buildsym_init): Remove.
4375
4376 2018-07-20  Tom Tromey  <tom@tromey.com>
4377
4378         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4379         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4380         (read_enum_type, common_block_start, common_block_end)
4381         (cleanup_undefined_types_1, finish_global_stabs): Update.
4382         * mdebugread.c (psymtab_to_symtab_1): Update.
4383         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4384         (read_lexical_block_scope, new_symbol): Update.
4385         * dbxread.c (process_one_symbol): Update.
4386         * coffread.c (coff_symtab_read, process_coff_symbol)
4387         (coff_read_enum_type): Update.
4388         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4389         declare.
4390         (get_local_symbols, get_file_symbols, get_global_symbols): New
4391         functions.
4392         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4393         m_global_symbols.
4394         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4395         (~scoped_free_pendings): Update.
4396         (finish_block, prepare_for_building, reset_symtab_globals)
4397         (end_symtab_get_static_block, end_symtab_with_blockvector)
4398         (augment_type_symtab, push_context): Update.
4399         (get_local_symbols, get_file_symbols, get_global_symbols): New
4400         functions.
4401         (buildsym_init): Update.
4402
4403 2018-07-20  Tom Tromey  <tom@tromey.com>
4404
4405         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4406         (process_full_type_unit): Likewise.
4407         (dwarf2_start_symtab): Set list_in_scope.
4408
4409 2018-07-20  Tom Tromey  <tom@tromey.com>
4410
4411         * dwarf2read.c (process_psymtab_comp_unit_reader)
4412         (build_type_psymtabs_reader): Do not set list_in_scope.
4413
4414 2018-07-20  Tom Tromey  <tom@tromey.com>
4415
4416         * buildsym.c (free_pendings): Remove.
4417         (add_symbol_to_list, scoped_free_pendings)
4418         (finish_block_internal, buildsym_init): Update.
4419
4420 2018-07-20  Tom Tromey  <tom@tromey.com>
4421
4422         * xcoffread.c (read_xcoff_symtab): Update.
4423         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4424         Update.
4425         * dbxread.c (process_one_symbol): Update.
4426         * coffread.c (coff_symtab_read): Update.
4427         * buildsym.h (finish_block): Update.
4428         * buildsym.c (finish_block): Remove "listhead" argument.
4429         (end_symtab_get_static_block): Update.
4430
4431 2018-07-20  Tom Tromey  <tom@tromey.com>
4432
4433         * buildsym.h (class scoped_free_pendings): Remove constructor.
4434         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4435         method.
4436         <m_pending_block_obstack, m_pending_blocks>: New members.
4437         (pending_block_obstack, pending_blocks): Remove.
4438         (scoped_free_pendings::scoped_free_pendings): Default.
4439         (~scoped_free_pendings): Update.
4440         (free_pending_blocks): Remove.
4441         (finish_block_internal, record_pending_block, make_blockvector)
4442         (end_symtab_get_static_block, augment_type_symtab, push_context)
4443         (buildsym_init): Update.
4444
4445 2018-07-20  Tom Tromey  <tom@tromey.com>
4446
4447         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4448         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4449         members.
4450         (pending_addrmap, pending_addrmap_obstack)
4451         (pending_addrmap_interesting): Remove.
4452         (scoped_free_pendings, record_block_range, make_blockvector)
4453         (prepare_for_building, reset_symtab_globals, buildsym_init):
4454         Update.
4455
4456 2018-07-20  Tom Tromey  <tom@tromey.com>
4457
4458         * xcoffread.c (process_linenos): Update.
4459         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4460         * mdebugread.c (psymtab_to_symtab_1): Update.
4461         * dwarf2read.c (setup_type_unit_groups)
4462         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4463         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4464         * dbxread.c (process_one_symbol): Update.
4465         * coffread.c (coff_symtab_read, enter_linenos)
4466         (process_coff_symbol): Update.
4467         * buildsym.h (current_subfile): Don't declare.
4468         (get_current_subfile): Declare.
4469         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4470         member.
4471         (start_subfile, free_buildsym_compunit, push_subfile)
4472         (prepare_for_building, start_symtab): Update.
4473         (get_current_subfile): New function.
4474
4475 2018-07-20  Tom Tromey  <tom@tromey.com>
4476
4477         * coffread.c (coff_symtab_read): Update.
4478         * xcoffread.c (read_xcoff_symtab): Update.
4479         * dwarf2read.c (new_symbol): Update.
4480         (read_func_scope, read_lexical_block_scope): Update.
4481         * dbxread.c (process_one_symbol): Update.
4482         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4483         (outermost_context_p): Remove macro.
4484         (outermost_context_p, get_current_context_stack)
4485         (get_context_stack_depth): Declare.
4486         (pop_context): Return struct context_stack.
4487         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4488         member.
4489         (context_stack_size): Remove.
4490         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4491         (prepare_for_building, end_symtab_get_static_block)
4492         (augment_type_symtab, push_context): Update.
4493         (pop_context): Return struct context_stack.
4494         (outermost_context_p, get_current_context_stack)
4495         (get_context_stack_depth): New functions.
4496         (buildsym_init): Update.
4497
4498 2018-07-20  Tom Tromey  <tom@tromey.com>
4499
4500         * rust-exp.y: Now a pure parser.  Update all rules.
4501         (%union): Move earlier.
4502         (current_parser, work_obstack): Remove globals.
4503         (rust_parser, ~rust_parser): Update.
4504         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4505         lex_character, lex_number, lex_string, lex_identifier,
4506         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4507         convert_name, convert_params_to_expression,
4508         convert_ast_to_expression, ast_basic_type, ast_operation,
4509         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4510         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4511         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4512         ast_array_type, ast_slice_type, ast_reference_type,
4513         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4514         (rust_parse): Update.
4515         (rustyyerror, rustyylex): Add parser parameter.
4516         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4517         (rust_lex_stringish_test, rust_lex_test_sequence)
4518         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4519         (rust_lex_test_push_back, rust_lex_tests): Update.
4520
4521 2018-07-19  Pedro Alves  <palves@redhat.com>
4522
4523         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4524         gdb::unique_xmalloc_ptr.
4525         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4526         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4527         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4528         copy-initialization.
4529         * guile/scm-pretty-print.c (ppscm_print_children): Use
4530         gdb::unique_xmalloc_ptr instead of cleanups.
4531         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4532         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4533         gdb::unique_xmalloc_ptr.
4534         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4535         Adjust to use gdb::unique_xmalloc_ptr.
4536         * guile/scm-utils.c (extract_arg): Adjust.
4537         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4538         gdb::unique_xmalloc_ptr instead of a cleanup.
4539
4540 2018-07-19  Tom Tromey  <tom@tromey.com>
4541
4542         * utils.c (do_value_free_to_mark)
4543         (make_cleanup_value_free_to_mark): Remove.
4544         * utils.h (make_cleanup_value_free_to_mark): Remove.
4545
4546 2018-07-19  Pedro Alves  <palves@redhat.com>
4547
4548         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4549         forwarding reference.
4550
4551 2018-07-18  Pedro Alves  <palves@redhat.com>
4552
4553         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4554         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4555         cleanup.
4556
4557 2018-07-18  Pedro Alves  <palves@redhat.com>
4558
4559         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4560         exceptions.
4561         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4562         (gdbscm_wrap): New.
4563         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4564         directly instead of a cleanup.
4565         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4566         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
4567         (vlscm_binop_gdbthrow): New, factored out from ...
4568         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
4569         (vlscm_rich_compare): Use gdbscm_wrap.
4570         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
4571         instead of a cleanup.
4572         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
4573         cleanup.
4574         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4575         Use xfree directly instead of a cleanup.
4576         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
4577         Adjust to use gdbscm_wrap and scoped_value_mark.
4578         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
4579         (gdbscm_value_address, gdbscm_value_dereference)
4580         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
4581         scoped_value_mark.
4582         (gdbscm_value_dynamic_type): Use scoped_value_mark.
4583         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
4584         scoped_value_mark.
4585         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
4586         gdbscm_wrap and scoped_value_mark.
4587         (gdbscm_value_to_string): Use xfree directly instead of a
4588         cleanup.  Move 'buffer' unique_ptr to TRY scope.
4589         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
4590         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
4591         scoped_value_mark.
4592         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
4593         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
4594         scoped_value_mark.
4595         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
4596         gdbscm_wrap.
4597
4598 2018-07-18  Tom de Vries  <tdevries@suse.de>
4599
4600         * findvar.c (default_read_var_value): Also resolve dynamic type for
4601         LOC_OPTIMIZED_OUT vars.
4602
4603 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
4604
4605         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
4606         decoding.
4607
4608 2018-07-17  Tom Tromey  <tom@tromey.com>
4609
4610         * guile/scm-param.c (pascm_set_func, pascm_show_func)
4611         (compute_enum_list, pascm_set_param_value_x)
4612         (gdbscm_parameter_value): Update.
4613         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
4614         (gdbscm_scm_to_host_string): Update.
4615         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
4616         Update.
4617         * guile/scm-cmd.c (cmdscm_add_completion): Update.
4618         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
4619         * guile/scm-string.c (gdbscm_scm_to_string): Return
4620         unique_xmalloc_ptr.
4621         (gdbscm_scm_to_host_string): Likewise.
4622
4623 2018-07-17  Tom Tromey  <tom@tromey.com>
4624
4625         * guile/guile.c (gdbscm_eval_from_control_command): Update.
4626         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
4627         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
4628         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
4629         unique_xmalloc_ptr.
4630
4631 2018-07-17  Tom Tromey  <tom@tromey.com>
4632
4633         * guile/scm-param.c (pascm_signal_setshow_error): Update.
4634         * guile/guile-internal.h (gdbscm_exception_message_to_string):
4635         Update.
4636         * guile/scm-cmd.c (cmdscm_function): Update.
4637         * guile/scm-pretty-print.c
4638         (ppscm_print_exception_unless_memory_error): Update.
4639         * guile/scm-exception.c (gdbscm_exception_message_to_string):
4640         Return unique_xmalloc_ptr.
4641
4642 2018-07-17  Tom Tromey  <tom@tromey.com>
4643
4644         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
4645         Use string_printf.
4646
4647 2018-07-17  Jim Wilson  <jimw@sifive.com>
4648
4649         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
4650         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
4651         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
4652         unecessary braces after EF_RISCV_RVC test.  Delete call to
4653         set_gdbarch_decr_pc_after_break.
4654
4655         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
4656         RISCV_LAST_FP_REGNUM + 1.
4657         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
4658
4659 2018-07-17  Tom Tromey  <tom@tromey.com>
4660
4661         * configure.ac: Remove --disable-gdbcli.
4662         * configure: Rebuild.
4663         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
4664         (SUBDIR_CLI_CFLAGS): Remove.
4665         (SFILES): Use SUBDIR_CLI_SRCS.
4666         (COMMON_OBS): Use SUBDIR_CLI_OBS.
4667
4668 2018-07-17  Tom Tromey  <tom@tromey.com>
4669
4670         PR gdb/18624:
4671         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
4672
4673 2018-07-16  Jim Wilson  <jimw@sifive.com>
4674
4675         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
4676
4677 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4678
4679         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
4680         variable.
4681         (libunwind_frame_sniffer): Likewise.
4682         (libunwind_frame_prev_register): Likewise.
4683         (libunwind_sigtramp_frame_sniffer): Likewise.
4684         * ia64-tdep.c (ia64_access_reg): Likewise.
4685         (ia64_access_rse_reg): Likewise.
4686         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
4687         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
4688
4689 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4690
4691         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
4692
4693 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4694
4695         * remote-sim.c (gdbsim_target::close,
4696         gdbsim_target::mourn_inferior): Remove unused variables.
4697
4698 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
4699
4700         * ia64-tdep.c (ktab_buf): New global.
4701         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
4702         (get_kernel_table): Adjust.
4703
4704 2018-07-16  Tom Tromey  <tom@tromey.com>
4705
4706         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
4707         * dwarf2read.c (using_directives, new_symbol): Use
4708         outermost_context_p.
4709         * dbxread.c (process_one_symbol): Use outermost_context_p.
4710         * coffread.c (coff_symtab_read): Use outermost_context_p.
4711
4712 2018-07-16  Tom Tromey  <tom@tromey.com>
4713
4714         * dwarf2read.c (using_directives, read_func_scope)
4715         (read_lexical_block_scope): Update.
4716         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
4717         * buildsym.h (local_using_directives, global_using_directives):
4718         Don't declare.
4719         (get_local_using_directives, set_local_using_directives)
4720         (get_global_using_directives): Declare.
4721         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
4722         m_global_using_directives>: New members.
4723         (finish_block_internal, prepare_for_building)
4724         (reset_symtab_globals, end_symtab_get_static_block)
4725         (push_context): Update.
4726         (get_local_using_directives, set_local_using_directives)
4727         (get_global_using_directives): New functions.
4728         (buildsym_init): Update.
4729
4730 2018-07-16  Tom Tromey  <tom@tromey.com>
4731
4732         * xcoffread.c (xcoff_initial_scan): Don't call
4733         free_pending_blocks.
4734         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
4735         * buildsym.h (class scoped_free_pendings): Add constructor.
4736         (free_pending_blocks): Don't declare.
4737         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
4738         (free_pending_blocks): Now static.
4739
4740 2018-07-16  Tom Tromey  <tom@tromey.com>
4741
4742         * buildsym.h (push_subfile, pop_subfile): Update declarations.
4743         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
4744         member.
4745         (struct subfile_stack): Remove.
4746         (subfile_stack): Remove.
4747         (push_subfile, pop_subfile, buildsym_init): Update.
4748
4749 2018-07-16  Tom Tromey  <tom@tromey.com>
4750
4751         * buildsym.c (push_subfile): Use gdb_assert.
4752         (pop_subfile): Use gdb_assert.
4753
4754 2018-07-16  Tom Tromey  <tom@tromey.com>
4755
4756         * buildsym.h (merge_symbol_lists): Remove.
4757         * buildsym.c (merge_symbol_lists): Remove.
4758
4759 2018-07-16  Tom Tromey  <tom@tromey.com>
4760
4761         * stabsread.c (scan_file_globals): Update comment.
4762         * stabsread.h (scan_file_globals): Move from buildsym.h.
4763         * buildsym.h (scan_file_globals): Move to stabsread.h.
4764
4765 2018-07-16  Tom Tromey  <tom@tromey.com>
4766
4767         * xcoffread.c (xcoff_new_init): Update.
4768         * mipsread.c (mipscoff_new_init): Update.
4769         * mdebugread.c (mdebug_build_psymtabs): Update.
4770         * elfread.c (elf_new_init): Update.
4771         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
4772         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
4773         * buildsym.h (buildsym_new_init): Don't declare.
4774         * buildsym.c (buildsym_new_init): Remove.
4775
4776 2018-07-16  Tom Tromey  <tom@tromey.com>
4777
4778         * stabsread.h (within_function): Move from buildsym.h.
4779         * stabsread.c (start_stabs): Clear within_function.
4780         * coffread.c (coff_start_symtab): Clear within_function.
4781         * buildsym.h (within_function): Move to stabsread.h.
4782         * buildsym.c (prepare_for_building): Update.
4783
4784 2018-07-16  Tom Tromey  <tom@tromey.com>
4785
4786         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
4787         * dwarf2read.c (dwarf2_start_symtab): Don't set
4788         processing_gcc_compilation.
4789         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
4790
4791 2018-07-16  Tom Tromey  <tom@tromey.com>
4792
4793         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
4794         (next_symbol_text_func): Move from buildsym.h.
4795         * stabsread.c (hashname): Move from buildsym.c.
4796         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
4797         (next_symbol_text_func, hashname): Move to stabsread.h.
4798         * buildsym.c: Don't include bcache.h
4799         (hashname): Move to stasbread.c.
4800
4801 2018-07-16  Tom Tromey  <tom@tromey.com>
4802
4803         * buildsym.h (context_stack_size): Don't declare.
4804         * buildsym.c (context_stack_size): New global.
4805
4806 2018-07-16  Tom Tromey  <tom@tromey.com>
4807
4808         * dbxread.c (processing_acc_compilation): New global.
4809         * buildsym.h (processing_acc_compilation): Don't declare.
4810
4811 2018-07-16  Tom Tromey  <tom@tromey.com>
4812
4813         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
4814         * dbxread.c (read_ofile_symtab): Update.
4815         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
4816         * buildsym.h (last_source_start_addr): Remove.
4817         (set_last_source_start_addr, get_last_source_start_addr):
4818         Declare.
4819         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
4820         parameter.
4821         (struct buildsym_compunit) <m_last_source_start_addr>: New
4822         member.
4823         (prepare_for_building): Remove start_addr parameter.
4824         (start_symtab, restart_symtab, end_symtab_get_static_block)
4825         (end_symtab_with_blockvector): Update.
4826         (set_last_source_start_addr, get_last_source_start_addr): New
4827         functions.
4828
4829 2018-07-16  Tom Tromey  <tom@tromey.com>
4830
4831         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
4832         member.
4833         (have_line_numbers): Remove.
4834         (record_line, prepare_for_building, end_symtab_get_static_block)
4835         (augment_type_symtab): Update.
4836
4837 2018-07-16  Tom Tromey  <tom@tromey.com>
4838
4839         * buildsym.c (~buildsym_compunit): Free the macro table.
4840         (struct buildsym_compunit) <get_macro_table, release_macros>: New
4841         methods.
4842         <m_pending_macros>: New member.
4843         (pending_macros): Remove.
4844         (~scoped_free_pendings, get_macro_table, prepare_for_building)
4845         (reset_symtab_globals, end_symtab_get_static_block)
4846         (end_symtab_with_blockvector, augment_type_symtab)
4847         (buildsym_init): Update.
4848
4849 2018-07-16  Tom Tromey  <tom@tromey.com>
4850
4851         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
4852         parameter.
4853         (buildsym_compunit::set_last_source_file): New method.
4854         <m_last_source_file>: New member.
4855         (prepare_for_building): Remove "name" parameter.
4856         (start_symtab, restart_symtab, reset_symtab_globals): Update.
4857         (last_source_file): Remove.
4858         (set_last_source_file, get_last_source_file): Update.
4859
4860 2018-07-16  Tom Tromey  <tom@tromey.com>
4861
4862         * buildsym.c (prepare_for_building): Add assert.
4863
4864 2018-07-16  Tom Tromey  <tom@tromey.com>
4865
4866         * buildsym.c (~buildsym_compunit): Update.
4867         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
4868         (start_subfile, patch_subfile_names)
4869         (end_symtab_with_blockvector): Update.
4870
4871 2018-07-16  Tom Tromey  <tom@tromey.com>
4872
4873         * buildsym.c (struct buildsym_compunit): Add constructor,
4874         destructor, initializers.
4875         (start_buildsym_compunit): Remove.
4876         (free_buildsym_compunit): Use "delete".
4877         (start_symtab, restart_symtab): Use "new".
4878
4879 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
4880
4881         * symfile.c (set_objfile_default_section_offset): Remove struct
4882         keyword.
4883
4884 2018-07-14  Stafford Horne  <shorne@gmail.com>
4885
4886         * (Responsible Maintainers): Add myself as or1k maintainer.
4887
4888 2018-07-13  Tom Tromey  <tom@tromey.com>
4889
4890         * symfile.c (set_objfile_default_section_offset): Use extra braces
4891         around initializer.
4892
4893 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
4894
4895         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
4896         non-branching basr.
4897
4898 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4899
4900         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4901         unittests/cli-utils-selftests.c
4902         * unittests/cli-utils-selftests.c: New file.
4903
4904 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4905
4906         * NEWS: Mention new commands. Mention change to 'thread apply'.
4907
4908 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4909
4910         * thread.c (thr_try_catch_cmd): New function.
4911         (thread_apply_all_command): Handle qcs flags.
4912         (thread_apply_command): Handle qcs flags.
4913         (taas_command): New function.
4914         (tfaas_command): New function.
4915         (_initialize_thread): Update to setup the new commands 'taas
4916         and 'tfaas'. Change doc string for 'thread apply'.
4917
4918 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4919
4920         * stack.c: (trailing_outermost_frame): New function, mostly
4921         extracted from backtrace_command_1.
4922         (leading_innermost_frame): New function.
4923         (backtrace_command_1): Update to call trailing_outermost_frame.
4924         (frame_apply_command_count): New function.
4925         (frame_apply_level_command): New function.
4926         (frame_apply_all_command): New function.
4927         (frame_apply_command): New function.
4928         (faas_command): New function.
4929         (frame_cmd_list): New variable.
4930         (_initialize_stack): Update to setup the new commands 'frame apply'
4931         and 'faas'.
4932
4933 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4934
4935         * cli-utils.c (number_or_range_parser::get_number): Only handle
4936         numbers or convenience var as numbers.
4937         (parse_flags): New function.
4938         (parse_flags_qcs): New function.
4939         (number_or_range_parser::finished): Ensure parsing end is detected
4940         before end of string.
4941         * cli-utils.h (parse_flags): New function.
4942         (parse_flags_qcs): New function.
4943         (number_or_range_parser): Remove m_finished bool.
4944         (number_or_range_parser::skip_range): Set m_in_range to false.
4945
4946 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
4947
4948         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
4949         on Windows.
4950
4951 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4952             Jan Kratochvil  <jan.kratochvil@redhat.com>
4953             Paul Fertser  <fercerpav@gmail.com>
4954             Tsutomu Seki  <sekiriki@gmail.com>
4955             Pedro Alves  <palves@redhat.com>
4956
4957         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4958         'unittests/parse-connection-spec-selftests.c'.
4959         (COMMON_SFILES): Add 'common/netstuff.c'.
4960         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
4961         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
4962         * common/netstuff.c: New file.
4963         * common/netstuff.h: New file.
4964         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
4965         (wait_for_connect): Update comment.  New parameter
4966         'gdb::optional<int> sock' instead of 'struct serial *scb'.
4967         Use 'sock' directly instead of 'scb->fd'.
4968         (try_connect): New function, with code from 'net_open'.
4969         (net_open): Rewrite main loop to deal with multiple
4970         sockets/addresses.  Handle IPv6-style hostnames; implement
4971         support for IPv6 connections.
4972         * unittests/parse-connection-spec-selftests.c: New file.
4973
4974 2018-07-11  Pedro Alves  <palves@redhat.com>
4975
4976         PR gdb/23377
4977         * remote.c (remote_target::remote_detach_pid): Call
4978         set_current_process.
4979
4980 2018-07-11  Pedro Alves  <palves@redhat.com>
4981
4982         * h8300-tdep.c (h8300_gdbarch_init): Remove
4983         set_gdbarch_ecoff_reg_to_regnum calls.
4984
4985 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4986
4987         PR c++/23373
4988         * c-typeprint.c (c_type_print_base_struct_union): Don't print
4989         offsets/sizes for static members of a class/struct.
4990
4991 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
4992
4993         * target-descriptions.c (tdesc_register_bitsize): Rename.
4994         * target-descriptions.h (tdesc_register_bitsize): Likewise.
4995         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
4996         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
4997
4998 2018-07-10  Tom Tromey  <tom@tromey.com>
4999
5000         * breakpoint.c (moribund_locations): Now static and a
5001         std::vector.
5002         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5003         (build_bpstat_chain, update_global_location_list)
5004         (breakpoint_retire_moribund): Update.
5005         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5006         VEC.
5007
5008 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5009
5010         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5011         (riscv_register_reggroup_p): Use new function, remove unneeded
5012         parenthesis.
5013         (riscv_push_dummy_call): Extend assert to compare against xlen or
5014         flen based on register type.
5015
5016 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5017
5018         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5019
5020 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5021
5022         * remote.c (show_hardware_watchpoint_limit): New function.
5023         (show_hardware_watchpoint_length_limit): New function.
5024         (show_hardware_breakpoint_limit): New function.
5025         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5026         where appropriate, update help text.
5027
5028 2018-07-09  Tom Tromey  <tom@tromey.com>
5029
5030         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5031         (CLIBS): Don't mention NAT_CLIBS.
5032
5033 2018-07-09  Tom Tromey  <tom@tromey.com>
5034
5035         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5036         (LIBGDB_OBS, clean mostlyclean): Update.
5037         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5038
5039 2018-07-09  Tom Tromey  <tom@tromey.com>
5040
5041         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5042         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5043         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5044
5045 2018-07-09  Tom Tromey  <tom@tromey.com>
5046
5047         * Makefile.in (ALLDEPFILES): Remove exec.c.
5048         (COMMON_OBS): Remove exec.o.
5049         (COMMON_SFILES): Add exec.c.
5050
5051 2018-07-09  Tom Tromey  <tom@tromey.com>
5052
5053         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5054
5055 2018-07-09  Tom Tromey  <tom@tromey.com>
5056
5057         * Makefile.in (clean mostlyclean): Remove stamp-version.
5058         (version.c): Depend on stamp-version.
5059         (stamp-version): New rule, from version.c rule.
5060
5061 2018-07-09  Tom Tromey  <tom@tromey.com>
5062
5063         * Makefile.in (init.c): Depend on stamp-init.
5064         (stamp-init): New rule, from init.c rule.
5065         (clean mostlyclean): Remove stamp-init.
5066
5067 2018-07-09  Tom Tromey  <tom@tromey.com>
5068
5069         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5070         SUBDIR_GCC_COMPILE_SRCS.
5071
5072 2018-07-09  Tom Tromey  <tom@tromey.com>
5073
5074         * Makefile.in (init.c): Remove some unused sed rules.
5075
5076 2018-07-09  Tom Tromey  <tom@tromey.com>
5077
5078         * Makefile.in (TSOBS): Remove.
5079         (INIT_FILES): Update.
5080         (LIBGDB_OBS): Update.
5081         (COMMON_SFILES): Add inflow.c.
5082         (SFILES): Remove inflow.c.
5083
5084 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5085
5086         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5087
5088 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5089
5090         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5091         get_saveloc_name, is_signal_frame_name, step_name,
5092         init_remote_name, create_addr_space_name,
5093         destroy_addr_space_name, search_unwind_table_name,
5094         find_dyn_list_name): Constify.
5095
5096 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5097
5098         * darwin-nat.c (darwin_pthread_kill): New function.
5099         (darwin_resume_thread): Use darwin_pthread_kill.
5100
5101 2018-07-05  Tom de Vries  <tdevries@suse.de>
5102
5103         * macroexp.c (macro_buffer) <operator=>: New member function.
5104
5105 2018-07-04  Tom Tromey  <tom@tromey.com>
5106
5107         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5108
5109 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5110
5111         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5112         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5113         * maint.c: Likewise.
5114         * top.c: Likewise.
5115
5116 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5117
5118         * NEWS: Create a new section for the next release branch.
5119         Rename the section of the current branch, now that it has
5120         been cut.
5121
5122 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5123
5124         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5125         * version.in: Bump version to 8.2.50.DATE-git.
5126
5127 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5128             Pedro Alves  <palves@redhat.com>
5129
5130         * linux-nat.c (linux_init_ptrace): Rename to ...
5131         (linux_init_ptrace_procfs): ... this.  Call
5132         linux_proc_init_warnings.
5133         (linux_nat_target::post_attach)
5134         (linux_nat_target::post_startup_inferior): Adjust.
5135         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5136         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5137
5138 2018-07-04  Tom de Vries  <tdevries@suse.de>
5139
5140         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5141         check ...
5142         (read_comp_unit_head): ... here.
5143
5144 2018-07-03  Tom Tromey  <tom@tromey.com>
5145
5146         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5147         (stop_tracing, tstatus_command)
5148         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5149         (print_one_static_tracepoint_marker): Update.
5150         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5151         std::vector.
5152         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5153         VEC.
5154         (all_tracepoints, static_tracepoints_here): Return std::vector.
5155
5156 2018-07-03  Tom Tromey  <tom@tromey.com>
5157
5158         * common/ptid.c (ptid_equal): Remove.
5159         * common/ptid.h (ptid_equal): Don't declare.
5160         * ada-tasks.c: Update.
5161         * breakpoint.c: Update.
5162         * common/agent.c: Update.
5163         * corelow.c: Update.
5164         * darwin-nat-info.c: Update.
5165         * darwin-nat.c: Update.
5166         * dcache.c: Update.
5167         * dtrace-probe.c: Update.
5168         * dummy-frame.c: Update.
5169         * fbsd-nat.c: Update.
5170         * frame.c: Update.
5171         * gdbthread.h: Update.
5172         * gnu-nat.c: Update.
5173         * go32-nat.c: Update.
5174         * inf-loop.c: Update.
5175         * inf-ptrace.c: Update.
5176         * infcall.c: Update.
5177         * infcmd.c: Update.
5178         * inflow.c: Update.
5179         * infrun.c: Update.
5180         * linux-fork.c: Update.
5181         * linux-nat.c: Update.
5182         * linux-thread-db.c: Update.
5183         * mi/mi-cmd-var.c: Update.
5184         * mi/mi-interp.c: Update.
5185         * mi/mi-main.c: Update.
5186         * nto-procfs.c: Update.
5187         * ppc-linux-tdep.c: Update.
5188         * procfs.c: Update.
5189         * python/py-inferior.c: Update.
5190         * python/py-record-btrace.c: Update.
5191         * python/py-record.c: Update.
5192         * ravenscar-thread.c: Update.
5193         * regcache.c: Update.
5194         * remote-sim.c: Update.
5195         * remote.c: Update.
5196         * sol-thread.c: Update.
5197         * solib.c: Update.
5198         * target.c: Update.
5199         * tui/tui-stack.c: Update.
5200         * varobj.c: Update.
5201         * windows-nat.c: Update.
5202         * windows-tdep.c: Update.
5203
5204 2018-07-03  Tom Tromey  <tom@tromey.com>
5205
5206         * common/ptid.c (ptid_match): Remove.
5207         * common/ptid.h (ptid_match): Don't declare.
5208         * fbsd-nat.c: Update.
5209         * infcmd.c: Update.
5210         * infrun.c: Update.
5211         * linux-nat.c: Update.
5212         * record-btrace.c: Update.
5213         * regcache.c: Update.
5214         * remote.c: Update.
5215
5216 2018-07-03  Tom Tromey  <tom@tromey.com>
5217
5218         * common/ptid.c (ptid_tid_p): Remove.
5219         * common/ptid.h (ptid_tid_p): Don't declare.
5220         * sol-thread.c: Update.
5221
5222 2018-07-03  Tom Tromey  <tom@tromey.com>
5223
5224         * common/ptid.c (ptid_lwp_p): Remove.
5225         * common/ptid.h (ptid_lwp_p): Don't declare.
5226         * fbsd-nat.c: Update.
5227         * linux-nat.c: Update.
5228         * nat/linux-procfs.c: Update.
5229         * nat/x86-linux-dregs.c: Update.
5230         * sol-thread.c: Update.
5231
5232 2018-07-03  Tom Tromey  <tom@tromey.com>
5233
5234         * common/ptid.c (ptid_is_pid): Remove.
5235         * common/ptid.h (ptid_is_pid): Don't declare.
5236         * infrun.c: Update.
5237         * linux-nat.c: Update.
5238         * mi/mi-interp.c: Update.
5239         * remote.c: Update.
5240         * thread.c: Update.
5241
5242 2018-07-03  Tom Tromey  <tom@tromey.com>
5243
5244         * common/ptid.c (ptid_get_tid): Remove.
5245         * common/ptid.h (ptid_get_tid): Don't declare.
5246         * ada-tasks.c: Update.
5247         * aix-thread.c: Update.
5248         * bsd-uthread.c: Update.
5249         * darwin-nat.c: Update.
5250         * fbsd-nat.c: Update.
5251         * i386-darwin-nat.c: Update.
5252         * infrun.c: Update.
5253         * linux-tdep.c: Update.
5254         * nto-procfs.c: Update.
5255         * ppc-ravenscar-thread.c: Update.
5256         * python/py-infthread.c: Update.
5257         * ravenscar-thread.c: Update.
5258         * sol-thread.c: Update.
5259         * sparc-ravenscar-thread.c: Update.
5260         * windows-nat.c: Update.
5261
5262 2018-07-03  Tom Tromey  <tom@tromey.com>
5263
5264         * common/ptid.c (ptid_get_lwp): Remove.
5265         * common/ptid.h (ptid_get_lwp): Don't declare.
5266         * aarch64-linux-nat.c: Update.
5267         * ada-tasks.c: Update.
5268         * aix-thread.c: Update.
5269         * amd64-linux-nat.c: Update.
5270         * arm-linux-nat.c: Update.
5271         * corelow.c: Update.
5272         * fbsd-nat.c: Update.
5273         * fbsd-tdep.c: Update.
5274         * gnu-nat.c: Update.
5275         * i386-cygwin-tdep.c: Update.
5276         * i386-gnu-nat.c: Update.
5277         * i386-linux-nat.c: Update.
5278         * ia64-linux-nat.c: Update.
5279         * inf-ptrace.c: Update.
5280         * infrun.c: Update.
5281         * linux-fork.c: Update.
5282         * linux-nat.c: Update.
5283         * linux-tdep.c: Update.
5284         * linux-thread-db.c: Update.
5285         * mips-linux-nat.c: Update.
5286         * nat/aarch64-linux-hw-point.c: Update.
5287         * nat/aarch64-linux.c: Update.
5288         * nat/linux-btrace.c: Update.
5289         * nat/linux-osdata.c: Update.
5290         * nat/linux-procfs.c: Update.
5291         * nat/x86-linux-dregs.c: Update.
5292         * obsd-nat.c: Update.
5293         * ppc-fbsd-nat.c: Update.
5294         * ppc-linux-nat.c: Update.
5295         * procfs.c: Update.
5296         * python/py-infthread.c: Update.
5297         * ravenscar-thread.c: Update.
5298         * remote.c: Update.
5299         * s390-linux-nat.c: Update.
5300         * sol-thread.c: Update.
5301         * sol2-tdep.c: Update.
5302         * spu-linux-nat.c: Update.
5303         * x86-linux-nat.c: Update.
5304         * xtensa-linux-nat.c: Update.
5305
5306 2018-07-03  Tom Tromey  <tom@tromey.com>
5307
5308         * common/ptid.c (ptid_get_pid): Remove.
5309         * common/ptid.h (ptid_get_pid): Don't declare.
5310         * aarch64-linux-nat.c: Update.
5311         * ada-lang.c: Update.
5312         * aix-thread.c: Update.
5313         * alpha-bsd-nat.c: Update.
5314         * amd64-fbsd-nat.c: Update.
5315         * amd64-linux-nat.c: Update.
5316         * arm-linux-nat.c: Update.
5317         * arm-nbsd-nat.c: Update.
5318         * auxv.c: Update.
5319         * break-catch-syscall.c: Update.
5320         * breakpoint.c: Update.
5321         * bsd-uthread.c: Update.
5322         * corelow.c: Update.
5323         * ctf.c: Update.
5324         * darwin-nat.c: Update.
5325         * fbsd-nat.c: Update.
5326         * fbsd-tdep.c: Update.
5327         * gcore.c: Update.
5328         * gnu-nat.c: Update.
5329         * hppa-nbsd-nat.c: Update.
5330         * hppa-obsd-nat.c: Update.
5331         * i386-fbsd-nat.c: Update.
5332         * ia64-linux-nat.c: Update.
5333         * inf-ptrace.c: Update.
5334         * infcmd.c: Update.
5335         * inferior.c: Update.
5336         * inferior.h: Update.
5337         * inflow.c: Update.
5338         * infrun.c: Update.
5339         * linux-fork.c: Update.
5340         * linux-nat.c: Update.
5341         * linux-tdep.c: Update.
5342         * linux-thread-db.c: Update.
5343         * m68k-bsd-nat.c: Update.
5344         * mi/mi-interp.c: Update.
5345         * mi/mi-main.c: Update.
5346         * mips-linux-nat.c: Update.
5347         * mips-nbsd-nat.c: Update.
5348         * mips64-obsd-nat.c: Update.
5349         * nat/aarch64-linux-hw-point.c: Update.
5350         * nat/aarch64-linux.c: Update.
5351         * nat/linux-btrace.c: Update.
5352         * nat/linux-osdata.c: Update.
5353         * nat/linux-procfs.c: Update.
5354         * nat/x86-linux-dregs.c: Update.
5355         * nto-procfs.c: Update.
5356         * obsd-nat.c: Update.
5357         * ppc-linux-nat.c: Update.
5358         * ppc-nbsd-nat.c: Update.
5359         * ppc-obsd-nat.c: Update.
5360         * proc-service.c: Update.
5361         * procfs.c: Update.
5362         * python/py-inferior.c: Update.
5363         * python/py-infthread.c: Update.
5364         * ravenscar-thread.c: Update.
5365         * record.c: Update.
5366         * remote-sim.c: Update.
5367         * remote.c: Update.
5368         * rs6000-nat.c: Update.
5369         * s390-linux-nat.c: Update.
5370         * sh-nbsd-nat.c: Update.
5371         * sol-thread.c: Update.
5372         * sparc-nat.c: Update.
5373         * sparc64-tdep.c: Update.
5374         * spu-linux-nat.c: Update.
5375         * spu-tdep.c: Update.
5376         * target-debug.h: Update.
5377         * target.c: Update.
5378         * thread.c: Update.
5379         * tid-parse.c: Update.
5380         * tracefile-tfile.c: Update.
5381         * vax-bsd-nat.c: Update.
5382         * windows-nat.c: Update.
5383         * x86-linux-nat.c: Update.
5384         * x86-nat.c: Update.
5385
5386 2018-07-03  Tom Tromey  <tom@tromey.com>
5387
5388         * common/ptid.c (pid_to_ptid): Remove.
5389         * common/ptid.h (pid_to_ptid): Don't declare.
5390         * aix-thread.c: Update.
5391         * arm-linux-nat.c: Update.
5392         * common/ptid.c: Update.
5393         * common/ptid.h: Update.
5394         * corelow.c: Update.
5395         * ctf.c: Update.
5396         * darwin-nat.c: Update.
5397         * fbsd-nat.c: Update.
5398         * fork-child.c: Update.
5399         * gnu-nat.c: Update.
5400         * go32-nat.c: Update.
5401         * inf-ptrace.c: Update.
5402         * infcmd.c: Update.
5403         * inferior.c: Update.
5404         * infrun.c: Update.
5405         * linux-fork.c: Update.
5406         * linux-nat.c: Update.
5407         * nat/aarch64-linux-hw-point.c: Update.
5408         * nat/fork-inferior.c: Update.
5409         * nat/x86-linux-dregs.c: Update.
5410         * nto-procfs.c: Update.
5411         * obsd-nat.c: Update.
5412         * procfs.c: Update.
5413         * progspace.c: Update.
5414         * remote.c: Update.
5415         * rs6000-nat.c: Update.
5416         * s390-linux-nat.c: Update.
5417         * sol-thread.c: Update.
5418         * spu-linux-nat.c: Update.
5419         * target.c: Update.
5420         * top.c: Update.
5421         * tracefile-tfile.c: Update.
5422         * windows-nat.c: Update.
5423
5424 2018-07-03  Tom Tromey  <tom@tromey.com>
5425
5426         * common/ptid.h (ptid_build): Don't declare.
5427         * common/ptid.c (ptid_build): Remove.
5428         * aix-thread.c: Update.
5429         * bsd-kvm.c: Update.
5430         * bsd-uthread.c: Update.
5431         * common/agent.c: Update.
5432         * common/ptid.c: Update.
5433         * common/ptid.h: Update.
5434         * corelow.c: Update.
5435         * darwin-nat.c: Update.
5436         * fbsd-nat.c: Update.
5437         * gnu-nat.c: Update.
5438         * linux-fork.c: Update.
5439         * linux-nat.c: Update.
5440         * linux-thread-db.c: Update.
5441         * nat/linux-osdata.c: Update.
5442         * nat/linux-procfs.c: Update.
5443         * nto-procfs.c: Update.
5444         * obsd-nat.c: Update.
5445         * proc-service.c: Update.
5446         * procfs.c: Update.
5447         * ravenscar-thread.c: Update.
5448         * remote-sim.c: Update.
5449         * remote.c: Update.
5450         * sol-thread.c: Update.
5451         * target.c: Update.
5452         * windows-nat.c: Update.
5453
5454 2018-07-03  Tom Tromey  <tom@tromey.com>
5455
5456         * infrun.c (follow_exec): Use exit_inferior_silent.
5457         * inferior.c (exit_inferior_num_silent): Remove.
5458         * inferior.h (exit_inferior_num_silent): Don't declare.
5459
5460 2018-07-03  Tom Tromey  <tom@tromey.com>
5461
5462         PR cli/23340:
5463         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5464         inferior_ptid on error.
5465
5466 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5467             Simon Marchi  <simon.marchi@polymtl.ca>
5468
5469         PR tdep/8282
5470         * disasm.h (gdb_disassembler): Add
5471         `m_disassembler_options_holder'. member
5472         * disasm.c (get_all_disassembler_options): New function.
5473         (gdb_disassembler::gdb_disassembler): Use it.
5474         (gdb_buffered_insn_length_init_dis): Likewise.
5475         (gdb_buffered_insn_length): Adjust accordingly.
5476         (set_disassembler_options): Handle options with arguments.
5477         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5478         line if showing options with descriptions.
5479         (disassembler_options_completer): Adapt to using the
5480         `disasm_options_and_args_t' structure.
5481         * mips-tdep.c (mips_disassembler_options): New variable.
5482         (mips_disassembler_options_o32): Likewise.
5483         (mips_disassembler_options_n32): Likewise.
5484         (mips_disassembler_options_n64): Likewise.
5485         (gdb_print_insn_mips): Don't set `disassembler_options'.
5486         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5487         functions.
5488         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5489         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5490         `gdbarch_disassembler_options_implicit' and
5491         `gdbarch_valid_disassembler_options'.
5492         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5493         `disasm_options_and_args_t' structure.
5494         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5495         method.
5496         (valid_disassembler_options): Switch from `disasm_options_t' to
5497         the `disasm_options_and_args_t' structure.
5498         * NEWS: Document `set disassembler-options' support for the MIPS
5499         target.
5500         * gdbarch.h: Regenerate.
5501         * gdbarch.c: Regenerate.
5502
5503 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5504
5505         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5506
5507 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5508
5509         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5510         parameter in call to amd64_target_description.
5511         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5512         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5513         (amd64fbsd_init_abi): Likewise.
5514         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5515         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5516         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5517         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5518
5519 2018-06-29  Pedro Alves  <palves@redhat.com>
5520
5521         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5522         "segments" parameter.
5523         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5524         (_initialize_amd64_tdep): Update call to
5525         amd64_create_target_description.
5526         (amd64_target_description): Add "segments" parameter.  Adjust
5527         the implementation to use it.
5528         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5529         call to amd64_create_target_description.
5530         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5531         * gdb/arch/amd64.h (amd64_create_target_description): Add
5532         "segments" register.
5533         * gdb/arch/amd64.c (amd64_create_target_description): Add
5534         "segments" parameter.  Call create_feature_i386_64bit_segments
5535         only if SEGMENTS is true.
5536         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5537         call to amd64_create_target_description.
5538
5539 2018-06-29  Pedro Alves  <palves@redhat.com>
5540
5541         * thread.c (thread_target_id_str): New, factored out from ...
5542         (print_thread_info_1): ... here.  Use it to compute the max
5543         "Target Id" column width.
5544
5545 2018-06-29  Pedro Alves  <palves@redhat.com>
5546
5547         * remote.c (remote_target::extra_thread_info): Delete
5548         'display_buf' and 'n' locals.  from the cache, regardless of
5549         packet mechanims is in use.  Use cache for qThreadExtra and qP
5550         methods too.
5551
5552 2018-06-29  Pedro Alves  <palves@redhat.com>
5553
5554         * blockframe.c (find_pc_sect_containing_function): New function.
5555         * breakpoint.c (print_breakpoint_location): Don't call
5556         find_pc_sect_function.
5557         * linespec.c (create_sals_line_offset): Record the location's
5558         symbol in the sal.
5559         * linespec.c (convert_address_location_to_sals): Fill in sal's
5560         symbol with find_pc_sect_containing_function.
5561         * symtab.c (find_function_start_sal): Rename to ...
5562         (find_function_start_sal_1): ... this.
5563         (find_function_start_sal): Reimplement as wrapper around
5564         find_function_start_sal_1, and use
5565         find_pc_sect_containing_function to fill in the sal's symbol.
5566         (find_function_start_sal(symbol*, bool)): Adjust.
5567         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
5568         comments.
5569         (find_pc_sect_containing_function): Declare.
5570
5571 2018-06-29  Pedro Alves  <palves@redhat.com>
5572
5573         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
5574         true if the the location has no symbol.
5575
5576 2018-06-28  Tom Tromey  <tom@tromey.com>
5577
5578         * NEWS: Mention --enable-codesign.
5579         * silent-rules.mk (ECHO_SIGN): New variable.
5580         * configure.ac: Add --enable-codesign.
5581         * configure: Rebuild.
5582         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
5583         (gdb$(EXEEXT)): Optionally invoke codesign.
5584
5585 2018-06-28  Pedro Alves  <palves@redhat.com>
5586
5587         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
5588         comments.
5589         (switch_to_thread_no_regs): Adjust comment.
5590         * infcmd.c (stop_pc): Delete.
5591         (post_create_inferior, info_program_command): Replace references
5592         to stop_pc with references to thread_info->suspend.stop_pc.
5593         * inferior.h (stop_pc): Delete declaration.
5594         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
5595         (handle_inferior_event_1, handle_signal_stop)
5596         (process_event_stop_test, keep_going_stepped_thread)
5597         (handle_step_into_function, handle_step_into_function_backward)
5598         (print_stop_location): Replace references to stop_pc with
5599         references to thread_info->suspend.stop_pc.
5600         (struct infcall_suspend_state) <stop_pc>: Delete field.
5601         (save_infcall_suspend_state, restore_infcall_suspend_state):
5602         Remove references to inf_stat->stop_pc.
5603         * linux-fork.c (fork_load_infrun_state): Likewise.
5604         * record-btrace.c (record_btrace_set_replay): Likewise.
5605         * record-full.c (record_full_goto_entry): Likewise.
5606         * remote.c (print_one_stopped_thread): Likewise.
5607         * target.c (target_resume): Extend comment.
5608         * thread.c (set_executing_thread): New.
5609         (set_executing): Use it.
5610         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
5611         Remove references to stop_pc.
5612
5613 2018-06-28  Pedro Alves  <palves@redhat.com>
5614
5615         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
5616         Moving fetching stop_pc until after ecs->event_thread is refreshed.
5617
5618 2018-06-28  Tom Tromey  <tom@tromey.com>
5619
5620         * coffread.c (coff_symfile_finish): Update.
5621         * xcoffread.c (xcoff_symfile_finish): Update.
5622         * elfread.c (elf_symfile_finish): Update.
5623         * symfile.h (dwarf2_free_objfile): Don't declare.
5624         * dwarf2read.c (_initialize_dwarf2_read): Use
5625         register_objfile_data_with_cleanup.
5626         (dwarf2_free_objfile): Now static.  Change signature.
5627
5628 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5629
5630         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
5631         option "-o" to add-symbol-file-load to add an offset to each
5632         section's load address.
5633         * symfile.c (set_objfile_default_section_offset): New function.
5634
5635 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5636
5637         * symfile.c (add_symbol_file_command): Make sure that sections
5638         with the same name are sorted in the same order.
5639
5640 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5641
5642         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
5643         require the second argument.  If omitted, load sections at the
5644         addresses specified in the file.
5645
5646 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5647
5648         * symfile.c (symbol_file_command, symbol_file_add_main_1)
5649         (_initialize_symfile): Add option "-o" to symbol-file to add an
5650         offset to each section of the symbol file.
5651
5652 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5653
5654         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
5655
5656 2018-06-27  Tom Tromey  <tom@tromey.com>
5657
5658         * stack.c (_initialize_stack): Update "func" help text.
5659
5660 2018-06-27  Tom Tromey  <tom@tromey.com>
5661
5662         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
5663         std::vector.
5664         (unwind_infopy_str, pyuw_create_unwind_info)
5665         (unwind_infopy_add_saved_register, pyuw_sniffer)
5666         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
5667         Update.
5668         (struct saved_reg): Add constructor.
5669         <value>: Now a gdbpy_ref<>.
5670
5671 2018-06-27  Tom Tromey  <tom@tromey.com>
5672
5673         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
5674
5675 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5676
5677         * gdb-gdb.py.in: Format using autopep8.
5678
5679 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5680
5681         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
5682         (type_lookup_function): Recognize CORE_ADDR values.
5683
5684 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5685
5686         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
5687         print tag_name.
5688
5689 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5690
5691         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
5692         <__lt__>: Add.
5693
5694 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5695
5696         * gdb-gdb.py: Move to...
5697         * gdb-gdb.py.in: ... here.
5698         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
5699         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
5700         dependencies.
5701         (distclean): Remove gdb-gdb.py when cleaning.
5702         (gdb-gdb.py, gdb-gdb.gdb): New rules.
5703         * configure: Re-generate.
5704
5705 2018-06-27  Pedro Alves  <palves@redhat.com>
5706
5707         * proc-service.c (get_ps_regcache): New.
5708         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
5709         (ps_lsetfpregs): Use it.
5710
5711 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
5712
5713         PR gdb/21695
5714         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
5715         (dwarf_decode_lines_1): Adjust.
5716
5717 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5718
5719         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
5720         override.
5721         <info_proc>: Likewise.
5722
5723 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
5724
5725         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
5726         to windows_fetch_one_register, and only handle the case of
5727         fetching one register.  Move the code that reloads the context
5728         and iterates over all registers if R is negative to...
5729         (windows_nat_target::fetch_registers): ... here.
5730         (do_windows_store_inferior_registers): Rename to
5731         windows_store_one_register, and only handle the case of storing
5732         one register.  Move the code that handles the case where r is
5733         negative to...
5734         (windows_nat_target::store_registers) ... here.
5735
5736 2018-06-26  Tom Tromey  <tom@tromey.com>
5737
5738         PR rust/22574:
5739         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
5740         * rust-lang.c (rust_print_struct_def): Add podata parameter.
5741         Update.
5742         (rust_internal_print_type): Add podata parameter.
5743         (rust_print_type): Update.
5744
5745 2018-06-26  Tom Tromey  <tom@tromey.com>
5746
5747         * typeprint.h (struct print_offset_data) <update, finish,
5748         maybe_print_hole>: New methods.
5749         <indentation>: New constant.
5750         * typeprint.c (print_offset_data::indentation): Define.
5751         (print_offset_data::maybe_print_hole, print_offset_data::update)
5752         (print_offset_data::finish): Move from c-typeprint.c and rename.
5753         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
5754         (print_spaces_filtered_with_print_options): Update.
5755         (c_print_type_union_field_offset, maybe_print_hole)
5756         (c_print_type_struct_field_offset): Move to typeprint.c and
5757         rename.
5758         (c_type_print_base_struct_union): Update.
5759
5760 2018-06-25  Pedro Alves  <palves@redhat.com>
5761
5762         * gdbthread.h (thread_info_ref, delete_thread)
5763         (delete_thread_silent, first_thread_of_inferior)
5764         (any_thread_of_inferior, switch_to_thread)
5765         (enable_thread_stack_temporaries)
5766         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5767         (get_last_thread_stack_temporary)
5768         (value_in_thread_stack_temporaries, can_access_registers_thread):
5769         Spell out "struct thread_info" instead of just "thread_info".
5770         * inferior.h (notice_new_inferior): Likewise.
5771
5772 2018-06-25  Pedro Alves  <palves@redhat.com>
5773
5774         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5775         pass thread_info pointer to delete_thread.
5776         (windows_nat_target::detach): Pass inferior pointer to
5777         detach_inferior.
5778         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
5779         delete_thread.
5780         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
5781         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
5782         and pass a thread_info pointer to delete_thread.
5783         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
5784         pass thread_info pointer to delete_thread.
5785         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
5786         delete_thread_silent call.
5787         * procfs.c (procfs_target::detach): Pass inferior pointer to
5788         detach_inferior.
5789         (procfs_target::wait): Pass thread_info pointer to delete_thread.
5790         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
5791         delete_thread_silent call.
5792         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5793         pass thread_info pointer to delete_thread.
5794         (windows_nat_target::detach): Pass inferior pointer to
5795         delete_inferior.
5796
5797 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5798
5799         * regcache.c (readable_regcache::read_part): Fix asserts.
5800         (reg_buffer::raw_collect_part): New function.
5801         (regcache::write_part): Fix asserts.
5802         (reg_buffer::raw_supply_part): New function.
5803         (regcache::transfer_regset_register): New helper function.
5804         (regcache::transfer_regset): Call new functions.
5805         (regcache_supply_regset): Use gdb_byte*.
5806         (regcache::supply_regset): Likewise.
5807         (regcache_collect_regset): Likewise.
5808         (regcache::collect_regset): Likewise.
5809         * regcache.h (reg_buffer::raw_collect_part): New declaration.
5810         (reg_buffer::raw_supply_part): Likewise.
5811         (regcache::transfer_regset_register): Likewise.
5812         (regcache::transfer_regset): Use gdb_byte*.
5813
5814 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5815
5816         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
5817
5818 2018-06-21  Pedro Alves  <palves@redhat.com>
5819
5820         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
5821         instead of a ptid_t.  All callers adjusted.
5822         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
5823         adjusted.
5824         (print_ada_task_info, display_current_task_id, task_command_1):
5825         Adjust.
5826         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
5827         inferior_thread.
5828         (breakpoint_kind): Adjust.
5829         (remove_breakpoints_pid): Rename to ...
5830         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
5831         pointer.  All callers adjusted.
5832         (bpstat_clear_actions): Use inferior_thread.
5833         (get_bpstat_thread): New.
5834         (bpstat_do_actions): Use it.
5835         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
5836         to take a thread_info pointer.  All callers adjusted.
5837         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
5838         (breakpoint_re_set_thread): Use inferior_thread.
5839         * breakpoint.h (struct inferior): Forward declare.
5840         (bpstat_stop_status): Update.
5841         (remove_breakpoints_pid): Delete.
5842         (remove_breakpoints_inf): New.
5843         * bsd-uthread.c (bsd_uthread_target::wait)
5844         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
5845         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
5846         (maint_btrace_packet_history_cmd)
5847         (maint_btrace_clear_packet_history_cmd): Adjust.
5848         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
5849         inferior_thread.
5850         * cli/cli-interp.c: Include "inferior.h".
5851         * common/refcounted-object.h (struct
5852         refcounted_object_ref_policy): New.
5853         * compile/compile-object-load.c: Include gdbthread.h.
5854         (store_regs): Use inferior_thread.
5855         * corelow.c (core_target::close): Use current_inferior.
5856         (core_target_open): Adjust to use first_thread_of_inferior and use
5857         the current inferior.
5858         * ctf.c (ctf_target::close): Adjust to use current_inferior.
5859         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
5860         <thread>: ... this new field.  All references adjusted.
5861         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
5862         Take a thread_info pointer instead of a ptid_t.
5863         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
5864         (dummy_frame_discard, register_dummy_frame_dtor): Take a
5865         thread_info pointer instead of a ptid_t.
5866         * elfread.c: Include "inferior.h".
5867         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
5868         Use inferior_thread.
5869         * eval.c (evaluate_subexp): Likewise.
5870         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
5871         inferior_thread.
5872         * gdb_proc_service.h (struct thread_info): Forward declare.
5873         (struct ps_prochandle) <ptid>: Delete, replaced by ...
5874         <thread>: ... this new field.  All references adjusted.
5875         * gdbarch.h, gdbarch.c: Regenerate.
5876         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
5877         'thread' parameter.  All implementations and callers adjusted.
5878         * gdbthread.h (thread_info) <set_running>: New method.
5879         (delete_thread, delete_thread_silent): Take a thread_info pointer
5880         instead of a ptid.
5881         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
5882         (first_thread_of_process): Delete, replaced by ...
5883         (first_thread_of_inferior): ... this new function.  All callers
5884         adjusted.
5885         (any_live_thread_of_process): Delete, replaced by ...
5886         (any_live_thread_of_inferior): ... this new function.  All callers
5887         adjusted.
5888         (switch_to_thread, switch_to_no_thread): Declare.
5889         (is_executing): Delete.
5890         (enable_thread_stack_temporaries): Update comment.
5891         <enable_thread_stack_temporaries>: Take a thread_info pointer
5892         instead of a ptid_t.  Incref the thread.
5893         <~enable_thread_stack_temporaries>: Decref the thread.
5894         <m_ptid>: Delete
5895         <m_thr>: New.
5896         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5897         (get_last_thread_stack_temporary)
5898         (value_in_thread_stack_temporaries, can_access_registers_thread):
5899         Take a thread_info pointer instead of a ptid_t.  All callers
5900         adjusted.
5901         * infcall.c (get_call_return_value): Use inferior_thread.
5902         (run_inferior_call): Work with thread pointers instead of ptid_t.
5903         (call_function_by_hand_dummy): Work with thread pointers instead
5904         of ptid_t.  Use thread_info_ref.
5905         * infcmd.c (proceed_thread_callback): Access thread's state
5906         directly.
5907         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
5908         access thread's state directly.
5909         (continue_command): Use inferior_thread.
5910         (info_program_command): Use find_thread_ptid and access thread
5911         state directly.
5912         (proceed_after_attach_callback): Use thread state directly.
5913         (notice_new_inferior): Take a thread_info pointer instead of a
5914         ptid_t.  All callers adjusted.
5915         (exit_inferior): Take an inferior pointer instead of a pid.  All
5916         callers adjusted.
5917         (exit_inferior_silent): New.
5918         (detach_inferior): Delete.
5919         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
5920         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
5921         (detach_inferior_command, kill_inferior_command): Use
5922         find_inferior_id instead of valid_gdb_inferior_id and
5923         gdb_inferior_id_to_pid.
5924         (inferior_command): Use inferior and thread pointers.
5925         * inferior.h (struct thread_info): Forward declare.
5926         (notice_new_inferior): Take a thread_info pointer instead of a
5927         ptid_t.  All callers adjusted.
5928         (detach_inferior): Delete declaration.
5929         (exit_inferior, exit_inferior_silent): Take an inferior pointer
5930         instead of a pid.  All callers adjusted.
5931         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
5932         (valid_gdb_inferior_id): Delete.
5933         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
5934         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
5935         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
5936         ...
5937         <inf>: ... this new field.
5938         <step_ptid>: Delete, replaced by ...
5939         <step_thread>: ... this new field.
5940         (get_displaced_stepping_state): Take an inferior pointer instead
5941         of a pid.  All callers adjusted.
5942         (displaced_step_in_progress_any_inferior): Adjust.
5943         (displaced_step_in_progress_thread): Take a thread pointer instead
5944         of a ptid_t.  All callers adjusted.
5945         (displaced_step_in_progress, add_displaced_stepping_state): Take
5946         an inferior pointer instead of a pid.  All callers adjusted.
5947         (get_displaced_step_closure_by_addr): Adjust.
5948         (remove_displaced_stepping_state): Take an inferior pointer
5949         instead of a pid.  All callers adjusted.
5950         (displaced_step_prepare_throw, displaced_step_prepare)
5951         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
5952         All callers adjusted.
5953         (start_step_over): Adjust.
5954         (infrun_thread_ptid_changed): Remove bit updating ptids in the
5955         displaced step queue.
5956         (do_target_resume): Adjust.
5957         (fetch_inferior_event): Use inferior_thread.
5958         (context_switch, get_inferior_stop_soon): Take an
5959         execution_control_state pointer instead of a ptid_t.  All callers
5960         adjusted.
5961         (switch_to_thread_cleanup): Delete.
5962         (stop_all_threads): Use scoped_restore_current_thread.
5963         * inline-frame.c: Include "gdbthread.h".
5964         (inline_state) <inline_state>: Take a thread pointer instead of a
5965         ptid_t.  All callers adjusted.
5966         <ptid>: Delete, replaced by ...
5967         <thread>: ... this new field.
5968         (find_inline_frame_state): Take a thread pointer instead of a
5969         ptid_t.  All callers adjusted.
5970         (skip_inline_frames, step_into_inline_frame)
5971         (inline_skipped_frames, inline_skipped_symbol): Take a thread
5972         pointer instead of a ptid_t.  All callers adjusted.
5973         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
5974         (inline_skipped_frames, inline_skipped_symbol): Likewise.
5975         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
5976         pointers directly.
5977         * linux-nat.c (get_detach_signal): Likewise.
5978         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
5979         (thread_db_notice_clone): Adjust.
5980         (thread_db_find_new_threads_silently)
5981         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
5982         a thread pointer instead of a ptid_t.  All callers adjusted.
5983         * mi/mi-cmd-var.c: Include "inferior.h".
5984         (mi_cmd_var_update_iter): Update to use thread pointers.
5985         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
5986         inferior directly.
5987         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
5988         out to ...
5989         (mi_output_running): ... this new function.
5990         (mi_on_resume_1): Adjust to use it.
5991         (mi_user_selected_context_changed): Adjust to use inferior_thread.
5992         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
5993         directly.
5994         (interrupt_thread_callback): : Adjust to use thread and inferior
5995         pointers.
5996         * proc-service.c: Include "gdbthread.h".
5997         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
5998         * progspace-and-thread.c: Include "inferior.h".
5999         * progspace.c: Include "inferior.h".
6000         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6001         hold a reference to an inferior_object.
6002         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6003         inferior_thread.
6004         * python/py-inferior.c (struct inferior_object): Give the type a
6005         tag name instead of a typedef.
6006         (python_on_normal_stop): No need to check if the current thread is
6007         listed.
6008         (inferior_to_inferior_object): Change return type to
6009         inferior_object.  All callers adjusted.
6010         (find_thread_object): Delete, bits factored out to ...
6011         (thread_to_thread_object): ... this new function.
6012         * python/py-infthread.c (create_thread_object): Use
6013         inferior_to_inferior_object.
6014         (thpy_is_stopped): Use thread pointer directly.
6015         (gdbpy_selected_thread): Use inferior_thread.
6016         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6017         field, replaced with ...
6018         <thread>: ... this new field.  All users adjusted.
6019         (btpy_insn_or_gap_new): Drop const.
6020         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6021         callers adjusted.
6022         * python/py-record.c: Include "gdbthread.h".
6023         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6024         a ptid_t.  All callers adjusted.
6025         (gdbpy_current_recording): Use inferior_thread.
6026         * python/py-record.h (recpy_record_object) <ptid>: Delete
6027         field, replaced with ...
6028         <thread>: ... this new field.  All users adjusted.
6029         (recpy_element_object) <ptid>: Delete
6030         field, replaced with ...
6031         <thread>: ... this new field.  All users adjusted.
6032         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6033         a ptid_t.  All callers adjusted.
6034         * python/py-threadevent.c: Include "gdbthread.h".
6035         (get_event_thread): Use thread_to_thread_object.
6036         * python/python-internal.h (struct inferior_object): Forward
6037         declare.
6038         (find_thread_object, find_inferior_object): Delete declarations.
6039         (thread_to_thread_object, inferior_to_inferior_object): New
6040         declarations.
6041         * record-btrace.c: Include "inferior.h".
6042         (require_btrace_thread): Use inferior_thread.
6043         (record_btrace_frame_sniffer)
6044         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6045         (get_thread_current_frame): Use scoped_restore_current_thread and
6046         switch_to_thread.
6047         (get_thread_current_frame): Use thread pointer directly.
6048         (record_btrace_replay_at_breakpoint): Use thread's inferior
6049         pointer directly.
6050         * record-full.c: Include "inferior.h".
6051         * regcache.c: Include "gdbthread.h".
6052         (get_thread_arch_regcache): Use the inferior's address space
6053         directly.
6054         (get_thread_regcache, registers_changed_thread): New.
6055         * regcache.h (get_thread_regcache(thread_info *thread)): New
6056         overload.
6057         (registers_changed_thread): New.
6058         (remote_target) <remote_detach_1>: Swap order of parameters.
6059         (remote_add_thread): <remote_add_thread>: Return the new thread.
6060         (get_remote_thread_info(ptid_t)): New overload.
6061         (remote_target::remote_notice_new_inferior): Use thread pointers
6062         directly.
6063         (remote_target::process_initial_stop_replies): Use
6064         thread_info::set_running.
6065         (remote_target::remote_detach_1, remote_target::detach)
6066         (extended_remote_target::detach): Adjust.
6067         * stack.c (frame_show_address): Use inferior_thread.
6068         * target-debug.h (target_debug_print_thread_info_pp): New.
6069         * target-delegates.c: Regenerate.
6070         * target.c (default_thread_address_space): Delete.
6071         (memory_xfer_partial_1): Use current_inferior.
6072         (target_detach): Use current_inferior.
6073         (target_thread_address_space): Delete.
6074         (generic_mourn_inferior): Use current_inferior.
6075         * target.h (struct target_ops) <thread_address_space>: Delete.
6076         (target_thread_address_space): Delete.
6077         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6078         pointers directly.
6079         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6080         thread pointer instead of a ptid_t.  Adjust all callers.
6081         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6082         (first_thread_of_process): Delete, replaced by ...
6083         (first_thread_of_inferior): ... this new function.  All callers
6084         adjusted.
6085         (any_thread_of_process): Rename to ...
6086         (any_thread_of_inferior): ... this, and take an inferior pointer.
6087         (any_live_thread_of_process): Rename to ...
6088         (any_live_thread_of_inferior): ... this, and take an inferior
6089         pointer.
6090         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6091         (value_in_thread_stack_temporaries)
6092         (get_last_thread_stack_temporary): Take a thread pointer instead
6093         of a ptid_t.  Adjust all callers.
6094         (thread_info::set_running): New.
6095         (validate_registers_access): Use inferior_thread.
6096         (can_access_registers_ptid): Rename to ...
6097         (can_access_registers_thread): ... this, and take a thread
6098         pointer.
6099         (print_thread_info_1): Adjust to compare thread pointers instead
6100         of ptids.
6101         (switch_to_no_thread, switch_to_thread): Make extern.
6102         (scoped_restore_current_thread::~scoped_restore_current_thread):
6103         Use m_thread pointer directly.
6104         (scoped_restore_current_thread::scoped_restore_current_thread):
6105         Use inferior_thread.
6106         (thread_command): Use thread pointer directly.
6107         (thread_num_make_value_helper): Use inferior_thread.
6108         * top.c (execute_command): Use inferior_thread.
6109         * tui/tui-interp.c: Include "inferior.h".
6110         * varobj.c (varobj_create): Use inferior_thread.
6111         (value_of_root_1): Use find_thread_global_id instead of
6112         global_thread_id_to_ptid.
6113
6114 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6115
6116         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6117         possible.
6118         (regcache::write_part): Likewise.
6119         (readable_regcache::cooked_read_part): Update comment.
6120         (readable_regcache::cooked_write_part): Likewise.
6121         * regcache.h: (readable_regcache::read_part): Likewise.
6122         (regcache::write_part): Likewise.
6123
6124 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6125             Dirk Schubert  <dirk.schubert@arm.com>
6126
6127         * aarch64-linux-nat.c (post_attach): New.
6128         (aarch64_linux_nat_target::post_attach): Override post_attach to
6129         record the number of hardware debug registers.
6130
6131 2018-06-20  Tom Tromey  <tom@tromey.com>
6132
6133         * python/py-param.c (add_setshow_generic): Make parameters const.
6134         (parmpy_init): Update.
6135
6136 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6137
6138         * regcache.h (regcache_cooked_read_ftype): Rename to...
6139         (register_read_ftype): ...this, change type to function_view.
6140         (class reg_buffer) <save>: Remove src parameter.
6141         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6142         parameter non-const in first overload.  Remove src parameter in
6143         second overload.
6144         * regcache.c (do_cooked_read): Remove.
6145         (readonly_detached_regcache::readonly_detached_regcache): Make
6146         parameter non-const, adjust call to other constructor.
6147         (reg_buffer::save): Remove src parameter.
6148         * frame.c (do_frame_register_read): Remove.
6149         (frame_save_as_regcache): Use lambda function.
6150         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6151         parameter to ppu2spu_data *.
6152         (ppu2spu_sniffer): Use lambda function.
6153
6154 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6155
6156         * record-full.c (record_full_target::insert_breakpoint): Remove
6157         "struct" keyword, add const.
6158
6159 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6160
6161         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6162         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6163         * configure.ac: Remove AC_PREREQ, add missing quoting.
6164         * gnulib/configure.ac: Modernize usage of
6165         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6166         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6167         (AUTOMAKE_VERSION): Bump to 1.15.1.
6168         * configure: Re-generate.
6169         * config.in: Re-generate.
6170         * aclocal.m4: Re-generate.
6171         * gnulib/aclocal.m4: Re-generate.
6172         * gnulib/config.in: Re-generate.
6173         * gnulib/configure: Re-generate.
6174         * gnulib/import/Makefile.in: Re-generate.
6175
6176 2018-06-19  Pedro Alves  <palves@redhat.com>
6177
6178         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6179         (lookup_minimal_symbol_by_pc_section): ... here with
6180         gdb_assert_not_reached added.
6181
6182 2018-06-19  Pedro Alves  <palves@redhat.com>
6183
6184         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6185         parameter with a block parameter.  Compare location's block symbol
6186         with the frame's block instead of addresses.
6187         (skip_inline_frames): Pass the current block instead of the
6188         frame's address.  Break out as soon as we determine the frame
6189         should not be skipped.
6190
6191 2018-06-18  Tom Tromey  <tom@tromey.com>
6192
6193         * solib-aix.c (solib_aix_get_section_offsets): Return
6194         unique_xmalloc_ptr.
6195         (solib_aix_solib_create_inferior_hook): Update.
6196
6197 2018-06-18  Tom Tromey  <tom@tromey.com>
6198
6199         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6200
6201 2018-06-18  Tom Tromey  <tom@tromey.com>
6202
6203         * solib-frv.c (frv_relocate_main_executable): Use
6204         unique_xmalloc_ptr.
6205         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6206         unique_xmalloc_ptr.
6207
6208 2018-06-18  Tom Tromey  <tom@tromey.com>
6209
6210         * objfiles.h (inhibit_section_map_updates): Update.
6211         (resume_section_map_updates, resume_section_map_updates_cleanup):
6212         Remove.
6213         * solib-svr4.c (svr4_handle_solib_event): Update.
6214         * objfiles.c (inhibit_section_map_updates): Return
6215         scoped_restore_tmpl<int>.
6216         (resume_section_map_updates, resume_section_map_updates_cleanup):
6217         Remove.
6218
6219 2018-06-18  Tom Tromey  <tom@tromey.com>
6220
6221         * valprint.h (read_string): Update.
6222         * valprint.c (read_string): Change type of "buffer".
6223         (val_print_string): Update.
6224         * python/py-value.c (valpy_string): Update.
6225         * language.h (struct language_defn) <la_get_string>: Change
6226         type of "buffer".
6227         (default_get_string, c_get_string): Update.
6228         * language.c (default_get_string): Change type of "buffer".
6229         * guile/scm-value.c (gdbscm_value_to_string): Update.
6230         * c-lang.c (c_get_string): Change type of "buffer".
6231
6232 2018-06-18  Tom Tromey  <tom@tromey.com>
6233
6234         * ser-mingw.c (struct pipe_state_destroyer): New.
6235         (pipe_state_up): New typedef.
6236         (cleanup_pipe_state): Remove.
6237         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6238
6239 2018-06-18  Tom Tromey  <tom@tromey.com>
6240
6241         * rust-lang.h (rust_yyerror): Don't declare.
6242         * rust-lang.c (rust_language_defn): Update.
6243         * rust-exp.y (yyerror): Now static.
6244         * parse.c (parse_exp_in_context_1): Update.
6245         * p-lang.h (p_yyerror): Don't declare.
6246         * p-lang.c (p_language_defn): Update.
6247         * p-exp.y (yyerror): Now static.
6248         * opencl-lang.c (opencl_language_defn): Update.
6249         * objc-lang.c (objc_language_defn): Update.
6250         * m2-lang.h (m2_yyerror): Don't declare.
6251         * m2-lang.c (m2_language_defn): Update.
6252         * m2-exp.y (yyerror): Now static.
6253         * language.h (struct language_defn) <la_error>: Remove.
6254         * language.c (unk_lang_error): Remove.
6255         (unknown_language_defn, auto_language_defn): Remove.
6256         * go-lang.h (go_yyerror): Don't declare.
6257         * go-lang.c (go_language_defn): Update.
6258         * go-exp.y (yyerror): Now static.
6259         * f-lang.h (f_yyerror): Don't declare.
6260         * f-lang.c (f_language_defn): Update.
6261         * f-exp.y (yyerror): Now static.
6262         * d-lang.h (d_yyerror): Don't declare.
6263         * d-lang.c (d_language_defn): Update.
6264         * d-exp.y (yyerror): Now static.
6265         * c-lang.h (c_yyerror): Don't declare.
6266         * c-lang.c (c_language_defn, cplus_language_defn)
6267         (asm_language_defn, minimal_language_defn): Update.
6268         * c-exp.y (yyerror): Now static.
6269         * ada-lang.h (ada_yyerror): Don't declare.
6270         * ada-lang.c (ada_language_defn): Update.
6271         * ada-exp.y (yyerror): Now static.
6272
6273 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6274
6275         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6276         (store_sveregs_to_thread): Likewise.
6277         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6278         (aarch64_linux_store_inferior_registers): Likewise.
6279         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6280         function.
6281         (aarch64_sve_regs_copy_to_regcache): Likewise.
6282         (aarch64_sve_regs_copy_from_regcache): Likewise.
6283         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6284         declaration.
6285         (aarch64_sve_regs_copy_to_regcache): Likewise.
6286         (aarch64_sve_regs_copy_from_regcache): Likewise.
6287         (sve_context): Structure from Linux headers.
6288         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6289         (SVE_SIG_ZREG_SIZE): Likewise.
6290         (SVE_SIG_PREG_SIZE): Likewise.
6291         (SVE_SIG_FFR_SIZE): Likewise.
6292         (SVE_SIG_REGS_OFFSET): Likewise.
6293         (SVE_SIG_ZREGS_OFFSET): Likewise.
6294         (SVE_SIG_ZREG_OFFSET): Likewise.
6295         (SVE_SIG_ZREGS_SIZE): Likewise.
6296         (SVE_SIG_PREGS_OFFSET): Likewise.
6297         (SVE_SIG_PREG_OFFSET): Likewise.
6298         (SVE_SIG_PREGS_SIZE): Likewise.
6299         (SVE_SIG_FFR_OFFSET): Likewise.
6300         (SVE_SIG_REGS_SIZE): Likewise.
6301         (SVE_SIG_CONTEXT_SIZE): Likewise.
6302         (SVE_PT_REGS_MASK): Likewise.
6303         (SVE_PT_REGS_FPSIMD): Likewise.
6304         (SVE_PT_REGS_SVE): Likewise.
6305         (SVE_PT_VL_INHERIT): Likewise.
6306         (SVE_PT_VL_ONEXEC): Likewise.
6307         (SVE_PT_REGS_OFFSET): Likewise.
6308         (SVE_PT_FPSIMD_OFFSET): Likewise.
6309         (SVE_PT_FPSIMD_SIZE): Likewise.
6310         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6311         (SVE_PT_SVE_PREG_SIZE): Likewise.
6312         (SVE_PT_SVE_FFR_SIZE): Likewise.
6313         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6314         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6315         (__SVE_SIG_TO_PT): Likewise.
6316         (SVE_PT_SVE_OFFSET): Likewise.
6317         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6318         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6319         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6320         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6321         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6322         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6323         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6324         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6325         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6326         (SVE_PT_SVE_SIZE): Likewise.
6327         (SVE_PT_SIZE): Likewise.
6328         (HAS_SVE_STATE): New define.
6329
6330 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6331
6332         * nat/aarch64-sve-linux-sigcontext.h: New file.
6333         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6334         new files.
6335         (SVE_VQ_MIN): Likewise.
6336         (SVE_VQ_MAX): Likewise.
6337         (SVE_VL_MIN): Likewise.
6338         (SVE_VL_MAX): Likewise.
6339         (SVE_NUM_ZREGS): Likewise.
6340         (SVE_NUM_PREGS): Likewise.
6341         (sve_vl_valid): Likewise.
6342         (struct user_sve_header): Likewise.
6343
6344 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6345             Richard Bunt <Richard.Bunt@arm.com>
6346
6347         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6348         was requested by GDB.
6349
6350 2018-06-15  Tom de Vries  <tdevries@suse.de>
6351
6352         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6353
6354 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6355
6356         * gnulib/update-gnulib.sh: Print expected versions of
6357         autoconf/aclocal.
6358
6359 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6360
6361         * arch-utils.c (default_type_align): Use type_length_units.
6362         * gdbtypes.c (type_align): Use type_length_units.
6363
6364 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6365
6366         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6367         of 'define' command.
6368
6369 2018-06-14  Tom de Vries  <tdevries@suse.de>
6370
6371         PR cli/22573
6372         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6373         get_no_prettyformat_print_options.
6374
6375 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6376
6377         * sparc-nat.h: Include target.h.
6378         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6379         <fetch_registers>: Remove this argument in function call.
6380         <store_registers>: Remove this argument in function call, remove
6381         extra semicolon.
6382         <low_forget_process>: Call sparc64_forget_process instead of
6383         sparc_forget_process.
6384
6385 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6386
6387         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6388         (procfs_target::make_corefile_notes): Adjust to new
6389         target_read_alloc return type.
6390
6391 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6392             Stephen Roberts  <stephen.roberts@arm.com>
6393
6394         PR gdb/22882
6395         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6396         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6397         Move should_notify_stop local into more inner scope.
6398
6399 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6400             Stephen Roberts  <stephen.roberts@arm.com>
6401
6402         PR gdb/22882
6403         * infrun.c (resume_1): Add call to mark_async_event_handler.
6404
6405 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6406
6407         * infrun.c (do_target_wait): Change old version of $pc printed.
6408
6409 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6410
6411         * dwarf2read.c (read_index_from_section): Rename to...
6412         (read_gdb_index_from_section): ... this, update all callers.
6413         (dwarf2_read_index): Rename to...
6414         (dwarf2_read_gdb_index): ... this, update all callers.
6415
6416 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6417
6418         * gdb/hppa-linux-nat.c
6419         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6420         hppa_linux_nat_target::fetch_registers.
6421
6422 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6423
6424         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6425         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6426         (AARCH64_DWARF_SVE_FFR): Likewise.
6427         (AARCH64_DWARF_SVE_P0): Likewise.
6428         (AARCH64_DWARF_SVE_Z0): Likewise.
6429
6430 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6431
6432         * common/common-regcache.h (raw_compare): New function.
6433         * regcache.c (regcache::raw_compare): Likewise.
6434         * regcache.h (regcache::raw_compare): New declaration.
6435
6436 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6437
6438         * common/common-regcache.h (reg_buffer_common): New structure.
6439         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6440         (reg_buffer::raw_supply): Likewise.
6441         (reg_buffer::raw_supply_integer): Likewise.
6442         (reg_buffer::raw_supply_zeroed): Likewise.
6443         (reg_buffer::raw_collect): Likewise.
6444         (reg_buffer::raw_collect_integer): Likewise.
6445         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6446         (reg_buffer::raw_supply): Likewise.
6447         (reg_buffer::raw_supply_integer): Likewise.
6448         (reg_buffer::raw_supply_zeroed): Likewise.
6449         (reg_buffer::raw_collect): Likewise.
6450         (reg_buffer::raw_collect_integer): Likewise.
6451
6452 2018-06-10  Tom Tromey  <tom@tromey.com>
6453
6454         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6455         (class remote_state) <stop_reply_queue>: Now std::vector.
6456         (remote_state::~remote_state)
6457         (remote_target::stop_reply_queue_length): Update.
6458         (struct queue_iter_param, remove_child_of_pending_fork)
6459         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6460         (check_pending_event_prevents_wildcard_vcont_callback)
6461         (remove_stop_reply_for_inferior)
6462         (remove_stop_reply_of_remote_state)
6463         (remote_notif_remove_once_on_match)
6464         (stop_reply_match_ptid_and_ws)
6465         (remote_kill_child_of_pending_fork): Remove.
6466         (remote_target::remove_new_fork_children)
6467         (remote_target::check_pending_events_prevent_wildcard_vcont)
6468         (remote_target::discard_pending_stop_replies)
6469         (remote_target::discard_pending_stop_replies_in_queue)
6470         (remote_target::remote_notif_remove_queued_reply)
6471         (remote_target::queued_stop_reply)
6472         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6473         (remote_target::wait, remote_target::kill_new_fork_children)
6474         (remote_target::async): Update.
6475
6476 2018-06-10  Tom Tromey  <tom@tromey.com>
6477
6478         * record-full.c (record_full_arch_list_cleanups): Remove.
6479         (record_full_message): Use try/catch.
6480         (record_full_wait_cleanups): Remove.
6481         (record_full_wait_1): Use try/catch.
6482         (record_full_restore): Likewise.
6483
6484 2018-06-10  Tom Tromey  <tom@tromey.com>
6485
6486         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6487         declare VEC.  Add constructor.
6488         <in_target_beneath>: Now bool.
6489         (record_full_breakpoints): Now a std::vector, static.
6490         (record_full_sync_record_breakpoints)
6491         (record_full_init_record_breakpoints)
6492         (record_full_target::insert_breakpoint)
6493         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6494
6495 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6496
6497         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6498         * serial.c (serial_interface_lookup): Remove struct keyword.
6499
6500 2018-06-10  Tom Tromey  <tom@tromey.com>
6501
6502         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6503         method.
6504         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6505         a method.
6506         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6507         method.
6508         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6509         "beneath" as a method.
6510         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6511         Use "beneath" as a method.
6512
6513 2018-06-10  Tom Tromey  <tom@tromey.com>
6514
6515         * tracefile.c (struct trace_file_writer_deleter): New.
6516         <operator()>: Rename from trace_file_writer_xfree.
6517         (trace_file_writer_up): New typedef.
6518         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6519
6520 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6521
6522         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6523         <m_registers, m_register_status>: Change type to
6524         std::unique_ptr.
6525         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6526         XCNEWVEC.
6527
6528 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6529
6530         * common/common-regcache.h (enum register_status): Add
6531         underlying type "signed char".
6532         * regcache.h (reg_buffer) <m_register_status>: Change type to
6533         register_status *.
6534         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6535         register_status instead of signed char.
6536         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6537         (reg_buffer::get_register_status): Remove cast.
6538         (readable_regcache::raw_read): Remove cast.
6539         (readable_regcache::cooked_read): Remove cast.
6540
6541 2018-06-09  Tom Tromey  <tom@tromey.com>
6542
6543         * source.c (reverse_search_command, forward_search_command): Use
6544         scoped_fd.
6545
6546 2018-06-09  Tom Tromey  <tom@tromey.com>
6547
6548         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6549         (serial_ops_list): Now static, std::vector.
6550         (serial_interface_lookup, serial_add_interface): Update.
6551
6552 2018-06-09  Tom Tromey  <tom@tromey.com>
6553
6554         * dwarf2read.c (process_cu_includes): Update.
6555         (process_full_comp_unit): Update.
6556         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6557         std::vector.
6558
6559 2018-06-08  Paul Koning  <paul_koning@dell.com>
6560
6561         PR gdb/23252
6562
6563         * python/python.c (do_start_initialization):
6564         Avoid call to internal Python API.
6565         (init__gdb_module): New function.
6566
6567 2018-06-08  Gary Benson <gbenson@redhat.com>
6568
6569         * linux-thread-db.c (valprint.h): New include.
6570         (struct check_thread_db_info): New structure.
6571         (check_thread_db_on_load, tdb_testinfo): New static globals.
6572         (check_thread_db, check_thread_db_callback): New functions.
6573         (try_thread_db_load_1): Run integrity checks if requested.
6574         (maintenance_check_libthread_db): New function.
6575         (_initialize_thread_db): Register "maint check libthread-db"
6576         and "maint set/show check-libthread-db".
6577         * NEWS: Mention the above new commands.
6578
6579 2018-06-08  Tom Tromey  <tom@tromey.com>
6580
6581         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
6582         now a method.
6583
6584 2018-06-08  Tom Tromey  <tom@tromey.com>
6585
6586         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
6587
6588 2018-06-08  Tom Tromey  <tom@tromey.com>
6589
6590         * common/btrace-common.h (struct btrace_data): Add constructor,
6591         destructor, move assignment operator.
6592         <empty, clear, fini>: New methods.
6593         <format>: Initialize.
6594         (btrace_data_init, btrace_data_fini, btrace_data_clear)
6595         (btrace_data_empty): Don't declare.
6596         * common/btrace-common.c (btrace_data_init): Remove.
6597         (btrace_data::fini): Rename from btrace_data_fini.
6598         (btrace_data::empty): Rename from btrace_data_empty.
6599         (btrace_data::clear): Rename from btrace_data_clear.  Return
6600         bool.
6601         * btrace.h (make_cleanup_btrace_data): Don't declare.
6602         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
6603         (parse_xml_btrace): Update.
6604         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
6605         (maint_btrace_clear_packet_history_cmd): Update.
6606
6607 2018-06-07  Pedro Alves  <palves@redhat.com>
6608
6609         * target.h (target_ops) <beneath>: Now a method.  All references
6610         updated.
6611         (class target_stack): New.
6612         * target.c (g_target_stack): New.
6613         (g_current_top_target): Delete.
6614         (current_top_target): Get the top target out of g_target_stack.
6615         (target_stack::push, target_stack::unpush): New.
6616         (push_target, unpush_target): Reimplement.
6617         (target_is_pushed): Reimplement in terms of g_target_stack.
6618         (target_ops::beneath, target_stack::find_beneath): New.
6619
6620 2018-06-07  Pedro Alves  <palves@redhat.com>
6621
6622         * target.h (find_target_beneath): Delete declaration.
6623         * target.c (find_target_beneath): Delete definition.
6624         * aix-thread.c: All callers of find_target_beneath adjusted to
6625         call target_ops::beneath instead.
6626         * bsd-uthread.c: Likewise.
6627         * linux-thread-db.c: Likewise.
6628         * ravenscar-thread.c: Likewise.
6629         * sol-thread.c: Likewise.
6630         * spu-multiarch.c: Likewise.
6631
6632 2018-06-07  Pedro Alves  <palves@redhat.com>
6633
6634         * target.h (target_ops) <beneath>: Now a method.  All references
6635         updated.
6636         (target_ops) <m_beneath>: New.
6637         * target.c (target_ops::beneath): New.
6638         * corelow.c: Adjust all references to target_ops::beneath.
6639         * linux-thread-db.c: Likewise.
6640         * make-target-delegates: Likewise.
6641         * record-btrace.c: Likewise.
6642         * record-full.c: Likewise.
6643         * remote.c: Likewise.
6644         * target.c: Likewise.
6645         * target-delegates.c: Regenerate.
6646
6647 2018-06-07  Pedro Alves  <palves@redhat.com>
6648
6649         * target.h (target_stack): Delete.
6650         (current_top_target): Declare function.
6651         * target.c (target_stack): Delete.
6652         (g_current_top_target): New.
6653         (current_top_target): New function.
6654         * auxv.c: Use current_top_target instead of target_stack
6655         throughout.
6656         * avr-tdep.c: Likewise.
6657         * breakpoint.c: Likewise.
6658         * corefile.c: Likewise.
6659         * elfread.c: Likewise.
6660         * eval.c: Likewise.
6661         * exceptions.c: Likewise.
6662         * frame.c: Likewise.
6663         * gdbarch-selftests.c: Likewise.
6664         * gnu-v3-abi.c: Likewise.
6665         * ia64-tdep.c: Likewise.
6666         * ia64-vms-tdep.c: Likewise.
6667         * infcall.c: Likewise.
6668         * infcmd.c: Likewise.
6669         * infrun.c: Likewise.
6670         * linespec.c: Likewise.
6671         * linux-tdep.c: Likewise.
6672         * minsyms.c: Likewise.
6673         * ppc-linux-nat.c: Likewise.
6674         * ppc-linux-tdep.c: Likewise.
6675         * procfs.c: Likewise.
6676         * regcache.c: Likewise.
6677         * remote.c: Likewise.
6678         * rs6000-tdep.c: Likewise.
6679         * s390-linux-nat.c: Likewise.
6680         * s390-tdep.c: Likewise.
6681         * solib-aix.c: Likewise.
6682         * solib-darwin.c: Likewise.
6683         * solib-dsbt.c: Likewise.
6684         * solib-spu.c: Likewise.
6685         * solib-svr4.c: Likewise.
6686         * solib-target.c: Likewise.
6687         * sparc-tdep.c: Likewise.
6688         * sparc64-tdep.c: Likewise.
6689         * spu-tdep.c: Likewise.
6690         * symfile.c: Likewise.
6691         * symtab.c: Likewise.
6692         * target-descriptions.c: Likewise.
6693         * target-memory.c: Likewise.
6694         * target.c: Likewise.
6695         * target.h: Likewise.
6696         * tracefile-tfile.c: Likewise.
6697         * tracepoint.c: Likewise.
6698         * valops.c: Likewise.
6699         * valprint.c: Likewise.
6700         * value.c: Likewise.
6701         * windows-tdep.c: Likewise.
6702         * mi/mi-main.c: Likewise.
6703
6704 2018-06-07  Tom Tromey  <tom@tromey.com>
6705
6706         * valprint.h (build_address_symbolic): Declare.
6707         * printcmd.c (print_address_symbolic): Update.
6708         (build_address_symbolic): Change "name" and "filename" to
6709         std::string.
6710         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
6711         Update.
6712         * defs.h (build_address_symbolic): Remove declaration.
6713
6714 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
6715
6716         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
6717         (aarch64_vnv_type): Add function.
6718         (aarch64_pseudo_register_name): Add V regs for SVE.
6719         (aarch64_pseudo_register_type): Likewise.
6720         (aarch64_pseudo_register_reggroup_p): Likewise.
6721         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
6722         (aarch64_pseudo_read_value): Add V regs for SVE.
6723         (aarch64_pseudo_write_2): Use V0 offset for SVE
6724         (aarch64_pseudo_write): Add V regs for SVE.
6725         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
6726
6727 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
6728
6729         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
6730         (sve_vl_from_vq): Likewise.
6731
6732 2018-06-05  Tom Tromey  <tom@tromey.com>
6733
6734         * cli/cli-cmds.c (show_version): Update.
6735         * top.c (print_gdb_version): Add "interactive" parameter.
6736         Update.
6737         * main.c (captured_main_1): Update.
6738         * top.h (print_gdb_version): Add "interactive" parameter and a
6739         comment.
6740
6741 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
6742
6743         * common/enum-flags.h: Add trailing semicolon to example in
6744         comment.
6745
6746 2018-06-05  Tom Tromey  <tom@tromey.com>
6747
6748         PR cli/12326:
6749         * NEWS: Add entry about pager.
6750         * utils.c (pagination_disabled_for_command): New global.
6751         (prompt_for_continue): Allow "c" response to prompt.
6752         (reinitialize_more_filter): Clear
6753         pagination_disabled_for_command.
6754         (fputs_maybe_filtered): Check pagination_disabled_for_command.
6755
6756 2018-06-04  Tom Tromey  <tom@tromey.com>
6757
6758         * ada-lang.h (ada_lookup_symbol_list): Update.
6759         * ada-lang.c (resolve_subexp): Update.
6760         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
6761         parameter.
6762         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
6763         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
6764         results parameter to std::vector.
6765         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
6766         Update.
6767         * ada-exp.y (block_lookup): Update.
6768         (select_possible_type_sym): Change type of syms.  Remove nsyms
6769         parameter.
6770         (write_var_or_type, write_name_assoc): Update.
6771
6772 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
6773
6774         * windows-nat.c (windows_nat_target::xfer_partial): Return
6775         TARGET_XFER_E_IO if we need to delegate to the target beneath
6776         but BENEATH is NULL.
6777
6778 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
6779
6780         * Makefile.in (config.status): Add configure.nat as a
6781         dependency.
6782
6783 2018-06-04  Tom Tromey  <tom@tromey.com>
6784
6785         * cp-name-parser.y (cpname_state): Add method declarations.
6786         (HANDLE_QUAL): Update.
6787         (cpname_state::d_grab, cpname_state::fill_comp)
6788         (cpname_state::make_operator, cpname_state::make_dtor)
6789         (cpname_state::make_builtin_type, cpname_state::make_name)
6790         (cpname_state::d_qualify, cpname_state::d_int_type)
6791         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
6792         (%union): Move earlier.
6793
6794 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6795
6796         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
6797
6798 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6799
6800         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
6801         (aarch64_pseudo_write_1): Likewise.
6802         (aarch64_pseudo_read_value): Use helper.
6803         (aarch64_pseudo_write): Likewise.
6804
6805 2018-06-04  Pedro Alves  <palves@redhat.com>
6806
6807         * darwin-nat.c (darwin_ops): Delete.
6808         (darwin_attach_pid): Use get_native_target.
6809
6810 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6811
6812         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
6813         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
6814
6815 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6816
6817         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
6818         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
6819         (aarch64_gdbarch_init): Check for SVE.
6820         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
6821
6822 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6823
6824         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
6825         * aarch64-tdep.h (aarch64_read_description): Likewise.
6826         * arch/aarch64.c (aarch64_create_target_description): Likewise.
6827         * arch/aarch64.h (aarch64_create_target_description): Likewise.
6828         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
6829         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
6830         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
6831
6832 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
6833
6834         * value.c (value_fetch_lazy_bitfield): New.
6835         (value_fetch_lazy_memory): New.
6836         (value_fetch_lazy_register): New.
6837         (value_fetch_lazy): Factor out to smaller functions.
6838
6839 2018-06-01  Tom Tromey  <tom@tromey.com>
6840
6841         * cp-name-parser.y (backslashable, represented): Now const.
6842
6843 2018-06-01  Tom Tromey  <tom@tromey.com>
6844
6845         * cp-name-parser.y: Include parser-defs.h.
6846         (parser_fprintf): Remove declaration.
6847
6848 2018-06-01  Tom Tromey  <tom@tromey.com>
6849
6850         * cp-name-parser.y: Use %pure-parser, %lex-param, and
6851         %parse-param.
6852         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
6853         (global_result): Remove globals.
6854         (struct cpname_state): New.
6855         (yyparse): Don't declare.
6856         (yylex, yyerror): Move declarations after %union.
6857         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
6858         (make_name): Add state parameter.
6859         Update all callers.
6860         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
6861         parameter.
6862         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
6863         Update.
6864         (yylex): Add lvalp, state parameters.
6865         (yyerror): Add state parameter.
6866         (cp_demangled_name_to_comp): Update.
6867
6868 2018-06-01  Tom Tromey  <tom@tromey.com>
6869
6870         * cp-name-parser.y (parser_fprintf): Declare.
6871         (GDB_YY_REMAP_PREFIX): Define.
6872         Include yy-remap.h.  Don't redefine yy* identifiers.
6873
6874 2018-06-01  Tom Tromey  <tom@tromey.com>
6875
6876         * python/py-type.c (typy_legacy_template_argument): Update.
6877         * cp-support.h (cp_demangled_name_to_comp): Update.
6878         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
6879         parameter to be a "std::string *".
6880         (main): Update.
6881
6882 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
6883
6884         * ada-lex.l: Include "diagnostics.h" instead of
6885         "common/diagnostics.h".
6886         * unittests/environ-selftests.c: Likewise.
6887         * common/diagnostics.h: Moved to ../include.
6888
6889 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
6890
6891         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
6892         to language_mode_manual while calling breakpoint_re_set_one.
6893
6894 2018-06-01  Tom Tromey  <tom@tromey.com>
6895
6896         * valops.c (value_cast_structs, destructor_name_p): Update.
6897         * symtab.c (gdb_mangle_name): Update.
6898         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
6899         Update.
6900         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
6901         (pascal_object_print_value_fields, pascal_object_print_value):
6902         Update.
6903         * p-typeprint.c (pascal_type_print_derivation_info): Update.
6904         * linespec.c (find_methods): Update.
6905         * gdbtypes.h (type_name_no_tag): Remove.
6906         (type_name_or_error): Rename from type_name_no_tag_or_error.
6907         * gdbtypes.c (type_name_no_tag): Remove.
6908         (type_name_or_error): Rename from type_name_no_tag_or_error.
6909         (lookup_struct_elt_type, check_typedef): Update.
6910         * expprint.c (print_subexp_standard): Update.
6911         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
6912         * d-namespace.c (d_lookup_nested_symbol): Update.
6913         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
6914         (cp_print_class_member): Update.
6915         * cp-namespace.c (cp_lookup_nested_symbol): Update.
6916         * completer.c (add_struct_fields): Update.
6917         * c-typeprint.c (cp_type_print_derivation_info)
6918         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
6919         Update.
6920         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
6921         (ada_prefer_type, ada_is_exception_sym): Update.
6922
6923 2018-06-01  Tom Tromey  <tom@tromey.com>
6924
6925         * valops.c (enum_constant_from_type, value_namespace_elt)
6926         (value_maybe_namespace_elt): Update.
6927         * valarith.c (find_size_for_pointer_math): Update.
6928         * target-descriptions.c (make_gdb_type): Update.
6929         * symmisc.c (print_symbol): Update.
6930         * stabsread.c (define_symbol, read_type)
6931         (complain_about_struct_wipeout, add_undefined_type)
6932         (cleanup_undefined_types_1): Update.
6933         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
6934         (rust_range_type_p, val_print_struct, rust_print_struct_def)
6935         (rust_internal_print_type, rust_composite_type)
6936         (rust_evaluate_funcall, rust_evaluate_subexp)
6937         (rust_inclusive_range_type_p): Update.
6938         * python/py-type.c (typy_get_tag): Update.
6939         * p-typeprint.c (pascal_type_print_base): Update.
6940         * mdebugread.c (parse_symbol, parse_type): Update.
6941         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
6942         Update.
6943         * guile/scm-type.c (gdbscm_type_tag): Update.
6944         * go-lang.c (sixg_string_p): Update.
6945         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
6946         Update.
6947         * gdbtypes.h (struct main_type) <tag_name>: Remove.
6948         (TYPE_TAG_NAME): Remove.
6949         * gdbtypes.c (type_name_no_tag): Simplify.
6950         (check_typedef, check_types_equal, recursive_dump_type)
6951         (copy_type_recursive, arch_composite_type): Update.
6952         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
6953         in summary mode when needed.
6954         * eval.c (evaluate_funcall): Update.
6955         * dwarf2read.c (fixup_go_packaging, read_structure_type)
6956         (process_structure_scope, read_enumeration_type)
6957         (read_namespace_type, read_module_type, determine_prefix): Update.
6958         * cp-support.c (inspect_type): Update.
6959         * coffread.c (process_coff_symbol, decode_base_type): Update.
6960         * c-varobj.c (c_is_path_expr_parent): Update.
6961         * c-typeprint.c (c_type_print_base_struct_union): Update.
6962         (c_type_print_base_1): Update.  Print struct/class/union/enum in
6963         summary when using C language.
6964         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
6965         (gen_maybe_namespace_elt): Update.
6966         * ada-lang.c (ada_type_name): Simplify.
6967         (empty_record, ada_template_to_fixed_record_type_1)
6968         (template_to_static_fixed_type)
6969         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
6970
6971 2018-06-01  Tom Tromey  <tom@tromey.com>
6972
6973         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
6974         c_print_type.
6975         * c-typeprint.c (c_print_type_1): Add "language" parameter.
6976         (c_print_type): Update.
6977         (c_print_type): New overload.
6978         (c_type_print_varspec_prefix, c_type_print_args)
6979         (c_type_print_varspec_suffix, c_print_type_no_offsets)
6980         (c_type_print_base_struct_union, c_type_print_base_1)
6981         (cp_type_print_method_args): Add "language" parameter.
6982         (c_type_print_base): Update.
6983         * c-lang.h (c_print_type): Add new overload.
6984
6985 2018-06-01  Tom Tromey  <tom@tromey.com>
6986
6987         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
6988         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
6989
6990 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
6991
6992         * aarch64-tdep.c (aarch64_sve_register_names): New const
6993         var.
6994         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
6995         (AARCH64_SVE_Z_REGS_NUM): New define.
6996         (AARCH64_SVE_P_REGS_NUM): Likewise.
6997         (AARCH64_SVE_NUM_REGS): Likewise.
6998
6999 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7000
7001         * nat/linux-ptrace.h [__alpha__]
7002         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7003         definitions.
7004
7005 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7006
7007         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7008         the endianness selected.
7009         * NEWS: Document `set endian auto' mode operation update.
7010
7011 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7012
7013         * Makefile.in: Add new header.
7014         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7015         (sve_vl_from_vg): Likewise.
7016         (sve_vq_from_vl): Likewise.
7017         (sve_vl_from_vq): Likewise.
7018         (sve_vq_from_vg): Likewise.
7019         (sve_vg_from_vq): Likewise.
7020         * configure.nat: Add new c file.
7021         * nat/aarch64-sve-linux-ptrace.c: New file.
7022         * nat/aarch64-sve-linux-ptrace.h: New file.
7023
7024 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7025
7026         * aarch64-linux-nat.c (aarch64_linux_read_description):
7027         Add parmeter zero.
7028         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7029         Likewise.
7030         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7031         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7032         (aarch64_gdbarch_init): Add parmeter zero.
7033         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7034         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7035         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7036         parmeter.
7037         * doc/gdb.texinfo: Describe SVE feature
7038         * features/aarch64-sve.c: New file.
7039
7040 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7041
7042         PR gdb/23210
7043         * gdbarch.sh (significant_addr_bit): Default to zero when
7044         not set by target architecture.
7045         * gdbarch.c: Re-generated.
7046         * utils.c (address_significant): Update.
7047
7048 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7049
7050         * stack.c (func_command): Remove trailing newline in call to error.
7051
7052 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7053
7054         * regcache.h (regcache_raw_collect): Remove, update callers to
7055         use regcache::raw_collect.
7056         * regcache.c (regcache_raw_collect): Remove.
7057
7058 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7059
7060         * regcache.h (regcache_raw_supply): Remove, update callers to
7061         use detached_regcache::raw_supply.
7062         * regcache.c (regcache_raw_supply): Remove.
7063
7064 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7065
7066         * regcache.h (regcache_cooked_write_part): Remove, update
7067         callers to use regcache::cooked_write_part.
7068         * regcache.c (regcache_cooked_write_part): Remove.
7069
7070 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7071
7072         * regcache.h (regcache_cooked_read_part): Remove, update callers
7073         to use readable_regcache::cooked_read_part.
7074         * regcache.c (regcache_cooked_read_part): Remove.
7075
7076 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7077
7078         * regcache.h (regcache_cooked_read_value): Remove, update
7079         callers to use readable_regcache::cooked_read_value.
7080         * regcache.c (regcache_cooked_read_value): Remove.
7081
7082 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7083
7084         * regcache.h (regcache_cooked_write): Remove, update callers to
7085         use regcache::cooked_write.
7086         * regcache.c (regcache_cooked_write): Remove.
7087
7088 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7089
7090         * regcache.h (regcache_invalidate): Remove, update callers to
7091         use detached_regcache::invalidate instead.
7092         * regcache.c (regcache_invalidate): Remove.
7093
7094 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7095
7096         * regcache.h (regcache_raw_write_part): Remove, update callers
7097         to use regcache::raw_write_part instead.
7098         * regcache.c (regcache_raw_write_part): Remove.
7099
7100 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7101
7102         * regcache.h (regcache_raw_read_part): Remove, update callers to
7103         use readable_regcache::raw_read_part instead.
7104         * regcache.c (regcache_raw_read_part): Remove.
7105
7106 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7107
7108         * regcache.h (regcache_cooked_read): Remove, update callers to
7109         use readable_regcache::cooked_read instead.
7110         * regcache.c (regcache_cooked_read): Remove.
7111
7112 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7113
7114         * regcache.h (regcache_raw_write): Remove, update callers to use
7115         regcache::raw_write instead.
7116         * regcache.c (regcache_raw_write): Remove.
7117
7118 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7119
7120         * regcache.h (regcache_raw_read): Remove, update callers to use
7121         readable_regcache::raw_read instead.
7122         * regcache.c (regcache_raw_read): Remove.
7123
7124 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7125
7126         * regcache.h (regcache_raw_update): Remove, update callers to
7127         use readable_regcache::raw_update instead.
7128         * regcache.c (regcache_raw_update): Remove.
7129
7130 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7131
7132         * regcache.h (regcache_register_status): Remove, update callers
7133         to use reg_buffer::get_register_status directly instead.
7134         * regcache.c (regcache_register_status): Remove.
7135
7136 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7137
7138         * regcache.h (regcache_get_ptid): Remove, update all callers to
7139         call regcache::ptid instead.
7140         * regcache.c (regcache_get_ptid): Remove.
7141
7142 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7143
7144         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7145
7146 2018-05-30  Pedro Alves  <palves@redhat.com>
7147
7148         * common/common-exceptions.h (exception_rethrow): Use
7149         ATTRIBUTE_NORETURN.
7150
7151 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7152
7153         * breakpoint.c (print_solib_event, check_status_catch_solib):
7154         Remove struct keyword in range-based for loops.
7155         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7156         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7157         Likewise.
7158         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7159         Likewise.
7160         * symfile.c (addr_info_make_relative): Likewise.
7161         * thread.c (value_in_thread_stack_temporaries): Likewise.
7162
7163 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7164
7165         PR gdb/16841
7166         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7167         aggregate type to get its real type before accessing it.
7168
7169 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7170
7171         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7172         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7173         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7174         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7175         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7176         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7177         * printcmd.c (info_address_command): Likewise.
7178
7179 2018-05-29  Tom Tromey  <tom@tromey.com>
7180
7181         * windows-nat.c (handle_exception): Update fall-through comment.
7182
7183 2018-05-29  Tom Tromey  <tom@tromey.com>
7184
7185         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7186         (struct program_space) <added_solibs>: Now a std::vector.
7187         * breakpoint.c (print_solib_event): Update.
7188         (check_status_catch_solib): Update.
7189         * progspace.c (clear_program_space_solib_cache): Update.
7190         * solib.c (update_solib_list): Update.
7191
7192 2018-05-29  Tom Tromey  <tom@tromey.com>
7193
7194         * python/py-type.c (typy_richcompare): Update.
7195         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7196         * gdbtypes.h (types_deeply_equal): Return bool.
7197         (types_equal): Likewise.
7198         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7199         declare VEC.
7200         (check_types_equal): Change worklist to std::vector.  Return
7201         bool.
7202         (struct type_equality_entry): Add constructor.
7203         (compare_maybe_null_strings): Return bool.
7204         (check_types_worklist): Return bool.  Change worklist to
7205         std::vector.
7206         (types_deeply_equal): Use std::vector.
7207         (types_equal): Return bool.
7208         (compare_maybe_null_strings): Simplify.
7209
7210 2018-05-29  Tom Tromey  <tom@tromey.com>
7211
7212         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7213
7214 2018-05-29  Tom Tromey  <tom@tromey.com>
7215
7216         * objc-lang.h: Don't include cp-support.h.
7217         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7218         declare VEC.
7219
7220 2018-05-27  Tom Tromey  <tom@tromey.com>
7221
7222         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7223
7224 2018-05-25  Tom Tromey  <tom@tromey.com>
7225
7226         * value.c (value::location): Initialize.
7227
7228 2018-05-25  Tom Tromey  <tom@tromey.com>
7229
7230         * dbxread.c (init_bincl_list): Remove.
7231         (bincl_list): Now a std::vector.
7232         (bincls_allocated, next_bincl): Remove.
7233         (free_bincl_list, do_free_bincl_list_cleanup)
7234         (make_cleanup_free_bincl_list): Remove.
7235         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7236         unique_xmalloc_ptr.
7237         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7238         (struct header_file_location): Add constructor.
7239         (add_bincl_to_list): Remove.
7240
7241 2018-05-25  Tom Tromey  <tom@tromey.com>
7242
7243         * tui/tui.c (tui_enable): Update.
7244         * mi/mi-interp.c (mi_interp::init): Update.
7245         * interps.h (class interp) <name>: New method.
7246         <m_name>: Rename from name.
7247         (~scoped_restore_interp): Update.
7248         * interps.c (interp::interp): Update.
7249         (interp_add, interp_set, interp_lookup_existing)
7250         (current_interp_named_p): Update.
7251
7252 2018-05-25  Tom Tromey  <tom@tromey.com>
7253
7254         * interps.c (interp_name): Remove.
7255         * mi/mi-interp.c (mi_interp::init): Update.
7256         * interps.h (interp_name): Remove.
7257         (~scoped_restore_interp): Update.
7258         * tui/tui.c (tui_enable): Update.
7259
7260 2018-05-25  Tom Tromey  <tom@tromey.com>
7261
7262         * utils.c (fputs_maybe_filtered): Update.
7263         * linespec.c (decode_line_full): Update.
7264         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7265         (mi_print_breakpoint_for_event, mi_solib_loaded)
7266         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7267         (mi_user_selected_context_changed): Update.
7268         * mi/mi-main.c (mi_execute_command): Update.
7269         * cli/cli-script.c (execute_control_command): Update.
7270         * python/python.c (execute_gdb_command): Update.
7271         * solib.c (info_sharedlibrary_command): Update.
7272         * interps.c (interp_ui_out): Remove.
7273         * interps.h (interp_ui_out): Remove.
7274
7275 2018-05-25  Tom Tromey  <tom@tromey.com>
7276
7277         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7278         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7279         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7280
7281 2018-05-25  Tom Tromey  <tom@tromey.com>
7282
7283         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7284         * interps.c (interp_exec): Use scoped_restore.
7285
7286 2018-05-25  Tom Tromey  <tom@tromey.com>
7287
7288         * remote.c (remote_target::remote_file_get): Use
7289         gdb::byte_vector.
7290         (remote_target::remote_file_put): Likewise.
7291
7292 2018-05-25  Tom Tromey  <tom@tromey.com>
7293
7294         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7295         a std::string.
7296         (get_pe_section_index, add_pe_exported_sym): Update.
7297         (read_pe_exported_syms): Use gdb::def_vector.
7298
7299 2018-05-25  Tom Tromey  <tom@tromey.com>
7300
7301         * frame.c (remove_prev_frame): Remove.
7302         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7303
7304 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7305
7306         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7307         Remove prototypes.
7308         * mips-linux-nat.c (supply_fpregset): Always call
7309         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7310         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7311         `mips_fill_fpregset'.
7312         * mips-linux-tdep.c (mips_supply_fpregset)
7313         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7314         (mips_fill_fpregset_wrapper): Remove functions.
7315         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7316         (mips_linux_fpregset): Remove variable.
7317         (mips_linux_iterate_over_regset_sections): Use
7318         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7319         (mips_linux_o32_sigframe_init): Remove comment.
7320
7321 2018-05-25  Pedro Alves  <palves@redhat.com>
7322
7323         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7324         (struct readahead_cache, struct packet_reg, struct
7325         remote_arch_state, class remote_state): Move higher up in the
7326         file.
7327         (remote_target::m_remote_state): Now an object instead of a pointer.
7328         (remote_target::get_remote_state): Adjust.
7329
7330 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7331
7332         * stack.c (select_and_print_frame): Delete.
7333         (struct function_bounds): Move struct within function.
7334         (func_command): Most content moved into new function
7335         find_frame_for_function, use new function, print result, add
7336         function comment.
7337         (find_frame_for_function): New function, now returns a result.
7338
7339 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7340
7341         * stack.c (iterate_over_block_arg_vars): Fix comment.
7342         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7343
7344 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7345
7346         PR gdb/23203
7347         * frame.c
7348         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7349         Define.
7350         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7351         Define.
7352         * frame.h (class scoped_restore_selected_frame): New class.
7353         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7354         of any exception, use scoped_restore_selected_frame to restore the
7355         frame instead.
7356
7357 2018-05-24  Pedro Alves  <palves@redhat.com>
7358
7359         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7360         override.
7361
7362 2018-05-23  Tom Tromey  <tom@tromey.com>
7363
7364         * complaints.c (struct complaints): Remove.
7365         (symfile_complaint_book): Remove.
7366         (series): New global.
7367         (complaint_internal): Update.
7368         (clear_complaints): Update.
7369
7370 2018-05-23  Tom Tromey  <tom@tromey.com>
7371
7372         * complaints.c (counters): New global.
7373         (struct complain): Remove.
7374         (struct complaints) <root>: Remove.
7375         (complaint_sentinel): Remove.
7376         (symfile_complaint_book): Update.
7377         (find_complaint) Remove.
7378         (complaint_internal, clear_complaints): Update.
7379
7380 2018-05-23  Tom Tromey  <tom@tromey.com>
7381
7382         * complaints.c (struct complain) <file, line>: Remove.
7383         (find_complaint): Remove file, line parameters.
7384         (complaint_internal): Update.
7385
7386 2018-05-23  Tom Tromey  <tom@tromey.com>
7387
7388         * complaints.c (vcomplaint): Remove.
7389         (complaint_internal) Merge in contents of vcomplaint.
7390
7391 2018-05-23  Tom Tromey  <tom@tromey.com>
7392
7393         * complaints.c (struct complaints) <explanation>: Remove.
7394         (symfile_explanations): Remove.
7395         (symfile_complaint_book): Update.
7396         (vcomplaint): Update.
7397         (struct explanation): Remove.
7398
7399 2018-05-23  Tom Tromey  <tom@tromey.com>
7400
7401         * complaints.c (symfile_complaints): Remove.
7402         (complaint_internal): Remove "complaints" parameter.
7403         (clear_complaints, vcomplaint): Remove "c" parameter.
7404         (get_complaints): Remove.
7405         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7406         (dwarf2_debug_line_missing_file_complaint)
7407         (dwarf2_debug_line_missing_end_sequence_complaint)
7408         (dwarf2_complex_location_expr_complaint)
7409         (dwarf2_const_value_length_mismatch_complaint)
7410         (dwarf2_section_buffer_overflow_complaint)
7411         (dwarf2_macro_malformed_definition_complaint)
7412         (dwarf2_invalid_attrib_class_complaint)
7413         (create_addrmap_from_index, dw2_symtab_iter_next)
7414         (dw2_expand_marked_cus)
7415         (dw2_debug_names_iterator::find_vec_in_debug_names)
7416         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7417         (create_debug_type_hash_table, init_cutu_and_read_dies)
7418         (partial_die_parent_scope, add_partial_enumeration)
7419         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7420         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7421         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7422         (create_cus_hash_table, create_dwp_hash_table)
7423         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7424         (dwarf2_rnglists_process, dwarf2_ranges_process)
7425         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7426         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7427         (handle_struct_member_die, process_structure_scope)
7428         (read_array_type, read_common_block, read_module_type)
7429         (read_tag_pointer_type, read_typedef, read_base_type)
7430         (read_subrange_type, load_partial_dies, partial_die_info::read)
7431         (partial_die_info::read, partial_die_info::read)
7432         (partial_die_info::read, read_checked_initial_length_and_offset)
7433         (dwarf2_string_attr, read_formatted_entries)
7434         (dwarf_decode_line_header)
7435         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7436         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7437         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7438         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7439         (get_signatured_type, get_DW_AT_signature_type)
7440         (decode_locdesc, file_file_name, consume_improper_spaces)
7441         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7442         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7443         (dwarf2_symbol_mark_computed, set_die_type)
7444         (read_attribute_value): Update.
7445         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7446         Update.
7447         * dbxread.c (unknown_symtype_complaint)
7448         (lbrac_mismatch_complaint, repeated_header_complaint)
7449         (set_namestring, function_outside_compilation_unit_complaint)
7450         (read_dbx_symtab, process_one_symbol): Update.
7451         * gdbtypes.c (stub_noname_complaint): Update.
7452         * windows-nat.c (handle_unload_dll): Update.
7453         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7454         (decode_base_type): Update.
7455         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7456         (eb_complaint, record_include_begin, record_include_end)
7457         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7458         (process_xcoff_symbol, read_symbol)
7459         (function_outside_compilation_unit_complaint)
7460         (scan_xcoff_symtab): Update.
7461         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7462         * buildsym.c (finish_block_internal, make_blockvector)
7463         (end_symtab_get_static_block, augment_type_symtab): Update.
7464         * dtrace-probe.c (dtrace_process_dof)
7465         (dtrace_static_probe_ops::get_probes): Update.
7466         * complaints.h (struct complaint): Don't declare.
7467         (symfile_complaints): Remove.
7468         (complaint_internal): Remove "complaints" parameter.
7469         (complaint): Likewise.
7470         (clear_complaints): Likewise.
7471         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7472         (reread_symbols): Update.
7473         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7474         (dwarf2_frame_cache, decode_frame_entry): Update.
7475         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7476         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7477         (info_selectors_command): Update.
7478         * macrotab.c (macro_include, check_for_redefinition)
7479         (macro_undef): Update.
7480         * objfiles.c (filter_overlapping_sections): Update.
7481         * stabsread.c (invalid_cpp_abbrev_complaint)
7482         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7483         (define_symbol, error_type, read_type, rs6000_builtin_type)
7484         (stabs_method_name_from_physname, read_member_functions)
7485         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7486         (attach_fields_to_type, complain_about_struct_wipeout)
7487         (read_range_type, read_args, common_block_start)
7488         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7489         Update.
7490         * mdebugread.c (index_complaint, unknown_ext_complaint)
7491         (basic_type_complaint, bad_tag_guess_complaint)
7492         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7493         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7494         (parse_procedure, parse_lines)
7495         (function_outside_compilation_unit_complaint)
7496         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7497         (bad_tag_guess_complaint, reg_value_complaint): Update.
7498         * cp-support.c (demangled_name_complaint): Update.
7499         * macroscope.c (sal_macro_scope): Update.
7500         * dwarf-index-write.c (class debug_names): Update.
7501
7502 2018-05-23  Tom Tromey  <tom@tromey.com>
7503
7504         * complaints.c (clear_complaints): Remove "noisy" parameter.
7505         * complaints.h (clear_complaints): Update.
7506         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7507         (reread_symbols): Update.
7508
7509 2018-05-23  Tom Tromey  <tom@tromey.com>
7510
7511         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7512         SUBSEQUENT_MESSAGE.
7513         (vcomplaint, clear_complaints): Update.
7514         (symfile_explanations): Remove some messages.
7515
7516 2018-05-23  Tom Tromey  <tom@tromey.com>
7517
7518         * complaints.c (internal_complaint): Remove.
7519         * complaints.h (internal_complaint): Remove.
7520
7521 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7522
7523         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7524
7525 2018-05-22  Pedro Alves  <palves@redhat.com>
7526
7527         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7528         (remote_fileio_badfd, remote_fileio_return_errno)
7529         (remote_fileio_return_success, remote_fileio_func_open)
7530         (remote_fileio_func_open, remote_fileio_func_close)
7531         (remote_fileio_func_read, remote_fileio_func_write)
7532         (remote_fileio_func_lseek, remote_fileio_func_rename)
7533         (remote_fileio_func_unlink, remote_fileio_func_stat)
7534         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7535         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7536         remote_target parameter.
7537         (remote_fio_func_map) <func>: Add remote_target parameter.
7538         (do_remote_fileio_request, remote_fileio_request):
7539         * remote-fileio.h (remote_fileio_request):
7540         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7541         remote_target parameter.
7542         (remote_notif_process, handle_notification): Adjust to pass down
7543         the remote.
7544         (remote_notif_state_allocate): Add remote_target parameter.  Save
7545         it.
7546         * remote-notif.h (struct remote_target): Forward declare.
7547         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7548         remote_target parameter.
7549         (struct remote_notif_state) <remote>: New field.
7550         (remote_notif_ack, remote_notif_parse): Add remote_target
7551         parameter.
7552         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7553         remote_target parameter.
7554         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7555         (threads_listing_context, rmt_thread_action, protocol_feature)
7556         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7557         (packet_result, struct threads_listing_context, remote_state):
7558         Move definitions and declarations higher up.
7559         (remote_target) <~remote_target>: Declare.
7560         (remote_download_command_source, remote_file_put, remote_file_get)
7561         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7562         (remote_hostio_pread_vFile, remote_hostio_send_command)
7563         (remote_hostio_set_filesystem, remote_hostio_open)
7564         (remote_hostio_close, remote_hostio_unlink, remote_state)
7565         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7566         (get_memory_write_packet_size, get_memory_read_packet_size)
7567         (append_pending_thread_resumptions, remote_detach_1)
7568         (append_resumption, remote_resume_with_vcont)
7569         (add_current_inferior_and_thread, wait_ns, wait_as)
7570         (process_stop_reply, remote_notice_new_inferior)
7571         (process_initial_stop_replies, remote_add_thread)
7572         (btrace_sync_conf, remote_btrace_maybe_reopen)
7573         (remove_new_fork_children, kill_new_fork_children)
7574         (discard_pending_stop_replies, stop_reply_queue_length)
7575         (check_pending_events_prevent_wildcard_vcont)
7576         (discard_pending_stop_replies_in_queue, stop_reply)
7577         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
7578         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
7579         (remote_interrupt_as, remote_interrupt_ns)
7580         (remote_get_noisy_reply, remote_query_attached)
7581         (remote_add_inferior, remote_current_thread, get_current_thread)
7582         (set_thread, set_general_thread, set_continue_thread)
7583         (set_general_process, write_ptid)
7584         (remote_unpack_thread_info_response, remote_get_threadinfo)
7585         (parse_threadlist_response, remote_get_threadlist)
7586         (remote_threadlist_iterator, remote_get_threads_with_ql)
7587         (remote_get_threads_with_qxfer)
7588         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
7589         (get_offsets, remote_check_symbols, remote_supported_packet)
7590         (remote_query_supported, remote_packet_size)
7591         (remote_serial_quit_handler, remote_detach_pid)
7592         (remote_vcont_probe, remote_resume_with_hc)
7593         (send_interrupt_sequence, interrupt_query)
7594         (remote_notif_get_pending_events, fetch_register_using_p)
7595         (send_g_packet, process_g_packet, fetch_registers_using_g)
7596         (store_register_using_P, store_registers_using_G)
7597         (set_remote_traceframe, check_binary_download)
7598         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
7599         (remote_xfer_live_readonly_partial, remote_read_bytes)
7600         (remote_send_printf, remote_flash_write, readchar)
7601         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
7602         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
7603         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
7604         (extended_remote_disable_randomization, extended_remote_run)
7605         (send_environment_packet, extended_remote_environment_support)
7606         (extended_remote_set_inferior_cwd, remote_write_qxfer)
7607         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
7608         (packet_command): Now methods of ...
7609         (remote_target): ... this class.
7610         (m_remote_state) <remote_target>: New field.
7611         (struct remote_state) <stop_reply_queue,
7612         remote_async_inferior_event_token, wait_forever_enabled_p>: New
7613         fields.
7614         (remote_state::remote_state): Allocate stop_reply_queue.
7615         (remote_state): Delete global.
7616         (get_remote_state_raw): Delete.
7617         (remote_target::get_remote_state): Allocate m_remote_state on
7618         demand.
7619         (get_current_remote_target): New.
7620         (remote_ops, extended_remote_ops): Delete.
7621         (wait_forever_enabled_p, remote_async_inferior_event_token):
7622         Delete, moved to struct remote_state.
7623         (remote_target::close): Delete self.  Destruction bits split to
7624         ...
7625         (remote_target::~remote_target): ... this.
7626         (show_memory_packet_size): Adjust to use
7627         get_current_remote_target.
7628         (struct protocol_feature) <func>: Add remote_target parameter.
7629         All callers adjusted.
7630         (curr_quit_handler_target): New.
7631         (remote_serial_quit_handler): Reimplement.
7632         (remote_target::open_1): Adjust to use get_current_remote_target.
7633         Heap-allocate remote_target/extended_remote_target instances.
7634         (vcont_builder::vcont_builder): Add remote_target parameter, and
7635         save it in m_remote.  All callers adjusted.
7636         (vcont_builder::m_remote): New field.
7637         (vcont_builder::restart, vcont_builder::flush)
7638         (vcont_builder::push_action): Use it.
7639         (remote_target::commit_resume): Use it.
7640         (struct queue_iter_param) <remote>: New field.
7641         (remote_target::remove_new_fork_children): Fill in 'remote' field.
7642         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
7643         (check_pending_event_prevents_wildcard_vcont_callback)
7644         (remote_target::check_pending_events_prevent_wildcard_vcont)
7645         (remote_target::discard_pending_stop_replies)
7646         (remote_target::discard_pending_stop_replies_in_queue)
7647         (remote_target::remote_notif_remove_queued_reply): Fill in
7648         'remote' field.
7649         (remote_notif_get_pending_events): New.
7650         (remote_target::readchar, remote_target::remote_serial_write):
7651         Save/restore curr_quit_handler_target.
7652         (putpkt): New.
7653         (kill_new_fork_children): Fill in 'remote' field.
7654         (packet_command): Use get_current_remote_target, defer to
7655         remote_target method of same name.
7656         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
7657         parameter, and save it in m_remote.  All callers adjusted.
7658         (scoped_remote_fd::release): Use m_remote.
7659         (scoped_remote_fd::m_remote): New field.
7660         (remote_file_put, remote_file_get, remote_file_delete): Use
7661         get_current_remote_target, defer to remote_target method of same
7662         name.
7663         (remote_btrace_reset): Add remote_state paremeter.  Update all
7664         callers.
7665         (remote_async_inferior_event_handler). Pass down 'data'.
7666         (remote_new_objfile): Use get_current_remote_target.
7667         (remote_target::vcont_r_supported): New.
7668         (set_range_stepping): Use get_current_remote_target and
7669         remote_target::vcont_r_supported.
7670         (_initialize_remote): Don't allocate 'remote_state' and
7671         'stop_reply_queue' globals.
7672         * remote.h (struct remote_target): Forward declare.
7673         (getpkt, putpkt, remote_notif_get_pending_events): Add
7674         'remote_target' parameter.
7675
7676 2018-05-22  Pedro Alves  <palves@redhat.com>
7677
7678         * remote.c (vcont_builder): Now a class.  Make all data members
7679         private.
7680         (vcont_builder) <vcont_builder, restart, flush, push_action>:
7681         Declare methods.
7682         (vcont_builder_restart): Rename to ...
7683         (vcont_builder::restart): ... this.
7684         (vcont_builder_flush): Rename to ...
7685         (vcont_builder::flush): ... this.
7686         (vcont_builder_push_action): Rename to ...
7687         (vcont_builder::push_action): ... this.
7688         (remote_target::commit_resume): Adjust.
7689
7690 2018-05-22  Pedro Alves  <palves@redhat.com>
7691
7692         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
7693         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
7694         (get_fixed_memory_packet_size): New.
7695         (get_memory_packet_size): Use it.
7696         (set_memory_packet_size): Don't override the config size with
7697         DEFAULT_MAX_MEMORY_PACKET_SIZE.
7698         (show_memory_packet_size): Use get_fixed_memory_packet_size.
7699         Don't refer to get_memory_packet_size if not connected to a remote
7700         target.  Show "(default)" if configured size is 0.
7701
7702 2018-05-22  Pedro Alves  <palves@redhat.com>
7703
7704         * remote.c (remote_target::mourn_inferior): Move
7705         discard_pending_stop_replies call here from ...
7706         (_initialize_remote): ... here.
7707
7708 2018-05-22  Pedro Alves  <palves@redhat.com>
7709
7710         * remote.c (compare_section_command): Remove set_general_process
7711         call.
7712
7713 2018-05-22  Pedro Alves  <palves@redhat.com>
7714
7715         * remote.c (struct packet_reg, struct remote_arch_state):
7716         Move higher up in the file.
7717         (remote_state) <m_arch_states>: Store remote_arch_state values
7718         instead of remote_arch_state pointers.
7719         (remote_state::get_remote_arch_state): Adjust.
7720
7721 2018-05-22  Pedro Alves  <palves@redhat.com>
7722
7723         * remote.c: Include <unordered_map>.
7724         (remote_state): Now a class.
7725         (remote_state) <get_remote_arch_state>: Declare method.
7726         <get_remote_arch_state>: New field.
7727         (remote_arch_state) <remote_arch_state>: Declare ctor.
7728         <regs>: Now a unique_ptr.
7729         (remote_gdbarch_data_handle): Delete.
7730         (get_remote_arch_state): Delete.
7731         (remote_state::get_remote_arch_state): New.
7732         (get_remote_state): Adjust to call remote_state's
7733         get_remote_arch_state method.
7734         (init_remote_state): Delete, bits factored out to ...
7735         (remote_arch_state::remote_arch_state): ... this new method.
7736         (get_remote_packet_size, get_memory_packet_size)
7737         (process_g_packet, remote_target::fetch_registers)
7738         (remote_target::prepare_to_store, store_registers_using_G)
7739         (remote_target::store_registers, remote_target::get_trace_status):
7740         Adjust to call remote_state's method.
7741         (_initialize_remote): Remove reference to
7742         remote_gdbarch_data_handle.
7743
7744 2018-05-22  Pedro Alves  <palves@redhat.com>
7745
7746         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
7747         pread>: New method declarations.
7748         (remote_target::open_1): Adjust.
7749         (readahead_cache_invalidate): Rename to ...
7750         (readahead_cache::invalidate): ... this, and adjust to be a class
7751         method.
7752         (readahead_cache_invalidate_fd): Rename to ...
7753         (readahead_cache::invalidate_fd): ... this, and adjust to be a
7754         class method.
7755         (remote_hostio_pwrite): Adjust.
7756         (remote_hostio_pread_from_cache): Rename to ...
7757         (readahead_cache::pread): ... this, and adjust to be a class
7758         method.
7759         (remote_hostio_close): Adjust.
7760
7761 2018-05-22  Pedro Alves  <palves@redhat.com>
7762
7763         * remote.c (remote_hostio_close_cleanup): Delete.
7764         (class scoped_remote_fd): New.
7765         (remote_file_put, remote_file_get): Use it.
7766
7767 2018-05-22  Pedro Alves  <palves@redhat.com>
7768
7769         (struct vCont_action_support): Use bool and initialize all fields.
7770         (struct readahead_cache): Initialize all fields.
7771         (remote_state): Use bool and initialize all fields.
7772         (remote_state::remote_state, remote_state::~remote_state): New.
7773         (new_remote_state): Delete.
7774         (_initialize_remote): Use new to allocate remote_state.
7775
7776 2018-05-22  Pedro Alves  <palves@redhat.com>
7777             張俊芝  <zjz@zjz.name>
7778
7779         PR gdb/22973
7780         * c-exp.y: Include "c-support.h".
7781         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
7782         of tolower.  Use c_ident_is_alpha to scan names.
7783         * c-lang.c: Include "c-support.h".
7784         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
7785         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
7786         * c-support.h: New file, with bits factored out from ...
7787         * cp-name-parser.y: ... this file.
7788         Include "c-support.h".
7789         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
7790         c-support.h and renamed.
7791         (symbol_end, yylex): Adjust.
7792
7793 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7794
7795         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
7796         parameter type to CORE_ADDR.
7797         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
7798         parameter type in declaration to CORE_ADDR.
7799         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
7800         target_auxv_search to get AT_HWCAP and use the result to get the
7801         target description.
7802         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
7803         to CORE_ADDR. Remove the cast of the return value to unsigned
7804         long. Fix error predicate of target_auxv_search.
7805         (ppc_linux_nat_target::read_description): Change the type of the
7806         hwcap variable to CORE_ADDR.
7807
7808 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7809
7810         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
7811         if the size of fpscr is larger than 32 bits.
7812
7813 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7814
7815         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
7816         (ppc32_linux_vsxregmap): New global.
7817         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
7818         regcache_supply_regset, and regcache_collect_regset.
7819         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
7820         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
7821         (fetch_vsx_register, store_vsx_register): Remove.
7822         (fetch_vsx_registers): Add regno parameter. Get regset using
7823         ppc_linux_vsxregset. Use regset to supply registers.
7824         (store_vsx_registers): Add regno parameter. Get regset using
7825         ppc_linux_vsxregset. Use regset to collect registers.
7826         (fetch_register): Call fetch_vsx_registers instead of
7827         fetch_vsx_register.
7828         (store_register): Call store_vsx_registers instead of
7829         store_vsx_register.
7830         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
7831         new regno parameter.
7832         (store_ppc_registers): Call store_vsx_registers with -1 for the
7833         new regno parameter.
7834         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
7835         (ppc_collect_vsxregset): Remove.
7836
7837 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7838
7839         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
7840         offset fields.
7841         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
7842         for vector register offset fields.
7843         (ppc64_fbsd_reg_offsets): Likewise.
7844         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7845         to vector register offset fields.
7846         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7847         to vector register offset fields.
7848         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
7849         vector register offset fields.
7850         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
7851         initializers for vector register offset fields.
7852         (rs6000_aix64_reg_offsets): Likewise.
7853         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
7854         (ppc_supply_vrregset): Remove.
7855         (ppc_collect_vrregset): Remove.
7856         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
7857         (ppc_linux_vrregset) : New function.
7858         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
7859         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
7860         (ppc32_linux_vrregset): Remove.
7861         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
7862         and use result instead of ppc32_linux_vrregset.
7863         (ppc32_linux_reg_offsets): Remove initializers for vector register
7864         offset fields.
7865         (ppc64_linux_reg_offsets): Likewise.
7866         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
7867         * ppc-linux-nat.c: Include regset.h.
7868         (gdb_vrregset_t): Adjust comment to account for little-endian
7869         mode.
7870         (supply_vrregset, fill_vrregset): Remove.
7871         (fetch_altivec_register, store_altivec_register): Remove.
7872         (fetch_altivec_registers): Add regno parameter. Get regset using
7873         ppc_linux_vrregset. Use regset to supply registers.
7874         (store_altivec_registers): Add regno parameter. Get regset using
7875         ppc_linux_vrregset. Use regset to collect registers.
7876         (fetch_register): Call fetch_altivec_registers instead of
7877         fetch_altivec_register.
7878         (store_register): Call store_altivec_registers instead of
7879         store_altivec_register.
7880         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
7881         the new regno parameter.
7882         (store_ppc_registers): Call store_altivec_registers with -1 for
7883         the new regno parameter.
7884
7885 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7886
7887         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
7888         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
7889         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
7890         (gdb_vrregset_t): Change array type size to
7891         PPC_LINUX_SIZEOF_VRREGSET.
7892         (gdb_vsxregset_t): Change array type size to
7893         PPC_LINUX_SIZEOF_VSXREGSET.
7894         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
7895         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
7896         PPC_LINUX_SIZEOF_VSXREGSET.
7897
7898 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7899
7900         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
7901         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
7902         nat/ppc-linux.c.
7903         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
7904         ppc_linux_target_wordsize with tid.
7905         (ppc_linux_nat_target::read_description): Call ppc_linux_target
7906         wordsize with tid.
7907         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
7908         (ppc64_64bit_inferior_p): Add static and inline specifiers.
7909         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
7910         tid parameter. Remove static specifier.
7911         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
7912         (ppc_linux_target_wordsize): New declaration.
7913
7914 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7915
7916         * arch/ppc-linux-common.c: New file.
7917         * arch/ppc-linux-common.h: New file.
7918         * arch/ppc-linux-tdesc.h: New file.
7919         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
7920         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
7921         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
7922         arch/ppc-linux-tdesc.h.
7923         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
7924         arch/ppc-linux-tdesc.h.
7925         (ppc_linux_nat_target::read_description): Remove target
7926         description matching code. Fill a ppc_linux_features struct and
7927         call ppc_linux_match_description with it. Move comment about ISA
7928         2.05 to ppc-linux-common.c.
7929         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
7930         arch/ppc-linux-tdesc.h.
7931         (ppc_linux_core_read_description): Remove target description
7932         matching code. Fill a ppc_linux_features struct and call
7933         ppc_linux_match_description with it.
7934         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
7935         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
7936         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
7937         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
7938         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
7939         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
7940         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
7941         (tdesc_powerpc_e500l): Remove.
7942
7943 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
7944
7945         * ada-lang.c (catch_assert_command): Pass empty string instead
7946         of NULL for excep_string argument.
7947
7948 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7949
7950         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
7951         the width of the requested register exceeds the width of the
7952         `ptrace' data type.
7953
7954 2018-05-21  Tom Tromey  <tom@tromey.com>
7955
7956         * printcmd.c (output_command): Remove.
7957         (output_command_const): Rename to output_command.
7958         * valprint.h (output_command): Rename from output_command_const.
7959         * tracepoint.c (trace_dump_actions): Call output_command.
7960
7961 2018-05-21  Tom Tromey  <tom@tromey.com>
7962
7963         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
7964         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
7965         * ada-lang.h (create_ada_exception_catchpoint): Update.
7966         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
7967         std::string.
7968         (create_excep_cond_exprs, ~ada_catchpoint)
7969         (should_stop_exception, print_one_exception)
7970         (print_mention_exception, print_recreate_exception): Update.
7971         (ada_get_next_arg): Remove.
7972         (catch_ada_exception_command_split): Use std::string.  Change type
7973         of "excep_string", "cond_string".
7974         (catch_ada_exception_command): Update.
7975         (create_ada_exception_catchpoint): Change type of excep_string.
7976         (ada_exception_sal): Remove excep_string parameter.
7977         (~ada_catchpoint): Remove.
7978
7979 2018-05-21  Tom Tromey  <tom@tromey.com>
7980
7981         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
7982         cleanup.
7983
7984 2018-05-21  Tom Tromey  <tom@tromey.com>
7985
7986         * ada-lang.c (ada_exception_message_1, ada_exception_message):
7987         Return unique_xmalloc_ptr.
7988         (print_it_exception): Update.
7989
7990 2018-05-21  Tom Tromey  <tom@tromey.com>
7991
7992         * tracepoint.c (trace_dump_actions): Use std::string.
7993
7994 2018-05-21  Tom Tromey  <tom@tromey.com>
7995
7996         * symfile.c (reread_symbols): Use std::string for original_name.
7997
7998 2018-05-21  Tom Tromey  <tom@tromey.com>
7999
8000         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8001         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8002         constructor.
8003
8004 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8005
8006         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8007         instance to...
8008         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8009         * objfiles.c (get_objfile_bfd_data): Allocate
8010         objfile_per_bfd_storage with obstack_new when allocating on
8011         obstack.
8012
8013 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8014
8015         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8016         OBSTACK_ZALLOC.
8017         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8018         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8019         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8020         (add_pending): Likewise.
8021         (parse_symbol): Likewise.
8022         (parse_partial_symbols): Likewise.
8023         (psymtab_to_symtab_1): Likewise.
8024         (new_psymtab): Likewise.
8025         (elfmdebug_build_psymtabs): Likewise.
8026         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8027         * objfiles.c (get_objfile_bfd_data): Likewise.
8028         (objfile_register_static_link): Likewise.
8029         * psymtab.c (allocate_psymtab): Likewise.
8030         * stabsread.c (read_member_functions): Likewise.
8031         * xcoffread.c (xcoff_end_psymtab): Likewise.
8032
8033 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8034
8035         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8036         compiler supports std::is_trivially_constructible.
8037         * common/poison.h: Include obstack.h.
8038         (IsMallocable): Define to is_trivially_constructible if the
8039         compiler supports it, define to true_type otherwise.
8040         (xobnew): New.
8041         (XOBNEW): Redefine.
8042         (xobnewvec): New.
8043         (XOBNEWVEC): Redefine.
8044         * gdb_obstack.h (obstack_zalloc): New.
8045         (OBSTACK_ZALLOC): Redefine.
8046         (obstack_calloc): New.
8047         (OBSTACK_CALLOC): Redefine.
8048         (obstack_new): New.
8049         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8050         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8051         gdbarch.c.
8052         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8053         obstack_calloc/obstack_zalloc.
8054         (gdbarch_obstack_zalloc): Remove.
8055         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8056
8057 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8058
8059         * stack.c (backtrace_command_1): Remove useless variable int i.
8060
8061 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8062
8063         * stack.c (print_frame_info): Fix comment.
8064
8065 2018-05-18  Tom Tromey  <tom@tromey.com>
8066
8067         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8068         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8069         (~dwarf2_per_objfile): Update
8070         (dwarf2_get_dwz_file): Use new.
8071         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8072         unique_ptr.
8073
8074 2018-05-18  Tom Tromey  <tom@tromey.com>
8075
8076         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8077         unique_ptr.
8078         * dwarf2read.c (struct dwp_file): Add constructor and
8079         initializers.
8080         (open_and_init_dwp_file): Return a unique_ptr.
8081         (dwarf2_per_objfile, create_dwp_hash_table)
8082         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8083         (lookup_dwo_unit_in_dwp): Update.
8084         (open_and_init_dwp_file, get_dwp_file): Update.
8085
8086 2018-05-18  Tom Tromey  <tom@tromey.com>
8087
8088         * dwarf2read.c (dwarf2_per_objfile): Update.
8089         (struct mapped_index): Add initializers.
8090         (dwarf2_read_index): Use new.
8091         (dw2_symtab_iter_init): Update.
8092         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8093         unique_ptr.
8094
8095 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8096
8097         * dwarf2read.c (mapped_index) <total_size>: Remove.
8098
8099 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8100
8101         * unittests/format_pieces-selftests.c (test_format_specifier):
8102         Add ARI comments.
8103
8104 2018-05-18  Tom Tromey  <tom@tromey.com>
8105
8106         * c-typeprint.c (maybe_print_hole): New function.
8107         (c_print_type_struct_field_offset): Update.
8108         (c_type_print_base_struct_union): Call maybe_print_hole.
8109
8110 2018-05-17  Keith Seitz  <keiths@redhat.com>
8111
8112         * breakpoint.c (build_bpstat_chain): New function, moved from
8113         bpstat_stop_status.
8114         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8115         If no stop chain is passed, call build_bpstat_chain to build it.
8116         * breakpoint.h (build_bpstat_chain): Declare.
8117         (bpstat_stop_status): Move documentation here from breakpoint.c.
8118         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8119         build the stop chain and pass it to skip_inline_frames.
8120         Pass this stop chain to bpstat_stop_status.
8121         * inline-frame.c: Include breakpoint.h.
8122         (stopped_by_user_bp_inline_frame): New function.
8123         (skip_inline_frames): Add parameter `stop_chain'.
8124         Move documention to inline-frame.h.
8125         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8126         whether the frame should be elided.
8127         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8128         Add moved documentation and update for new parameter.
8129
8130 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8131
8132         PR cli/14975
8133         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8134         unittests/format_pieces-selftests.c.
8135         * common/format.h (format_piece) <operator==>: New.
8136         (format_pieces) <operator[]>: Remove.
8137         * common/format.c (format_pieces::format_pieces): Handle \e.
8138         * unittests/format_pieces-selftests.c: New.
8139
8140 2018-05-17  Tom Tromey  <tom@tromey.com>
8141
8142         PR symtab/23010:
8143         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8144         (dw2_instantiate_symtab): Add skip_partial parameter.
8145         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8146         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8147         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8148         (dw2_expand_symtabs_matching_one)
8149         (dw2_find_pc_sect_compunit_symtab)
8150         (dw2_debug_names_lookup_symbol)
8151         (dw2_debug_names_expand_symtabs_for_function): Update.
8152         (init_cutu_and_read_dies): Add skip_partial parameter.
8153         (process_psymtab_comp_unit, build_type_psymtabs_1)
8154         (process_skeletonless_type_unit, load_partial_comp_unit)
8155         (psymtab_to_symtab_1): Update.
8156         (load_full_comp_unit): Add skip_partial parameter.
8157         (process_imported_unit_die, dwarf2_read_addr_index)
8158         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8159         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8160         (read_signatured_type): Update.
8161
8162 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8163
8164         * value.c (release_value): Remove unused variable.
8165         (record_latest_value): Likewise.
8166         (access_value_history): Likewise.
8167         (preserve_values): Likewise.
8168
8169 2018-05-17  Tom Tromey  <tom@tromey.com>
8170
8171         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8172         Initialize.
8173
8174 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8175
8176         PR gdb/22286
8177         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8178         Also handle registers whose width is not a multiple of
8179         PTRACE_TYPE_RET.
8180         (linux_nat_trad_target::store_register): Likewise.
8181
8182 2018-05-16  Tom Tromey  <tom@tromey.com>
8183
8184         * gdbcore.h (core_bfd): Redefine.
8185         * corelow.c (core_target::close): Update.
8186         (core_target_open): Update.
8187         * progspace.h (struct program_space) <cbfd>: Now a
8188         gdb_bfd_ref_ptr.
8189
8190 2018-05-16  Tom Tromey  <tom@tromey.com>
8191
8192         PR cli/19551:
8193         * symfile-add-flags.h (enum symfile_add_flags)
8194         <SYMFILE_NOT_FILENAME>: New constant.
8195         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8196         objfile name from BFD.
8197         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8198         * minidebug.c (find_separate_debug_file_in_section): Put
8199         ".gnu_debugdata" into BFD's file name.
8200
8201 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8202
8203         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8204         Remove.
8205
8206 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8207
8208         PR binutils/21446
8209         * aarch64-tdep.c (aarch64_analyze_prologue,
8210         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8211         Indicate not interested in errors.
8212
8213 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8214
8215         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8216         Supply the MIPS_ZERO_REGNUM register.
8217
8218 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8219
8220         * mips-tdep.c (mask_address_var): Make variable static.
8221
8222 2018-05-14  Tom Tromey  <tom@tromey.com>
8223
8224         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8225
8226 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8227
8228         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8229         FXSAVE_ADDR for the mxcsr register.
8230
8231 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8232
8233         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8234
8235 2018-05-11  Pedro Alves  <palves@redhat.com>
8236
8237         * corelow.c (core_target) <core_target>: No longer inline.
8238         Initialize m_core_gdbarch, m_core_vec and build the section table
8239         here.
8240         <~core_target>: New.
8241         <core_gdbarch, get_core_register_section>: New methods.
8242         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8243         factored out from ...
8244         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8245         (core_ops): Delete.
8246         (sniff_core_bfd): Add gdbarch parameter.
8247         (core_close): Delete, merged into ...
8248         (core_target::close): ... here.  Delete self.
8249         (core_close_cleanup): Delete.
8250         (core_target_open): Allocate a core_target on the heap.  Use a
8251         unique_ptr instead of a cleanup.  Bits moved into the core_target
8252         ctor.  Adjust to use core_target methods instead of globals.
8253         (get_core_register_section): Rename to ...
8254         (core_target::get_core_register_section): ... this and adjust.
8255         (struct get_core_registers_cb_data): New.
8256         (get_core_registers_cb): Use it.  Use bool.
8257         (core_target::fetch_registers, core_target::files_info)
8258         (core_target::xfer_partial, core_target::read_description)
8259         (core_target::pid_to, core_target::thread_name): Adjust to
8260         reference class fields instead of globals.
8261         * target.h (struct target_ops_deleter, target_ops_up): New.
8262
8263 2018-05-11  Pedro Alves  <palves@redhat.com>
8264
8265         * corefile.c (core_file_command): Move to corelow.c.
8266         * corelow.c (the_core_target): Delete.
8267         (core_file_command): Moved from corefile.c.  Check exec_bfd
8268         instead of the_core_target.  Use target_detach instead of calling
8269         into the_core_target directly.
8270         (maybe_say_no_core_file_now): New.
8271         (core_target::detach): Use it.
8272         (_initialize_corelow): Remove references to the_core_target.
8273         * gdbcore.h (the_core_target): Delete.
8274
8275 2018-05-11  Tom Tromey  <tromey@redhat.com>
8276             Pedro Alves  <palves@redhat.com>
8277
8278         * corefile.c (core_bfd): Remove.
8279         * gdbcore.h (core_bfd): Now a macro.
8280         * progspace.h (struct program_space) <cbfd>: New field.
8281
8282 2018-05-11  Tom Tromey  <tom@tromey.com>
8283
8284         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8285         gdb::def_vector.
8286
8287 2018-05-10  Tom Tromey  <tom@tromey.com>
8288
8289         * configure: Rebuild.
8290         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8291
8292 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8293
8294         PR server/23158:
8295         * regformats/regdat.sh: Adjust script, following the addition
8296         of the new expedite_regs parameter to init_target_desc.
8297
8298 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8299     
8300         PR gdb/23127
8301         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8302         set_gdbarch_significant_addr_bit.
8303         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8304         set_gdbarch_significant_addr_bit.
8305         * utils.c (address_significant): Update to sign extend addr.
8306
8307 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8308
8309         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8310         (xtensa_linux_init_abi): Limit tdep->num_regs by
8311         tdep->num_nopriv_regs.
8312         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8313         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8314         not initialized.
8315
8316 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8317
8318         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8319
8320 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8321
8322         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8323         (I387_MXCSR_INIT_VAL): New constant.
8324         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8325         buffer if it was supplied by the inferior.
8326         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8327         (i387_xsave_get_clear_bv): New function.
8328         (i387_supply_xsave): Only read x87 control registers from the
8329         xsave buffer if the feature is enabled, and the state will have
8330         been written, otherwise, provide a suitable default.
8331         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8332         including x87 control registers.  Update control registers if they
8333         have changed from the default value, and mark features as enabled
8334         as required.
8335         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8336
8337 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8338
8339         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8340
8341 2018-05-07  Tom Tromey  <tom@tromey.com>
8342
8343         * configure: Rebuild.
8344         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8345
8346 2018-05-07  Tom Tromey  <tom@tromey.com>
8347
8348         PR tdep/20362:
8349         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8350         bit.  Use correct value for VDIV.
8351
8352 2018-05-04  Tom Tromey  <tom@tromey.com>
8353
8354         * configure: Rebuild.
8355         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8356
8357 2018-05-04  Tom Tromey  <tom@tromey.com>
8358
8359         * linux-record.c (record_linux_system_call) <case
8360         RECORD_SYS_RECVFROM>: Add "break".
8361
8362 2018-05-04  Tom Tromey  <tom@tromey.com>
8363
8364         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8365         Add missing "break".
8366         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8367         Add missing "break".
8368
8369 2018-05-04  Tom Tromey  <tom@tromey.com>
8370
8371         * rs6000-tdep.c (ppc_process_record_op4)
8372         (ppc_process_record_op63): Add fall-through comment.
8373
8374 2018-05-04  Tom Tromey  <tom@tromey.com>
8375
8376         * i386-tdep.c (i386_process_record): Add fall-through comment.
8377
8378 2018-05-04  Tom Tromey  <tom@tromey.com>
8379
8380         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8381         comment.
8382
8383 2018-05-04  Tom Tromey  <tom@tromey.com>
8384
8385         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8386         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8387         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8388         comment.
8389         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8390         comment.
8391         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8392         comment.
8393
8394 2018-05-04  Tom Tromey  <tom@tromey.com>
8395
8396         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8397
8398 2018-05-04  Tom Tromey  <tom@tromey.com>
8399
8400         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8401         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8402         * symfile.c (section_is_mapped): Fix fall-through comment.
8403         * stabsread.c (define_symbol, read_member_functions): Fix
8404         fall-through comment.
8405         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8406         comment.
8407         * remote.c (remote_wait_as): Fix fall-through comment.
8408         * p-exp.y (yylex): Fix fall-through comment.
8409         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8410         comment.
8411         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8412         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8413         * jv-exp.y (yylex): Fix fall-through comment.
8414         * go-exp.y (lex_one_token): Fix fall-through comment.
8415         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8416         fall-through comment.
8417         * f-exp.y (yylex): Fix fall-through comment.
8418         * dwarf2read.c (process_die): Fix fall-through comments.
8419         * dbxread.c (process_one_symbol): Fix fall-through comment.
8420         * d-exp.y (lex_one_token): Fix fall-through comment.
8421         * cp-name-parser.y (yylex): Fix fall-through comment.
8422         * coffread.c (coff_symtab_read): Fix fall-through comment.
8423         * c-exp.y (lex_one_token): Fix fall-through comment.
8424         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8425         comment.
8426         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8427         comment.
8428
8429 2018-05-04  Tom Tromey  <tom@tromey.com>
8430
8431         PR python/22730:
8432         * NEWS: Mention gdb.execute change.
8433         * gdbcmd.h (execute_control_command): Don't declare.
8434         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8435         execute_control_commands, execute_control_commands_to_string.
8436         * cli/cli-script.h (execute_control_commands)
8437         (execute_control_commands_to_string): Declare.
8438         (execute_control_command): Add from_tty parameter.
8439         * cli/cli-script.c (execute_control_commands)
8440         (execute_control_commands_to_string): New functions.
8441         (execute_user_command): Use execute_control_commands.
8442         (execute_control_command_1): Add "from_tty" parameter.  Update.
8443         (execute_control_command): Likewise.
8444
8445 2018-05-04  Tom Tromey  <tom@tromey.com>
8446
8447         PR python/22731:
8448         * NEWS: Mention that breakpoint commands are writable.
8449         * python/py-breakpoint.c (bppy_set_commands): New function.
8450         (breakpoint_object_getset) <"commands">: Use it.
8451
8452 2018-05-04  Tom Tromey  <tom@tromey.com>
8453
8454         * tracepoint.c (actions_command): Update.
8455         * mi/mi-cmd-break.c (mi_command_line_array)
8456         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8457         (mi_read_next_line): Remove.
8458         (mi_cmd_break_commands): Update.
8459         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8460         function_view.
8461         * cli/cli-script.c (get_command_line): Update.
8462         (process_next_line): Use function_view.  Constify.
8463         (recurse_read_control_structure, read_command_lines)
8464         (read_command_lines_1): Change argument types to function_view.
8465         (do_define_command, document_command): Update.
8466         * breakpoint.h (check_tracepoint_command): Don't declare.
8467         * breakpoint.c (check_tracepoint_command): Remove.
8468         (commands_command_1, create_tracepoint_from_upload): Update.
8469
8470 2018-05-04  Tom Tromey  <tom@tromey.com>
8471
8472         PR gdb/11750:
8473         * cli/cli-script.h (enum command_control_type) <define_control>:
8474         New constant.
8475         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8476         (build_command_line, execute_control_command_1)
8477         (process_next_line): Likewise.
8478         (do_define_command): New function, extracted from define_command.
8479         (define_command): Use it.
8480
8481 2018-05-04  Tom Tromey  <tom@tromey.com>
8482
8483         * tracepoint.c (actions_command): Update.
8484         * cli/cli-script.h (read_command_lines): Update.
8485         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8486         (MAX_TMPBUF): Remove define.
8487         (define_command): Use string_printf.
8488         (document_command): Likewise.
8489         * breakpoint.c (commands_command_1): Update.
8490
8491 2018-05-04  Tom Tromey  <tom@tromey.com>
8492
8493         * top.c (execute_command): Update.
8494         * cli/cli-script.h (print_command_lines): Now varargs.
8495         * cli/cli-script.c (print_command_lines): Now varargs.
8496         (execute_control_command_1) <case while_control, case if_control>:
8497         Update.
8498
8499 2018-05-04  Tom Tromey  <tom@tromey.com>
8500
8501         * tracepoint.c (all_tracepoint_actions): Rename from
8502         all_tracepoint_actions_and_cleanup.  Change return type.
8503         (actions_command, encode_actions_1, encode_actions)
8504         (trace_dump_actions, tdump_command): Update.
8505         * remote.c (remote_download_command_source): Update.
8506         * python/python.c (gdbpy_eval_from_control_command)
8507         (python_command, python_interactive_command): Update.
8508         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8509         * guile/guile.c (guile_command)
8510         (gdbscm_eval_from_control_command, guile_command): Update.
8511         * compile/compile.c (compile_code_command)
8512         (compile_print_command, compile_to_object): Update.
8513         * cli/cli-script.h (struct command_lines_deleter): New.
8514         (counted_command_line): New typedef.
8515         (struct command_line): Add constructor, destructor.
8516         <body_list>: Remove.
8517         <body_list_0, body_list_1>: New members.
8518         (command_line_up): Remove typedef.
8519         (read_command_lines, read_command_lines_1, get_command_line):
8520         Update.
8521         (copy_command_lines): Don't declare.
8522         * cli/cli-script.c (build_command_line): Use "new".
8523         (get_command_line): Return counted_command_line.
8524         (print_command_lines, execute_user_command)
8525         (execute_control_command_1, while_command, if_command): Update.
8526         (realloc_body_list): Remove.
8527         (process_next_line, recurse_read_control_structure): Update.
8528         (read_command_lines, read_command_lines_1): Return counted_command_line.
8529         (free_command_lines): Use "delete".
8530         (copy_command_lines): Remove.
8531         (define_command, document_command, show_user_1): Update.
8532         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8533         a counted_command_line.
8534         * breakpoint.h (counted_command_line): Remove typedef.
8535         (breakpoint_set_commands): Update.
8536         * breakpoint.c (check_no_tracepoint_commands)
8537         (validate_commands_for_breakpoint): Update.
8538         (breakpoint_set_commands): Change commands to be a
8539         counted_command_line.
8540         (commands_command_1, update_dprintf_command_list)
8541         (create_tracepoint_from_upload): Update.
8542
8543 2018-05-04  Tom Tromey  <tom@tromey.com>
8544
8545         * cli/cli-decode.h (cmd_list_element): New constructor.
8546         (~cmd_list_element): New destructor.
8547         (struct cmd_list_element): Add initializers.
8548         * cli/cli-decode.c (do_add_cmd): Use "new".
8549         (delete_cmd): Use "delete".
8550
8551 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8552             Pedro Alves <palves@redhat.com>
8553
8554         PR breakpoints/19806 and support for PR external/20207.
8555         * NEWS: Mention Aarch64 watchpoint improvements.
8556         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8557         watchpoints and PR external/20207 watchpoints.
8558         * nat/aarch64-linux-hw-point.c
8559         (kernel_supports_any_contiguous_range): New.
8560         (aarch64_watchpoint_offset): New.
8561         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8562         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8563         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8564         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8565         next_addr_orig_p.  Support PR external/20207 watchpoints.
8566         (aarch64_downgrade_regs): New.
8567         (aarch64_dr_state_insert_one_point): New parameters offset and
8568         addr_orig.
8569         (aarch64_dr_state_remove_one_point): Likewise.
8570         (aarch64_handle_breakpoint): Update caller.
8571         (aarch64_handle_aligned_watchpoint): Likewise.
8572         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
8573         aligned_offset.
8574         (aarch64_linux_set_debug_regs): Remove const from state.  Call
8575         aarch64_downgrade_regs.
8576         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
8577         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
8578         (DR_CONTROL_MASK): ... this.
8579         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
8580         (unsigned int aarch64_watchpoint_offset): New prototype.
8581         (aarch64_linux_set_debug_regs): Remove const from state.
8582         * utils.c (align_up, align_down): Move to ...
8583         * common/common-utils.c (align_up, align_down): ... here.
8584         * utils.h (align_up, align_down): Move to ...
8585         * common/common-utils.h (align_up, align_down): ... here.
8586
8587 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
8588
8589         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
8590         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
8591         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
8592         Re-implement to match the ABI as summarized in GCC's
8593         gcc/config/sparc/sparc.c.  All callers updated.
8594         (sparc32_store_arguments): Remove assertion.
8595
8596 2018-05-04  Tom Tromey  <tom@tromey.com>
8597
8598         * printcmd.c: Don't include tui.h.
8599         (decode_format): Use skip_spaces.
8600
8601 2018-05-04  Tom Tromey  <tom@tromey.com>
8602
8603         PR gdb/22619:
8604         * printcmd.c (last_count): New global.
8605         (x_command): Use saved count when repeating.
8606
8607 2018-05-04  Tom Tromey  <tom@tromey.com>
8608
8609         * nto-procfs.c (do_closedir_cleanup): Remove.
8610         (procfs_pidlist): Use gdb_dir_up.
8611         * procfs.c (do_closedir_cleanup): Remove.
8612         (proc_update_threads): Use gdb_dir_up.
8613         * common/filestuff.h (struct gdb_dir_deleter): New.
8614         (gdb_dir_up): New typedef.
8615
8616 2018-05-04  Tom Tromey  <tom@tromey.com>
8617
8618         * ada-lang.c (print_mention_exception): Use std::string.
8619
8620 2018-05-04  Tom Tromey  <tom@tromey.com>
8621
8622         * ada-lang.c (create_excep_cond_exprs): Update.
8623         (ada_exception_catchpoint_cond_string): Use std::string.
8624
8625 2018-05-04  Tom Tromey  <tom@tromey.com>
8626
8627         * ada-lang.c (xget_renaming_scope): Return std::string.
8628         (old_renaming_is_invisible): Update.
8629
8630 2018-05-04  Tom Tromey  <tom@tromey.com>
8631
8632         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
8633         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
8634
8635 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
8636
8637         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
8638
8639 2018-05-04  Tom Tromey  <tom@tromey.com>
8640
8641         * remote.c (remote_query_supported_append): Change type.
8642         (remote_check_symbols): Update.
8643
8644 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
8645
8646         PR gdb/11420
8647         * configure.ac: Prepend libpython.
8648         * python/python-config.py: Likewise.
8649         * configure: Regenerate.
8650
8651 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
8652
8653         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
8654
8655 2018-05-03  Pedro Alves  <palves@redhat.com>
8656
8657         * s390-linux-nat.c
8658         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
8659         override.  Write 'true' instead of '1'.
8660         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
8661         declaration.
8662
8663 2018-05-02  Pedro Alves  <palves@redhat.com>
8664
8665         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
8666         add_inf_child_target.
8667         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
8668         add_inf_child_target.
8669         * aix-thread.c (aix_thread_target_info): New.
8670         (aix_thread_target) <shortname, longname, doc>: Delete.
8671         <info>: New.
8672         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
8673         add_inf_child_target.
8674         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
8675         add_inf_child_target.
8676         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
8677         add_inf_child_target.
8678         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
8679         add_inf_child_target.
8680         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
8681         add_inf_child_target.
8682         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
8683         add_inf_child_target.
8684         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
8685         add_inf_child_target.
8686         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
8687         add_inf_child_target.
8688         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
8689         add_inf_child_target.
8690         * bfd-target.c (target_bfd_target_info): New.
8691         (target_bfd) <shortname, longname, doc>: Delete.
8692         <info>: New.
8693         * bsd-kvm.c (bsd_kvm_target_info): New.
8694         (bsd_kvm_target) <shortname, longname, doc>: Delete.
8695         <info>: New.
8696         (bsd_kvm_target::open): Rename to ...
8697         (bsd_kvm_target_open): ... this.  Adjust.
8698         * bsd-uthread.c (bsd_uthread_target_info): New.
8699         (bsd_uthread_target) <shortname, longname, doc>: Delete.
8700         <info>: New.
8701         * corefile.c (core_file_command): Adjust.
8702         * corelow.c (core_target_info): New.
8703         (core_target) <shortname, longname, doc>: Delete.
8704         <info>: New.
8705         (core_target::open): Rename to ...
8706         (core_target_open): ... this.  Adjust.
8707         * ctf.c (ctf_target_info): New.
8708         (ctf_target) <shortname, longname, doc>: Delete.
8709         <info>: New.
8710         (ctf_target::open): Rename to ...
8711         (ctf_target_open): ... this.
8712         (_initialize_ctf): Adjust.
8713         * exec.c (exec_target_info): New.
8714         (exec_target) <shortname, longname, doc>: Delete.
8715         <info>: New.
8716         (exec_target::open): Rename to ...
8717         (exec_target_open): ... this.
8718         * gdbcore.h (core_target_open): Declare.
8719         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
8720         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
8721         add_inf_child_target.
8722         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
8723         add_inf_child_target.
8724         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
8725         add_inf_child_target.
8726         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
8727         add_inf_child_target.
8728         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
8729         add_inf_child_target.
8730         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
8731         add_inf_child_target.
8732         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
8733         add_inf_child_target.
8734         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
8735         add_inf_child_target.
8736         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
8737         add_inf_child_target.
8738         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
8739         add_inf_child_target.
8740         * inf-child.c (inf_child_target_info): New.
8741         (inf_child_target::info): New.
8742         (inf_child_open_target): Remove 'target' parameter.  Use
8743         get_native_target instead.
8744         (inf_child_target::open): Delete.
8745         (add_inf_child_target): New.
8746         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
8747         Delete.
8748         <info>: New.
8749         (add_inf_child_target): Declare.
8750         (inf_child_open_target): Declare.
8751         * linux-thread-db.c (thread_db_target_info): New.
8752         (thread_db_target) <shortname, longname, doc>: Delete.
8753         <info>: New.
8754         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
8755         add_inf_child_target.
8756         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
8757         add_inf_child_target.
8758         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
8759         add_inf_child_target.
8760         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
8761         add_inf_child_target.
8762         * make-target-delegates (print_class): Adjust.
8763         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
8764         add_inf_child_target.
8765         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
8766         add_inf_child_target.
8767         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
8768         add_inf_child_target.
8769         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
8770         add_inf_child_target.
8771         * nto-procfs.c (nto_native_target_info): New.
8772         (nto_procfs_target_native) <shortname, longname, doc>:
8773         Delete.
8774         <info>: New.
8775         (nto_procfs_target_info): New.
8776         (nto_procfs_target_procfs) <shortname, longname, doc>:
8777         Delete.
8778         <info>: New.
8779         (init_procfs_targets): Adjust.
8780         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
8781         add_inf_child_target.
8782         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
8783         add_inf_child_target.
8784         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
8785         add_inf_child_target.
8786         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
8787         add_inf_child_target.
8788         * ravenscar-thread.c (ravenscar_target_info): New.
8789         (ravenscar_thread_target) <shortname, longname, doc>:
8790         Delete.
8791         <info>: New.
8792         * record-btrace.c (record_btrace_target_info):
8793         (record_btrace_target) <shortname, longname, doc>: Delete.
8794         <info>: New.
8795         (record_btrace_target::open): Rename to ...
8796         (record_btrace_target_open): ... this.  Adjust.
8797         * record-full.c (record_longname, record_doc): New.
8798         (record_full_base_target) <shortname, longname, doc>: Delete.
8799         <info>: New.
8800         (record_full_target_info): New.
8801         (record_full_target): <shortname>: Delete.
8802         <info>: New.
8803         (record_full_core_open_1, record_full_open_1): Update comments.
8804         (record_full_base_target::open): Rename to ...
8805         (record_full_open): ... this.
8806         (cmd_record_full_restore): Update.
8807         (_initialize_record_full): Update.
8808         * remote-sim.c (remote_sim_target_info): New.
8809         (gdbsim_target) <shortname, longname, doc>: Delete.
8810         <info>: New.
8811         (gdbsim_target::open): Rename to ...
8812         (gdbsim_target_open): ... this.
8813         (_initialize_remote_sim): Adjust.
8814         * remote.c (remote_doc): New.
8815         (remote_target_info): New.
8816         (remote_target) <shortname, longname, doc>: Delete.
8817         <info>: New.
8818         (extended_remote_target_info): New.
8819         (extended_remote_target) <shortname, longname, doc>: Delete.
8820         <info>: New.
8821         (remote_target::open_1): Make static.  Adjust.
8822         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
8823         * s390-linux-nat.c (_initialize_s390_nat): Use
8824         add_inf_child_target.
8825         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
8826         add_inf_child_target.
8827         * sol-thread.c (thread_db_target_info): New.
8828         (sol_thread_target) <shortname, longname, doc>: Delete.
8829         <info>: New.
8830         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
8831         add_inf_child_target.
8832         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
8833         add_inf_child_target.
8834         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
8835         add_inf_child_target.
8836         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
8837         add_inf_child_target.
8838         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
8839         add_inf_child_target.
8840         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
8841         add_inf_child_target.
8842         * spu-linux-nat.c (_initialize_spu_nat): Use
8843         add_inf_child_target.
8844         * spu-multiarch.c (spu_multiarch_target_info): New.
8845         (spu_multiarch_target) <shortname, longname, doc>: Delete.
8846         <info>: New.
8847         * target-delegates.c: Regenerate.
8848         * target.c: Include <unordered_map>.
8849         (target_ops_p): Delete.
8850         (DEF_VEC_P(target_ops_p)): Delete.
8851         (target_factories): New.
8852         (test_target_info): New.
8853         (test_target_ops::info): New.
8854         (open_target): Adjust to use target_factories.
8855         (add_target_with_completer): Rename to ...
8856         (add_target): ... this.  Change prototype.  Register target_info
8857         and open callback in target_factories.  Register target_info in
8858         command context instead of target_ops.
8859         (add_target): Delete old implementation.
8860         (add_deprecated_target_alias): Change prototype.  Adjust.
8861         (the_native_target): New.
8862         (set_native_target, get_native_target): New.
8863         (find_default_run_target): Use the_native_target.
8864         (find_attach_target, find_run_target): Simplify.
8865         (target_ops::open): Delete.
8866         (dummy_target_info): New.
8867         (dummy_target::shortname, dummy_target::longname)
8868         (dummy_target::doc): Delete.
8869         (dummy_target::info): New.
8870         (debug_target::shortname, debug_target::longname)
8871         (debug_target::doc): Delete.
8872         (debug_target::info): New.
8873         * target.h (struct target_info): New.
8874         (target_ops::~target_ops): Add comment.
8875         (target_ops::info): New.
8876         (target_ops::shortname, target_ops::longname, target_ops::doc): No
8877         longer virtual.  Implement in terms of target_info.
8878         (set_native_target, get_native_target): Declare.
8879         (target_open_ftype): New.
8880         (add_target, add_target_with_completer)
8881         (add_deprecated_target_alias): Change prototype.
8882         (test_target) <shortname, longname, doc>: Delete.
8883         <info>: New.
8884         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
8885         add_inf_child_target.
8886         * tracefile-tfile.c (tfile_target_info): New.
8887         (tfile_target) <shortname, longname, doc>: Delete.
8888         <info>: New.
8889         (tfile_target::open): Rename to ...
8890         (tfile_target_open): ... this.
8891         (_initialize_tracefile_tfile): Adjust.
8892         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
8893         add_inf_child_target.
8894         * windows-nat.c (_initialize_windows_nat): Use
8895         add_inf_child_target.
8896         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
8897         add_inf_child_target.
8898
8899 2018-05-02  Pedro Alves  <palves@redhat.com>
8900
8901         * linux-nat.h (linux_nat_target) <low_new_thread,
8902         low_delete_thread, low_new_fork, low_forget_process,
8903         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
8904         New virtual methods.
8905         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8906         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
8907         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
8908         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8909         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
8910         Delete.
8911         * linux-fork.c (delete_fork): Adjust to call low method.
8912         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
8913         (linux_nat_new_fork, linux_nat_forget_process_hook)
8914         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
8915         (linux_nat_status_is_event):
8916         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
8917         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
8918         to call low method.
8919         (sigtrap_is_event): Rename to ...
8920         (linux_nat_target::low_status_is_event): ... this.
8921         (linux_nat_set_status_is_event): Delete.
8922         (save_stop_reason, linux_nat_wait_1)
8923         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
8924         low methods.
8925         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8926         (linux_nat_set_new_fork, linux_nat_set_forget_process)
8927         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8928         (linux_nat_set_prepare_to_resume): Delete.
8929         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
8930         low virtual methods.
8931         * amd64-linux-nat.c: Likewise.
8932         * arm-linux-nat.c: Likewise.
8933         * i386-linux-nat.c: Likewise.
8934         * ia64-linux-nat.c: Likewise.
8935         * mips-linux-nat.c: Likewise.
8936         * ppc-linux-nat.c: Likewise.
8937         * s390-linux-nat.c: Likewise.
8938         * sparc64-linux-nat.c: Likewise.
8939         * x86-linux-nat.c: Likewise.
8940         * x86-linux-nat.h: Include "nat/x86-linux.h".
8941         (x86_linux_nat_target) <low_new_fork, low_forget_process,
8942         low_prepare_to_resume, low_new_thread, low_delete_thread>:
8943         Override methods.
8944
8945 2018-05-02  Pedro Alves  <palves@redhat.com>
8946
8947         * target.h (target_ops)
8948         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
8949         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
8950         stopped_by_watchpoint, have_continuable_watchpoint,
8951         stopped_data_address, watchpoint_addr_within_range,
8952         can_accel_watchpoint_condition, can_run, thread_alive,
8953         has_all_memory, has_memory, has_stack, has_registers,
8954         has_execution, can_async_p, is_async_p, supports_non_stop,
8955         always_non_stop_p, can_execute_reverse, supports_multi_process,
8956         supports_enable_disable_tracepoint,
8957         supports_disable_randomization, supports_string_tracing,
8958         supports_evaluation_of_breakpoint_conditions,
8959         can_run_breakpoint_commands, filesystem_is_local,
8960         can_download_tracepoint, get_trace_state_variable_value,
8961         set_trace_notes, get_tib_address, use_agent, can_use_agent,
8962         record_is_replaying, record_will_replay,
8963         augmented_libraries_svr4_read>: Adjust to return bool.
8964         * aarch64-linux-nat.c: All implementations adjusted.
8965         * aix-thread.c: All implementations adjusted.
8966         * arm-linux-nat.c: All implementations adjusted.
8967         * breakpoint.c: All implementations adjusted.
8968         * bsd-kvm.c: All implementations adjusted.
8969         * bsd-uthread.c: All implementations adjusted.
8970         * corelow.c: All implementations adjusted.
8971         * ctf.c: All implementations adjusted.
8972         * darwin-nat.c: All implementations adjusted.
8973         * darwin-nat.h: All implementations adjusted.
8974         * exec.c: All implementations adjusted.
8975         * fbsd-nat.c: All implementations adjusted.
8976         * fbsd-nat.h: All implementations adjusted.
8977         * gnu-nat.c: All implementations adjusted.
8978         * gnu-nat.h: All implementations adjusted.
8979         * go32-nat.c: All implementations adjusted.
8980         * ia64-linux-nat.c: All implementations adjusted.
8981         * inf-child.c: All implementations adjusted.
8982         * inf-child.h: All implementations adjusted.
8983         * inf-ptrace.c: All implementations adjusted.
8984         * inf-ptrace.h: All implementations adjusted.
8985         * linux-nat.c: All implementations adjusted.
8986         * linux-nat.h: All implementations adjusted.
8987         * mips-linux-nat.c: All implementations adjusted.
8988         * nto-procfs.c: All implementations adjusted.
8989         * ppc-linux-nat.c: All implementations adjusted.
8990         * procfs.c: All implementations adjusted.
8991         * ravenscar-thread.c: All implementations adjusted.
8992         * record-btrace.c: All implementations adjusted.
8993         * record-full.c: All implementations adjusted.
8994         * remote-sim.c: All implementations adjusted.
8995         * remote.c: All implementations adjusted.
8996         * s390-linux-nat.c: All implementations adjusted.
8997         * sol-thread.c: All implementations adjusted.
8998         * spu-multiarch.c: All implementations adjusted.
8999         * target-delegates.c: All implementations adjusted.
9000         * target.c: All implementations adjusted.
9001         * target.h: All implementations adjusted.
9002         * tracefile-tfile.c: All implementations adjusted.
9003         * tracefile.c: All implementations adjusted.
9004         * tracefile.h: All implementations adjusted.
9005         * windows-nat.c: All implementations adjusted.
9006         * x86-linux-nat.h: All implementations adjusted.
9007         * x86-nat.h: All implementations adjusted.
9008
9009 2018-05-02  Pedro Alves  <palves@redhat.com>
9010
9011         * make-target-delegates (scan_target_h): Don't trim lines here.
9012         Replace sequences of tabs and/or whitespace with a single
9013         whitespace.
9014         (top level, parsing methods): Trim each line before processing it
9015         here.
9016
9017 2018-05-02  Pedro Alves  <palves@redhat.com>
9018             John Baldwin  <jhb@freebsd.org>
9019
9020         * target.h (enum strata) <debug_stratum>: New.
9021         (struct target_ops) <all delegation methods>: Replace by C++
9022         virtual methods, and drop "to_" prefix.  All references updated
9023         throughout.
9024         <to_shortname, to_longname, to_doc, to_data,
9025         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9026         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9027         virtual methods.  All references updated throughout.
9028         <can_attach, supports_terminal_ours, can_create_inferior,
9029         get_thread_control_capabilities, attach_no_wait>: New
9030         virtual methods.
9031         <insert_breakpoint, remove_breakpoint>: Now
9032         TARGET_DEFAULT_NORETURN methods.
9033         <info_proc>: Now returns bool.
9034         <to_magic>: Delete.
9035         (OPS_MAGIC): Delete.
9036         (current_target): Delete.  All references replaced by references
9037         to ...
9038         (target_stack): ... this.  New.
9039         (target_shortname, target_longname): Adjust.
9040         (target_can_run): Now a function declaration.
9041         (default_child_has_all_memory, default_child_has_memory)
9042         (default_child_has_stack, default_child_has_registers)
9043         (default_child_has_execution): Remove target_ops parameter.
9044         (complete_target_initialization): Delete.
9045         (memory_breakpoint_target): New template class.
9046         (test_target_ops): Refactor as a C++ class with virtual methods.
9047         * make-target-delegates (NAME_PART): Tighten.
9048         (POINTER_PART, CP_SYMBOL): New.
9049         (SIMPLE_RETURN_PART): Reimplement.
9050         (VEC_RETURN_PART): Expect less.
9051         (RETURN_PART, VIRTUAL_PART): New.
9052         (METHOD): Adjust to C++ virtual methods.
9053         (scan_target_h): Remove reference to C99.
9054         (dname): Output "target_ops::" prefix.
9055         (write_function_header): Adjust to output a C++ class method.
9056         (write_declaration): New.
9057         (write_delegator): Adjust to output a C++ class method.
9058         (tdname): Output "dummy_target::" prefix.
9059         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9060         method.
9061         (tdefault_names, debug_names): Delete.
9062         (return_types, tdefaults, styles, argtypes_array): New.
9063         (top level): All methods are delegators.
9064         (print_class): New.
9065         (top level): Print dummy_target and debug_target classes.
9066         * target-delegates.c: Regenerate.
9067         * target-debug.h (target_debug_print_enum_info_proc_what)
9068         (target_debug_print_thread_control_capabilities)
9069         (target_debug_print_thread_info_p): New.
9070         * target.c (dummy_target): Delete.
9071         (the_dummy_target, the_debug_target): New.
9072         (target_stack): Now extern.
9073         (set_targetdebug): Push/unpush debug target.
9074         (default_child_has_all_memory, default_child_has_memory)
9075         (default_child_has_stack, default_child_has_registers)
9076         (default_child_has_execution): Remove target_ops parameter.
9077         (complete_target_initialization): Delete.
9078         (add_target_with_completer): No longer call
9079         complete_target_initialization.
9080         (target_supports_terminal_ours): Use regular delegation.
9081         (update_current_target): Delete.
9082         (push_target): No longer check magic number.  Don't call
9083         update_current_target.
9084         (unpush_target): Don't call update_current_target.
9085         (target_is_pushed): No longer check magic number.
9086         (target_require_runnable): Skip for all stratums over
9087         process_stratum.
9088         (target_ops::info_proc): New.
9089         (target_info_proc): Use find_target_at and
9090         find_default_run_target.
9091         (target_supports_disable_randomization): Use regular delegation.
9092         (target_get_osdata): Use find_target_at.
9093         (target_ops::open, target_ops::close, target_ops::can_attach)
9094         (target_ops::attach, target_ops::can_create_inferior)
9095         (target_ops::create_inferior, target_ops::can_run)
9096         (target_can_run): New.
9097         (default_fileio_target): Use regular delegation.
9098         (target_ops::fileio_open, target_ops::fileio_pwrite)
9099         (target_ops::fileio_pread, target_ops::fileio_fstat)
9100         (target_ops::fileio_close, target_ops::fileio_unlink)
9101         (target_ops::fileio_readlink): New.
9102         (target_fileio_open_1, target_fileio_unlink)
9103         (target_fileio_readlink): Always call the target method.  Handle
9104         FILEIO_ENOSYS.
9105         (return_zero, return_zero_has_execution): Delete.
9106         (init_dummy_target): Delete.
9107         (dummy_target::dummy_target, dummy_target::shortname)
9108         (dummy_target::longname, dummy_target::doc)
9109         (debug_target::debug_target, debug_target::shortname)
9110         (debug_target::longname, debug_target::doc): New.
9111         (target_supports_delete_record): Use regular delegation.
9112         (setup_target_debug): Delete.
9113         (maintenance_print_target_stack): Skip debug_stratum.
9114         (initialize_targets): Instantiate the_dummy_target and
9115         the_debug_target.
9116         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9117         use target_stack.
9118         (target_auxv_search, fprint_target_auxv): Adjust.
9119         (info_auxv_command): Adjust to use target_stack.
9120         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9121         * exceptions.c (print_flush): Handle a NULL target_stack.
9122         * regcache.c (target_ops_no_register): Refactor as class with
9123         virtual methods.
9124
9125         * exec.c (exec_target): New class.
9126         (exec_ops): Now an exec_target.
9127         (exec_open, exec_close_1, exec_get_section_table)
9128         (exec_xfer_partial, exec_files_info, exec_has_memory)
9129         (exec_make_note_section): Refactor as exec_target methods.
9130         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9131         Delete.
9132         (exec_target::find_memory_regions): New.
9133         (_initialize_exec): Don't call init_exec_ops.
9134         * gdbcore.h (exec_file_clear): Delete.
9135
9136         * corefile.c (core_target): Delete.
9137         (core_file_command): Adjust.
9138         * corelow.c (core_target): New class.
9139         (the_core_target): New.
9140         (core_close): Remove target_ops parameter.
9141         (core_close_cleanup): Adjust.
9142         (core_target::close): New.
9143         (core_open, core_detach, get_core_registers, core_files_info)
9144         (core_xfer_partial, core_thread_alive, core_read_description)
9145         (core_pid_to_str, core_thread_name, core_has_memory)
9146         (core_has_stack, core_has_registers, core_info_proc): Rework as
9147         core_target methods.
9148         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9149         (_initialize_corelow): Initialize the_core_target.
9150         * gdbcore.h (core_target): Delete.
9151         (the_core_target): New.
9152
9153         * ctf.c: (ctf_target): New class.
9154         (ctf_ops): Now a ctf_target.
9155         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9156         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9157         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9158         methods.
9159         (init_ctf_ops): Delete.
9160         (_initialize_ctf): Don't call it.
9161         * tracefile-tfile.c (tfile_target): New class.
9162         (tfile_ops): Now a tfile_target.
9163         (tfile_open, tfile_close, tfile_files_info)
9164         (tfile_get_tracepoint_status, tfile_trace_find)
9165         (tfile_fetch_registers, tfile_xfer_partial)
9166         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9167         Refactor as tfile_target methods.
9168         (tfile_xfer_partial_features): Remove target_ops parameter.
9169         (init_tfile_ops): Delete.
9170         (_initialize_tracefile_tfile): Don't call it.
9171         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9172         (tracefile_has_stack, tracefile_has_registers)
9173         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9174         tracefile_target methods.
9175         (init_tracefile_ops): Delete.
9176         (tracefile_target::tracefile_target): New.
9177         * tracefile.h: Include "target.h".
9178         (tracefile_target): New class.
9179         (init_tracefile_ops): Delete.
9180
9181         * spu-multiarch.c (spu_multiarch_target): New class.
9182         (spu_ops): Now a spu_multiarch_target.
9183         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9184         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9185         (spu_search_memory, spu_mourn_inferior): Refactor as
9186         spu_multiarch_target methods.
9187         (init_spu_ops): Delete.
9188         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9189         complete_target_initialization.
9190
9191         * ravenscar-thread.c (ravenscar_thread_target): New class.
9192         (ravenscar_ops): Now a ravenscar_thread_target.
9193         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9194         (ravenscar_thread_alive, ravenscar_pid_to_str)
9195         (ravenscar_fetch_registers, ravenscar_store_registers)
9196         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9197         (ravenscar_stopped_by_hw_breakpoint)
9198         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9199         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9200         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9201         methods.
9202         (init_ravenscar_thread_ops): Delete.
9203         (_initialize_ravenscar): Remove references to
9204         init_ravenscar_thread_ops and complete_target_initialization.
9205
9206         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9207         (bsd_uthread_target): New class.
9208         (bsd_uthread_ops): Now a bsd_uthread_target.
9209         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9210         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9211         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9212         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9213         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9214         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9215         (bsd_uthread_target): Delete function.
9216         (_initialize_bsd_uthread): Remove reference to
9217         complete_target_initialization.
9218
9219         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9220         (target_bfd): ... this new class.
9221         (target_bfd_xfer_partial, target_bfd_get_section_table)
9222         (target_bfd_close): Refactor as target_bfd methods.
9223         (target_bfd::~target_bfd): New.
9224         (target_bfd_reopen): Adjust.
9225         (target_bfd::close): New.
9226
9227         * record-btrace.c (record_btrace_target): New class.
9228         (record_btrace_ops): Now a record_btrace_target.
9229         (record_btrace_open, record_btrace_stop_recording)
9230         (record_btrace_disconnect, record_btrace_close)
9231         (record_btrace_async, record_btrace_info)
9232         (record_btrace_insn_history, record_btrace_insn_history_range)
9233         (record_btrace_insn_history_from, record_btrace_call_history)
9234         (record_btrace_call_history_range)
9235         (record_btrace_call_history_from, record_btrace_record_method)
9236         (record_btrace_is_replaying, record_btrace_will_replay)
9237         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9238         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9239         (record_btrace_store_registers, record_btrace_prepare_to_store)
9240         (record_btrace_to_get_unwinder)
9241         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9242         (record_btrace_commit_resume, record_btrace_wait)
9243         (record_btrace_stop, record_btrace_can_execute_reverse)
9244         (record_btrace_stopped_by_sw_breakpoint)
9245         (record_btrace_supports_stopped_by_sw_breakpoint)
9246         (record_btrace_stopped_by_hw_breakpoint)
9247         (record_btrace_supports_stopped_by_hw_breakpoint)
9248         (record_btrace_update_thread_list, record_btrace_thread_alive)
9249         (record_btrace_goto_begin, record_btrace_goto_end)
9250         (record_btrace_goto, record_btrace_stop_replaying_all)
9251         (record_btrace_execution_direction)
9252         (record_btrace_prepare_to_generate_core)
9253         (record_btrace_done_generating_core): Refactor as
9254         record_btrace_target methods.
9255         (init_record_btrace_ops): Delete.
9256         (_initialize_record_btrace): Remove reference to
9257         init_record_btrace_ops.
9258         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9259         the execution_direction global.
9260         (record_full_base_target, record_full_target)
9261         (record_full_core_target): New classes.
9262         (record_full_ops): Now a record_full_target.
9263         (record_full_core_ops): Now a record_full_core_target.
9264         (record_full_target::detach, record_full_target::disconnect)
9265         (record_full_core_target::disconnect)
9266         (record_full_target::mourn_inferior, record_full_target::kill):
9267         New.
9268         (record_full_open, record_full_close, record_full_async): Refactor
9269         as methods of the record_full_base_target class.
9270         (record_full_resume, record_full_commit_resume): Refactor
9271         as methods of the record_full_target class.
9272         (record_full_wait, record_full_stopped_by_watchpoint)
9273         (record_full_stopped_data_address)
9274         (record_full_stopped_by_sw_breakpoint)
9275         (record_full_supports_stopped_by_sw_breakpoint)
9276         (record_full_stopped_by_hw_breakpoint)
9277         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9278         methods of the record_full_base_target class.
9279         (record_full_store_registers, record_full_xfer_partial)
9280         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9281         Refactor as methods of the record_full_target class.
9282         (record_full_can_execute_reverse, record_full_get_bookmark)
9283         (record_full_goto_bookmark, record_full_execution_direction)
9284         (record_full_record_method, record_full_info, record_full_delete)
9285         (record_full_is_replaying, record_full_will_replay)
9286         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9287         (record_full_stop_replaying): Refactor as methods of the
9288         record_full_base_target class.
9289         (record_full_core_resume, record_full_core_kill)
9290         (record_full_core_fetch_registers)
9291         (record_full_core_prepare_to_store)
9292         (record_full_core_store_registers, record_full_core_xfer_partial)
9293         (record_full_core_insert_breakpoint)
9294         (record_full_core_remove_breakpoint)
9295         (record_full_core_has_execution): Refactor
9296         as methods of the record_full_core_target class.
9297         (record_full_base_target::supports_delete_record): New.
9298         (init_record_full_ops): Delete.
9299         (init_record_full_core_ops): Delete.
9300         (record_full_save): Refactor as method of the
9301         record_full_base_target class.
9302         (_initialize_record_full): Remove references to
9303         init_record_full_ops and init_record_full_core_ops.
9304
9305         * remote.c (remote_target, extended_remote_target): New classes.
9306         (remote_ops): Now a remote_target.
9307         (extended_remote_ops): Now an extended_remote_target.
9308         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9309         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9310         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9311         (remote_pass_signals, remote_set_syscall_catchpoint)
9312         (remote_program_signals, )
9313         (remote_thread_always_alive): Remove target_ops parameter.
9314         (remote_thread_alive, remote_thread_name)
9315         (remote_update_thread_list, remote_threads_extra_info)
9316         (remote_static_tracepoint_marker_at)
9317         (remote_static_tracepoint_markers_by_strid)
9318         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9319         (remote_open): Refactor as methods of remote_target.
9320         (extended_remote_open, extended_remote_detach)
9321         (extended_remote_attach, extended_remote_post_attach):
9322         (extended_remote_supports_disable_randomization)
9323         (extended_remote_create_inferior): : Refactor as method of
9324         extended_remote_target.
9325         (remote_set_permissions, remote_open_1, remote_detach)
9326         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9327         (remote_resume, remote_commit_resume, remote_stop)
9328         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9329         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9330         (remote_prepare_to_store, remote_store_registers)
9331         (remote_flash_erase, remote_flash_done, remote_files_info)
9332         (remote_kill, remote_mourn, remote_insert_breakpoint)
9333         (remote_remove_breakpoint, remote_insert_watchpoint)
9334         (remote_watchpoint_addr_within_range)
9335         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9336         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9337         (remote_supports_stopped_by_sw_breakpoint)
9338         (remote_stopped_by_hw_breakpoint)
9339         (remote_supports_stopped_by_hw_breakpoint)
9340         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9341         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9342         (remote_verify_memory): Refactor as methods of remote_target.
9343         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9344         parameter.
9345         (remote_xfer_partial, remote_get_memory_xfer_limit)
9346         (remote_search_memory, remote_rcmd, remote_memory_map)
9347         (remote_pid_to_str, remote_get_thread_local_address)
9348         (remote_get_tib_address, remote_read_description): Refactor as
9349         methods of remote_target.
9350         (remote_target::fileio_open, remote_target::fileio_pwrite)
9351         (remote_target::fileio_pread, remote_target::fileio_close): New.
9352         (remote_hostio_readlink, remote_hostio_fstat)
9353         (remote_filesystem_is_local, remote_can_execute_reverse)
9354         (remote_supports_non_stop, remote_supports_disable_randomization)
9355         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9356         (remote_supports_enable_disable_tracepoint)
9357         (remote_supports_string_tracing)
9358         (remote_can_run_breakpoint_commands, remote_trace_init)
9359         (remote_download_tracepoint, remote_can_download_tracepoint)
9360         (remote_download_trace_state_variable, remote_enable_tracepoint)
9361         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9362         (remote_trace_start, remote_get_trace_status)
9363         (remote_get_tracepoint_status, remote_trace_stop)
9364         (remote_trace_find, remote_get_trace_state_variable_value)
9365         (remote_save_trace_data, remote_get_raw_trace_data)
9366         (remote_set_disconnected_tracing, remote_core_of_thread)
9367         (remote_set_circular_trace_buffer, remote_traceframe_info)
9368         (remote_get_min_fast_tracepoint_insn_len)
9369         (remote_set_trace_buffer_size, remote_set_trace_notes)
9370         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9371         (remote_disable_btrace, remote_teardown_btrace)
9372         (remote_read_btrace, remote_btrace_conf)
9373         (remote_augmented_libraries_svr4_read, remote_load)
9374         (remote_pid_to_exec_file, remote_can_do_single_step)
9375         (remote_execution_direction, remote_thread_handle_to_thread_info):
9376         Refactor as methods of remote_target.
9377         (init_remote_ops, init_extended_remote_ops): Delete.
9378         (remote_can_async_p, remote_is_async_p, remote_async)
9379         (remote_thread_events, remote_upload_tracepoints)
9380         (remote_upload_trace_state_variables): Refactor as methods of
9381         remote_target.
9382         (_initialize_remote): Remove references to init_remote_ops and
9383         init_extended_remote_ops.
9384
9385         * remote-sim.c (gdbsim_target): New class.
9386         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9387         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9388         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9389         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9390         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9391         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9392         Refactor as methods of gdbsim_target.
9393         (gdbsim_ops): Now a gdbsim_target.
9394         (init_gdbsim_ops): Delete.
9395         (gdbsim_cntrl_c): Adjust.
9396         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9397
9398         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9399         (the_amd64_linux_nat_target): New.
9400         (amd64_linux_fetch_inferior_registers)
9401         (amd64_linux_store_inferior_registers): Refactor as methods of
9402         amd64_linux_nat_target.
9403         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9404         * i386-linux-nat.c: Don't include "linux-nat.h".
9405         (i386_linux_nat_target): New class.
9406         (the_i386_linux_nat_target): New.
9407         (i386_linux_fetch_inferior_registers)
9408         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9409         as methods of i386_linux_nat_target.
9410         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9411         * inf-child.c (inf_child_ops): Delete.
9412         (inf_child_fetch_inferior_registers)
9413         (inf_child_store_inferior_registers): Delete.
9414         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9415         methods of inf_child_target.
9416         (inf_child_target::supports_terminal_ours)
9417         (inf_child_target::terminal_init)
9418         (inf_child_target::terminal_inferior)
9419         (inf_child_target::terminal_ours_for_output)
9420         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9421         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9422         New.
9423         (inf_child_open, inf_child_disconnect, inf_child_close)
9424         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9425         (inf_child_post_startup_inferior, inf_child_can_run)
9426         (inf_child_pid_to_exec_file): Refactor as methods of
9427         inf_child_target.
9428         (inf_child_follow_fork): Delete.
9429         (inf_child_target::can_create_inferior)
9430         (inf_child_target::can_attach): New.
9431         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9432         (inf_child_target::has_stack, inf_child_target::has_registers)
9433         (inf_child_target::has_execution): New.
9434         (inf_child_fileio_open, inf_child_fileio_pwrite)
9435         (inf_child_fileio_pread, inf_child_fileio_fstat)
9436         (inf_child_fileio_close, inf_child_fileio_unlink)
9437         (inf_child_fileio_readlink, inf_child_use_agent)
9438         (inf_child_can_use_agent): Refactor as methods of
9439         inf_child_target.
9440         (return_zero, inf_child_target): Delete.
9441         (inf_child_target::inf_child_target): New.
9442         * inf-child.h: Include "target.h".
9443         (inf_child_target): Delete function prototype.
9444         (inf_child_target): New class.
9445         (inf_child_open_target, inf_child_mourn_inferior)
9446         (inf_child_maybe_unpush_target): Delete.
9447         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9448         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9449         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9450         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9451         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9452         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9453         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9454         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9455         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9456         methods of inf_ptrace_target.
9457         (inf_ptrace_target): Delete function.
9458         * inf-ptrace.h: Include "inf-child.h".
9459         (inf_ptrace_target): Delete function declaration.
9460         (inf_ptrace_target): New class.
9461         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9462         * linux-nat.c (linux_target): New.
9463         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9464         (linux_nat_target::~linux_nat_target): New.
9465         (linux_child_post_attach, linux_child_post_startup_inferior)
9466         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9467         (linux_child_remove_fork_catchpoint)
9468         (linux_child_insert_vfork_catchpoint)
9469         (linux_child_remove_vfork_catchpoint)
9470         (linux_child_insert_exec_catchpoint)
9471         (linux_child_remove_exec_catchpoint)
9472         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9473         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9474         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9475         (linux_nat_stopped_data_address)
9476         (linux_nat_stopped_by_sw_breakpoint)
9477         (linux_nat_supports_stopped_by_sw_breakpoint)
9478         (linux_nat_stopped_by_hw_breakpoint)
9479         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9480         (linux_nat_kill, linux_nat_mourn_inferior)
9481         (linux_nat_xfer_partial, linux_nat_thread_alive)
9482         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9483         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9484         (linux_child_static_tracepoint_markers_by_strid)
9485         (linux_nat_is_async_p, linux_nat_can_async_p)
9486         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9487         (linux_nat_supports_multi_process)
9488         (linux_nat_supports_disable_randomization, linux_nat_async)
9489         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9490         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9491         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9492         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9493         methods of linux_nat_target.
9494         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9495         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9496         parameter.
9497         (check_stopped_by_watchpoint): Adjust.
9498         (linux_xfer_partial): Delete.
9499         (linux_target_install_ops, linux_target, linux_nat_add_target):
9500         Delete.
9501         (linux_nat_target::linux_nat_target): New.
9502         * linux-nat.h: Include "inf-ptrace.h".
9503         (linux_nat_target): New.
9504         (linux_target, linux_target_install_ops, linux_nat_add_target):
9505         Delete function declarations.
9506         (linux_target): Declare global.
9507         * linux-thread-db.c (thread_db_target): New.
9508         (thread_db_target::thread_db_target): New.
9509         (thread_db_ops): Delete.
9510         (the_thread_db_target): New.
9511         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9512         (thread_db_update_thread_list, thread_db_pid_to_str)
9513         (thread_db_extra_thread_info)
9514         (thread_db_thread_handle_to_thread_info)
9515         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9516         (thread_db_resume): Refactor as methods of thread_db_target.
9517         (init_thread_db_ops): Delete.
9518         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9519         * x86-linux-nat.c: Don't include "linux-nat.h".
9520         (super_post_startup_inferior): Delete.
9521         (x86_linux_nat_target::~x86_linux_nat_target): New.
9522         (x86_linux_child_post_startup_inferior)
9523         (x86_linux_read_description, x86_linux_enable_btrace)
9524         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9525         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9526         methods of x86_linux_nat_target.
9527         (x86_linux_create_target): Delete.  Bits folded ...
9528         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9529         pointer.
9530         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9531         (x86_linux_nat_target): New class.
9532         (x86_linux_create_target): Delete.
9533         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9534         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9535         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9536         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9537         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9538         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9539         make extern.
9540         (x86_use_watchpoints): Delete.
9541         * x86-nat.h: Include "breakpoint.h" and "target.h".
9542         (x86_use_watchpoints): Delete.
9543         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9544         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9545         (x86_insert_watchpoint, x86_remove_watchpoint)
9546         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9547         (x86_stopped_by_hw_breakpoint): New declarations.
9548         (x86_nat_target): New template class.
9549
9550         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9551         (the_ppc_linux_nat_target): New.
9552         (ppc_linux_fetch_inferior_registers)
9553         (ppc_linux_can_use_hw_breakpoint)
9554         (ppc_linux_region_ok_for_hw_watchpoint)
9555         (ppc_linux_ranged_break_num_registers)
9556         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9557         (ppc_linux_insert_mask_watchpoint)
9558         (ppc_linux_remove_mask_watchpoint)
9559         (ppc_linux_can_accel_watchpoint_condition)
9560         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9561         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9562         (ppc_linux_watchpoint_addr_within_range)
9563         (ppc_linux_masked_watch_num_registers)
9564         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9565         (ppc_linux_read_description): Refactor as methods of
9566         ppc_linux_nat_target.
9567         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
9568
9569         * procfs.c (procfs_xfer_partial): Delete forward declaration.
9570         (procfs_target): New class.
9571         (the_procfs_target): New.
9572         (procfs_target): Delete function.
9573         (procfs_auxv_parse, procfs_attach, procfs_detach)
9574         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
9575         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
9576         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
9577         (procfs_create_inferior, procfs_update_thread_list)
9578         (procfs_thread_alive, procfs_pid_to_str)
9579         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
9580         (procfs_stopped_data_address, procfs_insert_watchpoint)
9581         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
9582         (proc_find_memory_regions, procfs_info_proc)
9583         (procfs_make_note_section): Refactor as methods of procfs_target.
9584         (_initialize_procfs): Adjust.
9585         * sol-thread.c (sol_thread_target): New class.
9586         (sol_thread_ops): Now a sol_thread_target.
9587         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
9588         (sol_thread_fetch_registers, sol_thread_store_registers)
9589         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
9590         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
9591         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
9592         (init_sol_thread_ops): Delete.
9593         (_initialize_sol_thread): Adjust.  Remove references to
9594         init_sol_thread_ops and complete_target_initialization.
9595
9596         * windows-nat.c (windows_nat_target): New class.
9597         (windows_fetch_inferior_registers)
9598         (windows_store_inferior_registers, windows_resume, windows_wait)
9599         (windows_attach, windows_detach, windows_pid_to_exec_file)
9600         (windows_files_info, windows_create_inferior)
9601         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
9602         (windows_close, windows_pid_to_str, windows_xfer_partial)
9603         (windows_get_tib_address, windows_get_ada_task_ptid)
9604         (windows_thread_name, windows_thread_alive): Refactor as
9605         windows_nat_target methods.
9606         (do_initial_windows_stuff): Adjust.
9607         (windows_target): Delete function.
9608         (_initialize_windows_nat): Adjust.
9609
9610         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
9611         (darwin_mourn_inferior, darwin_kill_inferior)
9612         (darwin_create_inferior, darwin_attach, darwin_detach)
9613         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
9614         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
9615         (darwin_supports_multi_process): Refactor as darwin_nat_target
9616         methods.
9617         (darwin_resume_to, darwin_files_info): Delete.
9618         (_initialize_darwin_inferior): Rename to ...
9619         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
9620         * darwin-nat.h: Include "inf-child.h".
9621         (darwin_nat_target): New class.
9622         (darwin_complete_target): Delete.
9623         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
9624         (darwin_target): New.
9625         (i386_darwin_fetch_inferior_registers)
9626         (i386_darwin_store_inferior_registers): Refactor as methods of
9627         darwin_nat_target.
9628         (darwin_complete_target): Delete, with ...
9629         (_initialize_i386_darwin_nat): ... bits factored out here.
9630
9631         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
9632         (the_alpha_linux_nat_target): New.
9633         (alpha_linux_register_u_offset): Refactor as
9634         alpha_linux_nat_target method.
9635         (_initialize_alpha_linux_nat): Adjust.
9636         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
9637         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9638         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
9639         methods of linux_nat_trad_target.
9640         (linux_trad_target): Delete.
9641         * linux-nat-trad.h (linux_trad_target): Delete function.
9642         (linux_nat_trad_target): New class.
9643         * mips-linux-nat.c (mips_linux_nat_target): New class.
9644         (super_fetch_registers, super_store_registers, super_close):
9645         Delete.
9646         (the_mips_linux_nat_target): New.
9647         (mips64_linux_regsets_fetch_registers)
9648         (mips64_linux_regsets_store_registers)
9649         (mips64_linux_fetch_registers, mips64_linux_store_registers)
9650         (mips_linux_register_u_offset, mips_linux_read_description)
9651         (mips_linux_can_use_hw_breakpoint)
9652         (mips_linux_stopped_by_watchpoint)
9653         (mips_linux_stopped_data_address)
9654         (mips_linux_region_ok_for_hw_watchpoint)
9655         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
9656         (mips_linux_close): Refactor as methods of mips_linux_nat.
9657         (_initialize_mips_linux_nat): Adjust to C++ification.
9658
9659         * aix-thread.c (aix_thread_target): New class.
9660         (aix_thread_ops): Now an aix_thread_target.
9661         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
9662         (aix_thread_fetch_registers, aix_thread_store_registers)
9663         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
9664         (aix_thread_thread_alive, aix_thread_pid_to_str)
9665         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
9666         Refactor as methods of aix_thread_target.
9667         (init_aix_thread_ops): Delete.
9668         (_initialize_aix_thread): Remove references to init_aix_thread_ops
9669         and complete_target_initialization.
9670         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
9671         (rs6000_nat_target): New class.
9672         (the_rs6000_nat_target): New.
9673         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
9674         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
9675         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
9676         (super_create_inferior): Delete.
9677         (_initialize_rs6000_nat): Adjust to C++ification.
9678
9679         * arm-linux-nat.c (arm_linux_nat_target): New class.
9680         (the_arm_linux_nat_target): New.
9681         (arm_linux_fetch_inferior_registers)
9682         (arm_linux_store_inferior_registers, arm_linux_read_description)
9683         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
9684         (arm_linux_remove_hw_breakpoint)
9685         (arm_linux_region_ok_for_hw_watchpoint)
9686         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
9687         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
9688         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
9689         arm_linux_nat_target.
9690         (_initialize_arm_linux_nat): Adjust to C++ification.
9691
9692         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
9693         (the_aarch64_linux_nat_target): New.
9694         (aarch64_linux_fetch_inferior_registers)
9695         (aarch64_linux_store_inferior_registers)
9696         (aarch64_linux_child_post_startup_inferior)
9697         (aarch64_linux_read_description)
9698         (aarch64_linux_can_use_hw_breakpoint)
9699         (aarch64_linux_insert_hw_breakpoint)
9700         (aarch64_linux_remove_hw_breakpoint)
9701         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
9702         (aarch64_linux_region_ok_for_hw_watchpoint)
9703         (aarch64_linux_stopped_data_address)
9704         (aarch64_linux_stopped_by_watchpoint)
9705         (aarch64_linux_watchpoint_addr_within_range)
9706         (aarch64_linux_can_do_single_step): Refactor as methods of
9707         aarch64_linux_nat_target.
9708         (super_post_startup_inferior): Delete.
9709         (_initialize_aarch64_linux_nat): Adjust to C++ification.
9710
9711         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
9712         (the_hppa_linux_nat_target): New.
9713         (hppa_linux_fetch_inferior_registers)
9714         (hppa_linux_store_inferior_registers): Refactor as methods of
9715         hppa_linux_nat_target.
9716         (_initialize_hppa_linux_nat): Adjust to C++ification.
9717
9718         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
9719         (the_ia64_linux_nat_target): New.
9720         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
9721         (ia64_linux_stopped_data_address)
9722         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
9723         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
9724         ia64_linux_nat_target methods.
9725         (super_xfer_partial): Delete.
9726         (_initialize_ia64_linux_nat): Adjust to C++ification.
9727
9728         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
9729         (the_m32r_linux_nat_target): New.
9730         (m32r_linux_fetch_inferior_registers)
9731         (m32r_linux_store_inferior_registers): Refactor as
9732         m32r_linux_nat_target methods.
9733         (_initialize_m32r_linux_nat): Adjust to C++ification.
9734
9735         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
9736         (the_m68k_linux_nat_target): New.
9737         (m68k_linux_fetch_inferior_registers)
9738         (m68k_linux_store_inferior_registers): Refactor as
9739         m68k_linux_nat_target methods.
9740         (_initialize_m68k_linux_nat): Adjust to C++ification.
9741
9742         * s390-linux-nat.c (s390_linux_nat_target): New class.
9743         (the_s390_linux_nat_target): New.
9744         (s390_linux_fetch_inferior_registers)
9745         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
9746         (s390_insert_watchpoint, s390_remove_watchpoint)
9747         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
9748         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
9749         (s390_auxv_parse, s390_read_description): Refactor as methods of
9750         s390_linux_nat_target.
9751         (_initialize_s390_nat): Adjust to C++ification.
9752
9753         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
9754         (the_sparc_linux_nat_target): New.
9755         (_initialize_sparc_linux_nat): Adjust to C++ification.
9756         * sparc-nat.c (sparc_fetch_inferior_registers)
9757         (sparc_store_inferior_registers): Remove target_ops parameter.
9758         * sparc-nat.h (sparc_fetch_inferior_registers)
9759         (sparc_store_inferior_registers): Remove target_ops parameter.
9760         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
9761         (the_sparc64_linux_nat_target): New.
9762         (_initialize_sparc64_linux_nat): Adjust to C++ification.
9763
9764         * spu-linux-nat.c (spu_linux_nat_target): New class.
9765         (the_spu_linux_nat_target): New.
9766         (spu_child_post_startup_inferior, spu_child_post_attach)
9767         (spu_child_wait, spu_fetch_inferior_registers)
9768         (spu_store_inferior_registers, spu_xfer_partial)
9769         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
9770         methods.
9771         (_initialize_spu_nat): Adjust to C++ification.
9772
9773         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
9774         (the_tilegx_linux_nat_target): New.
9775         (fetch_inferior_registers, store_inferior_registers):
9776         Refactor as methods.
9777         (_initialize_tile_linux_nat): Adjust to C++ification.
9778
9779         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
9780         (the_xtensa_linux_nat_target): New.
9781         (xtensa_linux_fetch_inferior_registers)
9782         (xtensa_linux_store_inferior_registers): Refactor as
9783         xtensa_linux_nat_target methods.
9784         (_initialize_xtensa_linux_nat): Adjust to C++ification.
9785
9786         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
9787         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
9788         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
9789         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
9790         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
9791         (fbsd_stopped_by_sw_breakpoint)
9792         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
9793         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
9794         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
9795         (fbsd_post_startup_inferior, fbsd_post_attach)
9796         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
9797         (fbsd_set_syscall_catchpoint)
9798         (super_xfer_partial, super_resume, super_wait)
9799         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
9800         (fbsd_handle_debug_trap): Remove target_ops parameter.
9801         (fbsd_nat_add_target): Delete.
9802         * fbsd-nat.h: Include "inf-ptrace.h".
9803         (fbsd_nat_add_target): Delete.
9804         (USE_SIGTRAP_SIGINFO): Define.
9805         (fbsd_nat_target): New class.
9806
9807         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
9808         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
9809         (amd64bsd_target): Delete.
9810         * amd64-bsd-nat.h: New file.
9811         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
9812         "x86-bsd-nat.h".
9813         (amd64_fbsd_nat_target): New class.
9814         (the_amd64_fbsd_nat_target): New.
9815         (amd64fbsd_read_description): Refactor as method of
9816         amd64_fbsd_nat_target.
9817         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9818         (_initialize_amd64fbsd_nat): Adjust to C++ification.
9819         * amd64-nat.h (amd64bsd_target): Delete function declaration.
9820         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
9821         (i386bsd_store_inferior_registers): Remove target_ops parameter.
9822         (i386bsd_target): Delete.
9823         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
9824         (i386bsd_fetch_inferior_registers)
9825         (i386bsd_store_inferior_registers): Declare.
9826         (i386_bsd_nat_target): New class.
9827         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
9828         (the_i386_fbsd_nat_target): New.
9829         (i386fbsd_resume, i386fbsd_read_description): Refactor as
9830         i386_fbsd_nat_target methods.
9831         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9832         (_initialize_i386fbsd_nat): Adjust to C++ification.
9833         * x86-bsd-nat.c (super_mourn_inferior): Delete.
9834         (x86bsd_mourn_inferior, x86bsd_target): Delete.
9835         (_initialize_x86_bsd_nat): Adjust to C++ification.
9836         * x86-bsd-nat.h: Include "x86-nat.h".
9837         (x86bsd_target): Delete declaration.
9838         (x86bsd_nat_target): New class.
9839
9840         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
9841         (the_aarch64_fbsd_nat_target): New.
9842         (aarch64_fbsd_fetch_inferior_registers)
9843         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
9844         aarch64_fbsd_nat_target.
9845         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
9846         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
9847         (the_alpha_bsd_nat_target): New.
9848         (alphabsd_fetch_inferior_registers)
9849         (alphabsd_store_inferior_registers): Refactor as
9850         alpha_bsd_nat_target methods.
9851         (_initialize_alphabsd_nat): Refactor as methods of
9852         alpha_bsd_nat_target.
9853         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
9854         (the_amd64_nbsd_nat_target): New.
9855         (_initialize_amd64nbsd_nat): Adjust to C++ification.
9856         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
9857         (the_amd64_obsd_nat_target): New.
9858         (_initialize_amd64obsd_nat): Adjust to C++ification.
9859         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
9860         (the_arm_fbsd_nat_target): New.
9861         (arm_fbsd_fetch_inferior_registers)
9862         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
9863         (_initialize_arm_fbsd_nat): Refactor as methods of
9864         arm_fbsd_nat_target.
9865         (_initialize_arm_fbsd_nat): Adjust to C++ification.
9866         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
9867         (the_arm_netbsd_nat_target): New.
9868         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
9869         arm_netbsd_nat_target.
9870         (_initialize_arm_netbsd_nat): Adjust to C++ification.
9871         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
9872         (the_hppa_nbsd_nat_target): New.
9873         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
9874         hppa_nbsd_nat_target methods.
9875         (_initialize_hppanbsd_nat): Adjust to C++ification.
9876         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
9877         (the_hppa_obsd_nat_target): New.
9878         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
9879         methods of hppa_obsd_nat_target.
9880         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
9881         add_target.
9882         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
9883         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
9884         add_target.
9885         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
9886         (_initialize_i386obsd_nat): Use add_target.
9887         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
9888         (the_m68k_bsd_nat_target): New.
9889         (m68kbsd_fetch_inferior_registers)
9890         (m68kbsd_store_inferior_registers): Refactor as methods of
9891         m68k_bsd_nat_target.
9892         (_initialize_m68kbsd_nat): Adjust to C++ification.
9893         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
9894         (the_mips_fbsd_nat_target): New.
9895         (mips_fbsd_fetch_inferior_registers)
9896         (mips_fbsd_store_inferior_registers): Refactor as methods of
9897         mips_fbsd_nat_target.
9898         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
9899         add_target.
9900         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
9901         (the_mips_nbsd_nat_target): New.
9902         (mipsnbsd_fetch_inferior_registers)
9903         (mipsnbsd_store_inferior_registers): Refactor as methods of
9904         mips_nbsd_nat_target.
9905         (_initialize_mipsnbsd_nat): Adjust to C++ification.
9906         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
9907         (the_mips64_obsd_nat_target): New.
9908         (mips64obsd_fetch_inferior_registers)
9909         (mips64obsd_store_inferior_registers): Refactor as methods of
9910         mips64_obsd_nat_target.
9911         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
9912         add_target.
9913         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
9914         nbsd_nat_target.
9915         * nbsd-nat.h: Include "inf-ptrace.h".
9916         (nbsd_nat_target): New class.
9917         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
9918         (obsd_wait): Refactor as methods of obsd_nat_target.
9919         (obsd_add_target): Delete.
9920         * obsd-nat.h: Include "inf-ptrace.h".
9921         (obsd_nat_target): New class.
9922         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
9923         (the_ppc_fbsd_nat_target): New.
9924         (ppcfbsd_fetch_inferior_registers)
9925         (ppcfbsd_store_inferior_registers): Refactor as methods of
9926         ppc_fbsd_nat_target.
9927         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
9928         add_target.
9929         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
9930         (the_ppc_nbsd_nat_target): New.
9931         (ppcnbsd_fetch_inferior_registers)
9932         (ppcnbsd_store_inferior_registers): Refactor as methods of
9933         ppc_nbsd_nat_target.
9934         (_initialize_ppcnbsd_nat): Adjust to C++ification.
9935         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
9936         (the_ppc_obsd_nat_target): New.
9937         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
9938         methods of ppc_obsd_nat_target.
9939         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
9940         add_target.
9941         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
9942         (the_sh_nbsd_nat_target): New.
9943         (shnbsd_fetch_inferior_registers)
9944         (shnbsd_store_inferior_registers): Refactor as methods of
9945         sh_nbsd_nat_target.
9946         (_initialize_shnbsd_nat): Adjust to C++ification.
9947         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
9948         (inf_ptrace_xfer_partial): Delete.
9949         (sparc_xfer_partial, sparc_target): Delete.
9950         * sparc-nat.h (sparc_fetch_inferior_registers)
9951         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
9952         (sparc_target): Delete function declaration.
9953         (sparc_target): New template class.
9954         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
9955         (_initialize_sparcnbsd_nat): Adjust to C++ification.
9956         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
9957         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
9958         add_target.
9959         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
9960         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
9961         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
9962         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
9963         add_target.
9964         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
9965         (the_vax_bsd_nat_target): New.
9966         (vaxbsd_fetch_inferior_registers)
9967         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
9968         methods.
9969         (_initialize_vaxbsd_nat): Adjust to C++ification.
9970
9971         * bsd-kvm.c (bsd_kvm_target): New class.
9972         (bsd_kvm_ops): Now a bsd_kvm_target.
9973         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
9974         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
9975         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
9976         bsd_kvm_target.
9977         (bsd_kvm_return_one): Delete.
9978         (bsd_kvm_add_target): Adjust to C++ification.
9979
9980         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
9981         (nto_procfs_target_procfs): New classes.
9982         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
9983         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
9984         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
9985         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
9986         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
9987         (procfs_remove_hw_breakpoint, procfs_resume)
9988         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
9989         (procfs_kill_inferior, procfs_store_registers)
9990         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
9991         as methods of nto_procfs_target.
9992         (nto_procfs_ops): Now an nto_procfs_target_procfs.
9993         (nto_native_ops): Delete.
9994         (procfs_open, procfs_native_open): Delete.
9995         (nto_native_ops): Now an nto_procfs_target_native.
9996         (init_procfs_targets): Adjust to C++ification.
9997         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
9998         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
9999         Refactor as methods of nto_procfs_target.
10000
10001         * go32-nat.c (go32_nat_target): New class.
10002         (the_go32_nat_target): New.
10003         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10004         (go32_store_registers, go32_xfer_partial, go32_files_info)
10005         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10006         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10007         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10008         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10009         (go32_target): Delete.
10010         (_initialize_go32_nat): Adjust to C++ification.
10011
10012         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10013         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10014         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10015         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10016         gnu_nat_target.
10017         (gnu_target): Delete.
10018         * gnu-nat.h (gnu_target): Delete.
10019         (gnu_nat_target): New class.
10020         * i386-gnu-nat.c (gnu_base_target): New.
10021         (i386_gnu_nat_target): New class.
10022         (the_i386_gnu_nat_target): New.
10023         (_initialize_i386gnu_nat): Adjust to C++ification.
10024
10025 2018-05-02  Pedro Alves  <palves@redhat.com>
10026
10027         * bfd-target.c (target_bfd_xclose): Rename to ...
10028         (target_bfd_close): ... this.
10029         (target_bfd_reopen): Adjust.
10030         * target.c (target_close): Remove references to to_xclose.
10031         * target.h (target_ops::to_xclose): Delete.
10032         (target_ops::to_close): Update comments.
10033
10034 2018-05-02  Pedro Alves  <palves@redhat.com>
10035
10036         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10037         "linux-nat.h".
10038         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10039         * inf-ptrace.c (inf_ptrace_register_u_offset)
10040         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10041         (inf_ptrace_store_register, inf_ptrace_store_registers)
10042         (inf_ptrace_trad_target): Move to ...
10043         * linux-nat-trad.c: ... this new file.
10044         * linux-nat-trad.h: New file.
10045         * linux-nat.c (linux_target_install_ops): Make extern.
10046         (linux_trad_target): Delete.
10047         * linux-nat.h (linux_trad_target): Delete declaration.
10048         (linux_target_install_ops): Declare.
10049         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10050         "linux-nat.h".
10051
10052 2018-05-02  Pedro Alves  <palves@redhat.com>
10053
10054         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10055         procfs_target/add_target here.
10056         * procfs.c (procfs_target): Make static.
10057         (_initialize_procfs): Call add_target here.
10058         * procfs.h (struct target_ops): Remove forward declaration.
10059         (procfs_target): Remove declaration.
10060         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10061
10062 2018-05-02  Pedro Alves  <palves@redhat.com>
10063
10064         * procfs.c (procfs_stopped_by_watchpoint)
10065         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10066         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10067         Forward declare.
10068         (procfs_use_watchpoints): Delete, move contents...
10069         (procfs_target): ... here.
10070         * procfs.h (procfs_use_watchpoints): Delete declaration.
10071         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10072         procfs_use_watchpoints.
10073         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10074         procfs_use_watchpoints.
10075
10076 2018-05-02  Tom Tromey  <tom@tromey.com>
10077
10078         PR python/20084:
10079         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10080         and var_zuinteger_unlimited.
10081         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10082         and PARAM_ZUINTEGER_UNLIMITED.
10083         (set_parameter_value): Handle var_zuinteger and
10084         var_zuinteger_unlimited.
10085         (add_setshow_generic): Likewise.
10086         (parmpy_init): Likewise.
10087
10088 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10089
10090         PR rust/23124
10091         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10092         pointer is not null before dereferencing it.
10093
10094 2018-04-30  Tom Tromey  <tom@tromey.com>
10095
10096         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10097         is_mi_like_p.
10098
10099 2018-04-30  Tom Tromey  <tom@tromey.com>
10100
10101         * breakpoint.c (mention): Remove use of is_mi_like_p.
10102         (print_mention_ranged_breakpoint): Likewise.
10103         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10104         of is_mi_like_p.
10105
10106 2018-04-30  Tom Tromey  <tom@tromey.com>
10107
10108         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10109
10110 2018-04-30  Tom Tromey  <tom@tromey.com>
10111
10112         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10113         (info_spu_event_command): Remove some uses of is_mi_like_p.
10114
10115 2018-04-30  Tom Tromey  <tom@tromey.com>
10116
10117         * python/py-framefilter.c (py_print_single_arg)
10118         (enumerate_locals, py_print_args, py_print_frame): Remove some
10119         uses of is_mi_like_p.
10120
10121 2018-04-30  Tom Tromey  <tom@tromey.com>
10122
10123         * ui-out.c: Update.
10124         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10125         * ui-out.h (ui_out::is_mi_like_p): Now const.
10126         (ui_out::do_is_mi_like_p): Now const.
10127         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10128
10129 2018-04-30  Tom Tromey  <tom@tromey.com>
10130
10131         * varobj.c (varobj_set_visualizer): Use new_reference.
10132         * python/python.c (gdbpy_decode_line): Use new_reference.
10133         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10134         new_reference.
10135
10136 2018-04-30  Tom Tromey  <tom@tromey.com>
10137
10138         * varobj.c (install_new_value): Use new_reference.
10139         * value.h (value_incref): Return void.  Swap intro comment with
10140         value_decref.
10141         * value.c (set_value_parent): Use new_reference.
10142         (value_incref): Return void.  Update intro comment.
10143         (release_value): Use new_reference.
10144         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10145
10146 2018-04-30  Tom Tromey  <tom@tromey.com>
10147
10148         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10149         * gdb_bfd.h (new_bfd_ref): Remove.
10150         (gdb_bfd_open): Update comment.
10151         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10152         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10153         (gdb_bfd_fdopenr): Use new_reference.
10154         * exec.c (exec_file_attach): Use new_reference.
10155
10156 2018-04-30  Tom Tromey  <tom@tromey.com>
10157
10158         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10159         method.
10160
10161 2018-04-30  Tom Tromey  <tom@tromey.com>
10162
10163         * jit.c (jit_read_code_entry): Use type_align.
10164         * i386-tdep.c (i386_gdbarch_init): Don't call
10165         set_gdbarch_long_long_align_bit.
10166         * gdbarch.sh: Remove long_long_align_bit.
10167         * gdbarch.c, gdbarch.h: Rebuild.
10168         * arc-tdep.c (arc_type_align): New function.
10169         (arc_gdbarch_init): Use arc_type_align.  Don't call
10170         set_gdbarch_long_long_align_bit.
10171
10172 2018-04-30  Tom Tromey  <tom@tromey.com>
10173
10174         * rust-lang.c (rust_type_alignment): Remove.
10175         (rust_composite_type): Use type_align.
10176
10177 2018-04-30  Tom Tromey  <tom@tromey.com>
10178
10179         * NEWS: Mention Type.align.
10180         * python/py-type.c (typy_get_alignof): New function.
10181         (type_object_getset): Add "alignof".
10182
10183 2018-04-30  Tom Tromey  <tom@tromey.com>
10184
10185         PR exp/17095:
10186         * NEWS: Update.
10187         * std-operator.def (UNOP_ALIGNOF): New operator.
10188         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10189         New.
10190         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10191         * c-lang.c (c_op_print_tab): Add alignof.
10192         * c-exp.y (ALIGNOF): New token.
10193         (exp): Add "ALIGNOF" production.
10194         (ident_tokens): Add _Alignof and alignof.
10195
10196 2018-04-30  Tom Tromey  <tom@tromey.com>
10197
10198         * i386-tdep.c (i386_type_align): New function.
10199         (i386_gdbarch_init): Update.
10200         * gdbarch.sh (type_align): New method.
10201         * gdbarch.c, gdbarch.h: Rebuild.
10202         * arch-utils.h (default_type_align): Declare.
10203         * arch-utils.c (default_type_align): New function.
10204         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10205         (struct type) <align_log2>: New field.
10206         <instance_flags>: Now a bitfield.
10207         (TYPE_RAW_ALIGN): New macro.
10208         (type_align, type_raw_align, set_type_align): Declare.
10209         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10210         functions.
10211         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10212         (get_alignment, maybe_set_alignment): New functions.
10213         (read_structure_type, read_enumeration_type, read_array_type)
10214         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10215         (read_subrange_type, read_base_type): Set type alignment.
10216
10217 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10218
10219         * dwarf2read.c (read_index_from_section): Use bool.
10220
10221 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10222
10223         PR gdb/22950
10224         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10225         with #ifdef.
10226
10227 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10228
10229         PR build/22873
10230         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10231         last step, and do it atomically.
10232
10233 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10234
10235         * compile/compile-c-types.c (convert_int, convert_float):
10236         Update for C FE v1.
10237
10238 2018-04-27  Tom Tromey  <tom@tromey.com>
10239
10240         PR rust/22545:
10241         * rust-lang.c (rust_inclusive_range_type_p): New function.
10242         (rust_range): Handle inclusive ranges.
10243         (rust_compute_range): Likewise.
10244         * rust-exp.y (struct rust_op) <inclusive>: New field.
10245         (DOTDOTEQ): New constant.
10246         (range_expr): Add "..=" productions.
10247         (operator_tokens): Add "..=" token.
10248         (ast_range): Add "inclusive" parameter.
10249         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10250         ranges.
10251         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10252         bounds values.
10253         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10254         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10255         Update comments.
10256         * expprint.c (print_subexp_standard): Handle new bounds values.
10257         (dump_subexp_body_standard): Likewise.
10258
10259 2018-04-27  Tom Tromey  <tom@tromey.com>
10260
10261         * configure: Rebuild.
10262         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10263         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10264         "OVERRIDE".
10265         (class symbol_needs_eval_context): Likewise.
10266         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10267         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10268         "virtual".
10269         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10270         "override".
10271         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10272         * aarch64-tdep.c (instruction_reader::read): Use "override".
10273         (instruction_reader_test::read): Likewise.
10274         * arm-tdep.c (instruction_reader::read): Use "override".
10275         (instruction_reader_thumb::read): Likewise.
10276
10277 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10278
10279         PR remote/9665
10280         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10281         instead of remote_send.
10282         (remote_send): Remove.
10283
10284 2018-04-26  Pedro Alves  <palves@redhat.com>
10285
10286         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10287         find_function_start_sal instead of find_pc_line.
10288
10289 2018-04-26  Pedro Alves  <palves@redhat.com>
10290
10291         * breakpoint.c (set_breakpoint_location_function): Handle
10292         mst_data_gnu_ifunc.
10293         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10294         * elfread.c (elf_symtab_read): Give data symbols with
10295         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10296         (elf_rel_plt_read): Update comment.
10297         * linespec.c (convert_linespec_to_sals): Handle
10298         mst_data_gnu_ifunc.
10299         (minsym_found): Handle mst_data_gnu_ifunc.
10300         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10301         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10302         * parse.c (find_minsym_type_and_address): Handle
10303         mst_data_gnu_ifunc.
10304         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10305         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10306         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10307         comment.
10308         <mst_data_gnu_ifunc>: New enumerator.
10309
10310 2018-04-26  Pedro Alves  <palves@redhat.com>
10311
10312         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10313         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10314         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10315         Handle it.
10316         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10317         (lookup_minimal_symbol_by_pc): Adjust.
10318         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10319         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10320         * minsyms.h (lookup_msym_prefer): New enum.
10321         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10322         parameter by a lookup_msym_prefer parameter.
10323
10324 2018-04-26  Pedro Alves  <palves@redhat.com>
10325
10326         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10327         ends in "@plt" instead of looking at the symbol's section.
10328
10329 2018-04-26  Pedro Alves  <palves@redhat.com>
10330
10331         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10332         all references.
10333         (find_pc_partial_function_gnu_ifunc): Rename to ...
10334         (find_pc_partial_function): ... this, and remove references to
10335         'is_gnu_ifunc_p'.
10336         (find_pc_partial_function): Delete old implementation.
10337         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10338
10339 2018-04-26  Pedro Alves  <palves@redhat.com>
10340
10341         * linespec.c (struct bound_minimal_symbol_search_key): New.
10342         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10343         skip first line if we found a GNU ifunc minimal symbol by name.
10344         (compare_msymbols): Change parameters to work with a destructured
10345         lhs minsym.
10346         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10347         functions.
10348
10349 2018-04-26  Pedro Alves  <palves@redhat.com>
10350
10351         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10352         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10353         address/name.
10354         (add_location_to_breakpoint): Store the minsym and the objfile in
10355         the breakpoint location.
10356         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10357         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10358         Record the minsym in the sal.
10359         * symtab.h (symtab_and_line) <msymbol>: New field.
10360
10361 2018-04-26  Pedro Alves  <palves@redhat.com>
10362
10363         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10364         unless we actually resolved the ifunc.
10365
10366 2018-04-26  Pedro Alves  <palves@redhat.com>
10367
10368         * c-exp.y (variable production): Prefer ifunc minsyms over
10369         regular function symbols.
10370         * symtab.c (find_gnu_ifunc): New function.
10371         * minsyms.h (lookup_msym_prefer): New enum.
10372         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10373         parameter by a lookup_msym_prefer parameter.
10374         * symtab.h (find_gnu_ifunc): New declaration.
10375
10376 2018-04-26  Pedro Alves  <palves@redhat.com>
10377
10378         * blockframe.c (find_gnu_ifunc_target_type): New function.
10379         (find_function_type): New.
10380         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10381         return a value with a memory address.
10382         (eval_call): For calls to GNU ifunc functions, try to find the
10383         type of the target function from the type that the resolver
10384         returns.
10385         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10386         symbols.
10387         * infcall.c (find_function_return_type): Delete.
10388         (find_function_addr): Add 'function_type' parameter.  For calls to
10389         GNU ifunc functions, try to find the type of the target function
10390         from the type that the resolver returns, and return it via
10391         FUNCTION_TYPE.
10392         (call_function_by_hand_dummy): Adjust to use the function type
10393         returned by find_function_addr.
10394         (find_function_addr): Add 'function_type' parameter and move
10395         description here.
10396         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10397         declarations.
10398
10399 2018-04-26  Pedro Alves  <palves@redhat.com>
10400
10401         * c-exp.y (variable production): Skip finding an alias for ifunc
10402         symbols.
10403
10404 2018-04-26  Pedro Alves  <palves@redhat.com>
10405
10406         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10407
10408 2018-04-25  Pedro Alves  <palves@redhat.com>
10409
10410         * infcmd.c (kill_command): Print the pid as string, not the whole
10411         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10412         message.
10413         * remote.c (remote_detach_1): Print the pid as string, not the
10414         whole thread's ptid.
10415
10416 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10417             Sergio Durigan Junior  <sergiodj@redhat.com>
10418             Pedro Alves  <palves@redhat.com>
10419
10420         * infcmd.c (kill_command): Print message when inferior has
10421         been killed.
10422         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10423         '1'.
10424         (add_inferior): Improve message printed when
10425         'print_inferior_events' is on.
10426         (exit_inferior): Remove message printed when
10427         'print_inferior_events' is on.
10428         (detach_inferior): Improve message printed when
10429         'print_inferior_events' is on.
10430         (initialize_inferiors): Use 'add_inferior_silent' to set
10431         'current_inferior_'.
10432         * inferior.h (print_inferior_events): Declare here as
10433         'extern'.
10434         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10435         '[Detaching...]' messages when 'print_inferior_events' is on.
10436         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10437         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10438         'Detaching after fork from child...', replace it by '... from
10439         parent...'.
10440         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10441         prefix/suffix when printing 'Detaching...' messages.  Print
10442         them when 'print_inferior_events' is on.
10443         * remote.c (remote_detach_1): Print message when detaching
10444         from inferior and '!is_fork_parent'.
10445
10446 2018-04-24  Tom Tromey  <tom@tromey.com>
10447
10448         * cli-out.h: Reindent.
10449
10450 2018-04-24  Tom Tromey  <tom@tromey.com>
10451
10452         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10453         (cli_ui_out::do_field_string): Use fputs_filtered.
10454         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10455
10456 2018-04-23  Tom Tromey  <tom@tromey.com>
10457
10458         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10459         gdb::unique_xmalloc_ptr.
10460
10461 2018-04-23  Tom Tromey  <tom@tromey.com>
10462
10463         * configure: Rebuild.
10464
10465 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10466
10467         PR gdb/23095
10468         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10469         prepare_for_testing.  Set normal_bp to r_debug_state if target
10470         is bsd.
10471
10472 2018-04-21  Pedro Alves  <palves@redhat.com>
10473             Rajendra SY  <rajendra.sy@gmail.com>
10474
10475         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10476         * remote.c (extended_remote_attach): In all-stop mode, mark the
10477         thread as executing.
10478
10479 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10480
10481         * thread.c (thread_apply_all_command): Fix comment.
10482         (thread_command): Fix comment.
10483
10484 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10485
10486         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10487         parameter.
10488         * features/aarch64-core.c (create_feature_aarch64_core):
10489         Regenerate.
10490         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10491         Likewise.
10492         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10493         Likewise.
10494         * features/i386/32bit-avx512.c
10495         (create_feature_i386_32bit_avx512): Likewise.
10496         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10497         Likewise.
10498         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10499         Likewise.
10500         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10501         Likewise.
10502         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10503         Likewise.
10504         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10505         Likewise.
10506         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10507         Likewise.
10508         * features/i386/64bit-avx512.c
10509         (create_feature_i386_64bit_avx512): Likewise.
10510         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10511         Likewise.
10512         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10513         Likewise.
10514         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10515         Likewise.
10516         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10517         Likewise.
10518         * features/i386/64bit-segments.c
10519         (create_feature_i386_64bit_segments): Likewise.
10520         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10521         Likewise.
10522         * features/i386/x32-core.c
10523         (create_feature_i386_x32_core): Likewise.
10524         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10525         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10526         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10527         * target-descriptions.c: In generated code, don't pass xml
10528         filename.
10529
10530 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10531
10532         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10533         (print_xml_feature::visit_post): Likewise.
10534         (print_xml_feature::visit): Likewise.
10535         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10536         (print_xml_feature): Add new class.
10537         * regformats/regdat.sh: Null xmltarget on feature targets.
10538         * target-descriptions.c (struct target_desc): Add xmltarget.
10539         (maintenance_check_tdesc_xml_convert): Add unittest function.
10540         (tdesc_get_features_xml): Add function to get xml.
10541         (maintenance_check_xml_descriptions): Test xml generation.
10542         * xml-tdesc.c (string_read_description_xml): Add function.
10543         * xml-tdesc.h (string_read_description_xml): Add declaration.
10544
10545 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10546
10547         * features/Makefile: Add feature marker to targets with new style
10548         target descriptions.
10549         * regformats/aarch64.dat: Regenerate.
10550         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10551         * regformats/i386/amd64-avx-linux.dat: Likewise.
10552         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10553         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10554         * regformats/i386/amd64-linux.dat: Likewise.
10555         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10556         * regformats/i386/amd64.dat: Likewise.
10557         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10558         * regformats/i386/i386-avx-linux.dat: Likewise.
10559         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10560         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10561         * regformats/i386/i386-linux.dat: Likewise.
10562         * regformats/i386/i386-mmx-linux.dat: Likewise.
10563         * regformats/i386/i386-mpx-linux.dat: Likewise.
10564         * regformats/i386/i386.dat: Likewise.
10565         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10566         * regformats/i386/x32-avx-linux.dat: Likewise.
10567         * regformats/i386/x32-linux.dat: Likewise.
10568         * regformats/tic6x-c62x-linux.dat: Likewise.
10569         * regformats/tic6x-c64x-linux.dat: Likewise.
10570         * regformats/tic6x-c64xp-linux.dat: Likewise.
10571         * regformats/regdat.sh: Parse feature marker.
10572
10573 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10574
10575         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
10576         (tdesc_osabi_name): Likewise.
10577         * target-descriptions.c (tdesc_architecture_name): Add new
10578         function.
10579         (tdesc_osabi_name): Likewise.
10580
10581 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10582
10583         * common/tdesc.c (tdesc_predefined_type): Move to here.
10584         (tdesc_named_type): Likewise.
10585         (tdesc_create_vector): Likewise.
10586         (tdesc_create_struct): Likewise.
10587         (tdesc_set_struct_size): Likewise.
10588         (tdesc_create_union): Likewise.
10589         (tdesc_create_flags): Likewise.
10590         (tdesc_create_enum): Likewise.
10591         (tdesc_add_field): Likewise.
10592         (tdesc_add_typed_bitfield): Likewise.
10593         (tdesc_add_bitfield): Likewise.
10594         (tdesc_add_flag): Likewise.
10595         (tdesc_add_enum_value): Likewise.
10596         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
10597         (struct tdesc_type_vector): Likewise.
10598         (struct tdesc_type_field): Likewise.
10599         (struct tdesc_type_with_fields): Likewise.
10600         (tdesc_create_enum): Add declaration.
10601         (tdesc_add_typed_bitfield): Likewise.
10602         (tdesc_add_enum_value): Likewise.
10603         * target-descriptions.c (tdesc_type_field): Move from here.
10604         (tdesc_type_builtin): Likewise.
10605         (tdesc_type_vector): Likewise.
10606         (tdesc_type_with_fields): Likewise.
10607         (tdesc_predefined_types): Likewise.
10608         (tdesc_named_type): Likewise.
10609         (tdesc_create_vector): Likewise.
10610         (tdesc_create_struct): Likewise.
10611         (tdesc_set_struct_size): Likewise.
10612         (tdesc_create_union): Likewise.
10613         (tdesc_create_flags): Likewise.
10614         (tdesc_create_enum): Likewise.
10615         (tdesc_add_field): Likewise.
10616         (tdesc_add_typed_bitfield): Likewise.
10617         (tdesc_add_bitfield): Likewise.
10618         (tdesc_add_flag): Likewise.
10619         (tdesc_add_enum_value): Likewise.
10620         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
10621         (tdesc_add_typed_bitfield): Likewise.
10622         (tdesc_add_enum_value): Likewise.
10623
10624 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10625
10626         * common/tdesc.c (tdesc_feature::accept): Move to here.
10627         (tdesc_feature::operator==): Likewise.
10628         (tdesc_create_reg): Likewise.
10629         * common/tdesc.h (tdesc_type_kind): Likewise.
10630         (struct tdesc_type): Likewise.
10631         (struct tdesc_feature): Likewise.
10632         * regformats/regdat.sh: Create a feature.
10633         * target-descriptions.c (tdesc_type_kind): Move from here.
10634         (tdesc_type): Likewise.
10635         (tdesc_type_up): Likewise.
10636         (tdesc_feature): Likewise.
10637         (tdesc_create_reg): Likewise.
10638
10639 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10640
10641         * Makefile.in: Add arch/tdesc.c
10642         * common/tdesc.c: New file.
10643         * common/tdesc.h (tdesc_element_visitor): Move to here.
10644         (tdesc_element): Likewise.
10645         (tdesc_reg): Likewise.
10646         (tdesc_reg_up): Likewise.
10647         * regformats/regdef.h (reg): Add offset to constructors.
10648         * target-descriptions.c (tdesc_element_visitor): Move from here.
10649         (tdesc_element): Likewise.
10650         (tdesc_reg): Likewise.
10651         (tdesc_reg_up): Likewise.
10652
10653 2018-04-17  Tom Tromey  <tom@tromey.com>
10654
10655         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
10656         discriminant field.
10657
10658 2018-04-17  Tom Tromey  <tom@tromey.com>
10659
10660         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
10661
10662 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10663
10664         * symtab.c (print_symbol_info): Skip printing filename and line
10665         number when `last' is NULL.
10666         (symtab_symbol_info): Use empty string instead of NULL for first
10667         invocation of print_symbol_info.
10668         (rbreak_command): Pass NULL to `last' parameter of
10669         print_symbol_info.
10670
10671 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
10672
10673         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
10674         instead of nullptr.
10675
10676 2018-04-16  Pedro Alves  <palves@redhat.com>
10677
10678         * MAINTAINERS (sh): Remove.
10679         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
10680         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
10681         (ALLDEPFILES): Remove sh64-tdep.c.
10682         * NEWS: Mentions that support for SH-5/SH64 is removed.
10683         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
10684         (sh*-*-openbsd*): Ditto.
10685         (sh64-*-elf*): Remove.
10686         (sh*): Remove.
10687         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
10688         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
10689         * sh-tdep.c: No longer include "sh64-tdep.h".
10690         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
10691         * sh64-tdep.c, sh64-tdep.h: Remove files.
10692
10693 2018-04-16  Pedro Alves  <palves@redhat.com>
10694
10695         * MAINTAINERS: Remove m88k.
10696         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
10697         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
10698         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
10699         * NEWS: Mention that support for m88k was removed.
10700         * configure.host (m88*-*-*): Remove support.
10701         * configure.nat (m88k-*-*): Remove support.
10702         * configure.tgt (m88*-*-openbsd*): Remove.
10703         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
10704
10705 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
10706
10707         * configure.tgt (x86_tobjs): New variable.
10708         (amd64_tobjs, i386_tobjs): Use it.
10709
10710 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10711
10712         * symtab.c (print_symbol_info): Precede the symbol definition by
10713         the line number when available.
10714         * NEWS: Advertise this enhancement.
10715
10716 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10717
10718         * NEWS (New options): announce set/show record btrace cpu.
10719         * btrace.c: Include record-btrace.h.
10720         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
10721         the vendor is unknown.
10722         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
10723         Maybe overwrite the btrace configuration's cpu.
10724         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
10725         (btrace_fetch): Add cpu parameter.  Update callers.
10726         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
10727         Maybe overwrite the btrace configuration's cpu.  Skip enabling
10728         errata workarounds if the vendor is unknown.
10729         * python/py-record-btrace.c: Include record-btrace.h.
10730         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
10731         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
10732         * record-btrace.c (record_btrace_cpu_state_kind): New.
10733         (record_btrace_cpu): New.
10734         (set_record_btrace_cpu_cmdlist): New.
10735         (record_btrace_get_cpu): New.
10736         (require_btrace_thread, record_btrace_info)
10737         (record_btrace_resume_thread): Call record_btrace_get_cpu.
10738         (cmd_set_record_btrace_cpu_none): New.
10739         (cmd_set_record_btrace_cpu_auto): New.
10740         (cmd_set_record_btrace_cpu): New.
10741         (cmd_show_record_btrace_cpu): New.
10742         (_initialize_record_btrace): Initialize set/show record btrace cpu
10743         commands.
10744         * record-btrace.h (record_btrace_get_cpu): New.
10745
10746 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10747
10748         * record.c (set_record_command): Fix typo in message.
10749
10750 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10751
10752         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
10753
10754 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10755
10756         * infrun.c (process_event_stop_test): Call
10757         gdbarch_in_indirect_branch_thunk.
10758         * gdbarch.sh (in_indirect_branch_thunk): New.
10759         * gdbarch.c: Regenerated.
10760         * gdbarch.h: Regenerated.
10761         * x86-tdep.h: New.
10762         * x86-tdep.c: New.
10763         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
10764         (HFILES_NO_SRCDIR): Add x86-tdep.h.
10765         (ALLDEPFILES): Add x86-tdep.c.
10766         * arch-utils.h (default_in_indirect_branch_thunk): New.
10767         * arch-utils.c (default_in_indirect_branch_thunk): New.
10768         * i386-tdep: Include x86-tdep.h.
10769         (i386_in_indirect_branch_thunk): New.
10770         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
10771         function.
10772         * amd64-tdep: Include x86-tdep.h.
10773         (amd64_in_indirect_branch_thunk): New.
10774         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
10775
10776 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
10777
10778         PR gdb/23053
10779         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
10780         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
10781         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
10782         regression.
10783
10784 2018-04-12  Tom Tromey  <tom@tromey.com>
10785
10786         * rust-lang.c (rust_print_struct_def): Remove univariant code.
10787         (rust_evaluate_subexp): Likewise.
10788
10789 2018-04-12  Pedro Alves  <palves@redhat.com>
10790
10791         * procfs.c (procfs_detach): Make forward declaration's prototype
10792         match definition's protototype.
10793         (proc_get_LDT_entry): Remove stale do_cleanups call.
10794
10795 2018-04-12  Pedro Alves  <palves@redhat.com>
10796
10797         * target.h (target_ops::to_has_exited): Delete.
10798         (target_has_exited): Delete.
10799         * target-delegates.c: Regenerate.
10800
10801 2018-04-11  Pedro Alves  <palves@redhat.com>
10802
10803         * target.c (fileio_fh_t::t): Add comment.
10804         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10805         (target_fileio_close): Handle a NULL target.
10806         (invalidate_fileio_fh): New.
10807         (target_close): Call it.
10808         * remote.c (remote_hostio_send_command): No longer check whether
10809         remote_desc is open.
10810
10811 2018-04-11  Pedro Alves  <palves@redhat.com>
10812
10813         * target.c (fileio_fh_t): Make it a named struct instead of a
10814         typedef.
10815         (fileio_fh_t::is_closed): New method.
10816         (DEF_VEC_O (fileio_fh_t)): Remove.
10817         (fileio_fhandles): Now a std::vector.
10818         (is_closed_fileio_fh): Delete.
10819         (acquire_fileio_fd): Adjust.  Rename parameters.
10820         (release_fileio_fd): Adjust.
10821         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
10822         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10823         (target_fileio_close): Adjust.
10824
10825 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
10826
10827         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
10828         index.
10829
10830 2018-04-10  Pedro Alves  <palves@redhat.com>
10831
10832         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
10833         (scoped_finish_thread_state): New class.
10834         * infcmd.c (run_command_1): Use it instead of finish_thread_state
10835         cleanup.
10836         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
10837         (fetch_inferior_event, normal_stop): Likewise.
10838         * thread.c (finish_thread_state_cleanup): Delete.
10839
10840 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10841             Pedro Alves  <palves@redhat.com>
10842
10843         * value.c: Include "selftest.h" and "common/array-view.h".
10844         (struct range) <operator ==>: New.
10845         (test_ranges_contain): New.
10846         (check_ranges_vector): New.
10847         (test_insert_into_bit_range_vector): New.
10848         (_initialize_values): Register selftests.
10849         * common/array-view.h (operator==, operator!=): New.
10850
10851 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10852
10853         * common/gdb_vecs.h (unordered_remove): Add overload that takes
10854         an iterator.
10855         * inline-frame.c: Include <algorithm>.
10856         (struct inline_state): Add constructor.
10857         (inline_state_s): Remove.
10858         (DEF_VEC_O(inline_state_s)): Remove.
10859         (inline_states): Change type to std::vector.
10860         (find_inline_frame_state): Adjust to std::vector.
10861         (allocate_inline_frame_state): Remove.
10862         (clear_inline_frame_state): Adjust to std::vector.
10863         (skip_inline_frames): Adjust to std::vector.
10864
10865 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10866
10867         * tracepoint.h (struct trace_state_variable): Add constructor.
10868         <name>: Change type to std::string.
10869         * tracepoint.c (tsv_s): Remove.
10870         (DEF_VEC_O(tsv_s)): Remove.
10871         (tvariables): Change to std::vector.
10872         (create_trace_state_variable): Adjust to std::vector.
10873         (find_trace_state_variable): Likewise.
10874         (find_trace_state_variable_by_number): Likewise.
10875         (delete_trace_state_variable): Likewise.
10876         (trace_variable_command): Adjust to std::string.
10877         (delete_trace_variable_command): Likewise.
10878         (tvariables_info_1): Adjust to std::vector.
10879         (save_trace_state_variables): Likewise.
10880         (start_tracing): Likewise.
10881         (merge_uploaded_trace_state_variables): Adjust to std::vector
10882         and std::string.
10883         * target.h (struct target_ops)
10884         <to_download_trace_state_variable>: Pass reference to
10885         trace_state_variable.
10886         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
10887         * target-delegates.c: Re-generate.
10888         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
10889         (mi_tsv_deleted): Likewise.
10890         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
10891         * remote.c (remote_download_trace_state_variable): Change
10892         pointer to reference and adjust.
10893         * make-target-delegates (parse_argtypes): Handle references.
10894         (write_function_header): Likewise.
10895         (munge_type): Likewise.
10896
10897 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10898
10899         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10900         string_view-selftests.c.
10901         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
10902         testsuite.
10903         * unittests/basic_string_view/cons/char/1.cc: Likewise.
10904         * unittests/basic_string_view/cons/char/2.cc: Likewise.
10905         * unittests/basic_string_view/cons/char/3.cc: Likewise.
10906         * unittests/basic_string_view/element_access/char/1.cc:
10907         Likewise.
10908         * unittests/basic_string_view/element_access/char/empty.cc:
10909         Likewise.
10910         * unittests/basic_string_view/element_access/char/front_back.cc:
10911         Likewise.
10912         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
10913         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
10914         Likewise.
10915         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
10916         Likewise.
10917         * unittests/basic_string_view/modifiers/swap/char/1.cc:
10918         Likewise.
10919         * unittests/basic_string_view/operations/compare/char/1.cc:
10920         Likewise.
10921         * unittests/basic_string_view/operations/compare/char/13650.cc:
10922         Likewise.
10923         * unittests/basic_string_view/operations/copy/char/1.cc:
10924         Likewise.
10925         * unittests/basic_string_view/operations/data/char/1.cc:
10926         Likewise.
10927         * unittests/basic_string_view/operations/find/char/1.cc:
10928         Likewise.
10929         * unittests/basic_string_view/operations/find/char/2.cc:
10930         Likewise.
10931         * unittests/basic_string_view/operations/find/char/3.cc:
10932         Likewise.
10933         * unittests/basic_string_view/operations/find/char/4.cc:
10934         Likewise.
10935         * unittests/basic_string_view/operations/rfind/char/1.cc:
10936         Likewise.
10937         * unittests/basic_string_view/operations/rfind/char/2.cc:
10938         Likewise.
10939         * unittests/basic_string_view/operations/rfind/char/3.cc:
10940         Likewise.
10941         * unittests/basic_string_view/operations/substr/char/1.cc:
10942         Likewise.
10943         * unittests/basic_string_view/operators/char/2.cc: Likewise.
10944         * unittests/string_view-selftests.c: New file.
10945
10946 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10947
10948         * unittests/basic_string_view/capacity/1.cc: New file.
10949         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
10950         * unittests/basic_string_view/cons/char/1.cc: New file.
10951         * unittests/basic_string_view/cons/char/2.cc: New file.
10952         * unittests/basic_string_view/cons/char/3.cc: New file.
10953         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
10954         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
10955         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
10956         * unittests/basic_string_view/element_access/char/1.cc: New file.
10957         * unittests/basic_string_view/element_access/char/2.cc: New file.
10958         * unittests/basic_string_view/element_access/char/empty.cc: New file.
10959         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
10960         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
10961         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
10962         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
10963         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
10964         * unittests/basic_string_view/include.cc: New file.
10965         * unittests/basic_string_view/inserters/char/1.cc: New file.
10966         * unittests/basic_string_view/inserters/char/2.cc: New file.
10967         * unittests/basic_string_view/inserters/char/3.cc: New file.
10968         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
10969         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
10970         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
10971         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
10972         * unittests/basic_string_view/literals/types.cc: New file.
10973         * unittests/basic_string_view/literals/values.cc: New file.
10974         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
10975         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
10976         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
10977         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
10978         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
10979         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
10980         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
10981         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
10982         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
10983         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
10984         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
10985         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
10986         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
10987         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
10988         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
10989         * unittests/basic_string_view/operations/data/char/1.cc: New file.
10990         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
10991         * unittests/basic_string_view/operations/find/char/1.cc: New file.
10992         * unittests/basic_string_view/operations/find/char/2.cc: New file.
10993         * unittests/basic_string_view/operations/find/char/3.cc: New file.
10994         * unittests/basic_string_view/operations/find/char/4.cc: New file.
10995         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
10996         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
10997         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
10998         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
10999         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11000         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11001         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11002         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11003         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11004         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11005         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11006         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11007         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11008         * unittests/basic_string_view/operators/char/2.cc: New file.
11009         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11010         * unittests/basic_string_view/range_access/char/1.cc: New file.
11011         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11012         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11013         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11014         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11015         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11016         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11017         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11018         * unittests/basic_string_view/typedefs.cc: New file.
11019         * unittests/basic_string_view/types/1.cc: New file.
11020
11021 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11022
11023         * common/gdb_string_view.h: Remove libstdc++ implementation
11024         details, adjust to gdb reality.
11025         * common/gdb_string_view.tcc: Likewise.
11026         * cli/cli-script.c (struct string_view): Remove.
11027         (user_args) <m_args>: Change element type to gdb::string_view.
11028         (user_args::insert_args): Adjust.
11029
11030 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11031
11032         * common/gdb_string_view.h: New file.
11033         * common/gdb_string_view.tcc: New file.
11034
11035 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11036
11037         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11038         * configure: Re-generate.
11039
11040 2018-04-09  Pedro Alves  <palves@redhat.com>
11041
11042         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11043         (set_target_gdbarch): Call
11044         gdb::observers::architecture_changed.notify instead of
11045         observer_notify_architecture_changed.
11046
11047 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11048
11049         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11050         (do_restore_current_traceframe_cleanup): Remove.
11051         (restore_current_traceframe_cleanup_dtor): Remove.
11052         (make_cleanup_restore_current_traceframe): Remove.
11053         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11054         New.
11055         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11056         * infrun.c (fetch_inferior_event): Use
11057         scoped_restore_current_traceframe.
11058
11059 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11060
11061         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11062         Remove.
11063         <n_allocated_type_units>: Remove.
11064         <all_type_units>: Change to std::vector.
11065         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11066         to std::vector change.
11067         (dwarf2_per_objfile::get_cutu): Likewise.
11068         (dwarf2_per_objfile::get_tu): Likewise.
11069         (create_signatured_type_table_from_index): Likewise.
11070         (create_signatured_type_table_from_debug_names): Likewise.
11071         (dw2_symtab_iter_next): Likewise.
11072         (dw2_print_stats): Likewise.
11073         (dw2_expand_all_symtabs): Likewise.
11074         (dw2_expand_marked_cus): Likewise.
11075         (dw2_debug_names_iterator::next): Likewise.
11076         (dwarf2_initialize_objfile): Likewise.
11077         (add_signatured_type_cu_to_table): Likewise.
11078         (create_all_type_units): Likewise.
11079         (add_type_unit): Likewise.
11080         (struct tu_abbrev_offset): Add constructor.
11081         (build_type_psymtabs_1): Adjust to std::vector change.
11082         (print_tu_stats): Likewise.
11083         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11084         (write_debug_names): Likewise.
11085
11086 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11087
11088         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11089         Make an std::vector.
11090         <n_comp_units>: Remove.
11091         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11092         to std::vector change.
11093         (dwarf2_per_objfile::get_cutu): Likewise.
11094         (dwarf2_per_objfile::get_cu): Likewise.
11095         (create_cus_from_index): Likewise.
11096         (create_addrmap_from_index): Likewise.
11097         (create_addrmap_from_aranges): Likewise.
11098         (dwarf2_read_index): Likewise.
11099         (dw2_find_last_source_symtab): Likewise.
11100         (dw2_map_symtabs_matching_filename): Likewise.
11101         (dw2_symtab_iter_next): Likewise.
11102         (dw2_print_stats): Likewise.
11103         (dw2_expand_all_symtabs): Likewise.
11104         (dw2_expand_symtabs_with_fullname): Likewise.
11105         (dw2_expand_marked_cus): Likewise.
11106         (dw2_map_symbol_filenames): Likewise.
11107         (create_cus_from_debug_names): Likewise.
11108         (dwarf2_read_debug_names): Likewise.
11109         (dw2_debug_names_iterator::next): Likewise.
11110         (dwarf2_initialize_objfile): Likewise.
11111         (set_partial_user): Likewise.
11112         (dwarf2_build_psymtabs_hard): Likewise.
11113         (read_comp_units_from_section): Remove arguments, adjust to
11114         std::vector change.
11115         (create_all_comp_units): Adjust to std::vector and
11116         read_comp_units_from_section changes.
11117         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11118         change.
11119         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11120         (psyms_seen_size): Likewise.
11121         (write_gdbindex): Likewise.
11122         (write_debug_names): Likewise.
11123
11124 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11125
11126         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11127         with dwarf2_per_objfile.
11128         (create_cus_from_index): Likewise.
11129         (create_signatured_type_table_from_index): Likewise.
11130         (dwarf2_read_index): Likewise.
11131         (dwarf2_initialize_objfile): Likewise.
11132         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11133         per_cu rather than get_dwarf2_per_objfile.
11134
11135 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11136
11137         * dwarf2read.h (struct signatured_type): Forward declare.
11138         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11139         New methods.
11140         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11141         (dw2_get_cutu): ...this.
11142         (dwarf2_per_objfile::get_cu): Rename from...
11143         (dw2_get_cu): ...this.
11144         (dwarf2_per_objfile::get_tu): New.
11145         (create_addrmap_from_index): Adjust.
11146         (create_addrmap_from_aranges): Adjust.
11147         (dw2_find_last_source_symtab): Adjust.
11148         (dw2_map_symtabs_matching_filename): Adjust.
11149         (dw2_symtab_iter_next): Adjust.
11150         (dw2_print_stats): Adjust.
11151         (dw2_expand_all_symtabs): Adjust.
11152         (dw2_expand_symtabs_with_fullname): Adjust.
11153         (dw2_expand_marked_cus): Adjust.
11154         (dw_expand_symtabs_matching_file_matcher): Adjust.
11155         (dw2_map_symbol_filenames): Adjust.
11156         (dw2_debug_names_iterator::next): Adjust.
11157         (dwarf2_initialize_objfile): Adjust.
11158         (set_partial_user): Adjust.
11159         (dwarf2_build_psymtabs_hard): Adjust.
11160
11161 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11162
11163         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11164         Remove unused variables.
11165         (dw2_map_symtabs_matching_filename): Likewise.
11166         (dwarf2_record_block_ranges): Likewise.
11167         (dwarf2_read_addr_index): Likewise.
11168         (follow_die_offset): Likewise.
11169
11170 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11171
11172         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11173         to symbol_file_add_main.
11174
11175 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11176
11177         PR mi/22299
11178         * mi/mi-console.c (do_fputc_async_safe): New.
11179         (mi_console_file::write_async_safe): New.
11180         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11181         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11182         New.
11183         * ui-file.c (ui_file::putstrn): Adjust call to
11184         fputstrn_unfiltered.
11185         * utils.c (printchar): Replace do_fputs and do_fprintf
11186         parameters by do_fputc.
11187         (fputstr_filtered): Adjust call to printchar.
11188         (fputstr_unfiltered): Likewise.
11189         (fputstrn_filtered): Likewise.
11190         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11191         printchar.
11192         * utils.h (do_fputc_ftype): New typedef.
11193         (fputstrn_unfiltered): Add do_fputc parameter.
11194
11195 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11196
11197         * regformats/i386/i386-avx.dat: Remove.
11198
11199 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11200
11201         PR gdb/22979
11202         * amd64-tdep.c (amd64_none_init_abi): New function.
11203         (amd64_x32_none_init_abi): New function.
11204         (_initialize_amd64_tdep): Register handlers for x86-64 and
11205         x64_32 with GDB_OSABI_NONE.
11206         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11207         GDB_OSABI_NONE osabi.
11208
11209 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11210
11211         PR gdb/22980
11212         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11213         GDB_OSABI_NONE.
11214         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11215         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11216
11217 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11218
11219         * common/byte-vector.h (char_vector): New type.
11220         * target.h (target_read_alloc): Return
11221         gdb::optional<byte_vector>.
11222         (target_read_stralloc): Return gdb::optional<char_vector>.
11223         (target_get_osdata): Return gdb::optional<char_vector>.
11224         * target.c (target_read_alloc_1): Templatize.  Replacement
11225         manual memory management with vector.
11226         (target_read_alloc): Change return type, adjust.
11227         (target_read_stralloc): Change return type, adjust.
11228         (target_get_osdata): Change return type, adjust.
11229         * auxv.c (struct auxv_info) <length>: Remove.
11230         <data>: Change type to gdb::optional<byte_vector>.
11231         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11232         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11233         (target_auxv_search): Adjust.
11234         (fprint_target_auxv): Adjust.
11235         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11236         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11237         (linux_make_corefile_notes): Adjust.
11238         * osdata.c (get_osdata): Adjust.
11239         * remote.c (remote_get_threads_with_qxfer): Adjust.
11240         (remote_memory_map): Adjust.
11241         (remote_traceframe_info): Adjust.
11242         (btrace_read_config): Adjust.
11243         (remote_read_btrace): Adjust.
11244         (remote_pid_to_exec_file): Adjust.
11245         * solib-aix.c (solib_aix_get_library_list): Adjust.
11246         * solib-dsbt.c (decode_loadmap): Don't free buf.
11247         (dsbt_get_initial_loadmaps): Adjust.
11248         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11249         * solib-target.c (solib_target_current_sos): Adjust.
11250         * tracepoint.c (sdata_make_value): Adjust.
11251         * xml-support.c (xinclude_start_include): Adjust.
11252         (xml_fetch_content_from_file): Adjust.
11253         * xml-support.h (xml_fetch_another): Change return type.
11254         (xml_fetch_content_from_file): Change return type.
11255         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11256         * xml-tdesc.c (file_read_description_xml): Adjust.
11257         (fetch_available_features_from_target): Change return type.
11258         (target_fetch_description_xml): Adjust.
11259         (target_read_description_xml): Adjust.
11260
11261 2018-04-06  Tom Tromey  <tom@tromey.com>
11262
11263         * value.c (~value): Update.
11264         (struct value) <contents>: Now unique_xmalloc_ptr.
11265         (value_contents_bits_eq, allocate_value_contents)
11266         (value_contents_raw, value_contents_all_raw)
11267         (value_contents_for_printing, value_contents_for_printing_const)
11268         (set_value_enclosing_type): Update.
11269
11270 2018-04-06  Tom Tromey  <tom@tromey.com>
11271
11272         * value.c (range_s): Remove typedef, VEC.
11273         (struct range): Add operator<.
11274         (range_lessthan): Remove.
11275         (ranges_contain): Change type.
11276         (~value): Update.
11277         (struct value) <unavailable, optimized_out>: Now std::vector.
11278         (value_entirely_available)
11279         (value_entirely_covered_by_range_vector)
11280         (value_entirely_unavailable, value_entirely_optimized_out):
11281         Update.
11282         (insert_into_bit_range_vector): Change argument type.
11283         (find_first_range_overlap): Likewise.
11284         (struct ranges_and_idx, value_contents_bits_eq)
11285         (require_not_optimized_out, require_available): Update.
11286         (ranges_copy_adjusted): Change argument types.
11287         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11288
11289 2018-04-06  Tom Tromey  <tom@tromey.com>
11290
11291         * value.c (~value): Update.
11292         (struct value) <parent>: Now a value_ref_ptr.
11293         (value_parent, set_value_parent, value_address, value_copy):
11294         Update.
11295
11296 2018-04-06  Tom Tromey  <tom@tromey.com>
11297
11298         * value.c (struct value): Add constructor, destructor, and member
11299         initializers.
11300         (allocate_value_lazy, value_decref): Update.
11301
11302 2018-04-06  Tom Tromey  <tom@tromey.com>
11303
11304         * value.c (struct value) <released, next>: Remove.
11305         (all_values): Now a std::vector.
11306         (allocate_value_lazy): Update.
11307         (value_next): Remove.
11308         (value_mark, value_free_to_mark, release_value)
11309         (value_release_to_mark): Update.
11310
11311 2018-04-06  Tom Tromey  <tom@tromey.com>
11312
11313         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11314         (free_value_chain): Remove.
11315         * value.c (free_value_chain): Remove.
11316         (value_release_to_mark): Return a std::vector.
11317         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11318         std::vector.
11319         (check_condition): Update.
11320         * eval.c (fetch_subexp_value): Change "val_chain" to a
11321         std::vector.
11322         * breakpoint.c (update_watchpoint): Update.
11323         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11324
11325 2018-04-06  Tom Tromey  <tom@tromey.com>
11326
11327         * value.h (free_all_values): Remove.
11328         * value.c (free_all_values): Remove.
11329
11330 2018-04-06  Tom Tromey  <tom@tromey.com>
11331
11332         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11333         (value_history_chain, value_history_count): Remove.
11334         (value_history): New global.
11335         (record_latest_value, access_value_history, show_values)
11336         (preserve_values): Update.
11337
11338 2018-04-06  Tom Tromey  <tom@tromey.com>
11339
11340         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11341         * varobj.c (varobj_set_display_format, varobj_set_value)
11342         (install_default_visualizer, construct_visualizer)
11343         (install_new_value, ~varobj, varobj_get_value_type)
11344         (my_value_of_variable, varobj_editable_p): Update.
11345         * c-varobj.c (c_describe_child, c_value_of_variable)
11346         (cplus_number_of_children, cplus_describe_child): Update.
11347         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11348         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11349         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11350
11351 2018-04-06  Tom Tromey  <tom@tromey.com>
11352
11353         * printcmd.c (last_examine_address): Change type to
11354         value_ref_ptr.
11355         (do_examine, x_command): Update.
11356
11357 2018-04-06  Tom Tromey  <tom@tromey.com>
11358
11359         * value.c (release_value): Update.
11360         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11361         (struct bpstats) <val>: Now a value_ref_ptr.
11362         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11363         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11364         (~watchpoint, print_it_watchpoint, watch_command_1)
11365         (invalidate_bp_value_on_memory_change): Update.
11366
11367 2018-04-06  Tom Tromey  <tom@tromey.com>
11368
11369         * varobj.c (varobj_clear_saved_item)
11370         (update_dynamic_varobj_children, install_new_value, ~varobj):
11371         Update.
11372         * value.h (value_incref): Move declaration earlier.
11373         (value_decref): Rename from value_free.
11374         (struct value_ref_policy): New.
11375         (value_ref_ptr): New typedef.
11376         (struct value_deleter): Remove.
11377         (gdb_value_up): Remove typedef.
11378         (release_value): Change return type.
11379         (release_value_or_incref): Remove.
11380         * value.c (set_value_parent): Update.
11381         (value_incref): Change return type.
11382         (value_decref): Rename from value_free.
11383         (value_free_to_mark, free_all_values, free_value_chain): Update.
11384         (release_value): Return value_ref_ptr.
11385         (release_value_or_incref): Remove.
11386         (record_latest_value, set_internalvar, clear_internalvar):
11387         Update.
11388         * stack.c (info_frame_command): Don't call value_free.
11389         * python/py-value.c (valpy_dealloc, valpy_new)
11390         (value_to_value_object): Update.
11391         * printcmd.c (do_examine): Update.
11392         * opencl-lang.c (lval_func_free_closure): Update.
11393         * mi/mi-main.c (register_changed_p): Don't call value_free.
11394         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11395         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11396         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11397         value_free.
11398         * guile/scm-value.c (vlscm_free_value_smob)
11399         (vlscm_scm_from_value): Update.
11400         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11401         (frame_unwind_register_unsigned, get_frame_register_bytes)
11402         (put_frame_register_bytes): Don't call value_free.
11403         * findvar.c (address_from_register): Don't call value_free.
11404         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11405         * dwarf2loc.c (entry_data_value_free_closure)
11406         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11407         (dwarf2_evaluate_loc_desc_full): Update.
11408         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11409         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11410         (~watchpoint, watch_command_1)
11411         (invalidate_bp_value_on_memory_change): Update.
11412         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11413
11414 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11415
11416         PR gdb/23022
11417         * warning.m4: Add -Wno-error=deprecated-register.
11418         * configure: Re-generate.
11419
11420 2018-04-05  Tom Tromey  <tom@tromey.com>
11421
11422         * linespec.h: Remove include of "vec.h".
11423
11424 2018-04-05  Tom Tromey  <tom@tromey.com>
11425
11426         * linespec.c (typep): Remove typedef.
11427         (find_methods, find_superclass_methods): Take a std::vector.
11428         (find_method): Use std::vector.
11429
11430 2018-04-05  Tom Tromey  <tom@tromey.com>
11431
11432         * utils.c (compare_strings): Remove.
11433         * utils.h (compare_strings): Remove.
11434         * objc-lang.h (find_imps): Update.
11435         * objc-lang.c (find_methods): Take a std::vector.
11436         (uniquify_strings, find_imps): Likewise.
11437         * linespec.c (find_methods): Take a std::vector.
11438         (decode_objc): Use std::vector.
11439         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11440         a std::vector.
11441         (find_method, find_function_symbols): Use std::vector.
11442
11443 2018-04-05  Tom Tromey  <tom@tromey.com>
11444
11445         * completer.c (completion_tracker::completion_tracker): Remove
11446         cast.
11447         (completion_tracker::discard_completions): Likewise.
11448         * breakpoint.c (ambiguous_names_p): Remove cast.
11449         * ada-lang.c (_initialize_ada_language): Remove cast.
11450         * utils.h (streq): Update.
11451         (streq_hash): Add new declaration.
11452         * utils.c (streq): Return bool.
11453         (streq_hash): New function.
11454
11455 2018-04-05  Tom Tromey  <tom@tromey.com>
11456
11457         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11458         Remove a string copy.
11459
11460 2018-04-05  Tom Tromey  <tom@tromey.com>
11461
11462         * linespec.c (filter_results): Use std::vector.
11463         (decode_line_2, decode_line_full): Update.
11464
11465 2018-04-05  Tom Tromey  <tom@tromey.com>
11466
11467         * linespec.c (canonical_to_fullform): Return std::string.
11468         (filter_results): Update.
11469         (struct decode_line_2_item): Add constructor.
11470         <fullform, displayform>: Now std::string.
11471         (decode_line_2_compare_items): Now a std::sort comparator.
11472         (decode_line_2): Update.
11473
11474 2018-04-05  Tom Tromey  <tom@tromey.com>
11475
11476         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11477         (unexpected_linespec_error): Update.
11478         (linespec_parse_basic, parse_linespec): Update.
11479
11480 2018-04-05  Tom Tromey  <tom@tromey.com>
11481
11482         * linespec.c (linespec_parse_basic): Reindent.
11483
11484 2018-04-05  Tom Tromey  <tom@tromey.com>
11485
11486         * minsyms.h (iterate_over_minimal_symbols): Update.
11487         * minsyms.c (iterate_over_minimal_symbols): Take a
11488         gdb::function_view.
11489         * linespec.c (struct collect_minsyms): Remove.
11490         (compare_msyms): Now a std::sort comparator.
11491         (add_minsym): Add parameters.
11492         (search_minsyms_for_name): Update.  Use std::vector.
11493
11494 2018-04-03  Tom Tromey  <tom@tromey.com>
11495
11496         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11497         gdb::byte_vector.
11498
11499 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11500
11501         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11502
11503 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11504
11505         PR gdb/16959
11506         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11507         printing static type.
11508
11509 2018-04-01  Tom Tromey  <tom@tromey.com>
11510
11511         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11512         (rs6000_xfer_shared_libraries): Update.
11513
11514 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11515
11516         * common/gdb_vecs.h (char_ptr): Remove.
11517         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11518
11519 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11520
11521         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11522         with std::vector.
11523         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11524
11525 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11526
11527         * tracepoint.h (struct uploaded_tp): Initialize fields.
11528         <actions, step_actions, cmd_strings>: Change type to
11529         std::vector<char *>.
11530         * tracepoint.c (get_uploaded_tp): Allocate with new.
11531         (free_uploaded_tps): Free with delete.
11532         (parse_tracepoint_definition): Adjust to std::vector change.
11533         * breakpoint.c (read_uploaded_action): Likewise.
11534         (create_tracepoint_from_upload): Likewise.
11535         * ctf.c (ctf_write_uploaded_tp): Likewise.
11536         (SET_ARRAY_FIELD): Likewise.
11537         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11538
11539 2018-03-30  Tom Tromey  <tom@tromey.com>
11540
11541         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11542         std::unique_ptr.
11543         (svr4_keep_data_in_core): Update.
11544         (svr4_read_so_list): Update.
11545
11546 2018-03-30  Tom Tromey  <tom@tromey.com>
11547
11548         * windows-nat.c (handle_output_debug_string, handle_exception):
11549         Update.
11550         * target.h (target_read_string): Update.
11551         * target.c (target_read_string): Change "string" to
11552         unique_xmalloc_ptr.
11553         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11554         Update.
11555         * solib-frv.c (frv_current_sos): Update.
11556         * solib-dsbt.c (dsbt_current_sos): Update.
11557         * solib-darwin.c (darwin_current_sos): Update.
11558         * linux-thread-db.c (inferior_has_bug): Update.
11559         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11560         Update.  Remove alloca.
11561         * ada-lang.c (ada_main_name): Update.
11562
11563 2018-03-30  Tom Tromey  <tom@tromey.com>
11564
11565         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11566         (struct dwo_file_deleter): New.
11567         (dwo_file_up): New typedef.
11568         (open_and_init_dwo_file): Use dwo_file_up.
11569         (free_dwo_file_cleanup): Remove.
11570
11571 2018-03-30  Tom Tromey  <tom@tromey.com>
11572
11573         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
11574         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
11575
11576 2018-03-30  Tom Tromey  <tom@tromey.com>
11577
11578         * dwarf2read.c (class free_cached_comp_units): New class.
11579         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
11580         (free_cached_comp_units): Remove function.
11581
11582 2018-03-30  Tom Tromey  <tom@tromey.com>
11583
11584         * utils.h (make_cleanup_unpush_target): Remove.
11585         * inf-ptrace.c (struct target_unpusher): New.
11586         (target_unpush_up) New typedef.
11587         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
11588         target_unpush_up.
11589         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
11590
11591 2018-03-27  Tom Tromey  <tom@tromey.com>
11592
11593         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
11594
11595 2018-03-27  Pedro Alves  <palves@redhat.com>
11596             Tom Tromey  <tom@tromey.com>
11597
11598         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
11599         destructor.  Now a class.
11600         (gdb_readline_wrapper_cleanup): Remove function.
11601         (gdb_readline_wrapper): Remove cleanups.
11602
11603 2018-03-27  Tom Tromey  <tom@tromey.com>
11604
11605         * typeprint.h (struct type_print_options) <local_typedefs,
11606         global_typedefs>: Remove "struct" keyword.
11607         (class typedef_hash_table): New class.
11608         (recursively_update_typedef_hash, add_template_parameters)
11609         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
11610         (find_typedef_in_hash): Don't declare.
11611         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
11612         (typedef_hash_table::recursively_update): Rename from
11613         recursively_update_typedef_hash.  Now a member.
11614         (typedef_hash_table::add_template_parameters): Rename from
11615         add_template_parameters.  Now a member.
11616         (typedef_hash_table::typedef_hash_table): Now a constructor;
11617         rename from create_typedef_hash.
11618         (typedef_hash_table::~typedef_hash_table): Now a destructor;
11619         rename from free_typedef_hash.
11620         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
11621         (do_free_global_table): Remove.
11622         (typedef_hash_table::typedef_hash_table): New constructor; renamed
11623         from copy_type_recursive.
11624         (create_global_typedef_table): Remove.
11625         (typedef_hash_table::find_global_typedef): Now a member of
11626         typedef_hash_table.
11627         (typedef_hash_table::find_typedef): Rename from
11628         find_typedef_in_hash; now a member.
11629         (whatis_exp): Update.
11630         * extension.h (struct ext_lang_type_printers): Add constructor and
11631         destructor.
11632         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
11633         declare.
11634         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
11635         Now a constructor; rename from start_ext_lang_type_printers.
11636         (ext_lang_type_printers): Now a destructor; rename from
11637         free_ext_lang_type_printers.
11638         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
11639         Update.
11640         (c_type_print_base_struct_union): Update.  Remove cleanups.
11641
11642 2018-03-27  Tom Tromey  <tom@tromey.com>
11643
11644         * dwarf-index-write.c: Include <cmath>.
11645
11646 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11647
11648         * NEWS: Add entry describing new "set|show varsize-limit" command.
11649         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
11650         command.
11651         * printcmd.c (_initialize_printcmd): Add "set var" alias of
11652         "set variable".
11653
11654 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
11655
11656         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
11657         dwarf-index-write.c
11658         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
11659         * dwarf-index-common.c: New file.
11660         * dwarf-index-common.h: New file.
11661         * dwarf-index-write.c: New file.
11662         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
11663         (struct dwarf2_section_info): Move from here.
11664         (dwarf2_section_info_def): Likewise.
11665         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
11666         (offset_type): Likewise.
11667         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
11668         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
11669         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
11670         (byte_swap): Likewise.
11671         (MAYBE_SWAP): Likewise.
11672         (dwarf2_per_cu_ptr): Likewise.
11673         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
11674         (struct tu_stats): Likewise.
11675         (struct dwarf2_per_objfile): Likewise.
11676         (struct dwarf2_per_cu_data): Likewise.
11677         (struct signatured_type): Likewise.
11678         (sig_type_ptr): Likewise.
11679         (DEF_VEC_P (sig_type_ptr)): Likewise.
11680         (INDEX4_SUFFIX): Likewise.
11681         (INDEX5_SUFFIX): Likewise.
11682         (DEBUG_STR_SUFFIX): Likewise.
11683         (dwarf2_read_section): Make non-static.
11684         (mapped_index_string_hash): Move from here.
11685         (dwarf5_djb_hash): Likewise.
11686         (file_write): Likewise.
11687         (class data_buf): Likewise.
11688         (struct symtab_index_entry): Likewise.
11689         (struct mapped_symtab): Likewise.
11690         (find_slot): Likewise.
11691         (hash_expand): Likewise.
11692         (add_index_entry): Likewise.
11693         (uniquify_cu_indices): Likewise.
11694         (class c_str_view): Likewise.
11695         (class c_str_view_hasher): Likewise.
11696         (class vector_hasher): Likewise.
11697         (write_hash_table): Likewise.
11698         (psym_index_map): Likewise.
11699         (struct addrmap_index_data): Likewise.
11700         (add_address_entry): Likewise.
11701         (add_address_entry_worker): Likewise.
11702         (write_address_map): Likewise.
11703         (symbol_kind): Likewise.
11704         (write_psymbols): Likewise.
11705         (struct signatured_type_index_data): Likewise.
11706         (write_one_signatured_type): Likewise.
11707         (recursively_count_psymbols): Likewise.
11708         (recursively_write_psymbols): Likewise.
11709         (class debug_names): Likewise.
11710         (check_dwarf64_offsets): Likewise.
11711         (psyms_seen_size): Likewise.
11712         (write_gdbindex): Likewise.
11713         (write_debug_names): Likewise.
11714         (assert_file_size): Likewise.
11715         (write_psymtabs_to_index): Likewise.
11716         (save_gdb_index_command): Likewise.
11717         (_initialize_dwarf2_read): Don't register the "save gdb-index"
11718         command.
11719         * dwarf2read.h: New file.
11720
11721 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11722
11723         PR gdb/22670
11724         * dwarf2read.c (dwarf2_physname): Do not return the demangled
11725         symbol name if the CU's language stores symbol names in linkage
11726         format.
11727         * language.h (struct language_defn)
11728         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
11729         all instances of this struct.
11730
11731 2018-03-26  Tom Tromey  <tom@tromey.com>
11732
11733         * stack.c (backtrace_command_1): Remove verbose code.
11734
11735 2018-03-26  Tom Tromey  <tom@tromey.com>
11736
11737         * python/py-framefilter.c (py_print_type): Don't catch
11738         exceptions.  Return void.
11739         (py_print_value): Likewise.
11740         (py_print_single_arg): Likewise.
11741         (enumerate_args): Don't catch exceptions.
11742         (py_print_args): Likewise.
11743         (py_print_frame): Likewise.
11744         (gdbpy_apply_frame_filter): Catch exceptions here.
11745
11746 2018-03-26  Tom Tromey  <tom@tromey.com>
11747
11748         * stack.c (_initialize_stack): Remove trailing newlines from help
11749         text.  Add "Usage" line to "backtrace" help.
11750
11751 2018-03-26  Tom Tromey  <tom@tromey.com>
11752
11753         PR python/16486:
11754         * python/py-framefilter.c (py_print_args): Call wrap_hint.
11755
11756 2018-03-26  Tom Tromey  <tom@tromey.com>
11757
11758         * python/py-framefilter.c (py_print_single_arg): Return
11759         EXT_LANG_BT_ERROR from catch.
11760
11761 2018-03-26  Tom Tromey  <tom@tromey.com>
11762
11763         PR backtrace/15584:
11764         * stack.c (backtrace_command_1): Move some code into no-filters
11765         "if".
11766
11767 2018-03-26  Tom Tromey  <tom@tromey.com>
11768
11769         * python/py-framefilter.c (throw_quit_or_print_exception): New
11770         function.
11771         (gdbpy_apply_frame_filter): Use it.
11772
11773 2018-03-26  Tom Tromey  <tom@tromey.com>
11774
11775         PR cli/17716:
11776         * python/py-framefilter.c (py_print_type, py_print_value)
11777         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
11778         RETURN_MASK_ERROR.
11779
11780 2018-03-26  Tom Tromey  <tom@tromey.com>
11781
11782         * python/py-framefilter.c (enumerate_args): Use
11783         gdb::unique_xmalloc_ptr.
11784
11785 2018-03-26  Tom Tromey  <tom@tromey.com>
11786
11787         * python/py-framefilter.c (py_print_frame): Return
11788         EXT_LANG_BT_OK.
11789         (gdbpy_apply_frame_filter): Update comment.
11790         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
11791         Remove.
11792         <EXT_LANG_BT_NO_FILTERS>: Change value.
11793
11794 2018-03-26  Tom Tromey  <tom@tromey.com>
11795
11796         PR backtrace/15582:
11797         * stack.c (backtrace_command): Parse "hide" argument.
11798         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
11799         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
11800         constant.
11801
11802 2018-03-26  Tom Tromey  <tom@tromey.com>
11803
11804         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
11805         add "flags".
11806         (backtrace_command): Remove "fulltrace", add "flags".
11807
11808 2018-03-26  Tom Tromey  <tom@tromey.com>
11809
11810         * stack.c (backtrace_command): Rewrite command line parsing.
11811
11812 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11813
11814         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
11815
11816 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11817
11818         * filename-seen-cache.h: Add include guard.
11819
11820 2018-03-26  Keith Seitz  <keiths@redhat.com>
11821
11822         * symfile.c (place_section): Remove "struct" from section_addr_info
11823         in comment.
11824         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
11825         "struct" keyword from section_addr_info.
11826
11827 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
11828
11829         * regformats/regdef.h (reg): Add constructors.
11830
11831 2018-03-25  Pedro Alves  <palves@redhat.com>
11832
11833         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
11834         if then/else bodies in var_func_name extraction.
11835
11836 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
11837
11838         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
11839         lookup_minimal_symbol() to find symbol entry.
11840         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
11841
11842 2018-03-23  Keith Seitz  <keiths@redhat.com>
11843
11844         PR c++/22968
11845         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
11846         nested type definitions for C++, too.
11847
11848 2018-03-23  Tom Tromey  <tom@tromey.com>
11849
11850         * machoread.c (struct oso_el): Add a constructor.  Don't define as
11851         a typedef.
11852         (macho_register_oso): Remove.
11853         (macho_symtab_read): Take a std::vector.
11854         (oso_el_compare_name): Now a std::sort comparator.
11855         (macho_symfile_read_all_oso): Take a std::vector.
11856         (macho_symfile_read): Use std::vector.  Remove cleanups.
11857
11858 2018-03-22  Tom Tromey  <tom@tromey.com>
11859
11860         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
11861         (record_full_goto_bookmark): Use std::string.
11862
11863 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11864
11865         PR tdep/18295
11866         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
11867         a single mask.
11868
11869 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11870
11871         * rs6000-tdep.c (store_insn_p): New function.
11872         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
11873         and cr_reg to their unshifted values. Use store_insn_p to
11874         match LR saves using either R1 or fdata->alloca_reg. Use
11875         store_insn_p to match CR saves. Set alloca_reg_offset
11876         when alloca_reg and framep are set. Remove lr_reg shift
11877         when assigning to fdata->lr_register.
11878
11879 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11880
11881         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
11882         command line args instead of emitting a warning.
11883
11884 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11885
11886         * tracepoint.h (struct static_tracepoint_marker): Initialize
11887         fields, define default constructor, move constructor and move
11888         assignment, disable the rest.
11889         <str_id, extra>: Make std::string.
11890         (release_static_tracepoint_marker): Remove.
11891         (free_current_marker): Remove.
11892         * tracepoint.c (free_current_marker): Remove.
11893         (parse_static_tracepoint_marker_definition): Adjust to
11894         std::string, use new hex2str overload.
11895         (release_static_tracepoint_marker): Remove.
11896         (print_one_static_tracepoint_marker): Get marker by reference
11897         and adjust to std::string.
11898         (info_static_tracepoint_markers_command): Adjust to std::vector
11899         changes
11900         * target.h (static_tracepoint_marker_p): Remove typedef.
11901         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
11902         (struct target_ops) <to_static_tracepoint_marker_at>: Return
11903         bool.
11904         <to_static_tracepoint_markers_by_strid>: Return std::vector.
11905         * target-debug.h
11906         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
11907         (target_debug_print_std_vector_static_tracepoint_marker): New.
11908         (target_debug_print_struct_static_tracepoint_marker_p): Rename
11909         to...
11910         (target_debug_print_static_tracepoint_marker_p): ... this.
11911         * target-delegates.c: Re-generate.
11912         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
11913         Make std::string.
11914         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
11915         (decode_static_tracepoint_spec): Adjust to std::vector.
11916         (tracepoint_print_one_detail): Adjust to std::string.
11917         (strace_marker_decode_location): Adjust to std::string.
11918         (update_static_tracepoint): Adjust to std::string, remove call
11919         to release_static_tracepoint_marker.
11920         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
11921         Adjust to std::vector.
11922         * remote.c (remote_static_tracepoint_marker_at): Return bool.
11923         (remote_static_tracepoint_markers_by_strid): Adjust to
11924         std::vector.
11925         * common/rsp-low.h (hex2str): New overload with explicit count
11926         of bytes.
11927         * common/rsp-low.c (hex2str): New overload with explicit count
11928         of bytes.
11929         * unittests/rsp-low-selftests.c (test_hex2str): New function.
11930         (_initialize_rsp_low_selftests): Add test_hex2str test.
11931         * unittests/tracepoint-selftests.c
11932         (test_parse_static_tracepoint_marker_definition): Adjust to
11933         std::string.
11934
11935 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11936
11937         * tracepoint.c (parse_static_tracepoint_marker_definition):
11938         Consider case where the definition is followed by more
11939         definitions.
11940         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11941         tracepoint-selftests.c.
11942         * unittests/tracepoint-selftests.c: New.
11943
11944 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11945
11946         * MAINTAINERS (Write After Approval): Add Pedro Franco de
11947         Carvalho.
11948
11949 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11950
11951         * symtab.c (find_pc_sect_line): fixed indentation.
11952
11953 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11954
11955         * symtab.c (find_pc_sect_line): now uses binary search.
11956
11957 2018-03-19  Tom Tromey  <tom@tromey.com>
11958
11959         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
11960         "IDENT" production.
11961
11962 2018-03-19  Pedro Alves  <palves@redhat.com>
11963             Tom Tromey  <tom@tromey.com>
11964
11965         * unittests/observable-selftests.c: New file.
11966         * common/observable.h: New file.
11967         * observable.h: New file.
11968         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
11969         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
11970         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
11971         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
11972         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
11973         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
11974         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
11975         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
11976         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
11977         python/py-breakpoint.c, python/py-finishbreakpoint.c,
11978         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
11979         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
11980         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
11981         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
11982         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
11983         tui/tui-interp.c, valops.c: Update all users.
11984         * tui/tui-hooks.c (tui_bp_created_observer)
11985         (tui_bp_deleted_observer, tui_bp_modified_observer)
11986         (tui_inferior_exit_observer, tui_before_prompt_observer)
11987         (tui_normal_stop_observer, tui_register_changed_observer):
11988         Remove.
11989         (tui_observers_token): New global.
11990         (attach_or_detach, tui_attach_detach_observers): New functions.
11991         (tui_install_hooks, tui_remove_hooks): Use
11992         tui_attach_detach_observers.
11993         * record-btrace.c (record_btrace_thread_observer): Remove.
11994         (record_btrace_thread_observer_token): New global.
11995         * observer.sh: Remove.
11996         * observer.c: Rename to observable.c.
11997         * observable.c (namespace gdb_observers): Define new objects.
11998         (observer_debug): Move into gdb_observers namespace.
11999         (struct observer, struct observer_list, xalloc_observer_list_node)
12000         (xfree_observer_list_node, generic_observer_attach)
12001         (generic_observer_detach, generic_observer_notify): Remove.
12002         (_initialize_observer): Update.
12003         Don't include observer.inc.
12004         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12005         (clean mostlyclean): Likewise.
12006         (observer.h, observer.inc): Remove targets.
12007         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12008         (COMMON_SFILES): Use observable.c, not observer.c.
12009         * .gitignore: Remove observer.h.
12010
12011 2018-03-18  Tom Tromey  <tom@tromey.com>
12012
12013         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12014         gdb::def_vector.
12015         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12016
12017 2018-03-17  Tom Tromey  <tom@tromey.com>
12018
12019         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12020
12021 2018-03-17  Tom Tromey  <tom@tromey.com>
12022
12023         * target.c (class scoped_target_fd): New.
12024         (target_fileio_close_cleanup): Remove.
12025         (target_fileio_read_alloc_1): Use scoped_target_fd.
12026
12027 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12028
12029         * silent-rules.mk: New.
12030         * Makefile.in: Include silent-rules.mk
12031         (srcdir, VPATH, top_srcdir): Move up.
12032         (COMPILE): Add ECHO_CXX.
12033         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12034         (init.c): Add ECHO_INIT_C.
12035         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12036         (version.c): Add ECHO_GEN.
12037         (printcmd.o): Add ECHO_CXX.
12038         (target-float.o): Add ECHO_CXX.
12039         (ada-exp.o): Add ECHO_CXX.
12040         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12041         (insight$(EXEEXT)): Add ECHO_CXXLD.
12042         * gnulib/configure.ac: Add AM_SILENT_RULES.
12043         * gnulib/aclocal.m4: Re-generate.
12044         * gnulib/configure: Re-generate.
12045         * gnulib/import/Makefile.in: Re-generate.
12046
12047 2018-03-16  Tom Tromey  <tom@tromey.com>
12048
12049         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12050         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12051         * utils.c (do_free_section_addr_info)
12052         (make_cleanup_free_section_addr_info): Remove.
12053         * symfile.h (struct other_sections): Add constructor.
12054         (struct section_addr_info): Remove.
12055         (section_addr_info): New typedef.
12056         (struct sym_fns) <sym_offsets>: Change type of parameter.
12057         (build_section_addr_info_from_objfile)
12058         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12059         (default_symfile_offsets, symbol_file_add)
12060         (symbol_file_add_from_bfd)
12061         (build_section_addr_info_from_section_table): Update.
12062         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12063         * symfile.c (alloc_section_addr_info): Remove.
12064         (build_section_addr_info_from_section_table): Change return type.
12065         Update.
12066         (build_section_addr_info_from_bfd)
12067         (build_section_addr_info_from_objfile): Likewise.
12068         (free_section_addr_info): Remove.
12069         (relative_addr_info_to_section_offsets): Change type of "addrs".
12070         (addrs_section_compar): Now a std::sort comparator.
12071         (addrs_section_sort): Change return type.
12072         (addr_info_make_relative): Change type of "addrs".  Update.
12073         (default_symfile_offsets, syms_from_objfile_1)
12074         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12075         (symbol_file_add_separate): Update.
12076         (symbol_file_add): Change type of "addrs".  Update.
12077         (add_symbol_file_command): Update.  Remove cleanups.
12078         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12079         cleanups.
12080         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12081         * solib.c (solib_read_symbols): Update.
12082         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12083         * machoread.c (macho_symfile_offsets): Update.
12084         * jit.c (jit_bfd_try_read_symtab): Update.
12085
12086 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12087
12088         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12089         unittests/utils-selftests.c.
12090         * unittests/utils-selftests.c: New file.
12091
12092 2018-03-14  Tom Tromey  <tom@tromey.com>
12093
12094         PR cli/14977:
12095         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12096         for NULL.
12097
12098 2018-03-14  Tom Tromey  <tom@tromey.com>
12099
12100         PR cli/19918:
12101         * printcmd.c (printf_pointer): Allow "-" in format.
12102
12103 2018-03-14  Tom Tromey  <tom@tromey.com>
12104
12105         * printcmd.c (_initialize_printcmd): Add usage to printf.
12106
12107 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12108
12109         * MAINTAINERS: Update my email address.
12110
12111 2018-03-13  Tom Tromey  <tom@tromey.com>
12112
12113         * machoread.c (macho_check_dsym): Change filenamep to a
12114         std::string*.
12115         (macho_symfile_read): Update.
12116         * symfile.c (load_command): Use std::string.
12117
12118 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12119
12120         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12121         to error message string.
12122         (riscv_register_name): Use xsnprintf instead of sprintf.
12123         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12124         internal_error.
12125         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12126         error.
12127         (riscv_push_dummy_call): Likewise.
12128
12129 2018-03-12  Tom Tromey  <tom@tromey.com>
12130
12131         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12132         Use gdb::byte_vector.
12133         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12134
12135 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12136
12137         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12138         parameter type to readable_regcache.
12139         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12140         the declaration.
12141
12142 2018-03-11  Tom Tromey  <tom@tromey.com>
12143
12144         * dwarf2read.c (struct nextfield): Add initializers.
12145         (struct nextfnfield): Remove.
12146         (struct fnfieldlist): Add initializers.  Remove "length" and
12147         "head", use std::vector.
12148         (struct decl_field_list): Remove.
12149         (struct field_info): Add initializers.
12150         <fields, baseclasses>: Now std::vector.
12151         <nbaseclasses, nfnfields, typedef_field_list_count,
12152         nested_types_list_count>: Remove.
12153         (dwarf2_add_field, dwarf2_add_type_defn)
12154         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12155         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12156         (process_structure_scope): Update.
12157
12158 2018-03-11  Tom Tromey  <tom@tromey.com>
12159
12160         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12161         for use by std::sort.
12162         (build_type_psymtabs_1): Use std::vector.
12163
12164 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12165
12166         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12167         and LIBMPFR in the printed configuration.
12168
12169 2018-03-08  Tom Tromey  <tom@tromey.com>
12170
12171         * source.c (get_filename_and_charpos): Use scoped_fd.
12172         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12173         (procfs_pidlist): Likewise.
12174         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12175         (iterate_over_mappings): Likewise.
12176
12177 2018-03-08  Tom Tromey  <tom@tromey.com>
12178
12179         * infcall.c (struct call_return_meta_info)
12180         <stack_temporaries_enabled>: Remove.
12181         (get_call_return_value, call_function_by_hand_dummy): Update.
12182         * thread.c (disable_thread_stack_temporaries): Remove.
12183         (enable_thread_stack_temporaries): Remove.
12184         (thread_stack_temporaries_enabled_p): Return bool.
12185         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12186         (get_last_thread_stack_temporary): Update.
12187         * eval.c (evaluate_subexp): Update.
12188         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12189         class, not a function.
12190         (value_ptr, value_vec): Remove typedefs.
12191         (class thread_info) <stack_temporaries_enabled>: Now bool.
12192         <stack_temporaries>: Now a std::vector.
12193         (thread_stack_temporaries_enabled_p)
12194         (value_in_thread_stack_temporaries): Return bool.
12195
12196 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12197
12198         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12199         (getpkt_or_notif_sane_1): Likewise.
12200
12201 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12202
12203         * build-id.c (build_id_to_debug_bfd): Use std::string.
12204
12205 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12206
12207         * build-id.c (find_separate_debug_file_by_buildid): Return
12208         std::string.
12209         * build-id.h (find_separate_debug_file_by_buildid): Return
12210         std::string.
12211         * coffread.c (coff_symfile_read): Adjust to std::string.
12212         * elfread.c (elf_symfile_read): Adjust to std::string.
12213         * symfile.c (separate_debug_file_exists): Change parameter to
12214         std::string.
12215         (find_separate_debug_file): Return std::string.
12216         (find_separate_debug_file_by_debuglink): Return std::string.
12217         * symfile.h (find_separate_debug_file_by_debuglink): Return
12218         std::string.
12219
12220 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12221
12222         * common/xml-utils.c (xml_escape_text): Move code to...
12223         (xml_escape_text_append): ... this new function.
12224         * common/xml-utils.h (xml_escape_text_append): New declaration.
12225         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12226         New function.
12227         (_initialize_xml_utils): register test_xml_escape_text_append as
12228         a selftest.
12229
12230 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12231
12232         * defs.h: Remove MAX_REGISTER_SIZE.
12233         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12234         asserts.
12235         * python/py-unwind.c (pyuw_sniffer): Likewise.
12236
12237 2018-03-07  Tom Tromey  <tom@tromey.com>
12238
12239         * linux-tdep.c (linux_info_proc): Update.
12240         * target.h (struct target_ops) <to_fileio_readlink>: Return
12241         optional<string>.
12242         (target_fileio_readlink): Return optional<string>.
12243         * remote.c (remote_hostio_readlink): Return optional<string>.
12244         * inf-child.c (inf_child_fileio_readlink): Return
12245         optional<string>.
12246         * target.c (target_fileio_readlink): Return optional<string>.
12247
12248 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12249
12250         * regcache.c (cooked_read_test): Add riscv to the list of
12251         architectures that have a save_reggroup.
12252
12253 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12254
12255         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12256         value is not a dynamic class object.
12257
12258 2018-03-06  Tom Tromey  <tom@tromey.com>
12259
12260         * rust-exp.y: Formatting fixes.
12261
12262 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12263
12264         * riscv-tdep.c (riscv_register_name): Remove target description
12265         support.
12266         (riscv_gdbarch_init): Remove target description check.
12267
12268 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12269
12270         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12271         comment.
12272         * riscv-tdep.h: Likewise.
12273
12274 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12275
12276         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12277         (riscv_pseudo_register_write): Delete.
12278         (riscv_gdbarch_init): Remove all use of pseudo registers.
12279
12280 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12281
12282         * record-btrace.c (btrace_print_lines): Replace cleanup
12283         parameter with RAII equivalents.
12284         (btrace_insn_history): Replace cleanup with RAII equivalents.
12285         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12286         make_cleanup_ui_out_tuple_begin_end): Remove.
12287         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12288         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12289         make_cleanup_ui_out_list_begin_end): Remove.
12290
12291 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12292
12293         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12294         parameter types to std::vector.  Use bool.
12295         (record_btrace_wait): Replace VEC(tp_t) with
12296         std::vector<thread_info *>.
12297         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12298
12299 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12300
12301         * record-btrace.c (record_btrace_disable_callback): Remove.
12302         (struct scoped_btrace_disable): New.
12303         (record_btrace_open): Use scoped_btrace_disable.
12304
12305 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12306
12307         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12308         reading values from registers.
12309
12310 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12311
12312         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12313         where appropriate.
12314
12315 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12316
12317         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12318         change parameter type.  Use GDB's print functions, and use
12319         core_addr_to_string where appropriate.
12320         (riscv_push_dummy_call): Use core_addr_to_string where
12321         appropriate, update call to riscv_print_arg_location, and reindent
12322         a few lines.
12323         (riscv_return_value): Update call to riscv_print_arg_location.
12324
12325 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12326             Tim Newsome <tim@sifive.com>
12327             Albert Ou <a0u@eecs.berkeley.edu>
12328             Darius Rad <darius@bluespec.com>
12329
12330         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12331         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12332         (ALLDEPFILES): Add riscv-tdep.c
12333         * configure.tgt: Add riscv support.
12334         * riscv-tdep.c: New file.
12335         * riscv-tdep.h: New file.
12336         * NEWS: Mention new target.
12337         * MAINTAINERS: Add entry for riscv.
12338
12339 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12340
12341         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12342         fields within aggregates.
12343
12344 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12345
12346         * record-btrace.c (btrace_print_lines): Change type of flags to
12347         gdb_disassembly_flags.
12348
12349 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12350
12351         * fbsd-nat.c: Include "inf-ptrace.h".
12352         (USE_SIGTRAP_SIGINFO): Conditionally define.
12353         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12354         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12355         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12356         function.
12357         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12358         Likewise.
12359         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12360         Likewise.
12361         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12362         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12363         "supports_stopped_by_hw_breakpoint" target methods.
12364
12365 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12366
12367         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12368         * fbsd-nat.c (debug_fbsd_nat): New variable.
12369         (show_fbsd_nat_debug): New function.
12370         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12371         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12372
12373 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12374
12375         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12376         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12377         prototype.
12378         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12379         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12380         method.
12381
12382 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12383
12384         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12385         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12386
12387 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12388
12389         * charset.c (struct charset_vector): New.
12390         (charsets): Change type to charset_vector.
12391         (find_charset_names): Adjust.
12392         (add_one): Adjust.
12393         (_initialize_charset): Adjust.
12394
12395 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12396
12397         * progspace.h (struct program_space) <deleted_solibs>: Change
12398         type to std::vector<std::string>.
12399         * progspace.c (clear_program_space_solib_cache): Adjust.
12400         * breakpoint.c (print_solib_event): Adjust.
12401         (check_status_catch_solib): Adjust.
12402         * solib.c (update_solib_list): Adjust.
12403         * ui-out.h (class ui_out) <field_string>: New overload.
12404         * ui-out.c (ui_out::field_string): New overload.
12405
12406 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12407
12408         * progspace.h (struct program_space): Add constructor and
12409         destructor, initialize fields.
12410         (add_program_space): Remove.
12411         * progspace.c (add_program_space): Rename to...
12412         (program_space::program_space): ... this.
12413         (release_program_space): Rename to...
12414         (program_space::~program_space): ... this.
12415         (delete_program_space): Use delete to delete program_space.
12416         (initialize_progspace): Use new to allocate program_space.
12417         * inferior.c (add_inferior_with_spaces): Likewise.
12418         (clone_inferior_command): Likewise.
12419         * infrun.c (follow_fork_inferior): Likewise.
12420         (handle_vfork_child_exec_or_exit): Likewise.
12421
12422 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12423
12424         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12425         (delim_string_to_char_ptr_vec): Return std::vector of
12426         gdb::unique_xmalloc_ptr.
12427         (dirnames_to_char_ptr_vec_append): Take std::vector of
12428         gdb::unique_xmalloc_ptr.
12429         (dirnames_to_char_ptr_vec): Return std::vector of
12430         gdb::unique_xmalloc_ptr.
12431         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12432         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12433         (delim_string_to_char_ptr_vec): Return an std::vector of
12434         gdb::unique_xmalloc_ptr, adjust the code.
12435         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12436         gdb::unique_xmalloc_ptr, adjust the code.
12437         (dirnames_to_char_ptr_vec): Return an std::vector of
12438         gdb::unique_xmalloc_ptr, adjust the code.
12439         * auto-load.c (auto_load_safe_path_vec): Change type to
12440         std::vector of gdb::unique_xmalloc_ptr.
12441         (auto_load_expand_dir_vars): Return an std::vector of
12442         gdb::unique_xmalloc_ptr, adjust the code.
12443         (auto_load_safe_path_vec_update): Adjust.
12444         (filename_is_in_auto_load_safe_path_vec): Adjust.
12445         (auto_load_objfile_script_1): Adjust.
12446         * build-id.c (build_id_to_debug_bfd): Adjust.
12447         * linux-thread-db.c (thread_db_load_search): Adjust.
12448         * source.c (add_path): Adjust.
12449         (openp): Adjust.
12450         * symfile.c (find_separate_debug_file): Adjust.
12451         * utils.c (do_free_char_ptr_vec): Remove.
12452         (make_cleanup_free_char_ptr_vec): Remove.
12453
12454 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12455
12456         PR gdb/22907
12457         * common/pathstuff.c: Conditionally include "<windows.h>".
12458
12459 2018-03-01  Georg Sauthoff  <mail@georg.so>
12460
12461         PR gdb/22888
12462         * gcore.in: Quote variables and switch interpreter to bash.
12463
12464 2018-03-01  Tom Tromey  <tom@tromey.com>
12465
12466         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12467         assertion.  Add assertion for discriminant_index.
12468         (quirk_rust_enum): Use correct base type name in univariant case.
12469
12470 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12471
12472         * record.c (get_call_history_modifiers): Return a
12473         record_print_flags.
12474         (cmd_record_call_history): Adjust.
12475         * record-btrace.c (record_btrace_call_history): Adjust.
12476         (record_btrace_call_history_range): Adjust.
12477         (record_btrace_call_history_from): Adjust.
12478         * target-debug.h (target_debug_print_record_print_flags): New.
12479         * target-delegates.c: Re-generate.
12480         * target.c (target_call_history): Change flags type.
12481         (target_call_history_from): Likewise.
12482         (target_call_history_range): Likewise.
12483         * target.h (struct target_ops) <target_call_history>: Likewise.
12484         (target_call_history_from): Likewise.
12485         (target_call_history_range): Likewise.
12486
12487 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12488             Simon Marchi  <simon.marchi@polymtl.ca>
12489
12490         * common/common-utils.c: Include "sys/stat.h".
12491         (is_regular_file): Move here from "source.c"; change return
12492         type to "bool".
12493         * common/common-utils.h (is_regular_file): New prototype.
12494         * common/pathstuff.c (contains_dir_separator): New function.
12495         * common/pathstuff.h (contains_dir_separator): New prototype.
12496         * source.c: Don't include "sys/stat.h".
12497         (is_regular_file): Move to "common/common-utils.c".
12498
12499 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12500
12501         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12502         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12503         * auto-load.c: Include "common/pathstuff.h".
12504         * common/common-def.h (current_directory): Move here.
12505         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12506         function.
12507         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12508         prototype.
12509         * common/pathstuff.c: New file.
12510         * common/pathstuff.h: New file.
12511         * compile/compile.c: Include "common/pathstuff.h".
12512         * defs.h (current_directory): Move to "common/common-defs.h".
12513         * dwarf2read.c: Include "common/pathstuff.h".
12514         * exec.c: Likewise.
12515         * guile/scm-safe-call.c: Likewise.
12516         * linux-thread-db.c: Likewise.
12517         * main.c: Likewise.
12518         * nto-tdep.c: Likewise.
12519         * objfiles.c: Likewise.
12520         * source.c: Likewise.
12521         * symtab.c: Likewise.
12522         * utils.c: Include "common/pathstuff.h".
12523         (gdb_realpath): Move to "common/pathstuff.c".
12524         (gdb_realpath_keepfile): Likewise.
12525         (gdb_abspath): Likewise.
12526         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12527         (gdb_realpath_keepfile): Likewise.
12528         (gdb_abspath): Likewise.
12529
12530 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12531
12532         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12533         wildcard process pid for super_resume for kernels with a
12534         specific bug.
12535
12536 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12537
12538         * compile/compile.c (get_args): Add additional comments
12539         explaining function.
12540
12541 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12542             Tom Tromey  <tom@tromey.com>
12543
12544         * target.h (memory_write_request_s): Remove typedef.  Don't define
12545         VEC.
12546         (target_write_memory_blocks): Change argument to std::vector.
12547         (struct memory_write_request): Add constructor.
12548         * target-memory.c (compare_block_starting_address): Return bool.
12549         Change argument types.
12550         (claim_memory): Change arguments to use std::vector.
12551         (split_regular_and_flash_blocks, blocks_to_erase)
12552         (compute_garbled_blocks): Likewise.
12553         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12554         (target_write_memory_blocks): Change argument to std::vector.
12555         * symfile.c (struct load_section_data): Add constructor and
12556         destructor.  Use std::vector for "requests".
12557         (struct load_progress_data): Add initializers.
12558         (load_section_callback): Update.  Use "new".
12559         (clear_memory_write_data): Remove.
12560         (generic_load): Update.
12561
12562 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12563
12564         * arch/aarch64.h: Use common/tdesc.h.
12565
12566 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12567
12568         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
12569         architecture with a 64-bit ABI.
12570
12571 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12572
12573         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
12574         ahead of target description loading.
12575
12576 2018-02-26  Tom Tromey  <tom@tromey.com>
12577
12578         * stack.c (backtrace_command_1): Update.
12579         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
12580         of "flags".
12581         * python/py-framefilter.c (py_print_frame)
12582         (gdbpy_apply_frame_filter): Change type of "flags".
12583         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
12584         of "flags".
12585         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
12586         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
12587         * extension.h (enum frame_filter_flag): Rename from
12588         frame_filter_flags.
12589         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
12590         (apply_ext_lang_frame_filter): Change type of "flags".
12591         * extension.c (apply_ext_lang_frame_filter): Change type of
12592         "flags".
12593         * extension-priv.h (struct extension_language_ops)
12594         <apply_frame_filter>: Change type of "flags".
12595
12596 2018-02-26  Tom Tromey  <tom@tromey.com>
12597
12598         PR python/16497:
12599         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
12600         off-by-one in py_end computation.
12601         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
12602         PRINT_MORE_FRAMES.
12603         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
12604         constant.
12605
12606 2018-02-26  Tom Tromey  <tom@tromey.com>
12607
12608         * dwarf2read.c (struct variant_field): New.
12609         (struct nextfield) <variant>: New field.
12610         (dwarf2_add_field): Handle DW_TAG_variant_part.
12611         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
12612         discriminated union.
12613         (read_structure_type): Handle DW_TAG_variant_part.
12614         (handle_struct_member_die): New function, extracted from
12615         process_structure_scope.  Handle DW_TAG_variant.
12616         (process_structure_scope): Handle discriminated unions.  Call
12617         handle_struct_member_die.
12618
12619 2018-02-26  Tom Tromey  <tom@tromey.com>
12620
12621         * rust-lang.h (rust_last_path_segment): Declare.
12622         * rust-lang.c (rust_last_path_segment): Now public.  Change
12623         contract.
12624         (struct disr_info): Remove.
12625         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
12626         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
12627         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
12628         (rust_enum_p, rust_enum_variant): New function.
12629         (rust_underscore_fields): Remove "offset" parameter.
12630         (rust_print_enum): New function.
12631         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
12632         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
12633         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
12634         enums.
12635         (rust_internal_print_type): New function, from rust_print_type.
12636         Remove enum code.
12637         (rust_print_type): Call rust_internal_print_type.
12638         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
12639         Update enum handling.
12640         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
12641         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
12642         (rust_union_quirks): New functions.
12643         (process_full_comp_unit, process_full_type_unit): Call
12644         rust_union_quirks.
12645         (process_structure_scope): Update rust_unions if necessary.
12646
12647 2018-02-26  Tom Tromey  <tom@tromey.com>
12648
12649         * value.h (value_union_variant): Declare.
12650         * valops.c (value_union_variant): New function.
12651         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
12652         (struct discriminant_info): New.
12653         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
12654         enumerator.
12655         (struct main_type) <flag_discriminated_union>: New field.
12656
12657 2018-02-26  Tom Tromey  <tom@tromey.com>
12658
12659         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12660         unittests/unpack-selftests.c.
12661         * unittests/unpack-selftests.c: New file.
12662         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
12663
12664 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12665
12666         * dwarf2read.c (struct partial_die_info) <read>: New method.
12667         (read_partial_die): Remove the declaration.
12668         (load_partial_dies): Update.
12669         (partial_die_info::partial_die_info):
12670         (read_partial_die): Change it to partial_die_info::read.
12671
12672 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12673
12674         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
12675         (fixup_partial_die): Remove declaration.
12676         (scan_partial_symbols): Update.
12677         (partial_die_parent_scope): Likewise.
12678         (partial_die_full_name): Likewise.
12679         (fixup_partial_die): Change it to partial_die_info::fixup.
12680
12681 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12682
12683         * dwarf2read.c (read_partial_die): Update the declaration.
12684         (load_partial_dies): Caller update.
12685         (read_partial_die): Remove one argument abbrev_len.
12686
12687 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12688
12689         * dwarf2read.c (struct partial_die_info): Add ctor, delete
12690         assignment operator.
12691         (load_partial_dies): Use ctor and copy ctor.
12692         (read_partial_die): Update.
12693         (dwarf2_cu::find_partial_die): Use ctor.
12694
12695 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12696
12697         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
12698         (find_partial_die_in_comp_unit): Change it to
12699         dwarf2_cu::find_partial_die.
12700         (find_partial_die): Update.
12701
12702 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12703
12704         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
12705         is NULL.
12706
12707 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12708
12709         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
12710
12711 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
12712
12713         * arch/amd64.h: Use common/tdesc.h.
12714         * arch/i386.c: Likewise.
12715         * arch/i386.h: Likewise.
12716         * arch/tic6x.c: Likewise.
12717         * arch/tdesc.h: Move file from here...
12718         * common/tdesc.h: ...to here.
12719         * features/aarch64-core.c: Regenerate.
12720         * features/aarch64-fpu.c: Regenerate.
12721         * features/i386/32bit-avx.c: Regenerate.
12722         * features/i386/32bit-avx512.c: Regenerate.
12723         * features/i386/32bit-core.c: Regenerate.
12724         * features/i386/32bit-linux.c: Regenerate.
12725         * features/i386/32bit-mpx.c: Regenerate.
12726         * features/i386/32bit-pkeys.c: Regenerate.
12727         * features/i386/32bit-sse.c: Regenerate.
12728         * features/i386/64bit-avx.c: Regenerate.
12729         * features/i386/64bit-avx512.c: Regenerate.
12730         * features/i386/64bit-core.c: Regenerate.
12731         * features/i386/64bit-linux.c: Regenerate.
12732         * features/i386/64bit-mpx.c: Regenerate.
12733         * features/i386/64bit-pkeys.c: Regenerate.
12734         * features/i386/64bit-segments.c: Regenerate.
12735         * features/i386/64bit-sse.c: Regenerate.
12736         * features/i386/x32-core.c: Regenerate.
12737         * features/tic6x-c6xp.c: Regenerate.
12738         * features/tic6x-core.c: Regenerate.
12739         * features/tic6x-gp.c: Regenerate.
12740         * target-descriptions.c: Use common/tdesc.h.
12741         * target-descriptions.h: Likewise.
12742
12743 2018-02-24  Tom Tromey  <tom@tromey.com>
12744
12745         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
12746         (try_thread_db_load_from_dir, thread_db_load_search): Use
12747         std::string.
12748         (info_auto_load_libthread_db_compare): Return bool.  Change
12749         argument types.
12750         (info_auto_load_libthread_db): Use std::vector, std::string.
12751         Remove cleanups.
12752
12753 2018-02-24  Tom Tromey  <tom@tromey.com>
12754
12755         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
12756         std::string.
12757         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
12758         std::string*.
12759         * gdbarch.c: Rebuild.
12760         * gdbarch.h: Rebuild.
12761         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
12762         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
12763         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
12764         std::string*.
12765
12766 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
12767
12768         * gdbtypes.h (sect_offset): Change type to uint64_t.
12769         (sect_offset_str): New function.
12770         * dwarf2read.c (create_addrmap_from_aranges): Use
12771         sect_offset_str.
12772         (error_check_comp_unit_head): Likewise.
12773         (create_debug_type_hash_table): Likewise.
12774         (read_cutu_die_from_dwo): Likewise.
12775         (init_cutu_and_read_dies): Likewise.
12776         (init_cutu_and_read_dies_no_follow): Likewise.
12777         (process_psymtab_comp_unit_reader): Likewise.
12778         (partial_die_parent_scope): Likewise.
12779         (peek_die_abbrev): Likewise.
12780         (process_queue): Likewise.
12781         (dwarf2_physname): Likewise.
12782         (read_namespace_alias): Likewise.
12783         (read_import_statement): Likewise.
12784         (create_dwo_cu_reader): Likewise.
12785         (create_cus_hash_table): Likewise.
12786         (lookup_dwo_cutu): Likewise.
12787         (inherit_abstract_dies): Likewise.
12788         (read_func_scope): Likewise.
12789         (read_call_site_scope): Likewise.
12790         (dwarf2_add_member_fn): Likewise.
12791         (read_common_block): Likewise.
12792         (read_module_type): Likewise.
12793         (read_typedef): Likewise.
12794         (read_subrange_type): Likewise.
12795         (load_partial_dies): Likewise.
12796         (read_partial_die): Likewise.
12797         (find_partial_die): Likewise.
12798         (read_str_index): Likewise.
12799         (dwarf2_string_attr): Likewise.
12800         (build_error_marker_type): Likewise.
12801         (lookup_die_type): Likewise.
12802         (dump_die_shallow): Likewise.
12803         (follow_die_ref): Likewise.
12804         (dwarf2_fetch_die_loc_sect_off): Likewise.
12805         (dwarf2_fetch_constant_bytes): Likewise.
12806         (follow_die_sig): Likewise.
12807         (get_signatured_type): Likewise.
12808         (get_DW_AT_signature_type): Likewise.
12809         (dwarf2_find_containing_comp_unit): Likewise.
12810         (set_die_type): Likewise.
12811
12812 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
12813
12814         * arch/aarch64.c: Include "common-defs.h".
12815         * arch/amd64.c: Likewise.
12816         * arch/i386.c: Likewise.
12817
12818 2018-02-21  Tom Tromey  <tom@tromey.com>
12819
12820         * value.h: (extract_field_op): Update.
12821         * eval.c (extract_field_op): Return a const char *.
12822         * expression.h (parse_expression_for_completion): Update.
12823         * completer.c (complete_expression): Update.
12824         (add_struct_fields): Make fieldname const.
12825         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
12826         (mark_completion_tag, parse_exp_in_context_1): Update.
12827         (parse_expression_for_completion): Change "name" to
12828         unique_xmalloc_ptr*.
12829
12830 2018-02-21  Tom Tromey  <tom@tromey.com>
12831
12832         * infcall.c (call_function_by_hand_dummy): Use std::vector.
12833
12834 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12835
12836         * avr-tdep.c (avr_read_pc): Change parameter type to
12837         readable_regcache.
12838         * gdbarch.sh (read_pc): Likewise.
12839         * gdbarch.c: Re-generated.
12840         * gdbarch.h: Re-generated.
12841         * hppa-tdep.c (hppa_read_pc): Change parameter type to
12842         readable_regcache.
12843         * ia64-tdep.c (ia64_read_pc): Likewise.
12844         * mips-tdep.c (mips_read_pc): Likewise.
12845         * spu-tdep.c (spu_read_pc): Likewise.
12846
12847 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12848
12849         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
12850         * regcache-dump.c: New file.
12851         * regcache.c: Move register_dump to regcache-dump.c.
12852         (maintenance_print_registers): Likewise.
12853         (maintenance_print_raw_registers): Likewise.
12854         (maintenance_print_cooked_registers): Likewise.
12855         (maintenance_print_register_groups): Likewise.
12856         (maintenance_print_remote_registers): Likewise.
12857         (_initialize_regcache): Likewise.
12858         * regcache.h (register_dump): Moved from regcache.c.
12859
12860 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12861
12862         * regcache.c (regcache::regcache): Update.
12863         (regcache::invalidate): Move it to detached_regcache::invalidate.
12864         (get_thread_arch_aspace_regcache): Update.
12865         (regcache::raw_update): Update.
12866         (regcache::cooked_read): Remove some code.
12867         (regcache::cooked_read_value): Likewise.
12868         (regcache::raw_write): Remove assert on m_readonly_p.
12869         (regcache::raw_supply_integer): Move it to
12870         detached_regcache::raw_supply_integer.
12871         (regcache::raw_supply_zeroed): Likewise.
12872         * regcache.h (detached_regcache) <raw_supply_integer>: New
12873         declaration.
12874         <raw_supply_zeroed, invalidate>: Likewise.
12875         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
12876         <invalidate>: Likewise.
12877         <m_readonly_p>: Removed.
12878
12879 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12880
12881         * infcmd.c (get_return_value): Let stop_regs point to
12882         get_current_regcache.
12883         * regcache.c (regcache::regcache): Remove.
12884         (register_dump_reg_buffer): New class.
12885         (regcache_print): Adjust.
12886         * regcache.h (regcache): Remove constructors.
12887
12888 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12889
12890         * regcache.c (class register_dump): New class.
12891         (register_dump_regcache, register_dump_none): New class.
12892         (register_dump_remote, register_dump_groups): New class.
12893         (regcache_print): Update.
12894         * regcache.h (regcache_dump_what): Move it to regcache.c.
12895         (regcache) <dump>: Remove.
12896
12897 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12898
12899         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
12900          reg_buffer_rw *.
12901         (jit_unwind_reg_set_impl): Call raw_supply.
12902         (jit_frame_sniffer): Use reg_buffer_rw.
12903         * record-full.c (record_full_core_regbuf): Change its type.
12904         (record_full_core_open_1): Use reg_buffer_rw.
12905         (record_full_close): Likewise.
12906         (record_full_core_fetch_registers): Use regcache->raw_supply.
12907         (record_full_core_store_registers): Likewise.
12908         * regcache.c (regcache::get_register_status): Move it to
12909         reg_buffer.
12910         (regcache_raw_set_cached_value): Remove.
12911         (regcache::raw_set_cached_value): Remove.
12912         (regcache::raw_write): Call raw_supply.
12913         (regcache::raw_supply): Move it to reg_buffer_rw.
12914         * regcache.h (regcache_raw_set_cached_value): Remove.
12915         (reg_buffer_rw): New class.
12916
12917 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12918
12919         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
12920         readonly_detached_regcache.
12921         (dummy_frame_prev_register): Use regcache->cooked_read.
12922         * frame.c (frame_save_as_regcache): Change return type.
12923         (frame_pop): Update.
12924         * frame.h (frame_save_as_regcache): Update declaration.
12925         * inferior.h (get_infcall_suspend_state_regcache): Update
12926         declaration.
12927         * infrun.c (infcall_suspend_state) <registers>: use
12928         readonly_detached_regcache.
12929         (save_infcall_suspend_state): Don't use regcache_dup.
12930         (get_infcall_suspend_state_regcache): Change return type.
12931         * linux-fork.c (struct fork_info) <savedregs>: Change to
12932         readonly_detached_regcache.
12933         <pc>: New field.
12934         (fork_save_infrun_state): Don't use regcache_dup.
12935         (info_checkpoints_command): Adjust.
12936         * mi/mi-main.c (register_changed_p): Update declaration.
12937         (mi_cmd_data_list_changed_registers): Use
12938         readonly_detached_regcache.
12939         (register_changed_p): Change parameter type to
12940         readonly_detached_regcache.
12941         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
12942         readonly_detached_regcache.
12943         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
12944         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
12945         New.
12946         (regcache::save): Move it to reg_buffer.
12947         (regcache::restore): Change parameter type.
12948         (regcache_dup): Remove.
12949         * regcache.h (reg_buffer) <save>: New method.
12950         (readonly_detached_regcache): New class.
12951         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
12952         readonly_detached_regcache.
12953         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
12954
12955 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12956
12957         * frame.c (frame_save_as_regcache): Use regcache method save.
12958         (frame_pop): Use regcache method restore.
12959         * infrun.c (restore_infcall_suspend_state): Likewise.
12960         * linux-fork.c (fork_load_infrun_state): Likewise.
12961         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
12962         save.
12963         * regcache.c (regcache_save): Remove.
12964         (regcache::restore): More asserts.
12965         (regcache_cpy): Remove.
12966         * regcache.h (regcache_save): Remove the declaration.
12967         (regcache::restore): Move from private to public.
12968         Remove the friend declaration of regcache_cpy.
12969         (regcache_cpy): Remove declaration.
12970
12971 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12972
12973         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
12974         parameter type to 'readable_regcache *'.
12975         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12976         * arm-tdep.c (arm_neon_quad_read): Likewise.
12977         (arm_pseudo_read): Likewise.
12978         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12979         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12980         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12981         * gdbarch.c: Re-generated.
12982         * gdbarch.h: Re-generated.
12983         * gdbarch.sh (pseudo_register_read): Change parameter type to
12984         'readable_regcache *'.
12985         (pseudo_register_read_value): Likewise.
12986         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
12987         (h8300_pseudo_register_read): Likewise.
12988         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
12989         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12990         (i386_pseudo_register_read_into_value): Likewise.
12991         (i386_pseudo_register_read_value): Likewise.
12992         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
12993         declaration.
12994         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
12995         * m32c-tdep.c (m32c_raw_read): Likewise.
12996         (m32c_read_flg): Likewise.
12997         (m32c_banked_register): Likewise.
12998         (m32c_banked_read): Likewise.
12999         (m32c_sb_read): Likewise.
13000         (m32c_part_read): Likewise.
13001         (m32c_cat_read): Likewise.
13002         (m32c_r3r2r1r0_read): Likewise.
13003         (m32c_pseudo_register_read): Likewise.
13004         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13005         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13006         (mep_pseudo_cr64_read): Likewise.
13007         (mep_pseudo_register_read): Likewise.
13008         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13009         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13010         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13011         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13012         (regcache::cooked_read): Likewise.
13013         (regcache::cooked_read_value): Likewise.
13014         (regcache_cooked_read_signed):
13015         (regcache::cooked_read): Likewise.
13016         * regcache.h (readable_regcache): New class.
13017         (regcache): Inherit readable_regcache.  Move some methods to
13018         readable_regcache.
13019         * rl78-tdep.c (rl78_pseudo_register_read): Change
13020         parameter type to 'readable_regcache *'.
13021         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13022         (e500_pseudo_register_read): Change parameter type to
13023         'readable_regcache *'.
13024         (dfp_pseudo_register_read): Likewise.
13025         (vsx_pseudo_register_read): Likewise.
13026         (efpr_pseudo_register_read): Likewise.
13027         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13028         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13029         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13030         (sh64_pseudo_register_read): Likewise.
13031         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13032         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13033         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13034         (spu_pseudo_register_read): Likewise.
13035         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13036         (xtensa_pseudo_register_read): Likewise.
13037
13038 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13039
13040         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13041         (regcache::arch): Move it to reg_buffer::arch.
13042         (regcache::register_buffer): Likewise.
13043         (regcache::assert_regnum): Likewise.
13044         (regcache::num_raw_registers): Likewise.
13045         * regcache.h (reg_buffer): New class.
13046         (regcache): Inherit reg_buffer.
13047
13048 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13049
13050         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13051         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13052
13053 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13054
13055         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13056
13057 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13058
13059         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13060         (SFILES): Remove common/*.c files.
13061         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13062         * common/common.host: Add common reference.
13063         * configure.ac: Likewise.
13064         * configure: Regenerate.
13065
13066 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13067
13068         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13069         (block_initialize_namespace): Use new.
13070         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13071         (dwarf2_free_objfile): Use delete.
13072         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13073         (copy_type_recursive): Use new.
13074         * gdb_obstack.h (allocate_on_obstack): New.
13075
13076 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13077
13078         PR gdb/22849
13079         * inferior.c (exit_inferior_1): Reset inf->control.
13080
13081 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13082
13083         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13084         declaration.
13085
13086 2018-02-14  Pedro Alves  <palves@redhat.com>
13087
13088         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13089         frame_cleanup_after_sniffer on exception.
13090
13091 2018-02-14  Tom Tromey  <tom@tromey.com>
13092
13093         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13094         const.
13095         (solib_bfd_open): Make pathname const.
13096         * solib.c (solib_bfd_open): Make pathname const.
13097         * solib-spu.c (spu_bfd_fopen): Make name const.
13098         (spu_bfd_open): Make pathname const.
13099         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13100         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13101
13102 2018-02-14  Tom Tromey  <tom@tromey.com>
13103
13104         * symfile.c (symfile_bfd_open): Update.
13105         * source.h (openp, source_full_path_of, find_and_open_source):
13106         Change argument type to unique_xmalloc_ptr.
13107         * source.c (openp): Take a unique_xmalloc_ptr.
13108         (source_full_path_of, find_and_open_source): Likewise.
13109         (open_source_file, symtab_to_fullname): Update.
13110         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13111         unique_xmalloc_ptr.
13112         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13113         (exec_file_find): Update.
13114         * psymtab.c (psymtab_to_fullname): Update.
13115         * nto-tdep.h (nto_find_and_open_solib): Update.
13116         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13117         unique_xmalloc_ptr.
13118         * exec.c (exec_file_attach): Update.
13119         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13120         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13121
13122 2018-02-14  Tom Tromey  <tom@tromey.com>
13123
13124         * solib.c: Include source.h.
13125         * nto-tdep.c: Include source.h.
13126         * mi/mi-cmd-env.c: Include source.h.
13127         * infcmd.c: Include source.h.
13128         * exec.c: Include source.h.
13129         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13130         (add_path, directory_switch, source_path, init_source_path): Move
13131         declarations...
13132         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13133         (add_path, directory_switch, source_path, init_source_path):
13134         ...here.
13135
13136 2018-02-14  Tom Tromey  <tom@tromey.com>
13137
13138         * solist.h (exec_file_find, solib_find): Return
13139         unique_xmalloc_ptr.
13140         (solib_bfd_fopen): Take a const char *.
13141         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13142         (exec_file_find, solib_find): Likewise.
13143         (solib_bfd_fopen): Do not take ownership of "pathname".
13144         (solib_bfd_open): Use unique_xmalloc_ptr.
13145         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13146         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13147         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13148         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13149
13150 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13151
13152         * ada-lang.c (name_match_type_from_name): Remove reference to
13153         ada_name_for_lookup in function's documentation.
13154         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13155
13156 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13157
13158         * defs.h (enum openp_flags): New enum.
13159         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13160         Move to enum openp_flags.
13161         (openp_flags): New enum flags.
13162         (openp): Change parameter type to openp_flags.
13163         * source.c (openp): Change parameter type to openp_flags.
13164         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13165         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13166
13167 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13168
13169         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13170         per-command.
13171
13172 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13173
13174         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13175         into...
13176         (class dwarf2_queue_guard): ...the destructor of this new class.
13177         (dw2_do_instantiate_symtab): Create instance of the new class
13178         dwarf2_queue_guard, remove cleanup.
13179
13180 2018-02-09  Tom Tromey  <tom@tromey.com>
13181
13182         * source.c (find_source_lines): Don't reference past the end of
13183         the vector.
13184
13185 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13186
13187         * remote.c (remote_btrace_maybe_reopen): Change error message.
13188         * btrace.c (btrace_enable): Likewise.
13189         (parse_xml_btrace): Likewise.
13190         (parse_xml_btrace_conf): Likewise.
13191
13192 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13193
13194         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13195         (linux_enable_pt, linux_enable_bts): Call
13196         diagnose_perf_event_open_fail.
13197
13198 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13199
13200         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13201         Remove parameter and change return type.  Update callers.  Move it.
13202         (linux_enable_bts, linux_enable_pt): Improve error message.
13203         (linux_enable_pt): Remove zero buffer size check.
13204         (linux_enable_btrace): Improve error messages.  Remove NULL return
13205         check.
13206
13207 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13208
13209         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13210         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13211         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13212         (linux_supports_pt, linux_supports_btrace): Remove.
13213         (linux_enable_bts): Call cpu_supports_bts.
13214         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13215         * remote.c (remote_supports_btrace): Remove.
13216         (init_remote_ops): Remove remote_supports_btrace.
13217         * target-delegates.c: Regenerated.
13218         * target.c (target_supports_btrace): Remove.
13219         * target.h (target_ops) <to_supports_btrace>: Remove
13220         (target_supports_btrace): Remove.
13221         * x86-linux-nat.c (x86_linux_create_target): Remove
13222         linux_supports_btrace.
13223
13224 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13225
13226         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13227         btrace failed.
13228         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13229         exception and use message in own exception.
13230
13231 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13232
13233         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13234         (perf_event_pt_event_type): Use gdb_file_up.
13235         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13236         scoped_fd, and scoped_mmap.
13237
13238 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13239
13240         * common/scoped_mmap.h: New.
13241         * unittests/scoped_mmap-selftest.c: New.
13242         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13243         unittests/scoped_mmap-selftest.c.
13244
13245 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13246
13247         * common/scoped_fd.h: New.
13248         * unittests/scoped_fd-selftest.c: New.
13249         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13250         unittests/scoped_fd-selftest.c.
13251
13252 2018-02-09  Tom Tromey  <tom@tromey.com>
13253
13254         * auto-load.c (auto_load_section_scripts): Use
13255         gdb::unique_xmalloc_ptr.
13256
13257 2018-02-09  Tom Tromey  <tom@tromey.com>
13258
13259         * auto-load.c (execute_script_contents): Use std::string.
13260
13261 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13262
13263         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13264         Python function, rather than a new command.
13265
13266 2018-02-08  Tom Tromey  <tom@tromey.com>
13267
13268         * solib.c (solib_find_1): Use std::string.
13269         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13270
13271 2018-02-08  Tom Tromey  <tom@tromey.com>
13272
13273         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13274
13275 2018-02-08  Tom Tromey  <tom@tromey.com>
13276
13277         * source.c (find_source_lines): Use gdb::def_vector.
13278
13279 2018-02-08  Tom Tromey  <tom@tromey.com>
13280
13281         * macrocmd.c (struct temporary_macro_definition): New.
13282         (macro_define_command): Use temporary_macro_definition.  Remove
13283         cleanups.
13284         (free_macro_definition_ptr): Remove.
13285
13286 2018-02-08  Tom Tromey  <tom@tromey.com>
13287
13288         * macroexp.c (maybe_expand): Use std::string.
13289
13290 2018-02-08  Tom Tromey  <tom@tromey.com>
13291
13292         * macroexp.c (struct macro_buffer): Add initializers for some
13293         members.
13294         (init_buffer, init_shared_buffer, free_buffer)
13295         (free_buffer_return_text): Remove.
13296         (macro_buffer): New constructors.
13297         (~macro_buffer): New destructor.
13298         (macro_buffer::set_shared): New method.
13299         (macro_buffer::resize_buffer, macro_buffer::appendc)
13300         (macro_buffer::appendmem): Now methods, not free functions.
13301         (set_token, append_tokens_without_splicing, stringify)
13302         (macro_stringify): Update.
13303         (gather_arguments): Change return type.  Remove argc_p argument,
13304         add args_ptr argument.  Use std::vector.
13305         (substitute_args): Remove argc argument.  Accept std::vector.
13306         (expand): Update.  Use std::vector.
13307         (scan, macro_expand, macro_expand_next): Update.
13308
13309 2018-02-08  Tom Tromey  <tom@tromey.com>
13310
13311         * symtab.c (default_collect_symbol_completion_matches_break_on):
13312         Use unique_xmalloc_ptr.
13313         * macroscope.h: (sal_macro_scope, user_macro_scope)
13314         (default_macro_scope): Return unique_xmalloc_ptr.
13315         * macroscope.c (sal_macro_scope, user_macro_scope)
13316         (default_macro_scope): Return unique_xmalloc_ptr.
13317         * macroexp.h (macro_expand, macro_expand_once): Return
13318         unique_xmalloc_ptr.
13319         * macroexp.c (macro_expand, macro_expand_once): Return
13320         unique_xmalloc_ptr.
13321         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13322         (info_macro_command, info_macros_command): Use
13323         unique_xmalloc_ptr.
13324         * compile/compile-c-support.c (write_macro_definitions): Use
13325         unique_xmalloc_ptr.
13326         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13327
13328 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13329
13330         * value.c (value_static_field): Assign field type instead of
13331         containing type when returning an optimized out value.
13332
13333 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13334
13335         * ft32-tdep.c (ft32_read_pc): Remove.
13336         (ft32_write_pc): Remove.
13337         (ft32_gdbarch_init): Update.
13338         * m32r-tdep.c (m32r_read_pc): Remove.
13339         (m32r_gdbarch_init): Update.
13340         * mep-tdep.c (mep_read_pc): Remove.
13341         (mep_gdbarch_init): Update.
13342         * microblaze-tdep.c (microblaze_write_pc): Remove.
13343         (microblaze_gdbarch_init): Update.
13344         * mn10300-tdep.c (mn10300_read_pc): Remove.
13345         (mn10300_write_pc): Remove.
13346         (mn10300_gdbarch_init): Update.
13347         * moxie-tdep.c (moxie_read_pc): Remove.
13348         (moxie_write_pc): Remove.
13349         (moxie_gdbarch_init): Update.
13350
13351 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13352
13353         * expprint.c (print_subexp_standard): Handle
13354         OP_F77_UNDETERMINED_ARGLIST.
13355         (dump_subexp_body_standard): Likewise.
13356
13357 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13358
13359         * target-descriptions.c (tdesc_element_visitor) Add empty
13360         implementations.
13361         (tdesc_type): Move make_gdb_type from here.
13362         (tdesc_type_builtin): Likewise.
13363         (tdesc_type_vector): Likewise.
13364         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13365         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13366         (make_gdb_type_union): Likewise.
13367         (make_gdb_type_flags): Likewise.
13368         (make_gdb_type_enum): Likewise.
13369         (make_gdb_type): New function.
13370         (tdesc_register_type): Use static make_gdb_type.
13371
13372 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13373
13374         * infcmd.c (default_print_one_register_info): Align natural-format
13375         column values consistently one under another.
13376         (pad_to_column): New function.
13377
13378 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13379
13380         * dwarf2read.c (dwarf2_physname): Move commment.
13381
13382 2018-02-01  Leszek Swirski  <leszeks@google.com>
13383
13384         * varobj.c (varobj_formatted_print_options): Allow recursive
13385         pretty printing if pretty printing is enabled.
13386
13387 2018-02-01  Leszek Swirski  <leszeks@google.com>
13388
13389         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13390         names after a structop as a filename.
13391
13392 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13393
13394         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13395         (arm_record_coproc_data_proc): Likewise.
13396
13397 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13398
13399         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13400
13401 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13402
13403         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13404         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13405
13406 2018-01-31  Pedro Alves  <palves@redhat.com>
13407
13408         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13409         * inflow.c (child_terminal_save_inferior): Wrap reference to
13410         tcgetpgrp in HAVE_TERMIOS_H.
13411         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13412         _WIN32.
13413         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13414         always iterate over all inferiors.
13415         (gdbsim_cntrl_c): Adjust.
13416         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13417
13418 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13419
13420         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13421         index type is objfile-owned if the element type is as well.
13422
13423 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13424
13425         GDB 8.1 released.
13426
13427 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13428
13429         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13430         "features/s390x-linux64.c".
13431         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13432         s390_linux32 and s390x_linux64.
13433         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13434         default tdesc.
13435         * s390-tdep.c: Include "features/s390-linux32.c" and
13436         "features/s390x-linux64.c".
13437         (s390_tdesc_valid): Add check for tdesc_has_registers.
13438         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13439         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13440         tdesc_s390x_linux64.
13441         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13442         tdesc_s390x_linux64 to...
13443         * s390-tdep.h: ...here.
13444
13445 2018-01-30  Pedro Alves  <palves@redhat.com>
13446
13447         PR gdb/13211
13448         * config.in, configure: Regenerate.
13449         * configure.ac: Check for getpgid.
13450         * go32-nat.c (go32_pass_ctrlc): New.
13451         (go32_target): Install it.
13452         * inf-child.c (inf_child_target): Install
13453         child_terminal_save_inferior, child_pass_ctrlc and
13454         child_interrupt.
13455         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13456         (inf_ptrace_target): No longer install it.
13457         * infcmd.c (interrupt_target_1): Adjust.
13458         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13459         (child_interrupt): Declare.
13460         (inferior::terminal_state): New.
13461         * inflow.c (struct terminal_info): Update comments.
13462         (inferior_process_group): Delete.
13463         (terminal_is_ours): Delete.
13464         (gdb_tty_state): New.
13465         (child_terminal_init): Adjust.
13466         (is_gdb_terminal, sharing_input_terminal_1)
13467         (sharing_input_terminal): New functions.
13468         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13469         Set the process's actual process group in the foreground if
13470         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13471         mark terminal as the inferior's if not sharing GDB's terminal.
13472         Don't check attach_flag.
13473         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13474         pass down a target_terminal_state.
13475         (child_terminal_save_inferior): New, factored out from ...
13476         (child_terminal_ours_1): ... this.  Handle
13477         target_terminal_state::is_ours_for_output.
13478         (child_interrupt, child_pass_ctrlc): New.
13479         (inflow_inferior_exit): Clear the inferior's terminal_state.
13480         (copy_terminal_info): Copy the inferior's terminal state.
13481         (_initialize_inflow): Remove reference to terminal_is_ours.
13482         * inflow.h (inferior_process_group): Delete.
13483         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13484         * procfs.c (procfs_target): Don't install procfs_interrupt.
13485         (procfs_interrupt): Delete.
13486         * remote.c (remote_serial_quit_handler): Adjust.
13487         (remote_interrupt): Remove ptid parameter.  Adjust.
13488         * target-delegates.c: Regenerate.
13489         * target.c: Include "terminal.h".
13490         (target_terminal::terminal_state): Rename to ...
13491         (target_terminal::m_terminal_state): ... this.
13492         (target_terminal::init): Adjust.
13493         (target_terminal::inferior): Adjust to per-inferior
13494         terminal_state.
13495         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13496         (target_terminal::ours, target_terminal::ours_for_output): Use
13497         target_terminal_is_ours_kind.
13498         (target_interrupt): Remove ptid parameter.  Adjust.
13499         (default_target_pass_ctrlc): Adjust.
13500         * target.h (target_ops::to_terminal_save_inferior): New field.
13501         (target_ops::to_interrupt): Remove ptid_t parameter.
13502         (target_interrupt): Remove ptid_t parameter.  Update comment.
13503         (target_pass_ctrlc): Update comment.
13504         * target/target.h (target_terminal_state): New scoped enum,
13505         factored out of ...
13506         (target_terminal::terminal_state): ... here.
13507         (target_terminal::inferior): Update comments.
13508         (target_terminal::restore_inferior): New.
13509         (target_terminal::is_inferior, target_terminal::is_ours)
13510         (target_terminal::is_ours_for_output): Adjust.
13511         (target_terminal::scoped_restore_terminal_state): Adjust to
13512         rename, and call restore_inferior() instead of inferior().
13513         (target_terminal::scoped_restore_terminal_state::m_state): Change
13514         type.
13515         (target_terminal::terminal_state): Rename to ...
13516         (target_terminal::m_terminal_state): ... this and change type.
13517
13518 2018-01-30  Pedro Alves  <palves@redhat.com>
13519
13520         * linux-nat.c (wait_for_signal): New function.
13521         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13522         directly.
13523         (async_terminal_is_ours)
13524         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13525         (linux_nat_add_target): Don't override
13526         to_terminal_inferior/to_terminal_ours.
13527
13528 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13529
13530         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13531
13532 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13533
13534         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13535         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13536         dwarf2_per_objfile_free here.
13537         (dwarf2_per_objfile_free): Remove.
13538         (_initialize_dwarf2_read): Don't register
13539         dwarf2_per_objfile_free as a registry cleanup.
13540
13541 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13542
13543         Avoid compilation errors in MinGW native builds
13544
13545         The error is triggered by including python-internal.h, and the
13546         error message is:
13547
13548              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13549                       from build-gnulib/import/math.h:27,
13550                       from d:/usr/Python26/include/pyport.h:235,
13551                       from d:/usr/Python26/include/Python.h:58,
13552                       from python/python-internal.h:94,
13553                       from python/py-arch.c:24:
13554              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13555         using ::hypot;
13556                 ^~~~~
13557
13558         This happens because Python headers define 'hypot' to expand t
13559         '_hypot' in the Windows builds.
13560         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13561         'hypoth'.  This avoids a compilation error.
13562
13563 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13564
13565         * MAINTAINERS (Write After Approval): Fix ordering.
13566
13567 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13568
13569         * MAINTAINERS (Write After Approval): Add Alan Hayward.
13570
13571 2018-01-26  Alan Modra  <amodra@gmail.com>
13572
13573         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
13574         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
13575         Remove nop.  Make const.  Comment.
13576         (powerpc32_plt_stub_so_2): New.
13577         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
13578         Correct count.  Update uses.
13579         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
13580         Move common code reading PLT entry word.  Correct
13581         powerpc32_plt_stub PLT address calculation.
13582         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
13583         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
13584         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
13585         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
13586         (ppc64_standard_linkage8): Likewise.
13587         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
13588         Correct insns description.
13589         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
13590
13591 2018-01-24  Pedro Alves  <palves@redhat.com>
13592
13593         GCC PR libstdc++/83906
13594         * gdbtypes.c (operator==(const dynamic_prop &,
13595         const dynamic_prop &)): New.
13596         (operator==(const range_bounds &, const range_bounds &)): New.
13597         (check_types_equal): Use them instead of memcmp.
13598         * gdbtypes.h (operator==(const dynamic_prop &,
13599         const dynamic_prop &)): Declare.
13600         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
13601         (operator==(const range_bounds &, const range_bounds &)): Declare.
13602         (operator!=(const range_bounds &, const range_bounds &)): Declare.
13603
13604 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13605
13606         * s390-linux-tdep.c (s390_record_address_mask)
13607         (s390_record_calc_disp_common, s390_record_calc_disp)
13608         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13609         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13610         (s390_process_record): Move to s390-tdep.c.
13611         (s390_linux_init_abi_any): Adjust.
13612         * s390-tdep.c (s390_record_address_mask)
13613         (s390_record_calc_disp_common, s390_record_calc_disp)
13614         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13615         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13616         (s390_process_record): Moved from s390-linux-tdep.c
13617         (s390_gdbarch_init): Adjust.
13618
13619 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13620
13621         * s390-linux-nat.c (s390-tdep.h): New include.
13622         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
13623         (HFILES_NO_SRCDIR): Add s390-tdep.h.
13624         (ALLDEPFILES): Add s390-tdep.c.
13625         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
13626         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
13627         * s390-tdep.h: ...this.  New file.
13628         * s390-linux-tdep.c (s390-tdep.h): New include.
13629         (_initialize_s390_tdep): Rename to...
13630         (_initialize_s390_linux_tdep): ...this and adjust.
13631         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
13632         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
13633         s390-tdep.h.
13634         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
13635         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
13636         (s390_is_partial_instruction, s390_software_single_step)
13637         (is_non_branch_ril, s390_displaced_step_copy_insn)
13638         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
13639         (s390_prologue_data, s390_addr, s390_store, s390_load)
13640         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
13641         (s390_register_call_saved, s390_guess_tracepoint_registers)
13642         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
13643         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
13644         (s390_pseudo_register_name, s390_pseudo_register_type)
13645         (s390_pseudo_register_read, s390_pseudo_register_write)
13646         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
13647         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
13648         (s390_addr_bits_remove, s390_address_class_type_flags)
13649         (s390_address_class_type_flags_to_name)
13650         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
13651         (s390_function_arg_float, s390_function_arg_vector)
13652         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
13653         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
13654         (s390_frame_align, s390_register_return_value, s390_return_value)
13655         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
13656         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
13657         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
13658         (s390_trad_frame_prev_register, s390_unwind_cache)
13659         (s390_prologue_frame_unwind_cache)
13660         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
13661         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
13662         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
13663         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
13664         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
13665         (s390_frame_base_address, s390_local_base_address)
13666         (s390_frame_base, s390_gcc_target_options)
13667         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
13668         (s390_validate_reg_range, s390_tdesc_valid)
13669         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
13670         * s390-tdep.c: ...this.  New file.
13671
13672 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13673
13674         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
13675         (s390_process_record, s390_gdbarch_tdep_alloc)
13676         (s390_linux_init_abi_any): Use/set new hook.
13677
13678 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13679
13680         * s390-linux-tdep.c (osabi.h): New include.
13681         (s390_linux_init_abi_31, s390_linux_init_abi_64)
13682         (s390_linux_init_abi_any): New functions.
13683         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
13684
13685 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13686
13687         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
13688         tdesc_has_registers check
13689
13690 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13691
13692         * s390-linux-tdep.c (s390_tdesc_valid): New function.
13693         (s390_validate_reg_range): New macro.
13694         (s390_gdbarch_init): Adjust.
13695
13696 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13697
13698         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
13699         (s390_gdbarch_tdep_alloc): Adjust.
13700         (s390_gdbarch_init): Adjust.
13701
13702 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13703
13704         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
13705         <have_tdb>: Change type to bool.
13706         (s390_gdbarch_tdep_alloc): Adjust.
13707         (s390_gdbarch_init): Adjust.
13708
13709 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13710
13711         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
13712         (gdbarch_tdep) <have_upper, have_vx>: New fields.
13713         (s390_gdbarch_tdep_alloc): New function.
13714         (s390_gdbarch_init): Allocate tdep at start and use its fields
13715         instead of separate variables.
13716
13717 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13718
13719         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
13720         when looking for cached gdbarch and add comment for remaining.
13721
13722 2018-01-22  Pedro Alves  <palves@redhat.com>
13723             Sergio Durigan Junior  <sergiodj@redhat.com>
13724
13725         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
13726         case.
13727
13728 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
13729
13730         * MAINTAINERS: Update my company e-mail address.
13731
13732 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13733
13734         * regcache.c (cooked_write_test): New function.
13735         (_initialize_regcache): Register the test.
13736
13737 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13738
13739         * ia64-tdep.c (ia64_pseudo_register_read): Call
13740         regcache->cooked_read instead of regcache_cooked_read_unsigned.
13741         * m32c-tdep.c (m32c_cat_read): Likewise.
13742         (m32c_r3r2r1r0_read): Likewise.
13743         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13744         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13745
13746 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13747
13748         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
13749         method raw_read instead of regcache_raw_read.
13750         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13751         * arm-tdep.c (arm_neon_quad_read): Likewise.
13752         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13753         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13754         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13755         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
13756         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13757         (i386_pseudo_register_read_into_value): Likewise.
13758         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13759         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13760         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13761         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
13762         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
13763         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
13764         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13765         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
13766         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
13767
13768 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13769
13770         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
13771         * configure.tgt: Remove target mt.
13772         * mt-tdep.c: Remove.
13773         * regcache.c (cooked_read_test): Remove the check for mt.
13774
13775 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13776
13777         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
13778         instead of gdbarch_pseudo_register_read_value.
13779
13780 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13781
13782         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
13783         language is Ada.
13784
13785 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13786
13787         * linespec.c (create_sals_line_offset): Remove code that preserved
13788         the symtab_and_line's line number.
13789
13790 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13791
13792         * varobj.c (varobj_create): Don't set valid_block when creating a
13793         floating varobj.
13794
13795 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13796
13797         * varobj.c (varobj_create): Remove out of date comment.
13798
13799 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13800
13801         PR mi/20395
13802         * ada-exp.y (write_var_from_sym): Pass extra parameter when
13803         updating innermost block.
13804         * parse.c (innermost_block_tracker::update): Take extra type
13805         parameter, and check types match before updating innermost block.
13806         (write_dollar_variable): Update innermost block for registers.
13807         * parser-defs.h (enum innermost_block_tracker_type): New enum.
13808         (innermost_block_tracker::innermost_block_tracker): Initialise
13809         m_types member.
13810         (innermost_block_tracker::reset): Take type parameter.
13811         (innermost_block_tracker::update): Take type parameter, and pass
13812         type through as needed.
13813         (innermost_block_tracker::m_types): New member.
13814         * varobj.c (varobj_create): Pass type when reseting innermost
13815         block.
13816
13817 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13818
13819         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
13820         * ada-lang.c (resolve_subexp): Likewise.
13821         * breakpoint.c (set_breakpoint_condition) Likewise.
13822         (watch_command_1) Likewise.
13823         * c-exp.y (variable): Likewise.
13824         * d-exp.y (PrimaryExpression): Likewise.
13825         * f-exp.y (variable): Likewise.
13826         * go-exp.y (variable): Likewise.
13827         * m2-exp.y (variable): Likewise.
13828         * objfiles.c (objfile::~objfile): Likewise.
13829         * p-exp.y (variable): Likewise.
13830         * parse.c (innermost_block): Change type.
13831         * parser-defs.h (class innermost_block_tracker): New.
13832         (innermost_block): Change to innermost_block_tracker.
13833         * printcmd.c (display_command): Switch to innermost_block API.
13834         (do_one_display): Likewise.
13835         * rust-exp.y (do_one_display): Likewise.
13836         * symfile.c (clear_symtab_users): Likewise.
13837         * varobj.c (varobj_create): Switch to innermost_block API, replace
13838         use of innermost_block with block stored on varobj object.
13839
13840 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13841
13842         * expression.h (innermost_block): Remove declaration.
13843         * varobj.c: Add 'parser-defs.h' include.
13844
13845 2018-01-19  Tom Tromey  <tom@tromey.com>
13846
13847         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
13848         symbols in the static and global blocks.
13849
13850 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
13851
13852         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
13853         gdb_ptrace.h, and move including gdb_wait.h ...
13854         * nat/linux-ptrace.h: ... to here.
13855
13856 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13857
13858         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
13859         inf_ptrace_detach_success.
13860         (inf_ptrace_detach_success): Add inferior parameter, use it
13861         instead of inferior_ptid, pass it to detach_inferior.
13862         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
13863         parameter.
13864         * inferior.c (detach_inferior): Add overload that takes an
13865         inferior object.
13866         * inferior.h (detach_inferior): Likewise.
13867         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
13868         use inferior_ptid, adjust call to inf_ptrace_detach_success.
13869         * linux-thread-db.c (thread_db_detach): Use inf parameter.
13870
13871 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13872
13873         * target.h (struct target_ops) <to_detach>: Add inferior
13874         parameter.
13875         (target_detach): Likewise.
13876         * target.c (dispose_inferior): Pass inferior down.
13877         (target_detach): Pass inferior down.  Assert that it is equal to
13878         the current inferior.
13879         * aix-thread.c (aix_thread_detach): Pass inferior down.
13880         * corefile.c (core_file_command): Pass current_inferior() down.
13881         * corelow.c (core_detach): Add inferior parameter.
13882         * darwin-nat.c (darwin_detach): Likewise.
13883         * gnu-nat.c (gnu_detach): Likewise.
13884         * inf-ptrace.c (inf_ptrace_detach): Likewise.
13885         * infcmd.c (detach_command): Pass current_inferior() down to
13886         target_detach.
13887         * infrun.c (follow_fork_inferior): Pass parent_inf to
13888         target_detach.
13889         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
13890         target_detach.
13891         * linux-nat.c (linux_nat_detach): Add inferior parameter.
13892         * linux-thread-db.c (thread_db_detach): Likewise.
13893         * nto-procfs.c (procfs_detach): Likewise.
13894         * procfs.c (procfs_detach): Likewise.
13895         * record.c (record_detach): Likewise.
13896         * record.h (struct inferior): Forward-declare.
13897         (record_detach): Add inferior parameter.
13898         * remote-sim.c (gdbsim_detach): Likewise.
13899         * remote.c (remote_detach_1): Likewise.
13900         (remote_detach): Likewise.
13901         (extended_remote_detach): Likewise.
13902         * sol-thread.c (sol_thread_detach): Likewise.
13903         * target-debug.h (target_debug_print_inferior_p): New macro.
13904         * target-delegates.c: Re-generate.
13905         * top.c (kill_or_detach): Pass inferior down to target_detach.
13906         * windows-nat.c (windows_detach): Add inferior parameter.
13907
13908 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13909
13910         * target.h (struct target_ops) <to_detach>: Remove args
13911         parameter.
13912         (target_detach): Likewise.
13913         * target.c (dispose_inferior): Adjust.
13914         (target_detach): Remove args parameter, adjust.
13915         * aix-thread.c (aix_thread_detach): Adjust.
13916         * corefile.c (core_file_command): Adjust.
13917         * corelow.c (core_detach): Adjust.
13918         * darwin-nat.c (darwin_detach): Adjust.
13919         * gnu-nat.c (gnu_detach): Adjust.
13920         * inf-ptrace.c (inf_ptrace_detach): Adjust.
13921         * infcmd.c (detach_command): Adjust
13922         * infrun.c (follow_fork_inferior): Adjust.
13923         (handle_vfork_child_exec_or_exit): Adjust.
13924         * linux-fork.c (linux_fork_detach): Remove args parameter.
13925         * linux-fork.h (linux_fork_detach): Likewise.
13926         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
13927         * linux-thread-db.c (thread_db_detach): Likewise.
13928         * nto-procfs.c (procfs_detach): Likewise.
13929         * procfs.c (procfs_detach): Likewise.
13930         (do_detach): Remove signo parameter.
13931         * record.c (record_detach): Remove args parameter.
13932         * record.h (record_detach): Likewise.
13933         * remote-sim.c (gdbsim_detach): Likewise.
13934         * remote.c (remote_detach_1): Likewise.
13935         (remote_detach): Likewise.
13936         (extended_remote_detach): Likewise.
13937         * sol-thread.c (sol_thread_detach): Likewise.
13938         * target-delegates.c: Re-generate.
13939         * top.c (struct qt_args) <args>: Remove field.
13940         (kill_or_detach): Don't pass args.
13941         (quit_force): Don't set args.
13942         * windows-nat.c (windows_detach): Remove args parameter.
13943
13944 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13945
13946         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
13947         (arm_linux_init_abi): Install it.
13948
13949 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13950
13951         * osabi.c (gdb_osabi_names): Extend the regexp for
13952         arm-linux-gnueabihf.
13953
13954 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13955
13956         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
13957         m_abbrevs.
13958         (abbrev_table::add_abbrev): Update.
13959         (abbrev_table::lookup_abbrev): Update.
13960
13961 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13962
13963         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
13964
13965 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
13966
13967         * compile/compile.c (compile_to_object): Convert "triplet_rx"
13968         to "std::string".
13969
13970 2018-01-17  Tom Tromey  <tom@tromey.com>
13971
13972         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
13973
13974 2018-01-17  Tom Tromey  <tom@tromey.com>
13975
13976         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
13977         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
13978         (create_array_type_with_stride): Update.
13979         * dwarf2read.c (set_die_type): Update.
13980
13981 2018-01-17  Tom Tromey  <tom@tromey.com>
13982
13983         * dwarf2read.c (delayed_method_info): Remove typedef.
13984         (dwarf2_cu::method_info): Now a std::vector.
13985         (add_to_method_list): Update.
13986         (free_delayed_list): Remove.
13987         (compute_delayed_physnames): Update.
13988         (process_full_comp_unit, process_full_type_unit): Clear the method
13989         list.  Remove cleanups.
13990         (psymtab_include_file_name): Add name_holder parameter.  Use
13991         unique_xmalloc_ptr.
13992         (dwarf_decode_lines): Update.
13993
13994 2018-01-17  Tom Tromey  <tom@tromey.com>
13995             Simon Marchi  <simon.marchi@ericsson.com>
13996
13997         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
13998         (dwarf2_per_objfile::free_cached_comp_units)
13999         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14000         (init_cutu_and_read_dies_no_follow): Update.
14001         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14002         (dwarf2_cu::~dwarf2_cu): New.
14003         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14004         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14005
14006 2018-01-17  Tom Tromey  <tom@tromey.com>
14007             Simon Marchi  <simon.marchi@ericsson.com>
14008
14009         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14010         (struct die_reader_specs) <abbrev_table>: New member.
14011         (struct abbrev_table): Add constructor.
14012         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14013         <abbrev_obstack>: Now an auto_obstack.
14014         (abbrev_table_up): New typedef.
14015         (init_cu_die_reader): Add abbrev_table parameter.
14016         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14017         Add result_dwo_abbrev_table.
14018         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14019         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14020         Update.
14021         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14022         parameter.
14023         (skip_children): Update.
14024         (abbrev_table::alloc_abbrev): Rename from
14025         abbrev_table_alloc_abbrev.
14026         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14027         (abbrev_table::lookup_abbrev): Rename from
14028         abbrev_table_lookup_abbrev.
14029         (abbrev_table_read_table): Return abbrev_table_up.
14030         (abbrev_table_free, abbrev_table_free_cleanup)
14031         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14032         (load_partial_dies): Update.
14033
14034 2018-01-17  Tom Tromey  <tom@tromey.com>
14035
14036         * dwarf2read.c (dwarf2_compute_name): Update comment.
14037         (read_func_scope, read_variable): Update.
14038         (new_symbol): Remove.
14039         (new_symbol_full): Rename to new_symbol.
14040
14041 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14042
14043         PR gdb/16577
14044         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14045         a warning instead of throwing an error, set section size to 0 and return
14046         NULL.
14047         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14048
14049 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14050
14051         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14052         std::string.
14053         (linux_ptrace_attach_fail_reason_string): Likewise.
14054         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14055         Likewise.
14056         (linux_ptrace_attach_fail_reason_string): Likewise.
14057         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14058
14059 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14060
14061         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14062
14063 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14064
14065         PR gdb/21559
14066         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14067         checking for fs_base/gs_base fields in struct user_regs_struct.
14068         * configure: Regenerate.
14069
14070 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14071
14072         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14073         function.
14074         (aarch64_linux_init_abi): Install it to gdbarch hook
14075         gcc_target_options.
14076
14077 2018-01-15  Pedro Alves  <palves@redhat.com>
14078
14079         * common/signals-state-save-restore.c
14080         (save_original_signals_state): Fix typos.
14081
14082 2017-01-12  Tom Tromey  <tom@tromey.com>
14083             Sergio Durigan Junior  <sergiodj@redhat.com>
14084
14085         * Makefile.in (install-only): Install gdb-add-index.
14086
14087 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14088
14089         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14090
14091 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14092
14093         * infrun.c (keep_going_pass_signal): Clear step-over info when
14094         insert_breakpoints fails.
14095
14096 2018-01-11  Pedro Alves  <palves@redhat.com>
14097
14098         PR gdb/22583
14099         * infrun.c (resume): Rename to ...
14100         (resume_1): ... this.
14101         (resume): Reimplement as wrapper around resume_1.
14102
14103 2018-01-11  Pedro Alves  <palves@redhat.com>
14104
14105         PR remote/22597
14106         * remote.c (remote_parse_stop_reply): Default to the last-set
14107         general thread instead of to 'magic_null_ptid'.
14108
14109 2018-01-10  Pedro Alves  <palves@redhat.com>
14110
14111         * language.h (language_get_symbol_name_matcher): Rename ...
14112         (get_symbol_name_matcher): ... this.
14113         * language.c (language_get_symbol_name_matcher): Ditto.
14114         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14115         callers adjusted.
14116
14117 2018-01-10  Pedro Alves  <palves@redhat.com>
14118
14119         PR gdb/22670
14120         * dwarf2read.c
14121         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14122         Adjust to use language_get_symbol_name_matcher instead of
14123         language_defn::la_get_symbol_name_matcher.
14124         * language.c (language_get_symbol_name_matcher): If in Ada mode
14125         and the lookup name is a verbatim match, return Ada's matcher.
14126         * language.h (language_get_symbol_name_matcher): Adjust comment.
14127         (ada_lookup_name_info::verbatim_p):: New method.
14128
14129 2018-01-10  Pedro Alves  <palves@redhat.com>
14130
14131         PR gdb/22670
14132         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14133         minsym's language is language_auto or language_cplus, pass down
14134         language_ada instead.
14135         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14136
14137 2018-01-10  Pedro Alves  <palves@redhat.com>
14138
14139         PR gdb/22670
14140         * minsyms.c (linkage_name_str): New function.
14141         (iterate_over_minimal_symbols): Use it.
14142
14143 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14144
14145         * NEWS: Document that 'info proc' now works on FreeBSD.
14146
14147 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14148
14149         * configure.ac: Check for kinfo_getfile in libutil.
14150         * configure: Regenerate.
14151         * config.in: Regenerate.
14152         * fbsd-nat.c: Include "fbsd-tdep.h".
14153         (fbsd_fetch_cmdline): New.
14154         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14155         rather than calling error.
14156         (fbsd_info_proc): New.
14157         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14158         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14159         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14160
14161 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14162
14163         * fbsd-nat.c (struct free_deleter): Remove.
14164         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14165
14166 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14167
14168         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14169         NULL for an empty pathname.
14170
14171 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14172
14173         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14174         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14175         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14176         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14177         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14178         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14179         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14180         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14181         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14182         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14183         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14184         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14185         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14186         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14187         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14188
14189 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14190
14191         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14192         (gnu_xfer_auxv): New function.
14193         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14194         TARGET_OBJECT_AUXV.
14195
14196 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14197             Simon Marchi  <simon.marchi@ericsson.com>
14198
14199         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14200         common/selftest.c.
14201         (COMMON_OBS): Remove selftest.o.
14202         * configure.ac: Append selftest-arch.c and common/selftest.c to
14203         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14204         * configure: Re-generated.
14205         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14206         GDB_SELF_TEST.
14207         (maintenance_info_selftests): Likewise.
14208
14209 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14210
14211         * ada-valprint.c (val_print_packed_array_elements): Use
14212         proper number of elements when printing an array indexed
14213         by an enumeration type.
14214
14215 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14216
14217         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14218         (dw2_get_file_names_reader): Adjust.
14219         (lookup_dwo_signatured_type): Adjust.
14220         (lookup_dwp_signatured_type): Adjust.
14221         (lookup_signatured_type): Adjust.
14222         (create_type_unit_group): Adjust.
14223         (get_type_unit_group): Adjust.
14224         (process_psymtab_comp_unit_reader): Adjust.
14225         (build_type_psymtabs_reader): Adjust.
14226         (scan_partial_symbols): Adjust.
14227         (add_partial_symbol): Adjust.
14228         (add_partial_subprogram): Adjust.
14229         (peek_die_abbrev): Adjust.
14230         (fixup_go_packaging): Adjust.
14231         (process_imported_unit_die): Adjust.
14232         (dwarf2_compute_name): Adjust.
14233         (dwarf2_physname): Adjust.
14234         (read_import_statement): Adjust.
14235         (handle_DW_AT_stmt_list): Adjust.
14236         (read_file_scope): Adjust.
14237         (read_func_scope): Adjust.
14238         (read_lexical_block_scope): Adjust.
14239         (read_call_site_scope): Adjust.
14240         (read_variable): Adjust.
14241         (dwarf2_rnglists_process): Adjust.
14242         (dwarf2_ranges_process): Adjust.
14243         (dwarf2_ranges_read): Adjust.
14244         (dwarf2_get_pc_bounds): Adjust.
14245         (dwarf2_record_block_ranges): Adjust.
14246         (dwarf2_add_field): Adjust.
14247         (dwarf2_add_member_fn): Adjust.
14248         (read_structure_type): Adjust.
14249         (process_structure_scope): Adjust.
14250         (read_enumeration_type): Adjust.
14251         (read_array_type): Adjust.
14252         (mark_common_block_symbol_computed): Adjust.
14253         (read_common_block): Adjust.
14254         (read_namespace_type): Adjust.
14255         (read_namespace): Adjust.
14256         (read_module_type): Adjust.
14257         (read_tag_pointer_type): Adjust.
14258         (read_tag_ptr_to_member_type): Adjust.
14259         (read_tag_string_type): Adjust.
14260         (read_subroutine_type): Adjust.
14261         (read_typedef): Adjust.
14262         (read_base_type): Adjust.
14263         (attr_to_dynamic_prop): Adjust.
14264         (read_subrange_type): Adjust.
14265         (read_unspecified_type): Adjust.
14266         (dwarf2_read_abbrevs): Adjust.
14267         (load_partial_dies): Adjust.
14268         (read_partial_die): Adjust.
14269         (find_partial_die): Adjust.
14270         (guess_partial_die_structure_name): Adjust.
14271         (fixup_partial_die): Adjust.
14272         (read_attribute_value): Adjust.
14273         (read_addr_index): Adjust.
14274         (read_addr_index_from_leb128): Adjust.
14275         (read_str_index): Adjust.
14276         (dwarf2_string_attr): Adjust.
14277         (get_debug_line_section): Adjust.
14278         (dwarf_decode_line_header): Adjust.
14279         (lnp_state_machine::check_line_address): Adjust.
14280         (dwarf_decode_lines_1): Adjust.
14281         (dwarf_decode_lines): Adjust.
14282         (dwarf2_start_symtab): Adjust.
14283         (var_decode_location): Adjust.
14284         (new_symbol_full): Adjust.
14285         (dwarf2_const_value_data): Adjust.
14286         (dwarf2_const_value_attr): Adjust.
14287         (dwarf2_const_value): Adjust.
14288         (die_type): Adjust.
14289         (die_containing_type): Adjust.
14290         (build_error_marker_type): Adjust.
14291         (lookup_die_type): Adjust.
14292         (guess_full_die_structure_name): Adjust.
14293         (anonymous_struct_prefix): Adjust.
14294         (determine_prefix): Adjust.
14295         (dwarf2_name): Adjust.
14296         (follow_die_ref_or_sig): Adjust.
14297         (follow_die_offset): Adjust.
14298         (follow_die_ref): Adjust.
14299         (follow_die_sig_1): Adjust.
14300         (follow_die_sig): Adjust.
14301         (get_signatured_type): Adjust.
14302         (get_DW_AT_signature_type): Adjust.
14303         (decode_locdesc): Adjust.
14304         (dwarf_decode_macros): Adjust.
14305         (cu_debug_loc_section): Adjust.
14306         (fill_in_loclist_baton): Adjust.
14307         (dwarf2_symbol_mark_computed): Adjust.
14308         (init_one_comp_unit): Don't assign
14309         dwarf2_cu::dwarf2_per_objfile.
14310         (set_die_type): Adjust.
14311
14312 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14313
14314         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14315         <dwarf2_per_objfile>: New field.
14316         (dwarf2_per_objfile): Remove global.
14317         (get_dwarf2_per_objfile): New function.
14318         (set_dwarf2_per_objfile): New function.
14319         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14320         dwarf2_per_objfile.
14321         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14322         (read_abbrev_offset): Likewise.
14323         (read_indirect_string): Likewise.
14324         (read_indirect_line_string): Likewise.
14325         (read_indirect_string_at_offset): Likewise.
14326         (read_indirect_string_from_dwz): Likewise.
14327         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14328         dwarf2_per_objfile.
14329         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14330         (create_all_comp_units): Change objfile parameter to
14331         dwarf2_per_objfile.
14332         (create_all_type_units): Likewise.
14333         (process_queue): Add dwarf2_per_objfile parameter.
14334         (read_and_check_comp_unit_head): Likewise.
14335         (lookup_dwo_unit_in_dwp): Likewise.
14336         (get_dwp_file): Likewise.
14337         (process_cu_includes): Likewise.
14338         (struct free_dwo_file_cleanup_data): New struct.
14339         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14340         set_dwarf2_per_objfile.
14341         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14342         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14343         context, adjust calls.
14344         (dw2_instantiate_symtab): Likewise.
14345         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14346         (dw2_get_cu): Likewise.
14347         (create_cu_from_index_list): Change objfile parameter to
14348         dwarf2_per_objfile.
14349         (create_cus_from_index_list): Get dwarf2_per_objfile from
14350         context, adjust calls.
14351         (create_cus_from_index): Likewise.
14352         (create_signatured_type_table_from_index): Change objfile
14353         parameter to dwarf2_per_objfile.
14354         (create_signatured_type_table_from_debug_names): Change objfile
14355         parameter to dwarf2_per_objfile.
14356         (create_addrmap_from_index): Likewise.
14357         (create_addrmap_from_aranges): Likewise.
14358         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14359         (dw2_setup): Remove.
14360         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14361         context.
14362         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14363         get_dwarf2_per_objfile.
14364         (dw2_forget_cached_source_info): Likewise.
14365         (dw2_map_symtabs_matching_filename): Likewise.
14366         (struct dw2_symtab_iterator) <index>: Remove.
14367         <dwarf2_per_objfile>: New field.
14368         (dw2_symtab_iter_init): Replace index parameter with
14369         dwarf2_per_objfile.
14370         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14371         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14372         (dw2_print_stats): Likewise.
14373         (dw2_dump): Likewise.
14374         (dw2_expand_symtabs_for_function): Likewise.
14375         (dw2_expand_all_symtabs): Likewise.
14376         (dw2_expand_symtabs_with_fullname): Likewise.
14377         (dw2_expand_marked_cus): Replace index and objfile parameters
14378         with dwarf2_per_objfile.
14379         (dw_expand_symtabs_matching_file_matcher): Add
14380         dwarf2_per_objfile parameter and adjust calls.
14381         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14382         adjust calls.
14383         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14384         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14385         adjust calls.
14386         (create_cus_from_debug_names_list): Replace objfile parameter
14387         with dwarf2_per_objfile and adjust calls.
14388         (create_cus_from_debug_names): Likewise.
14389         (dwarf2_read_debug_names): Likewise.
14390         (mapped_debug_names::namei_to_name): Adjust call.
14391         (dw2_debug_names_iterator::next): Likewise.
14392         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14393         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14394         (dw2_debug_names_dump): Likewise.
14395         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14396         (dw2_debug_names_expand_symtabs_matching): Likewise.
14397         (dwarf2_initialize_objfile): Likewise.
14398         (dwarf2_build_psymtabs): Likewise.
14399         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14400         this_cu.
14401         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14402         (read_and_check_comp_unit_head): Likewise.
14403         (read_abbrev_offset): Likewise.
14404         (create_debug_type_hash_table): Likewise.
14405         (create_debug_types_hash_table): Likewise.
14406         (create_all_type_units): Replace objfile parameter with
14407         dwarf2_per_objfile.
14408         (add_type_unit): Add dwarf2_per_objfile parameter.
14409         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14410         with dwarf2_per_objfile.
14411         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14412         (lookup_dwp_signatured_type): Likewise.
14413         (lookup_signatured_type): Likewise.
14414         (read_cutu_die_from_dwo): Likewise.
14415         (init_tu_and_read_dwo_dies): Likewise.
14416         (init_cutu_and_read_dies): Likewise.
14417         (init_cutu_and_read_dies_no_follow): Likewise.
14418         (allocate_type_unit_groups_table): Add objfile parameter.
14419         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14420         (get_type_unit_group): Likewise.
14421         (process_psymtab_comp_unit): Update call.
14422         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14423         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14424         (print_tu_stats): Likewise.
14425         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14426         in void* parameter.
14427         (build_type_psymtabs): Change objfile parameter to
14428         dwarf2_per_objfile.
14429         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14430         passed in void* parameter.
14431         (process_skeletonless_type_units): Change objfile parameter to
14432         dwarf2_per_objfile.
14433         (set_partial_user): Likewise.
14434         (dwarf2_build_psymtabs_hard): Likewise.
14435         (read_comp_units_from_section): Likewise.
14436         (create_all_comp_units): Likewise.
14437         (scan_partial_symbols): Update calls.
14438         (add_partial_symbol): Likewise.
14439         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14440         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14441         (process_queue): Add dwarf2_per_objfile parameter.
14442         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14443         (compute_compunit_symtab_includes): Likewise.
14444         (process_cu_includes): Add dwarf2_per_objfile parameter.
14445         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14446         (process_full_type_unit): Likewise.
14447         (process_imported_unit_die): Update call.
14448         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14449         (read_file_scope): Likewise.
14450         (allocate_dwo_file_hash_table): Add objfile parameter.
14451         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14452         (create_cus_hash_table): Likewise.
14453         (create_dwp_hash_table): Likewise.
14454         (create_dwo_unit_in_dwp_v1): Likewise.
14455         (create_dwp_v2_section): Likewise.
14456         (create_dwo_unit_in_dwp_v2): Likewise.
14457         (lookup_dwo_unit_in_dwp): Likewise.
14458         (try_open_dwop_file): Likewise.
14459         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14460         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14461         cleanup to include a reference to dwarf2_per_objfile.
14462         (open_dwp_file): Add dwarf2_per_objfile parameter.
14463         (open_and_init_dwp_file): Likewise.
14464         (get_dwp_file): Likewise.
14465         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14466         (queue_and_load_all_dwo_tus): Update call.
14467         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14468         data.
14469         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14470         (dwarf2_ranges_process): Likewise.
14471         (dwarf2_get_pc_bounds): Likewise.
14472         (mark_common_block_symbol_computed): Likewise.
14473         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14474         (dwarf2_read_abbrevs): Update call.
14475         (read_partial_die): Use dwarf2_per_objfile from cu.
14476         (find_partial_die): Likewise.
14477         (fixup_partial_die): Likewise.
14478         (read_attribute_value): Likewise.
14479         (read_indirect_string_at_offset_from): Add objfile parameter.
14480         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14481         parameter.
14482         (read_indirect_string_from_dwz): Add objfile parameter.
14483         (read_indirect_string): Add objfile parameter.
14484         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14485         (read_addr_index): Use dwarf2_per_objfile from cu.
14486         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14487         call dw2_setup.
14488         (read_str_index): Use dwarf2_per_objfile from cu.
14489         (get_debug_line_section): Likewise.
14490         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14491         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14492         (new_symbol_full): Use dwarf2_per_objfile from cu.
14493         (build_error_marker_type): Likewise.
14494         (lookup_die_type): Likewise.
14495         (determine_prefix): Likewise.
14496         (follow_die_offset): Likewise.
14497         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14498         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14499         (dwarf2_fetch_die_type_sect_off): Likewise.
14500         (dwarf2_get_die_type): Likewise.
14501         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14502         (get_signatured_type): Likewise.
14503         (get_DW_AT_signature_type): Likewise.
14504         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14505         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14506         (cu_debug_loc_section): Likewise.
14507         (fill_in_loclist_baton): Likewise.
14508         (dwarf2_symbol_mark_computed): Likewise.
14509         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14510         dwarf2_per_objfile.
14511         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14512         parameter.
14513         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14514         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14515         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14516         (set_die_type): Use dwarf2_free_objfile from cu.
14517         (get_die_type_at_offset): Likewise.
14518         (dwarf2_per_objfile_free): Don't assign global variable.
14519         (debug_names) <constructor>: Add dwarf2_per_objfile
14520         parameter, update m_debugstrlookup construction.
14521         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14522         parameter.
14523         <m_dwarf2_per_objfile>: New field.
14524         <lookup>: Use m_dwarf2_per_objfile.
14525         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14526         (psyms_seen_size): Likewise.
14527         (write_gdbindex): Replace objfile parameter with
14528         dwarf2_per_objfile.
14529         (write_debug_names): Likewise.
14530         (write_psymtabs_to_index): Likewise.
14531         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14532         calls.
14533
14534 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14535
14536         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14537         <dwarf2_per_objfile>: New field.
14538         (struct dwarf2_per_cu_data) <objfile>: Remove.
14539         <dwarf2_per_objfile>: New field.
14540         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14541         of objfile.
14542         (create_signatured_type_table_from_index): Likewise.
14543         (create_debug_type_hash_table): Likewise.
14544         (fill_in_sig_entry_from_dwo_entry): Likewise.
14545         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14546         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14547         objfile.
14548         (create_partial_symtab): Access objfile through
14549         dwarf2_per_objfile.
14550         (process_psymtab_comp_unit_reader): Likewise.
14551         (read_comp_units_from_section): Likewise.
14552         (scan_partial_symbols): Likewise.
14553         (add_partial_symbol): Likewise.
14554         (add_partial_subprogram): Likewise.
14555         (peek_die_abbrev): Likewise.
14556         (fixup_go_packaging): Likewise.
14557         (process_full_comp_unit): Likewise.
14558         (process_full_type_unit): Likewise.
14559         (process_imported_unit_die): Likewise.
14560         (dwarf2_compute_name): Likewise.
14561         (dwarf2_physname): Likewise.
14562         (read_import_statement): Likewise.
14563         (create_cus_hash_table): Assign dwarf2_physname instead of
14564         objfile.
14565         (read_func_scope): Access objfile through dwarf2_per_objfile.
14566         (read_lexical_block_scope): Likewise.
14567         (read_call_site_scope): Likewise.
14568         (read_variable): Likewise.
14569         (dwarf2_rnglists_process): Likewise.
14570         (dwarf2_ranges_process): Likewise.
14571         (dwarf2_ranges_read): Likewise.
14572         (dwarf2_record_block_ranges): Likewise.
14573         (dwarf2_add_field): Likewise.
14574         (dwarf2_add_member_fn): Likewise.
14575         (read_structure_type): Likewise.
14576         (process_structure_scope): Likewise.
14577         (read_enumeration_type): Likewise.
14578         (read_array_type): Likewise.
14579         (read_common_block): Likewise.
14580         (read_namespace_type): Likewise.
14581         (read_namespace): Likewise.
14582         (read_module_type): Likewise.
14583         (read_tag_pointer_type): Likewise.
14584         (read_tag_ptr_to_member_type): Likewise.
14585         (read_tag_string_type): Likewise.
14586         (read_subroutine_type): Likewise.
14587         (read_typedef): Likewise.
14588         (read_base_type): Likewise.
14589         (attr_to_dynamic_prop): Likewise.
14590         (read_subrange_type): Likewise.
14591         (read_unspecified_type): Likewise.
14592         (load_partial_dies): Likewise.
14593         (read_partial_die): Likewise.
14594         (find_partial_die): Likewise.
14595         (guess_partial_die_structure_name): Likewise.
14596         (fixup_partial_die): Likewise.
14597         (read_attribute_value): Likewise.
14598         (read_addr_index_from_leb128): Likewise.
14599         (dwarf2_read_addr_index): Likewise.
14600         (dwarf2_string_attr): Likewise.
14601         (lnp_state_machine::check_line_address): Likewise.
14602         (dwarf_decode_lines_1): Likewise.
14603         (dwarf_decode_lines): Likewise.
14604         (dwarf2_start_symtab): Likewise.
14605         (var_decode_location): Likewise.
14606         (new_symbol_full): Likewise.
14607         (dwarf2_const_value_data): Likewise.
14608         (dwarf2_const_value_attr): Likewise.
14609         (dwarf2_const_value): Likewise.
14610         (die_type): Likewise.
14611         (die_containing_type): Likewise.
14612         (lookup_die_type): Likewise.
14613         (guess_full_die_structure_name): Likewise.
14614         (anonymous_struct_prefix): Likewise.
14615         (dwarf2_name): Likewise.
14616         (follow_die_ref_or_sig): Likewise.
14617         (follow_die_offset): Likewise.
14618         (follow_die_ref): Likewise.
14619         (dwarf2_fetch_die_loc_sect_off): Likewise.
14620         (dwarf2_fetch_constant_bytes): Likewise.
14621         (dwarf2_fetch_die_type_sect_off): Likewise.
14622         (dwarf2_get_die_type): Likewise.
14623         (follow_die_sig): Likewise.
14624         (decode_locdesc): Likewise.
14625         (dwarf2_per_cu_objfile): Likewise.
14626         (dwarf2_per_cu_text_offset): Likewise.
14627         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
14628         objfile.
14629         (set_die_type): Access objfile through
14630         dwarf2_per_objfile.
14631
14632 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14633
14634         * valprint.c (converted_character_d): Remove typedef.
14635         (DEF_VEC_O (converted_character_d)): Remove.
14636         (count_next_character): Use std::vector.
14637         (print_converted_chars_to_obstack): Likewise.
14638         (generic_printstr): Likewise.
14639
14640 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14641
14642         * xml-support.h (struct gdb_xml_value): Add constructor.
14643         <value>: Change type to unique_xmalloc_ptr.
14644         (gdb_xml_value_s): Remove typedef.
14645         (DEF_VEC_O (gdb_xml_value_s)): Remove.
14646         (gdb_xml_element_start_handler): Change parameter type to
14647         std::vector.
14648         (xml_find_attribute): Likewise.
14649         * xml-support.c (xml_find_attribute): Change parameter type to
14650         std::vector and adjust.
14651         (gdb_xml_values_cleanup): Remove.
14652         (gdb_xml_parser::start_element): Adjust to std::vector.
14653         (xinclude_start_include): Change paraeter type to std::vector
14654         and adjust.
14655         * btrace.c (check_xml_btrace_version): Likewise.
14656         (parse_xml_btrace_block): Likewise.
14657         (parse_xml_btrace_pt_config_cpu): Likewise.
14658         (parse_xml_btrace_pt): Likewise.
14659         (parse_xml_btrace_conf_bts): Likewise.
14660         (parse_xml_btrace_conf_pt): Likewise.
14661         * memory-map.c (memory_map_start_memory): Likewise.
14662         (memory_map_start_property): Likewise.
14663         * osdata.c (osdata_start_osdata): Likewise.
14664         (osdata_start_item): Likewise.
14665         (osdata_start_column): Likewise.
14666         * remote.c (start_thread): Likewise.
14667         * solib-aix.c (library_list_start_library): Likewise.
14668         (library_list_start_list): Likewise.
14669         * solib-svr4.c (library_list_start_library): Likewise.
14670         (svr4_library_list_start_list): Likewise.
14671         * solib-target.c (library_list_start_segment): Likewise.
14672         (library_list_start_section): Likewise.
14673         (library_list_start_library): Likewise.
14674         (library_list_start_list): Likewise.
14675         * tracepoint.c (traceframe_info_start_memory): Likewise.
14676         (traceframe_info_start_tvar): Likewise.
14677         * xml-syscall.c (syscall_start_syscall): Likewise.
14678         * xml-tdesc.c (tdesc_start_target): Likewise.
14679         (tdesc_start_feature): Likewise.
14680         (tdesc_start_reg): Likewise.
14681         (tdesc_start_union): Likewise.
14682         (tdesc_start_struct): Likewise.
14683         (tdesc_start_flags): Likewise.
14684         (tdesc_start_enum): Likewise.
14685         (tdesc_start_field): Likewise.
14686         (tdesc_start_enum_value): Likewise.
14687         (tdesc_start_vector): Likewise.
14688
14689 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14690
14691         * extension.h (struct xmethod_worker) <clone>: Remove.
14692         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
14693         Remove.
14694         (python_xmethod_worker::clone): Remove.
14695         * valops.c (find_overload_match): Use std::move instead of
14696         clone.
14697
14698 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14699
14700         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
14701         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
14702         <free_xmethod_worker_data>: Remove.
14703         <get_matching_xmethod_workers>: Chance VEC to std::vector.
14704         <get_xmethod_arg_types>: Remove.
14705         <get_xmethod_result_type>: Remove.
14706         <invoke_xmethod>: Remove.
14707         * extension.c (new_xmethod_worker): Remove.
14708         (clone_xmethod_worker): Remove.
14709         (get_matching_xmethod_workers): Return void, pass std::vector by
14710         pointer.
14711         (get_xmethod_arg_types): Rename to...
14712         (xmethod_worker::get_arg_types): ... this, and adjust.
14713         (get_xmethod_result_type): Rename to...
14714         (xmethod_worker::get_result_type): ... this, and adjust.
14715         (invoke_xmethod): Remove.
14716         (free_xmethod_worker): Remove.
14717         (free_xmethod_worker_vec): Remove.
14718         * extension.h (enum ext_lang_rc): Move here from
14719         extension-priv.h.
14720         (struct xmethod_worker): Add constructor and destructor.
14721         <data>: Remove.
14722         <value>: Remove.
14723         <invoke, clone, do_get_result_type, do_get_arg_types>: New
14724         virtual pure methods.
14725         <get_arg_types, get_result_type>: New methods.
14726         (xmethod_worker_ptr): Remove typedef.
14727         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
14728         (xmethod_worker_vec): Remove typedef.
14729         (xmethod_worker_up): New typedef.
14730         (invoke_xmethod): Remove.
14731         (clone_xmethod_worker): Remove.
14732         (free_xmethod_worker): Remove.
14733         (free_xmethod_worker_vec): Remove.
14734         (get_xmethod_arg_types): Remove.
14735         (get_xmethod_result_type): Remove.
14736         * valops.c (find_method_list): Use std::vector, don't use
14737         intermediate vector.
14738         (value_find_oload_method_list): Use std::vector.
14739         (find_overload_match): Use std::vector.
14740         (find_oload_champ): Use std::vector.
14741         * value.c (value_free): Use operator delete.
14742         (value_of_xmethod): Rename to...
14743         (value_from_xmethod): ... this.  Don't assign
14744         xmethod_worker::value, take rvalue-reference.
14745         (result_type_of_xmethod): Adjust.
14746         (call_xmethod): Adjust.
14747         * value.h: Include extension.h.
14748         (struct xmethod_worker): Don't forward-declare.
14749         (value_of_xmethod): Rename to...
14750         (value_from_xmethod): ... this, take rvalue-reference.
14751         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
14752         (struct python_xmethod_worker): ... this, add constructor and
14753         destructor.
14754         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
14755         (gdbpy_free_xmethod_worker_data): Rename to...
14756         (python_xmethod_worker::~python_xmethod_worker): ... this and
14757         adjust.
14758         (gdbpy_clone_xmethod_worker_data): Rename to...
14759         (python_xmethod_worker::clone): ... this and adjust.
14760         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
14761         temporary vector.
14762         (gdbpy_get_xmethod_arg_types): Rename to...
14763         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
14764         (gdbpy_get_xmethod_result_type): Rename to...
14765         (python_xmethod_worker::do_get_result_type): ... this and
14766         adjust.
14767         (gdbpy_invoke_xmethod): Rename to...
14768         (python_xmethod_worker::invoke): ... this and adjust.
14769         (new_python_xmethod_worker): Rename to...
14770         (python_xmethod_worker::python_xmethod_worker): ... this and
14771         adjust.
14772         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
14773         Remove.
14774         (gdbpy_free_xmethod_worker_data): Remove.
14775         (gdbpy_get_matching_xmethod_workers): Use std::vector.
14776         (gdbpy_get_xmethod_arg_types): Remove.
14777         (gdbpy_get_xmethod_result_type): Remove.
14778         (gdbpy_invoke_xmethod): Remove.
14779         * python/python.c (python_extension_ops): Remove obsolete
14780         callbacks.
14781
14782 2018-01-05  Pedro Alves  <palves@redhat.com>
14783
14784         PR gdb/18653
14785         * common/signals-state-save-restore.c
14786         (save_original_signals_state): New parameter 'quiet'.  Warn if we
14787         find a custom handler preinstalled, instead of internal erroring.
14788         But only warn if !quiet.
14789         * common/signals-state-save-restore.h
14790         (save_original_signals_state): New parameter 'quiet'.
14791         * main.c (captured_main_1): Move save_original_signals_state call
14792         after option handling, and pass QUIET.
14793
14794 2018-01-05  Pedro Alves  <palves@redhat.com>
14795
14796         * spu-tdep.c (spu_catch_start): Pass
14797         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
14798
14799 2018-01-05  Pedro Alves  <palves@redhat.com>
14800
14801         PR gdb/22670
14802         * ada-lang.c (literal_symbol_name_matcher): New function.
14803         (ada_get_symbol_name_matcher): Use it for
14804         symbol_name_match_type::SEARCH_NAME.
14805         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
14806         it down instead of assuming symbol_name_match_type::FULL.
14807         * block.h (block_lookup_symbol): New parameter 'match_type'.
14808         * c-valprint.c (print_unpacked_pointer): Use
14809         lookup_symbol_search_name instead of lookup_symbol.
14810         * compile/compile-object-load.c (get_out_value_type): Pass down
14811         symbol_name_match_type::SEARCH_NAME.
14812         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
14813         symbol_name_match_type::FULL.
14814         * cp-support.c (cp_get_symbol_name_matcher): Handle
14815         symbol_name_match_type::SEARCH_NAME.
14816         * infrun.c (insert_exception_resume_breakpoint): Use
14817         lookup_symbol_search_name.
14818         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
14819         * psymtab.c (maintenance_check_psymtabs): Use
14820         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
14821         * stack.c (print_frame_args): Use lookup_symbol_search_name and
14822         SYMBOL_SEARCH_NAME.
14823         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
14824         if symbol_name_match_type::SEARCH_NAME.
14825         (lookup_symbol_in_language): Pass down
14826         symbol_name_match_type::FULL.
14827         (lookup_symbol_search_name): New.
14828         (lookup_language_this): Pass down
14829         symbol_name_match_type::SEARCH_NAME.
14830         (lookup_symbol_aux, lookup_local_symbol): New parameter
14831         'match_type'.  Pass it down.
14832         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
14833         (lookup_symbol_search_name): New declaration.
14834         (lookup_symbol_in_block): New 'match_type' parameter.
14835
14836 2018-01-05  Pedro Alves  <palves@redhat.com>
14837
14838         PR gdb/22670
14839         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
14840         ada_lookup_symbol.
14841         (ada_lookup_symbol): Reimplement in terms of
14842         ada_lookup_symbol_list, bits factored out from
14843         ada_lookup_encoded_symbol.
14844
14845 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14846
14847         * ada-exp.y (write_object_renaming): When subscripting an array
14848         using a symbol as the index, pass the block in call to
14849         ada_lookup_encoded_symbol when looking that symbol up.
14850
14851 2018-01-05  Jerome Guitton  <guitton@adacore.com>
14852
14853         * ada-lang.c (ada_array_length): Use ada_index_type instead of
14854         TYPE_INDEX_TYPE.
14855
14856 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14857
14858         * ada-lang.c (ada_to_fixed_value_create): Add handling of
14859         the case where VALUE_LVAL (val0) is not lval_memory.
14860
14861 2018-01-05  Xavier Roirand  <roirand@adacore.com>
14862
14863         * ada-valprint.c (print_optional_low_bound): Handle
14864         character-indexed array printing like boolean-indexed array
14865         printing.
14866
14867 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14868
14869         * NEWS: Create a new section for the next release branch.
14870         Rename the section of the current branch, now that it has
14871         been cut.
14872
14873 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14874
14875         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
14876         * version.in: Bump version to 8.1.50.DATE-git.
14877
14878 2018-01-03  Xavier Roirand  <roirand@adacore.com>
14879
14880         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
14881         Add field.
14882         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
14883         Add field.
14884         (default_exception_support_info) <catch_handlers_sym>: Add field.
14885         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
14886         (ada_exception_name_addr_1): Add "catch handlers" handling.
14887         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
14888         Update all callers.
14889         (create_excep_cond_exprs) <ex>: Add parameter.
14890         (re_set_exception): Update create_excep_cond_exprs call.
14891         (print_it_exception, print_one_exception, print_mention_exception)
14892         (print_recreate_exception): Add "catch handler" handling.
14893         (allocate_location_catch_handlers, re_set_catch_handlers)
14894         (check_status_catch_handlers, print_it_catch_handlers)
14895         (print_one_catch_handlers, print_mention_catch_handlers)
14896         (print_recreate_catch_handlers): New function.
14897         (catch_handlers_breakpoint_ops): New variable.
14898         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
14899         Add parameter.  Add "catch handler" handling.
14900         (ada_exception_sym_name, ada_exception_breakpoint_ops):
14901         Add "catch handler" handling.
14902         (ada_exception_catchpoint_cond_string): Add "catch handler"
14903         handling.
14904         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
14905         call.
14906         (catch_ada_handlers_command): New function.
14907         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
14908         operations structure.
14909         (_initialize_ada_language): Add "catch handlers" command entry.
14910         * NEWS: Document "catch handlers" feature.
14911
14912 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14913
14914         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
14915         account when creating the array type of the slice.
14916         (ada_value_slice): Likewise.
14917
14918 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14919
14920         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
14921         New enum value.
14922         (create_array_type_with_stride): Add byte_stride_prop parameter.
14923         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
14924         New parameter.  Update all callers in this file.
14925         (array_type_has_dynamic_stride): New function.
14926         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
14927         of arrays with dynamic byte strides.
14928         * dwarf2read.c (read_array_type): Add support for dynamic
14929         DW_AT_byte_stride attributes.
14930
14931 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14932
14933         * dwarf2read.c (read_unspecified_type): Treat
14934         DW_TAG_enumeration_type DIEs from Ada units as stubs.
14935
14936 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14937
14938         Update copyright year range in all GDB files.
14939
14940 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
14941
14942         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
14943         and gdb/testsuite/gdb.base/step-line.c.
14944
14945 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14946
14947         * copyright.py (main): Dump the contents of
14948         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
14949         even if BY_HAND is empty.
14950
14951 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14952
14953         * top.c (print_gdb_version): Update Copyright year in version
14954         message.
14955
14956 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14957
14958         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
14959
14960 For older changes see ChangeLog-2017.
14961 \f
14962 Local Variables:
14963 mode: change-log
14964 left-margin: 8
14965 fill-column: 74
14966 version-control: never
14967 coding: utf-8
14968 End: