[PowerPC] Refactor have_ initializers in rs6000-tdep.c
[external/binutils.git] / gdb / ChangeLog
1 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2
3         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
4         second initializer line for the have_* variables.  Initialize
5         have_fpu to 0 instead of 1.
6
7 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
8
9         * arch/ppc-linux-common.c (ppc_linux_match_description):
10         Parenthesize tdesc assignements and indent them properly.
11
12 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
13
14         * ppc-linux-nat.c (fetch_register): Change if statement to else
15         if.
16         (store_register): Likewise.
17
18 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
19
20         * rs6000-tdep.c: Remove reggroups.h include.
21         (rs6000_pseudo_register_reggroup_p): Remove.
22         (rs6000_gdbarch_init): Remove call to
23         set_tdesc_pseudo_register_reggroup_p.
24
25 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
26
27         * reggroups.c (default_register_reggroup_p): Return true for
28         decfloat registers and float_reggroup.
29
30 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
31
32         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
33         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
34         ppc_linux_collect_vrregset by regcache_collect_regset.
35
36 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
37
38         * linux-tdep.c (linux_collect_regset_section_cb): Use
39         std::vector<gdb_byte> instead of char * and malloc for buf.
40         Remove xfree.
41
42 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
43
44         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
45         symtab_start instead of always using language_unknown.
46
47 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
48
49         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
50         READ_P parameter, catch and ignore register access errors from
51         either the old or new MISA location.
52         (riscv_has_feature): Update call to riscv_read_misa_reg.
53
54 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
55
56         * python/py-function.c (convert_values_to_python): Return
57         gdbpy_ref<>.  Add header comment.
58         (fnpy_call): Adjust.
59
60 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
61
62         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
63         (cmdpy_completer_handle_brkchars): Adjust.
64         (cmdpy_completer): Adjust.
65
66 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
67
68         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
69         Pass correct regnum to raw_supply_zeroed.
70
71 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
72
73         * regcache.c (cooked_read_test): Add CSKY to the list of
74         architectures with a save_reggroup
75
76 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
77
78         PR gdb/23368
79         * infrun.c (follow_exec): In the follow_exec_mode_new case,
80         transfer terminal state from old new new inferior.
81         * terminal.h (swap_terminal_info): New function.
82         * inflow.c (swap_terminal_info): New function.
83
84 2018-10-23  Tom Tromey  <tom@tromey.com>
85
86         * record-btrace.c (get_thread_current_frame_id): Rename from
87         get_thread_current_frame.  Return a frame_id.
88         (record_btrace_start_replaying): Update.
89
90 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
91
92         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
93         for CSRs.
94
95 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
96
97         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
98         have_nonsteppable_watchpoint attribute to 1.
99
100 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
101
102         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
103         register names.
104         (struct register_alias): Rename to...
105         (struct riscv_register_alias): ...this, and update comment.
106         (riscv_register_aliases): Update type, and alias names.  Remove
107         CSR names from this list.
108         (riscv_register_name): Use riscv_gdb_reg_names for int and float
109         register names.  Add an extra assertion.
110         (riscv_is_regnum_a_named_csr): New function.
111         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
112
113 2018-10-22  Jim Wilson  <jimw@sifive.com>
114
115         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
116         FP reg smaller than FP reg size, and fill with -1 instead of 0.
117
118         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
119         (riscv_register_type): Use them.
120         (riscv_print_one_register_info): Handle union of floats same as float.
121         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
122         riscv_fpreg_q_type fields.
123
124 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
125
126         * gdbarch.sh (gdbarch_num_cooked_regs): New.
127         * gdbarch.h: Re-generate.
128         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
129         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
130         * eval.c (evaluate_subexp_standard): Likewise.
131         * findvar.c (value_of_register): Likewise.
132         (value_of_register_lazy): Likewise.
133         (address_from_register): Likewise.
134         * frame.c (get_frame_register_bytes): Likewise.
135         * gdbarch-selftests.c (register_to_value_test): Likewise.
136         * h8300-tdep.c (h8300_register_type): Likewise.
137         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
138         (i386_svr4_reg_to_regnum): Likewise.
139         * infcmd.c (default_print_registers_info): Likewise.
140         (registers_info): Likewise.
141         (print_vector_info): Likewise.
142         (default_print_float_info): Likewise.
143         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
144         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
145         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
146         (mi_cmd_data_list_changed_registers): Likewise.
147         (mi_cmd_data_list_register_values): Likewise.
148         (mi_cmd_data_write_register_values): Likewise.
149         (mi_cmd_trace_frame_collected): Likewise.
150         * mips-tdep.c (print_gp_register_row): Likewise.
151         (mips_print_registers_info): Likewise.
152         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
153         * regcache.c (init_regcache_descr): Likewise.
154         (register_size): Likewise.
155         (register_dump::dump): Likewise.
156         (cooked_read_test): Likewise.
157         (cooked_write_test): Likewise.
158         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
159         (rs6000_gdbarch_init): Likewise.
160         * stabsread.c (stab_reg_to_regnum): Likewise.
161         * stack.c (info_frame_command): Likewise.
162         * target-descriptions.c (tdesc_register_name): Likewise.
163         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
164         * tui/tui-regs.c (tui_show_register_group): Likewise.
165         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
166         (user_reg_map_regnum_to_name): Likewise.
167         (value_of_user_reg): Likewise.
168         (maintenance_print_user_registers): Likewise.
169         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
170         (xtensa_register_name): Likewise.
171         (xtensa_register_type): Likewise.
172         (xtensa_reg_to_regnum): Likewise.
173         (xtensa_pseudo_register_read): Likewise.
174         (xtensa_pseudo_register_write): Likewise.
175
176 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
177
178         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
179         correctly-sized buffer with raw_read.
180         (amd64_pseudo_register_write): Use correctly-sized buffer for
181         raw_read/raw_write.
182
183 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
184
185         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
186         in add_prefix_cmd of set print type.
187
188 2018-10-19  Tom Tromey  <tom@tromey.com>
189
190         PR tui/18388:
191         * NEWS: Mention tabset deprecation.
192         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
193         (update_tab_width): New function.
194         (tui_set_tab_width, tui_show_tab_width): New functions.
195         (tui_set_tab_width_command): Use update_tab_width.
196         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
197         Add new "set tui tab-width" command.
198         * tui/tui-source.c (tui_set_source_content): Update.
199         * tui/tui-disasm.c (tui_set_disassem_content): Update.
200         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
201         Don't declare.
202         (tui_tab_width): Declare.
203         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
204         (tui_set_default_tab_len): Remove.
205
206 2018-10-19  Tom Tromey  <tom@tromey.com>
207
208         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
209         (key_is_backspace, tui_getc): Don't declare.
210         * tui/tui-io.c (key_is_start_sequence): Now static.
211         (key_is_end_sequence, key_is_backspace): Remove.
212         (tui_getc): Now static.
213
214 2018-10-19  Tom Tromey  <tom@tromey.com>
215
216         * symfile.c (reread_symbols): Clear "static_links".
217
218 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
219
220         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
221         define.
222         (aarch64_linux_sigframe_init): Extra boundary checks.
223
224 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
225
226         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
227         the possibly non-existent tdesc type 'vec128', but the type of raw
228         register v16 instead.
229
230 2018-10-19  Gary Benson <gbenson@redhat.com>
231
232         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
233
234 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
235
236         PR cli/23785
237         * cli/cli-dump.c (restore_binary_file): Check if "file" is
238         NULL.
239
240 2018-10-17  Paul Koning  <paul_koning@dell.com>
241
242         * charset.c (convert_between_encodings): Fix unsigned overflow.
243
244 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
245
246         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
247         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
248         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
249         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
250         New functions.
251         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
252         and fbsd_info_proc_mappings_header.
253         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
254         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
255         New.
256
257 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
258
259         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
260         Solaris Maintainer.
261
262 2018-10-15  Tom Tromey  <tom@tromey.com>
263
264         * tui/tui.c (strcat_to_buf): Remove casts.
265         * tui/tui-winsource.c (tui_show_source_line)
266         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
267         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
268         * tui/tui-windata.c (tui_first_data_item_displayed)
269         (tui_delete_data_content_windows, tui_erase_data_content)
270         (tui_display_all_data, tui_display_data_from)
271         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
272         * tui/tui-win.c (tui_set_win_height)
273         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
274         casts.
275         * tui/tui-win.c (tui_resize_all): Remove casts.
276         (tui_scroll_backward_command, tui_set_focus)
277         (tui_set_tab_width_command): Likewise.
278         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
279         * tui/tui-regs.c (tui_show_register_group): Remove cast.
280         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
281         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
282         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
283         Remove casts.
284
285 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
286
287         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
288         AArch64/ARM maintainer.
289
290 2018-10-11  Gary Benson <gbenson@redhat.com>
291
292         * interps.h (interp::m_name): Make private and mutable.
293         * interps.c (interp::~interp): Free m_name.
294
295 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
296             Simon Marchi <simark@simark.ca>
297
298         * README (`configure' options): Add documentation for new
299         "--enable-unit-tests" option.
300         * acinclude.m4: Include "selftest.m4".
301         * configure: Regenerate.
302         * configure.ac: Use "GDB_AC_SELFTEST".
303         * maint.c (maintenance_selftest): Update message informing
304         that selftests have been disabled.
305         (maintenance_info_selftests): Likewise.
306         * selftest.m4: New file.
307
308 2018-10-10  Gary Benson <gbenson@redhat.com>
309
310         * remote.c (remote_target::remote_send_printf): Add
311         missing va_end found by Coverity.
312
313 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
314
315         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
316
317 2018-10-09  Tom Tromey  <tom@tromey.com>
318
319         * configure: Rebuild.
320         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
321         * NEWS: Update --enable-ubsan documentation.
322
323 2018-10-09  Gary Benson <gbenson@redhat.com>
324
325         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
326         found by Coverity.
327
328 2018-10-08  Tom Tromey  <tom@tromey.com>
329
330         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
331         variable.
332         (riscv_fbsd_init_abi): Likewise.
333
334 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
335         * valops.c (value_struct_elt_for_reference): Rename local variable
336         to work around the shadowing a previous local warning.
337
338 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
339
340         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
341         * NEWS: Mention new FreeBSD/riscv native configuration.
342         * configure.host: Add riscv*-*-freebsd*.
343         * configure.nat: Likewise.
344         * riscv-fbsd-nat.c: New file.
345
346 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
347
348         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
349         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
350         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
351         * NEWS: Mention new FreeBSD/riscv target.
352         * configure.tgt: Add riscv*-*-freebsd*.
353         * riscv-fbsd-tdep.c: New file.
354         * riscv-fbsd-tdep.h: New file.
355
356 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
357
358         * regcache.h (struct regcache_map_entry): Note that this type can
359         be used with traditional frame caches.
360         * trad-frame.c (trad_frame_set_reg_regmap): New.
361         * trad-frame.h (trad_frame_set_reg_regmap): New.
362
363 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
364
365         PR c++/16841
366         * valops.c (get_virtual_base_offset): New function.
367         (value_struct_elt_for_reference): Use it to get virtual base offset
368         and add it in calculating class member address.
369
370 2018-10-08   John Darrington <john@darrington.wattle.id.au>
371
372     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
373       (check_producer): Check if the producer is codewarrior.
374       (producer_is_codewarrior): New function.
375       (lnp_state_machine::record_line): Ignore is_stmt flag for records
376        produced by codewarrior.
377       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
378
379 2018-10-06  Tom Tromey  <tom@tromey.com>
380
381         PR python/19399:
382         * python/py-inferior.c: Add "architecture" entry.
383         (infpy_architecture): New function.
384
385 2018-10-06  Tom Tromey  <tom@tromey.com>
386
387         PR python/21765:
388         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
389         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
390         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
391         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
392
393 2018-10-06  Tom Tromey  <tom@tromey.com>
394
395         PR build/17077:
396         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
397         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
398         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
399         #include.
400
401 2018-10-06  Tom Tromey  <tom@tromey.com>
402
403         * python/py-breakpoint.c (bppy_get_location): Handle a
404         bp_breakpoint without a location.
405
406 2018-10-06  Tom Tromey  <tom@tromey.com>
407
408         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
409         (_RegEx): Reformat help text.
410         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
411         (AnyCallerIs, AnyCallerMatches): Reformat help text.
412         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
413         text.
414         * python/lib/gdb/command/xmethods.py (InfoXMethod)
415         (EnableXMethod, DisableXMethod): Remove help indentation.
416         Capitalize meta-syntactic variables.
417         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
418         (EnableUnwinder, DisableUnwinder): Remove help indentation.
419         Capitalize meta-syntactic variables.
420         * python/lib/gdb/command/explore.py (ExploreCommand)
421         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
422         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
423         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
424         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
425         Remove help indentation.
426         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
427         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
428         (DisableFrameFilter, SetFrameFilterPriority)
429         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
430
431 2018-10-06  Tom Tromey  <tom@tromey.com>
432
433         PR tui/28819:
434         * tui/tui-io.c (gdb_wgetch): New function.
435         (tui_mld_getc, tui_getc): Use it.
436
437 2018-10-05  Tom Tromey  <tom@tromey.com>
438
439         * sol-thread.c (sol_thread_target::wait): Rename inner
440         "save_ptid".
441
442 2018-10-04  Tom Tromey  <tom@tromey.com>
443
444         * configure: Rebuild.
445         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
446
447 2018-10-04  Tom Tromey  <tom@tromey.com>
448
449         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
450         declaration of "block".
451
452 2018-10-04  Tom Tromey  <tom@tromey.com>
453
454         * common/filestuff.c (fdwalk): Remove inner declaration of
455         "result".
456
457 2018-10-04  Tom Tromey  <tom@tromey.com>
458
459         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
460         "structs_addr" and hoist declaration.
461
462 2018-10-04  Tom Tromey  <tom@tromey.com>
463
464         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
465         variable "size".
466
467 2018-10-04  Tom Tromey  <tom@tromey.com>
468
469         * mdebugread.c (parse_partial_symbols): Use std::string.
470
471 2018-10-04  Tom Tromey  <tom@tromey.com>
472
473         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
474         * p-valprint.c (pascal_val_print): Split inner "i" variable.
475         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
476         header.
477         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
478         more inner scope.
479         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
480         * varobj.c (varobj_update): Rename inner "newobj",
481         "type_changed".
482         * valprint.c (generic_emit_char): Rename inner "buf".
483         * valops.c (find_overload_match): Rename inner "temp".
484         (value_struct_elt_for_reference): Declare "v" in more inner
485         scope.
486         * v850-tdep.c (v850_push_dummy_call): Rename "len".
487         * unittests/array-view-selftests.c (run_tests): Rename inner
488         "vec".
489         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
490         header.
491         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
492         "tsv" in more inner scope.
493         (print_one_static_tracepoint_marker): Rename inner
494         "tuple_emitter".
495         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
496         (tic6x_push_dummy_call): Don't redeclare "addr".
497         * target-float.c: Declare "dto" lower.
498         * symtab.c (lookup_local_symbol): Rename inner "sym".
499         (find_pc_sect_line): Rename inner "pc".
500         * stack.c (print_frame): Don't redeclare "gdbarch".
501         (return_command): Rename inner "gdbarch".
502         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
503         "sp".
504         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
505         header.
506         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
507         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
508         scope.
509         * remote.c (remote_target::update_thread_list): Don't redeclare
510         "tp".
511         (remote_target::process_initial_stop_replies): Rename inner
512         "thread".
513         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
514         (remote_target::wait_as): Don't redeclare "stop_reply".
515         (remote_target::get_thread_local_address): Rename inner
516         "result".
517         (remote_target::get_tib_address): Likewise.
518
519         * regcache.c (cooked_read_test): Rename "regnum".
520         * record-btrace.c (cmd_record_btrace_start): Rename inner
521         "exception".
522         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
523         loop header.
524         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
525         header.
526         (ppu2spu_sniffer): Rename inner "buf".
527         * parse.c (operator_check_standard): Rename inner "type",
528         "objfile".
529         * p-valprint.c (pascal_val_print): Introduce new scope for
530         "low_bound", "high_bound".
531         * p-exp.y (yylex): Declare "i" in loop header.
532         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
533         Lower declaration of "s".
534         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
535         header.
536         (nios2_push_dummy_call): Rename "len".
537         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
538         "buf".
539         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
540         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
541         (linux_xfer_osdata_modules): Likewise.
542         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
543         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
544         (mips_o64_push_dummy_call): Likewise.
545         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
546         "op".
547         * mi/mi-main.c (list_available_thread_groups): Rename inner
548         "tuple_emitter".
549         (mi_cmd_data_read_memory): Rename inner "opts".
550         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
551         "tuple_emitter".
552         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
553         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
554         more inner scope.
555         (parse_partial_symbols): Rename inner "pst", "p", "name"
556         * main.c (captured_main_1): Rename inner "i"s.
557         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
558         "oso2".
559         * linux-tdep.c (linux_info_proc): Rename inner "filename".
560         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
561         * infrun.c (handle_no_resumed): Don't redeclare "thread".
562         (handle_signal_stop): Rename inner "gdbarch".
563         (handle_command): Declare "signum" in loop header.
564         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
565         "status".
566         (examine_prologue): Rename inner "sol" and "sof".
567         (ia64_extract_return_value): Rename inner "val".  Declare another
568         "val" in a more inner scope.
569         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
570         inner scope.
571         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
572         "except".
573         * findvar.c (default_read_var_value): Don't redeclare "addr".
574         * f-exp.y (yylex): Declare "i" in loop header.
575         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
576         Rename inner "type", "expect_type".
577         (evaluate_subexp_for_sizeof): Rename inner "pc".
578         * elfread.c (elf_symfile_read): Rename inner "abfd".
579         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
580         "bytes_read".
581         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
582         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
583         (dwarf_decode_line_header): Rename inner "lh".
584         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
585         "offset".  Declare "i" in loop header.
586         (disassemble_dwarf_expression): Rename inner "addr_size".
587         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
588         inner "result".
589         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
590         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
591         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
592         "inner_list_emitter".
593         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
594         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
595         declaration in a block.
596         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
597         * cp-valprint.c (cp_print_value_fields): Don't redeclare
598         "obstack_final_size".
599         * cp-support.c (inspect_type): Declare "i" in loop header.
600         * compile/compile.c (compile_instance::insert_symbol_error):
601         Rename inner "e".
602         * common/agent.c (agent_run_command): Remove inner "ret"
603         declaration.
604         * coffread.c (coff_symfile_read): Rename inner "name".
605         (coff_symfile_read): Rename inner "abfd".
606         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
607         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
608         "high".
609         * c-exp.y (lex_one_token): Move "len" declaration lower.
610         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
611         "gdbarch".
612         (create_exception_master_breakpoint): Likewise.  Don't redeclare
613         "b".
614         (watch_command_1): Declare "mark" later.
615         (clear_command): Don't shadow "a" or "b".
616         (delete_command): Rename inner "b".
617         (delete_trace_command): Likewise.
618         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
619         "op".
620         (arm_gdbarch_init): Remove inner "e_flags".
621         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
622         "offset" in inner blocks.
623
624 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
625
626         * dwarf-index-write.c (file_write): Don't write if the vector is
627         empty.
628
629 2018-10-05  Tom de Vries  <tdevries@suse.de>
630
631         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
632         PyArg_ParseTuple call.
633
634 2018-10-05  Tom de Vries  <tdevries@suse.de>
635
636         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
637         PyArg_ParseTuple call.
638
639 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
640
641         * psymtab.c (recursively_search_psymtabs): Reformat parameters
642         to avoid exceeding 80 characters per line limit.
643
644 2018-10-04  Tom Tromey  <tom@tromey.com>
645
646         * symfile.c (syms_from_objfile_1, finish_new_objfile)
647         (reread_symbols): Update.
648         * complaints.h (clear_complaints): Remove argument.
649         * complaints.c (enum complaint_series): Remove.
650         (series): Remove global.
651         (complaint_internal): Update.
652         (clear_complaints): Remove argument.
653
654 2018-10-04  Tom Tromey  <tom@tromey.com>
655
656         * symfile.c (symbol_file_add_with_addrs): Do not print "no
657         debugging symbols" message if there is a separate debug objfile.
658
659 2018-10-04  Tom Tromey  <tom@tromey.com>
660
661         PR cli/19551:
662         * symfile.c (symbol_file_add_with_addrs): Update output.
663         * psymtab.c (require_partial_symbols): Update output.
664
665 2018-10-04  Tom Tromey  <tom@tromey.com>
666
667         PR cli/22234:
668         * complaints.c: Emit \n.
669
670 2018-10-04  Tom Tromey  <tom@tromey.com>
671
672         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
673         (separate_debug_file_exists, find_separate_debug_file)
674         (add_symbol_file_command, reread_symbols, allocate_symtab)
675         (allocate_compunit_symtab): Use filtered printing, not
676         unfiltered.
677         * psymtab.c (require_partial_symbols, dump_psymtab)
678         (allocate_psymtab): Use filtered printing, not unfiltered.
679
680 2018-10-04  Tom Tromey  <tom@tromey.com>
681
682         * complaints.c (complaint_internal): Correctly check complaint
683         count.
684
685 2018-10-04  Tom Tromey  <tom@tromey.com>
686
687         * complaints.h (struct complaints): Remove declaration.
688         * complaints.c (clear_complaints): Remove an unused variable.
689
690 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
691
692         * MAINTAINERS (Write After Approval): Add self.
693
694 2018-10-03  Tom Tromey  <tom@tromey.com>
695
696         * guile/scm-value.c (gdbscm_value_to_string): Initialize
697         "buffer_contents".
698         * coffread.c (coff_symtab_read): Initialize "newobj".
699
700 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
701
702         * dwarf2read.c (read_func_scope): Remove struct keyword in
703         range-based for.
704
705 2018-10-03  Tom Tromey  <tom@tromey.com>
706
707         * README: Mention --enable-ubsan.
708         * NEWS: Mention --enable-ubsan.
709         * acinclude.m4: Include sanitize.m4.
710         * configure: Rebuild.
711         * configure.ac: Call AM_GDB_UBSAN.
712         * sanitize.m4: New file.
713
714 2018-10-03  Tom Tromey  <tom@tromey.com>
715
716         * expression.h (enum exp_opcode): Use uint8_t as base type.
717         * expprint.c (op_name): Handle invalid opcodes.
718
719 2018-10-03  Tom Tromey  <tom@tromey.com>
720
721         * parse.c (prefixify_expression): Add assert.
722         (parse_exp_in_context_1): Throw exception if the expression is
723         empty.
724
725 2018-10-03  Tom Tromey  <tom@tromey.com>
726
727         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
728
729 2018-10-03  Tom Tromey  <tom@tromey.com>
730
731         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
732
733 2018-10-03  Tom Tromey  <tom@tromey.com>
734
735         * dwarf2read.c (read_subrange_type): Make "negative_mask"
736         unsigned.
737
738 2018-10-03  Tom Tromey  <tom@tromey.com>
739
740         * findvar.c (extract_integer): Do work in an unsigned type.
741
742 2018-10-03  Tom Tromey  <tom@tromey.com>
743
744         * common/enum-flags.h (enum_flags::operator~): Add static assert.
745         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
746         base type.
747         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
748         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
749         type.
750         * c-lang.h (enum c_string_type_values): Use unsigned as base
751         type.
752         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
753
754 2018-10-03  Tom Tromey  <tom@tromey.com>
755
756         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
757         <~dwarf2_frame_state_reg_info>: Update.
758         <dwarf2_frame_state_reg_info>: Update.
759         <alloc_regs>: Add assertion.  Update.
760         <reg>: Now a std::vector.
761         <num_regs>: Remove.
762         <swap>: Update.
763         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
764         (execute_cfa_program_test, dwarf2_frame_cache): Update.
765
766 2018-10-03  Tom Tromey  <tom@tromey.com>
767
768         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
769
770 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
771
772         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
773
774 2018-10-02  Tom Tromey  <tom@tromey.com>
775
776         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
777
778 2018-10-02  John Darrington <john@darrington.wattle.id.au>
779
780         * NEWS: Mention changed commands.
781         * ser-uds.c: New file.
782         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
783         * configure: Regenerate.
784         * Makefile.in: Add new file.
785         * serial.c (serial_open): Check if filename is a socket
786           and lookup the appropriate interface accordingly.
787
788 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
789
790         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
791         define.
792         (AARCH64_EXTRA_MAGIC): Likewise.
793         (AARCH64_FPSIMD_MAGIC): Likewise.
794         (AARCH64_SVE_MAGIC): Likewise.
795         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
796         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
797         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
798         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
799         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
800         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
801         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
802         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
803         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
804         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
805         (read_aarch64_ctx): Add function.
806         (aarch64_linux_sigframe_init): Detect FP registers.
807
808 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
809
810         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to 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         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
817         (AARCH64_D0_REGNUM): Likewise.
818         (AARCH64_S0_REGNUM): Likewise.
819         (AARCH64_H0_REGNUM): Likewise.
820         (AARCH64_B0_REGNUM): Likewise.
821         (AARCH64_SVE_V0_REGNUM): Likewise.
822
823 2018-10-01  Gary Benson <gbenson@redhat.com>
824
825         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
826         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
827         prfpregset_t instead of gdb_prfpregset_t.
828         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
829         * configure, config.in: Rebuild.
830
831 2018-10-01  Gary Benson <gbenson@redhat.com>
832
833         * common/gdb_proc_service.h: New file, factored out from...
834         * gdb_proc_service.h: Moved common code to the above file.
835         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
836
837 2018-10-01  Gary Benson <gbenson@redhat.com>
838
839         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
840         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
841
842 2018-10-01  Gary Benson <gbenson@redhat.com>
843
844         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
845         (AC_CHECK_HEADERS): Check for linux/elf.h.
846         * configure, config.in: Rebuild.
847         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
848         doesn't define elf_fpregset_t.
849
850 2018-10-01  Gary Benson <gbenson@redhat.com>
851
852         * gdb_proc_service.h: Whitespace change.
853
854 2018-10-01  Tom Tromey  <tom@tromey.com>
855
856         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
857         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
858         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
859
860 2018-10-01  Tom Tromey  <tom@tromey.com>
861
862         * README: Minor change.
863
864 2018-09-30  Pedro Alves  <palves@redhat.com>
865
866         * darwin-nat-info.c (darwin_debug_regions_recurse)
867         (info_mach_exceptions_command): Remove unused local variables.
868         * darwin-nat.c (darwin_decode_notify_message)
869         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
870         (darwin_stop_inferior, darwin_setup_exceptions)
871         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
872         (darwin_nat_target::attach, darwin_nat_target::detach)
873         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
874         local variables.
875         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
876         variables.
877
878 2018-09-29  Tom Tromey  <tom@tromey.com>
879
880         * README: Remove some leftover text.
881
882 2018-09-29  Tom Tromey  <tom@tromey.com>
883
884         * PROBLEMS: Rewrite.
885         * README: Update.
886
887 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
888
889         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
890         case with explicit breakpoint kind.
891         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
892         'additional_info' and related logic.
893         (riscv_debug_breakpoints): New variable.
894         (riscv_breakpoint_kind_from_pc): Use the length of the existing
895         instruction to determine the breakpoint kind.
896         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
897         flag.  Update description of 'set/show riscv
898         use-compressed-breakpoints' flag.
899
900 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
901
902         (NEWS): Mention changes to frame related commands.
903         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
904         (add_prefix_cmd_suppress_notification): New function.
905         (add_com_suppress_notification): Call
906         add_cmd_suppress_notification.
907         * command.h (add_cmd_suppress_notification): Declare.
908         (add_prefix_cmd_suppress_notification): Declare.
909         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
910         (parse_frame_specification): Moved from stack.c, with
911         simplification to handle a single argument.
912         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
913         switch to the selected frame.  Add a header comment.
914         * stack.c: Remove 'safe-ctype.h' include.
915         (find_frame_for_function): Add declaration.
916         (find_frame_for_address): New function.
917         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
918         (frame_selection_by_function_completer): New function.
919         (info_frame_command): Rename to...
920         (info_frame_command_core): ...this, and update parameter types.
921         (select_frame_command): Rename to...
922         (select_frame_command_core): ...this, and update parameter types.
923         (frame_command): Rename to...
924         (frame_command_core): ...this, and update parameter types.
925         (class frame_command_helper): New class to wrap implementations of
926         frame related sub-commands.
927         (frame_apply_cmd_list): New static global.
928         (frame_cmd_list): Make static.
929         (select_frame_cmd_list): New global for sub-commands.
930         (info_frame_cmd_list): New global for sub-commands.
931         (_initialize_stack): Register sub-commands for 'frame',
932         'select-frame', and 'info frame'.  Update 'frame apply' commands
933         to use frame_apply_cmd_list.  Move function local static
934         frame_apply_list to file static frame_apply_cmd_list for
935         consistency.
936         * stack.h (select_frame_command): Delete declarationn.
937         (select_frame_for_mi): Declare new function.
938
939 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
940
941         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
942         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
943         and NOP.
944
945 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
946
947         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
948
949 2018-09-26  Tom Tromey  <tom@tromey.com>
950
951         * valops.c (auto_abandon): Remove dead code.
952
953 2018-09-26  Tom Tromey  <tom@tromey.com>
954
955         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
956
957 2018-09-24  Tom Tromey  <tom@tromey.com>
958
959         * common/pathstuff.c (get_standard_cache_dir): Make
960         "xdg_cache_home" and "home" const.
961         * top.c (init_history): Make "tmpenv" const.
962         * main.c (get_init_files): Make "homedir" const.
963
964 2018-09-23  Tom Tromey  <tom@tromey.com>
965
966         PR python/18852:
967         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
968
969 2018-09-23  Tom Tromey  <tom@tromey.com>
970
971         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
972         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
973         * python/python-internal.h (gdbpy_handle_exception): Declare.
974         * python/py-utils.c (gdbpy_handle_exception): New function.
975
976 2018-09-23  Tom Tromey  <tom@tromey.com>
977
978         PR python/17284:
979         * python/py-type.c (typy_template_argument): Check for negative
980         argument number.
981
982 2018-09-23  Tom Tromey  <tom@tromey.com>
983
984         PR python/14062:
985         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
986
987 2018-09-23  Tom Tromey  <tom@tromey.com>
988
989         PR python/18170:
990         * python/py-value.c (valpy_int): Allow conversion from pointer
991         type.
992
993 2018-09-23  Tom Tromey  <tom@tromey.com>
994
995         PR python/20126:
996         * python/py-value.c (valpy_int): Respect type sign.
997
998 2018-09-23  Tom Tromey  <tom@tromey.com>
999
1000         PR python/18352;
1001         * python/py-value.c (valpy_float): Allow conversions from int or
1002         char.
1003         (valpy_int, valpy_long): Allow conversions from float.
1004
1005 2018-09-23  Tom Tromey  <tom@tromey.com>
1006
1007         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1008         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1009
1010 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1011
1012         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1013         __sighndlr.
1014         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1015
1016 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1017
1018         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1019         target_terminal::ours().
1020
1021 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1022
1023         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1024         of vl to ULONGEST.
1025
1026 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1027
1028         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1029         redundant condition.
1030
1031 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1032
1033         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1034
1035         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1036         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1037         * sol-thread.c (ps_pdmodel): Don't guard definition.
1038
1039         * procfs.c: Fix formatting.
1040
1041         * procfs.c (sysset_t_alloc): Remove.
1042         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1043         (procfs_debug_inferior): Likewise.
1044         (procfs_set_exec_trap): Likewise.
1045         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1046         (proc_set_traced_sysexit): Likewise.
1047
1048         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1049         (dead_procinfo): Likewise.
1050         (proc_warn): Likewise.
1051         (proc_error): Likewise.
1052         (proc_get_LDT_entry): Likewise.
1053         (do_attach): Likewise.
1054         (procfs_target::pid_to_str): Likewise.
1055         (iterate_over_mappings): Likewise.
1056
1057         * procfs.c (create_procinfo): Fix ARI warning.
1058         (proc_get_status): Likewise.
1059         (proc_stop_process): Likewise.
1060         (proc_run_process): Likewise.
1061         (proc_kill): Likewise.
1062         (proc_get_LDT_entry): Likewise.
1063         (procfs_find_LDT_entry): Likewise.
1064         (proc_update_threads): Likewise.
1065         (proc_iterate_over_threads): Likewise.
1066         (do_attach): Likewise.
1067         (procfs_xfer_memory): Likewise.
1068         (invalidate_cache): Likewise.
1069         (procfs_target::resume): Likewise.
1070         (procfs_init_inferior): Likewise.
1071         (procfs_set_exec_trap): Likewise.
1072         (procfs_target::thread_alive): Likewise.
1073         (procfs_target::pid_to_exec_file): Likewise.
1074         (iterate_over_mappings): Likewise.
1075         (procfs_target::make_corefile_notes): Likewise.
1076         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1077
1078         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1079         (procfs_find_LDT_entry): Likewise.
1080         * sol-thread.c (ps_lgetLDT): Likewise.
1081
1082 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1083
1084         PR tdep/17903
1085         * procfs.c (procfs_target): Declare pid_to_exec_file.
1086         (procfs_target::pid_to_exec_file): New.
1087
1088 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1089
1090         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1091         renaming.
1092         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1093         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1094
1095 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1096
1097         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1098         (supply_fpregset, fill_fpregset): Move ...
1099         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1100         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1101         Remove references to ioctl-based procfs.
1102         Include <sys/reg.h>.
1103         Remove PR_MODEL_NATIVE guards.
1104         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1105         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1106
1107 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1108
1109         PR gdb/20981:
1110         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1111         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1112         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1113
1114 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1115
1116         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1117         (fbsd_print_sockaddr_in6): Likewise.
1118
1119 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1120             Chris January  <chris.january@arm.com>
1121
1122         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1123         (evaluate_subexp_standard): Return a dummy type when
1124         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1125         OP_F77_UNDETERMINED_ARGLIST case.
1126         * expression.h (enum noside): Update comment.
1127
1128 2018-09-19  George Vasick <george.vasick@oracle.com>
1129
1130         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1131
1132 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1133             April Chin <april.chin@oracle.com>
1134             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1135
1136         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1137         uint_t lwpid_t.
1138         (create_procinfo): Print pids in /proc without leading zeros.
1139
1140 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1141
1142         * nios2-tdep.c (nios2_gcc_target_options): New.
1143         (nios2_gdb_arch_init): Install new hook.
1144
1145 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1146
1147         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1148         New file.
1149         * update-gnulib.sh: Apply patch.
1150         * configure: Re-generate.
1151
1152 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1153
1154         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1155         description.  Make "info proc" command descriptions more
1156         consistent.
1157
1158 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1159
1160         * NEWS: Mention 'info proc files' command.
1161
1162 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1163
1164         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1165         descriptors for IP_FILES and IP_ALL.
1166
1167 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1168
1169         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1170         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1171         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1172         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1173         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1174         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1175         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1176         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1177         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1178         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1179         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1180         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1181         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1182         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1183         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1184         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1185         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1186         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1187         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1188         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1189         (struct fbsd_sockaddr_un): New types.
1190         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1191         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1192         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1193         (fbsd_core_info_proc_files): New functions.
1194         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1195         IP_ALL.
1196         * fbsd-tdep.h (fbsd_info_proc_files_header)
1197         (fbsd_info_proc_files_entry): New.
1198
1199 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1200
1201         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1202         * infcmd.c (info_proc_cmd_files): New function.
1203         (_initialize_infcmd): Register 'info proc files' command.
1204
1205 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1206
1207         * gnulib/aclocal-m4-deps.mk: Re-generate.
1208         * gnulib/aclocal.m4: Re-generate.
1209         * gnulib/config.in: Re-generate.
1210         * gnulib/configure: Re-generate.
1211         * gnulib/import/Makefile.am: Re-generate.
1212         * gnulib/import/Makefile.in: Re-generate.
1213         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1214         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1215         * gnulib/import/arpa_inet.in.h: New file.
1216         * gnulib/import/inet_ntop.c: New file.
1217         * gnulib/import/m4/arpa_inet_h.m4: New file.
1218         * gnulib/import/m4/inet_ntop.m4: New file.
1219         * gnulib/import/m4/netinet_in_h.m4: New file.
1220         * gnulib/import/m4/socklen.m4: New file.
1221         * gnulib/import/m4/sockpfaf.m4: New file.
1222         * gnulib/import/m4/stdalign.m4: New file.
1223         * gnulib/import/m4/sys_uio_h.m4: New file.
1224         * gnulib/import/netinet_in.in.h: New file.
1225         * gnulib/import/stdalign.in.h: New file.
1226         * gnulib/import/sys_socket.c: New file.
1227         * gnulib/import/sys_socket.in.h: New file.
1228         * gnulib/import/sys_uio.in.h: New file.
1229         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1230         module.
1231
1232 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1233
1234         * gnulib/aclocal-m4-deps.mk: New file.
1235         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1236         deterministically.
1237
1238 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1239
1240         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1241         KVE_PATH.
1242
1243 2018-09-18  Tom Tromey  <tom@tromey.com>
1244
1245         * compile/compile-object-load.c (struct
1246         link_hash_table_cleanup_data): Add constructor and destructor.
1247         Use DISABLE_COPY_AND_ASSIGN.
1248         (~link_hash_table_cleanup_data): Rename from
1249         link_hash_table_free.  Now a destructor.
1250         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1251
1252 2018-09-18  Tom Tromey  <tom@tromey.com>
1253
1254         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1255         * compile/compile-object-load.c (struct munmap_list): Move to
1256         header file.
1257         (munmap_list::add): Rename from munmap_list_add; rewrite.
1258         (munmap_list::~munmap_list): Rename from munmap_list_free.
1259         (munmap_listp_free_cleanup): Remove.
1260         (compile_object_load): Update.
1261         * compile/compile-object-load.h (struct munmap_list): Move from
1262         compile-object-load.c.  Rewrite.
1263
1264 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1265
1266         * aarch64-tdep.c (pass_in_v): Use register size.
1267         (aarch64_extract_return_value): Likewise.
1268         (aarch64_store_return_value): Likewise.
1269
1270 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1271
1272         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1273         rlim_t.
1274
1275 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1276
1277         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1278         Fix short help line.
1279
1280 2018-09-17  Tom Tromey  <tom@tromey.com>
1281
1282         PR python/20445:
1283         * configure: Rebuild.
1284         * configure.ac: Conditionally use -DNDEBUG for Python.
1285
1286 2018-09-17  Tom Tromey  <tom@tromey.com>
1287
1288         * configure: Rebuild.
1289         * configure.ac: Use gmp as a library dependency when checking for
1290         mpfr.
1291
1292 2018-09-17  Pedro Alves  <palves@redhat.com>
1293
1294         * python/py-inferior.c (find_inferior_object): Delete.
1295
1296 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1297
1298         * compile/compile-cplus-types.c
1299         (compile_cplus_instance::enter_scope): Don't use new_scope after
1300         std::move.
1301
1302 2018-09-17  Tom Tromey  <tom@tromey.com>
1303
1304         * common/pathstuff.c (get_standard_cache_dir): Use
1305         ~/Library/Caches on macOS.
1306         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1307
1308 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1309
1310         PR python/23669
1311         * breakpoint.c (commands_cmd_element): New.
1312         (_initialize_breakpoint): Assign commands_cmd_element.
1313         * breakpoint.h (commands_cmd_element): New.
1314         * cli/cli-script.c (while_cmd_element, if_command,
1315         define_cmd_element): New.
1316         (command_name_equals): Remove.
1317         (process_next_line): Compare commands by pointer, not by name.
1318         (_initialize_cli_script): Assign the various cmd_list_element
1319         variables.
1320         * compile/compile.c (compile_cmd_element): New.
1321         (_initialize_compile): Assign compile_cmd_element.
1322         * compile/compile.h (compile_cmd_element): New.
1323         * guile/guile.c (guile_cmd_element): New.
1324         (install_gdb_commands): Assign guile_cmd_element.
1325         * guile/guile.h (guile_cmd_element): New.
1326         * python/python.c (python_cmd_element): New.
1327         (_initialize_python): Assign python_cmd_element.
1328         * python/python.h (python_cmd_element): New.
1329         * tracepoint.c (while_stepping_cmd_element): New.
1330         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1331         * tracepoint.h (while_stepping_cmd_element): New.
1332
1333 2018-09-17  Tom Tromey  <tom@tromey.com>
1334
1335         * infrun.c (save_infcall_suspend_state): Return
1336         infcall_suspend_state_up.
1337         (save_infcall_control_state): Return infcall_control_state_up.
1338         * inferior.h (save_infcall_suspend_state)
1339         (save_infcall_control_state): Declare later.  Return unique
1340         pointers.
1341
1342 2018-09-17  Tom Tromey  <tom@tromey.com>
1343
1344         * infrun.c (struct stop_context): Declare constructor,
1345         destructor, "changed" method.
1346         (stop_context::stop_context): Rename from save_stop_context.
1347         (stop_context::~stop_context): Rename from
1348         release_stop_context_cleanup.
1349         (normal_stop): Update.
1350         (stop_context::changed): Rename from stop_context_changed.  Return
1351         bool.
1352
1353 2018-09-17  Tom Tromey  <tom@tromey.com>
1354
1355         * inferior.h (struct infcall_suspend_state_deleter): New.
1356         (infcall_suspend_state_up): New typedef.
1357         (struct infcall_control_state_deleter): New.
1358         (infcall_control_state_up): New typedef.
1359         (make_cleanup_restore_infcall_suspend_state)
1360         (make_cleanup_restore_infcall_control_state): Don't declare.
1361         * infcall.c (call_function_by_hand_dummy): Update.
1362         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1363         (make_cleanup_restore_infcall_suspend_state): Remove.
1364         (do_restore_infcall_control_state_cleanup)
1365         (make_cleanup_restore_infcall_control_state): Remove.
1366
1367 2018-09-17  Tom Tromey  <tom@tromey.com>
1368
1369         * gdbthread.h (struct thread_control_state): Add initializer.
1370         (class thread_info) <control>: Remove initializer.
1371         * inferior.h (struct inferior_control_state): Add initializer.
1372         (class inferior) <control>: Remove initializer.
1373         (exit_inferior_1): Update.
1374         * infrun.c (struct infcall_control_state): Add constructors.
1375         (save_infcall_control_state): Use new.
1376         (restore_infcall_control_state, discard_infcall_control_state):
1377         Use delete.
1378
1379 2018-09-17  Tom Tromey  <tom@tromey.com>
1380
1381         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1382         unique_ptr.
1383         <siginfo_data>: Now a unique_xmalloc_ptr.
1384         (save_infcall_suspend_state, restore_infcall_suspend_state)
1385         (discard_infcall_suspend_state)
1386         (get_infcall_suspend_state_regcache): Update.
1387
1388 2018-09-17  Tom Tromey  <tom@tromey.com>
1389
1390         * gdbthread.h (struct thread_suspend_state): Add initializers.
1391         (class thread_info) <suspend>: Remove initializer.
1392         * infrun.c (struct infcall_suspend_state): Add initializers.
1393         (save_infcall_suspend_state): Use new.
1394         (discard_infcall_suspend_state): Use delete.
1395
1396 2018-09-16  Tom Tromey  <tom@tromey.com>
1397
1398         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1399         Remove.
1400         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1401         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1402         (py_varobj_iter_new): Likewise.
1403         (py_varobj_get_iterator): Use gdbpy_ref.
1404
1405 2018-09-16  Tom Tromey  <tom@tromey.com>
1406
1407         * python/py-threadevent.c (py_get_event_thread): Simplify.
1408         * python/py-inferior.c (infpy_thread_from_thread_handle):
1409         Return immediately after calling thread_to_thread_object.  Use
1410         Py_RETURN_NONE.
1411         (thread_to_thread_object): Set the exception on a NULL return.
1412
1413 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1414
1415         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1416
1417 2018-09-16  Tom Tromey  <tom@tromey.com>
1418
1419         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1420         Remove.
1421
1422 2018-09-16  Tom Tromey  <tom@tromey.com>
1423
1424         * python/python-internal.h (thread_to_thread_object): Change
1425         return type.
1426         * python/py-inferior.c (thread_to_thread_object): Return a new
1427         reference.
1428         (infpy_thread_from_thread_handle): Update.
1429         * python/py-infthread.c (gdbpy_selected_thread): Update.
1430         * python/py-stopevent.c (create_stop_event_object): Update.
1431         * python/py-threadevent.c (py_get_event_thread): Return a new
1432         reference.
1433         (py_get_event_thread): Update.
1434         * python/py-event.h (py_get_event_thread): Change return type.
1435         * python/py-continueevent.c (create_continue_event_object):
1436         Update.
1437
1438 2018-09-16  Tom Tromey  <tom@tromey.com>
1439
1440         * python/py-progspace.c (pspy_get_objfiles): Update.
1441         * python/python-internal.h (objfile_to_objfile_object): Change
1442         return type.
1443         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1444         Update.
1445         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1446         Update.
1447         * python/python.c (gdbpy_get_current_objfile): Update.
1448         (gdbpy_objfiles): Update.
1449         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1450         Update.
1451         (objfile_to_objfile_object): Return a new reference.
1452         * python/py-symtab.c (stpy_get_objfile): Update.
1453         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1454         Update.
1455
1456 2018-09-16  Tom Tromey  <tom@tromey.com>
1457
1458         * python/py-inferior.c (infpy_get_progspace): Update.
1459         * python/python-internal.h (pspace_to_pspace_object): Change
1460         return type.
1461         * python/py-newobjfileevent.c
1462         (create_clear_objfiles_event_object): Update.
1463         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1464         Update.
1465         * python/python.c (gdbpy_get_current_progspace): Update.
1466         (gdbpy_progspaces): Update.
1467         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1468         reference.
1469         * python/py-objfile.c (objfpy_get_progspace): Update.
1470         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1471         Update.
1472
1473 2018-09-16  Tom Tromey  <tom@tromey.com>
1474
1475         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1476         (solib_name, block_for_pc, find_pc_line): New functions.
1477         (execute_unwinders): Update.
1478         * python/py-block.c (gdbpy_block_for_pc): Remove.
1479         * python/py-inferior.c (infpy_get_progspace): New function.
1480         (inferior_object_getset) <progspace>: Add.
1481         * python/py-progspace.c (pspy_objfiles): Rewrite.
1482         (pspy_solib_name, pspy_block_for_pc)
1483         (pspy_find_pc_line, pspy_is_valid): New functions.
1484         (progspace_object_methods): Add entries for solib_name,
1485         block_for_pc, find_pc_line, is_valid.
1486         * python/python-internal.h (gdbpy_block_for_pc)
1487         (build_objfiles_list): Don't declare.
1488         * python/python.c: Don't include solib.h.
1489         (gdbpy_solib_name, gdbpy_find_pc_line)
1490         (gdbpy_get_current_progspace, build_objfiles_list)
1491         (gdbpy_objfiles): Remove.
1492         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1493         solib_name, find_pc_line>: Remove entries.
1494
1495 2018-09-16  Tom Tromey  <tom@tromey.com>
1496
1497         * top.c (new_ui_command): Use GNU style for metasyntactic
1498         variables.
1499         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1500         variables.
1501         * maint.c (maintenance_translate_address): Remove "<>" around
1502         text.
1503         * interps.c (interpreter_exec_cmd): Use GNU style for
1504         metasyntactic variables.
1505         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1506         metasyntactic variables.
1507         * tracepoint.c (tfind_range_command): Use GNU style for
1508         metasyntactic variables.
1509         (tfind_outside_command): Likewise.
1510         (_initialize_tracepoint): Likewise.
1511         * remote.c (extended_remote_target::create_inferior): Use GNU
1512         style for metasyntactic variables.
1513         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1514         metasyntactic variables.
1515         (adi_assign_command): Likewise.
1516
1517 2018-09-16  Tom Tromey  <tom@tromey.com>
1518
1519         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1520         metasyntactic variables.  Print message if no disassembler options
1521         are available.
1522
1523 2018-09-15  Tom Tromey  <tom@tromey.com>
1524
1525         * infcmd.c (get_inferior_args): Return const char *.
1526         * inferior.h (get_inferior_args): Return type now const.
1527         * linux-tdep.c (linux_fill_prpsinfo): Update.
1528         * procfs.c (procfs_target::make_corefile_notes): Update.
1529
1530 2018-09-07  Tom Tromey  <tom@tromey.com>
1531
1532         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1533         inside the TRY.
1534
1535 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1536
1537         * nios2-tdep.c (nios2_type_align): New.
1538         (nios2_gdb_arch_init): Install type_align hook.
1539
1540 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1541
1542         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1543         type that is neither object file owned, nor gdbarch owned.
1544         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1545         gdbarch is non-NULL.
1546         (alloc_type_instance): Allocate non-objfile owned types on the
1547         gdbarch obstack.
1548         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1549         using TYPE_ALLOC to ensure memory is allocated on the correct
1550         obstack.
1551         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1552         obstack, or the gdbarch obstack.
1553         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1554
1555 2018-09-14  Tom Tromey  <tom@tromey.com>
1556
1557         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1558         block.
1559
1560 2018-09-14  Tom Tromey  <tom@tromey.com>
1561
1562         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1563
1564 2018-09-13  Tom Tromey  <tom@tromey.com>
1565
1566         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1567         static.
1568
1569 2018-09-13  Tom Tromey  <tom@tromey.com>
1570
1571         * exec.c (try_open_exec_file): Use std::string.
1572
1573 2018-09-13  Tom Tromey  <tom@tromey.com>
1574
1575         * utils.h (gdb_bfd_errmsg): Return std::string.
1576         * exec.c (exec_file_attach): Update.
1577         * compile/compile-object-load.c (compile_object_load): Update.
1578         * utils.c (gdb_bfd_errmsg): Return std::string.
1579
1580 2018-09-13  Tom Tromey  <tom@tromey.com>
1581
1582         * procfs.c (struct procinfo_deleter): New.
1583         (procinfo_up): New typedef.
1584         (do_destroy_procinfo_cleanup): Remove.
1585         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
1586
1587 2018-09-13  Tom Tromey  <tom@tromey.com>
1588
1589         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
1590
1591 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1592 2018-09-13  Tom Tromey  <tom@tromey.com>
1593
1594         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
1595         (pspy_get_objfiles): New function.
1596         (progspace_object_methods): New.
1597         (pspace_object_type): Add tp_methods callback.
1598         * python/python-internal.h (build_objfiles_list): New
1599         declaration.
1600         * python/python.c (build_objfiles_list): New function.
1601         (gdbpy_objfiles): Implement using build_objfiles_list.
1602         * NEWS: Mention the Progspace.objfiles method.
1603
1604 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1605
1606         * python/py-inferior.c (infpy_get_progspace): New function.
1607         (inferior_object_getset): Add progspace property.
1608         * NEWS: Mention the new property.
1609
1610 2018-09-13  Tom Tromey  <tom@tromey.com>
1611
1612         PR rust/23650:
1613         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
1614
1615 2018-09-13  Tom Tromey  <tom@tromey.com>
1616
1617         PR rust/23626:
1618         * rust-lang.c (rust_enum_variant): Now static.
1619         (rust_empty_enum_p): New function.
1620         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
1621         Handle empty enum.
1622
1623 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1624
1625         * python/py-inferior.c (infpy_repr): New.
1626         (inferior_object_type): Register infpy_repr.
1627         * python/py-objfile.c (objfpy_repr): New.
1628         (objfile_object_type): Register objfpy_repr.
1629
1630 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1631
1632         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
1633
1634 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1635
1636         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
1637         typo.
1638
1639 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
1640
1641         * common/common-utils.c: Don't include '<sys/stat.h>'.
1642         (is_regular_file): Move to...
1643         * common/filestuff.c (is_regular_file): ... here.
1644         * common/common-utils.h (is_regular_file): Move to...
1645         * common/filestuff.h (is_regular_file): ... here.
1646
1647 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
1648
1649         * skip.c (debug_skip): New variable.
1650         (skiplist_entry::do_skip_file_p): Add debug output.
1651         (skiplist_entry::do_skip_gfile_p): Likewise.
1652         (skiplist_entry::skip_function_p): Likewise.
1653         (_initialize_step_skip): Create debug command.
1654         * NEWS: Mention set/show debug skip.
1655
1656 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1657
1658         * darwin-nat.c (should_disable_startup_with_shell):
1659         New function.
1660         (darwin_nat_target::create_inferior): Add call.
1661
1662 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1663
1664         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
1665         inf_port, msg_state>: Initialize.
1666         (struct darwin_thread_info) <signaled, single_step>: Change
1667         type and initialize.
1668         (struct darwin_thread_info) <event>: Initialize.
1669
1670 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1671
1672         PR gdb/23555
1673         PR gdb/23558
1674         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
1675         guesses.
1676
1677 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1678
1679         Revert:
1680         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1681
1682         PR gdb/23555
1683         PR gdb/23558
1684         * gnulib/aclocal.m4: Regenerate.
1685         * gnulib/config.in: Regenerate.
1686         * gnulib/configure: Regenerate.
1687         * gnulib/import/Makefile.am: Update.
1688         * gnulib/import/Makefile.in: Update.
1689         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1690         * gnulib/import/_Noreturn.h: ... this.
1691         * gnulib/import/alloca.in.h: Update.
1692         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
1693         * gnulib/import/arg-nonnull.h: ... this.
1694         * gnulib/import/assure.h: Update.
1695         * gnulib/import/at-func.c: Update.
1696         * gnulib/import/basename-lgpl.c: Update.
1697         * gnulib/import/extra/snippet/c++defs.h: Rename to...
1698         * gnulib/import/c++defs.h: ... this.
1699         * gnulib/import/canonicalize-lgpl.c: Update.
1700         * gnulib/import/cdefs.h: Update.
1701         * gnulib/import/chdir-long.c: Update.
1702         * gnulib/import/chdir-long.h: Update.
1703         * gnulib/import/cloexec.c: Update.
1704         * gnulib/import/cloexec.h: Update.
1705         * gnulib/import/close.c: Update.
1706         * gnulib/import/closedir.c: Update.
1707         * gnulib/import/config.charset: Update.
1708         * gnulib/import/dirent-private.h: Update.
1709         * gnulib/import/dirent.in.h: Update.
1710         * gnulib/import/dirfd.c: Update.
1711         * gnulib/import/dirname-lgpl.c: Update.
1712         * gnulib/import/dirname.h: Update.
1713         * gnulib/import/dosname.h: Update.
1714         * gnulib/import/dup-safer-flag.c: Update.
1715         * gnulib/import/dup-safer.c: Update.
1716         * gnulib/import/dup.c: Update.
1717         * gnulib/import/dup2.c: Update.
1718         * gnulib/import/errno.in.h: Update.
1719         * gnulib/import/error.c: Update.
1720         * gnulib/import/error.h: Update.
1721         * gnulib/import/exitfail.c: Update.
1722         * gnulib/import/exitfail.h: Update.
1723         * gnulib/import/extra/update-copyright: Update.
1724         * gnulib/import/fchdir.c: Update.
1725         * gnulib/import/fcntl.c: Update.
1726         * gnulib/import/fcntl.in.h: Update.
1727         * gnulib/import/fd-hook.c: Update.
1728         * gnulib/import/fd-hook.h: Update.
1729         * gnulib/import/fd-safer-flag.c: Update.
1730         * gnulib/import/fd-safer.c: Update.
1731         * gnulib/import/fdopendir.c: Update.
1732         * gnulib/import/filename.h: Update.
1733         * gnulib/import/filenamecat-lgpl.c: Update.
1734         * gnulib/import/filenamecat.h: Update.
1735         * gnulib/import/flexmember.h: Update.
1736         * gnulib/import/float+.h: Update.
1737         * gnulib/import/float.c: Update.
1738         * gnulib/import/float.in.h: Update.
1739         * gnulib/import/fnmatch.c: Update.
1740         * gnulib/import/fnmatch.in.h: Update.
1741         * gnulib/import/fnmatch_loop.c: Update.
1742         * gnulib/import/fpucw.h: Update.
1743         * gnulib/import/frexp.c: Update.
1744         * gnulib/import/frexpl.c: Update.
1745         * gnulib/import/fstat.c: Update.
1746         * gnulib/import/fstatat.c: Update.
1747         * gnulib/import/getcwd-lgpl.c: Update.
1748         * gnulib/import/getcwd.c: Update.
1749         * gnulib/import/getdtablesize.c: Update.
1750         * gnulib/import/getlogin_r.c: Update.
1751         * gnulib/import/getprogname.c: Update.
1752         * gnulib/import/getprogname.h: Update.
1753         * gnulib/import/gettext.h: Update.
1754         * gnulib/import/gettimeofday.c: Update.
1755         * gnulib/import/glob-libc.h: Update.
1756         * gnulib/import/glob.c: Update.
1757         * gnulib/import/glob.in.h: Update.
1758         * gnulib/import/glob_internal.h: Update.
1759         * gnulib/import/glob_pattern_p.c: Update.
1760         * gnulib/import/globfree.c: Update.
1761         * gnulib/import/hard-locale.c: Update.
1762         * gnulib/import/hard-locale.h: Update.
1763         * gnulib/import/intprops.h: Update.
1764         * gnulib/import/inttypes.in.h: Update.
1765         * gnulib/import/isnan.c: Update.
1766         * gnulib/import/isnand-nolibm.h: Update.
1767         * gnulib/import/isnand.c: Update.
1768         * gnulib/import/isnanl-nolibm.h: Update.
1769         * gnulib/import/isnanl.c: Update.
1770         * gnulib/import/itold.c: Update.
1771         * gnulib/import/libc-config.h: Update.
1772         * gnulib/import/limits.in.h: Update.
1773         * gnulib/import/localcharset.c: Update.
1774         * gnulib/import/localcharset.h: Update.
1775         * gnulib/import/localtime-buffer.c: Update.
1776         * gnulib/import/localtime-buffer.h: Update.
1777         * gnulib/import/lstat.c: Update.
1778         * gnulib/import/m4/00gnulib.m4: Update.
1779         * gnulib/import/m4/__inline.m4: Update.
1780         * gnulib/import/m4/absolute-header.m4: Update.
1781         * gnulib/import/m4/alloca.m4: Update.
1782         * gnulib/import/m4/builtin-expect.m4: Update.
1783         * gnulib/import/m4/canonicalize.m4: Update.
1784         * gnulib/import/m4/chdir-long.m4: Update.
1785         * gnulib/import/m4/close.m4: Update.
1786         * gnulib/import/m4/closedir.m4: Update.
1787         * gnulib/import/m4/configmake.m4: Update.
1788         * gnulib/import/m4/d-ino.m4: Update.
1789         * gnulib/import/m4/d-type.m4: Update.
1790         * gnulib/import/m4/dirent_h.m4: Update.
1791         * gnulib/import/m4/dirfd.m4: Update.
1792         * gnulib/import/m4/dirname.m4: Update.
1793         * gnulib/import/m4/double-slash-root.m4: Update.
1794         * gnulib/import/m4/dup.m4: Update.
1795         * gnulib/import/m4/dup2.m4: Update.
1796         * gnulib/import/m4/eealloc.m4: Update.
1797         * gnulib/import/m4/environ.m4: Update.
1798         * gnulib/import/m4/errno_h.m4: Update.
1799         * gnulib/import/m4/error.m4: Update.
1800         * gnulib/import/m4/exponentd.m4: Update.
1801         * gnulib/import/m4/exponentl.m4: Update.
1802         * gnulib/import/m4/extensions.m4: Update.
1803         * gnulib/import/m4/extern-inline.m4: Update.
1804         * gnulib/import/m4/fchdir.m4: Update.
1805         * gnulib/import/m4/fcntl-o.m4: Update.
1806         * gnulib/import/m4/fcntl.m4: Update.
1807         * gnulib/import/m4/fcntl_h.m4: Update.
1808         * gnulib/import/m4/fdopendir.m4: Update.
1809         * gnulib/import/m4/filenamecat.m4: Update.
1810         * gnulib/import/m4/flexmember.m4: Update.
1811         * gnulib/import/m4/float_h.m4: Update.
1812         * gnulib/import/m4/fnmatch.m4: Update.
1813         * gnulib/import/m4/fnmatch_h.m4: Update.
1814         * gnulib/import/m4/fpieee.m4: Update.
1815         * gnulib/import/m4/frexp.m4: Update.
1816         * gnulib/import/m4/frexpl.m4: Update.
1817         * gnulib/import/m4/fstat.m4: Update.
1818         * gnulib/import/m4/fstatat.m4: Update.
1819         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1820         * gnulib/import/m4/getcwd-path-max.m4: Update.
1821         * gnulib/import/m4/getcwd.m4: Update.
1822         * gnulib/import/m4/getdtablesize.m4: Update.
1823         * gnulib/import/m4/getlogin.m4: Update.
1824         * gnulib/import/m4/getlogin_r.m4: Update.
1825         * gnulib/import/m4/getpagesize.m4: Update.
1826         * gnulib/import/m4/getprogname.m4: Update.
1827         * gnulib/import/m4/gettimeofday.m4: Update.
1828         * gnulib/import/m4/glibc21.m4: Update.
1829         * gnulib/import/m4/glob.m4: Update.
1830         * gnulib/import/m4/glob_h.m4: Update.
1831         * gnulib/import/m4/gnulib-cache.m4: Update.
1832         * gnulib/import/m4/gnulib-common.m4: Update.
1833         * gnulib/import/m4/gnulib-comp.m4: Update.
1834         * gnulib/import/m4/gnulib-tool.m4: Update.
1835         * gnulib/import/m4/hard-locale.m4: Update.
1836         * gnulib/import/m4/include_next.m4: Update.
1837         * gnulib/import/m4/inttypes-pri.m4: Update.
1838         * gnulib/import/m4/inttypes.m4: Update.
1839         * gnulib/import/m4/isnand.m4: Update.
1840         * gnulib/import/m4/isnanl.m4: Update.
1841         * gnulib/import/m4/largefile.m4: Update.
1842         * gnulib/import/m4/limits-h.m4: Update.
1843         * gnulib/import/m4/localcharset.m4: Update.
1844         * gnulib/import/m4/locale-fr.m4: Update.
1845         * gnulib/import/m4/locale-ja.m4: Update.
1846         * gnulib/import/m4/locale-zh.m4: Update.
1847         * gnulib/import/m4/localtime-buffer.m4: Update.
1848         * gnulib/import/m4/longlong.m4: Update.
1849         * gnulib/import/m4/lstat.m4: Update.
1850         * gnulib/import/m4/malloc.m4: Update.
1851         * gnulib/import/m4/malloca.m4: Update.
1852         * gnulib/import/m4/math_h.m4: Update.
1853         * gnulib/import/m4/mbrtowc.m4: Update.
1854         * gnulib/import/m4/mbsinit.m4: Update.
1855         * gnulib/import/m4/mbsrtowcs.m4: Update.
1856         * gnulib/import/m4/mbstate_t.m4: Update.
1857         * gnulib/import/m4/memchr.m4: Update.
1858         * gnulib/import/m4/memmem.m4: Update.
1859         * gnulib/import/m4/mempcpy.m4: Update.
1860         * gnulib/import/m4/memrchr.m4: Update.
1861         * gnulib/import/m4/mkdir.m4: Update.
1862         * gnulib/import/m4/mkstemp.m4: Update.
1863         * gnulib/import/m4/mmap-anon.m4: Update.
1864         * gnulib/import/m4/mode_t.m4: Update.
1865         * gnulib/import/m4/msvc-inval.m4: Update.
1866         * gnulib/import/m4/msvc-nothrow.m4: Update.
1867         * gnulib/import/m4/multiarch.m4: Update.
1868         * gnulib/import/m4/nocrash.m4: Update.
1869         * gnulib/import/m4/off_t.m4: Update.
1870         * gnulib/import/m4/onceonly.m4: Update.
1871         * gnulib/import/m4/open-cloexec.m4: Update.
1872         * gnulib/import/m4/open.m4: Update.
1873         * gnulib/import/m4/openat.m4: Update.
1874         * gnulib/import/m4/opendir.m4: Update.
1875         * gnulib/import/m4/pathmax.m4: Update.
1876         * gnulib/import/m4/rawmemchr.m4: Update.
1877         * gnulib/import/m4/readdir.m4: Update.
1878         * gnulib/import/m4/readlink.m4: Update.
1879         * gnulib/import/m4/realloc.m4: Update.
1880         * gnulib/import/m4/rename.m4: Update.
1881         * gnulib/import/m4/rewinddir.m4: Update.
1882         * gnulib/import/m4/rmdir.m4: Update.
1883         * gnulib/import/m4/save-cwd.m4: Update.
1884         * gnulib/import/m4/secure_getenv.m4: Update.
1885         * gnulib/import/m4/setenv.m4: Update.
1886         * gnulib/import/m4/signal_h.m4: Update.
1887         * gnulib/import/m4/ssize_t.m4: Update.
1888         * gnulib/import/m4/stat-time.m4: Update.
1889         * gnulib/import/m4/stat.m4: Update.
1890         * gnulib/import/m4/std-gnu11.m4: Update.
1891         * gnulib/import/m4/stdbool.m4: Update.
1892         * gnulib/import/m4/stddef_h.m4: Update.
1893         * gnulib/import/m4/stdint.m4: Update.
1894         * gnulib/import/m4/stdio_h.m4: Update.
1895         * gnulib/import/m4/stdlib_h.m4: Update.
1896         * gnulib/import/m4/strchrnul.m4: Update.
1897         * gnulib/import/m4/strdup.m4: Update.
1898         * gnulib/import/m4/strerror.m4: Update.
1899         * gnulib/import/m4/string_h.m4: Update.
1900         * gnulib/import/m4/strstr.m4: Update.
1901         * gnulib/import/m4/strtok_r.m4: Update.
1902         * gnulib/import/m4/sys_socket_h.m4: Update.
1903         * gnulib/import/m4/sys_stat_h.m4: Update.
1904         * gnulib/import/m4/sys_time_h.m4: Update.
1905         * gnulib/import/m4/sys_types_h.m4: Update.
1906         * gnulib/import/m4/tempname.m4: Update.
1907         * gnulib/import/m4/time_h.m4: Update.
1908         * gnulib/import/m4/unistd-safer.m4: Update.
1909         * gnulib/import/m4/unistd_h.m4: Update.
1910         * gnulib/import/m4/warn-on-use.m4: Update.
1911         * gnulib/import/m4/wchar_h.m4: Update.
1912         * gnulib/import/m4/wchar_t.m4: Update.
1913         * gnulib/import/m4/wctype_h.m4: Update.
1914         * gnulib/import/m4/wint_t.m4: Update.
1915         * gnulib/import/malloc.c: Update.
1916         * gnulib/import/malloc/scratch_buffer.h: Update.
1917         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1918         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1919         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1920         * gnulib/import/malloca.c: Update.
1921         * gnulib/import/malloca.h: Update.
1922         * gnulib/import/malloca.valgrind: Update.
1923         * gnulib/import/math.in.h: Update.
1924         * gnulib/import/mbrtowc.c: Update.
1925         * gnulib/import/mbsinit.c: Update.
1926         * gnulib/import/mbsrtowcs-impl.h: Update.
1927         * gnulib/import/mbsrtowcs-state.c: Update.
1928         * gnulib/import/mbsrtowcs.c: Update.
1929         * gnulib/import/memchr.c: Update.
1930         * gnulib/import/memmem.c: Update.
1931         * gnulib/import/mempcpy.c: Update.
1932         * gnulib/import/memrchr.c: Update.
1933         * gnulib/import/mkdir.c: Update.
1934         * gnulib/import/mkstemp.c: Update.
1935         * gnulib/import/msvc-inval.c: Update.
1936         * gnulib/import/msvc-inval.h: Update.
1937         * gnulib/import/msvc-nothrow.c: Update.
1938         * gnulib/import/msvc-nothrow.h: Update.
1939         * gnulib/import/open.c: Update.
1940         * gnulib/import/openat-die.c: Update.
1941         * gnulib/import/openat-priv.h: Update.
1942         * gnulib/import/openat-proc.c: Update.
1943         * gnulib/import/openat.c: Update.
1944         * gnulib/import/openat.h: Update.
1945         * gnulib/import/opendir.c: Update.
1946         * gnulib/import/pathmax.h: Update.
1947         * gnulib/import/pipe-safer.c: Update.
1948         * gnulib/import/rawmemchr.c: Update.
1949         * gnulib/import/readdir.c: Update.
1950         * gnulib/import/readlink.c: Update.
1951         * gnulib/import/realloc.c: Update.
1952         * gnulib/import/ref-add.sin: Update.
1953         * gnulib/import/ref-del.sin: Update.
1954         * gnulib/import/rename.c: Update.
1955         * gnulib/import/rewinddir.c: Update.
1956         * gnulib/import/rmdir.c: Update.
1957         * gnulib/import/same-inode.h: Update.
1958         * gnulib/import/save-cwd.c: Update.
1959         * gnulib/import/save-cwd.h: Update.
1960         * gnulib/import/scratch_buffer.h: Update.
1961         * gnulib/import/secure_getenv.c: Update.
1962         * gnulib/import/setenv.c: Update.
1963         * gnulib/import/signal.in.h: Update.
1964         * gnulib/import/stat-time.c: Update.
1965         * gnulib/import/stat-time.h: Update.
1966         * gnulib/import/stat-w32.c: Update.
1967         * gnulib/import/stat-w32.h: Update.
1968         * gnulib/import/stat.c: Update.
1969         * gnulib/import/stdbool.in.h: Update.
1970         * gnulib/import/stddef.in.h: Update.
1971         * gnulib/import/stdint.in.h: Update.
1972         * gnulib/import/stdio.in.h: Update.
1973         * gnulib/import/stdlib.in.h: Update.
1974         * gnulib/import/str-two-way.h: Update.
1975         * gnulib/import/strchrnul.c: Update.
1976         * gnulib/import/strdup.c: Update.
1977         * gnulib/import/streq.h: Update.
1978         * gnulib/import/strerror-override.c: Update.
1979         * gnulib/import/strerror-override.h: Update.
1980         * gnulib/import/strerror.c: Update.
1981         * gnulib/import/string.in.h: Update.
1982         * gnulib/import/stripslash.c: Update.
1983         * gnulib/import/strnlen1.c: Update.
1984         * gnulib/import/strnlen1.h: Update.
1985         * gnulib/import/strstr.c: Update.
1986         * gnulib/import/strtok_r.c: Update.
1987         * gnulib/import/sys_stat.in.h: Update.
1988         * gnulib/import/sys_time.in.h: Update.
1989         * gnulib/import/sys_types.in.h: Update.
1990         * gnulib/import/tempname.c: Update.
1991         * gnulib/import/tempname.h: Update.
1992         * gnulib/import/time.in.h: Update.
1993         * gnulib/import/unistd--.h: Update.
1994         * gnulib/import/unistd-safer.h: Update.
1995         * gnulib/import/unistd.in.h: Update.
1996         * gnulib/import/unsetenv.c: Update.
1997         * gnulib/import/verify.h: Update.
1998         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1999         * gnulib/import/wchar.in.h: Update.
2000         * gnulib/import/wctype.in.h: Update.
2001         * gnulib/import/xalloc-oversized.h: Update.
2002         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2003         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2004
2005 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2006
2007         * record-btrace.c (get_thread_current_frame): Remove
2008         old_inferior_ptid.
2009
2010 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2011
2012         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2013         with check_tag to 1 if and only if the type is tagged and the
2014         component being searched cannot been found in the current
2015         view. Otherwise, always call ada_to_fixed_type with
2016         check_tag to 0.
2017
2018 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2019
2020         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2021         declaration.
2022         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2023         * ada-varobj.c (ada_varobj_get_number_of_children,
2024         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2025
2026 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2027
2028         * ada-valprint.c (ada_value_print): Use type instead of
2029         enclosing type.
2030
2031 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2032
2033         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2034         an array of access to unconstrained array.
2035
2036 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2037
2038         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2039         (ada_check_typedef): Use it.
2040
2041 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2042
2043         * ada-varobj.c (ada_varobj_describe_struct_child)
2044         (ada_varobj_describe_child): Handle union case like struct one.
2045
2046 2018-09-10  Tom Tromey  <tom@tromey.com>
2047
2048         PR python/18380:
2049         * python/python.c (_initialize_python): Make example in "python"
2050         help work in Python 3.
2051
2052 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2053
2054         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2055         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2056         $(EXEEXT) to the script, as it is not a program.
2057
2058 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2059
2060         * python/py-prettyprint.c (pretty_print_one_value): Return
2061         gdbpy_ref<>.
2062         (print_string_repr): Adjust.
2063         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2064         * python/python-internal.h (apply_varobj_pretty_printer): Return
2065         gdbpy_ref<>.
2066         * varobj.c (varobj_value_get_print_value): Adjust.
2067
2068 2018-09-08  Tom Tromey  <tom@tromey.com>
2069
2070         PR python/16047:
2071         * python/py-prettyprint.c (pretty_print_one_value): Check for
2072         to_string method.
2073
2074 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2075
2076         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2077         replace_operator_with_call.
2078
2079 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2080
2081         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2082
2083 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2084
2085         * ada-typeprint.c (print_range): Print the bounds using TYPE
2086         rather than its TYPE_TARGET_TYPE.
2087
2088 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2089
2090         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2091         call to ada_to_fixed_value_create.
2092
2093 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2094
2095         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2096
2097 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2098
2099         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2100         by calls to error.
2101
2102 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2103
2104         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2105         Move update of loop variable "fi".
2106
2107 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2108
2109         * ada-lang.c (value_assign_to_component): In the case of
2110         big-endian targets, extract the bits of the given VAL
2111         using an src_offset of zero if container is not a scalar.
2112
2113 2018-09-06  Simon Ser  <contact@emersion.fr>
2114
2115         PR gdb/23105
2116         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2117         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2118         * fbsd-tdep.c (fbsd_make_note_desc): New.
2119         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2120         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2121         * target.h (enum target_object) Add FreeBSD-specific
2122         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2123
2124 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2125
2126         * compile/compile-c.h (generate_c_for_variable_locations):
2127         Change reference to pointer.
2128         * compile/compile-c-support.c (compile_program) <compute>:
2129         Likewise.
2130         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2131         (generate_c_for_for_one_variable): Likewise
2132         (generate_c_for_variable_locations): Likewise
2133         * compile/compile-c-types.c (compile_c_instance::convert_type):
2134         Likewise
2135         * compile/compile-cplus-symbols.c (convert_one_symbol):
2136         std::move the scope passed to enter_scope.
2137         * compile/compile-cplus-types.c
2138         (compile_cplus_instance::enter_scope): Make parameter
2139         rvalue-reference.
2140         (compile_cplus_instance::new_scope): Change reference to
2141         pointer.
2142         (compile_cplus_instance::convert_type): Likewise
2143         (compile_cplus_convert_typedef): std::move the scope passed to
2144         enter_scope.
2145         (compile_cplus_convert_struct_or_union): Likewise.
2146         (compile_cplus_convert_enum): Likewise.
2147         (compile_cplus_convert_namespace): Likewise.
2148         * compile/compile-cplus.h (compile_cplus_instance)
2149         <enter_scope>: Make parameter rvalue-reference.
2150         * compile/compile-internal.h (compile_instance)
2151         <get_cached_type>: Likewise
2152         * compile/compile-loc2c.c (push): Likewise
2153         (pushf): Likewise
2154         (unary): Likewise
2155         (binary): Likewise
2156         (print_label): Likewise
2157         (pushf_register_address): Likewise
2158         (pushf_register): Likewise
2159         (do_compile_dwarf_expr_to_c): Likewise
2160         (compile_dwarf_expr_to_c): Likewise
2161         (compile_dwarf_bounds_to_c): Likewise
2162         * compile/compile.c (compile_instance::get_cached_type):
2163         Likewise
2164         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2165         (compile_dwarf_bounds_to_c): Likewise
2166         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2167         (dwarf2_compile_property_to_c): Likewise
2168         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2169         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2170         Likewise
2171
2172 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2173
2174         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2175         * tui/tui-data.c (init_content_element): Don't initialize it.
2176
2177 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2178
2179         * tui/tui-data.h (struct tui_win_info)
2180         <detail::opaque>: Remove.
2181         * tui/tui-data.c (init_win_info): Remove assignment.
2182
2183 2018-09-05  Tom Tromey  <tom@tromey.com>
2184
2185         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2186         -Wformat-nonliteral.
2187         * target-float.c (host_float_ops<T>::to_string)
2188         (host_float_ops<T>::from_string): Use
2189         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2190         * configure: Rebuild.
2191
2192 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2193
2194         * printcmd.c (printf_c_string): Use
2195         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2196         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2197
2198 2018-09-05  Tom Tromey  <tom@tromey.com>
2199
2200         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2201
2202 2018-09-05  Tom de Vries  <tdevries@suse.de>
2203
2204         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2205         with resolve_abstract_p == true.
2206         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2207         defaulting to false. Propagate resolve_abstract_p to
2208         dwarf2_fetch_die_loc_sect_off.
2209         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2210         parameter, defaulting to false.
2211         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2212         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2213         parameter.
2214         * dwarf2read.h (struct die_info): Forward-declare.
2215         (die_info_ptr): New typedef.
2216         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2217
2218 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2219
2220         GDB 8.2 released.
2221
2222 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2223             Pedro Alves  <palves@redhat.com>
2224
2225         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2226         "aclocal-m4-deps.mk".  Include file here.
2227         $(srcdir)/aclocal.m4: Add "configure.ac".
2228         * gnulib/aclocal-m4-deps.mk: New file.
2229         * gnulib/update-gnulib.sh: Automatically update
2230         "aclocal-m4-deps.mk".
2231
2232 2018-09-04  Tom Tromey  <tom@tromey.com>
2233
2234         * configure: Rebuild.
2235         * configure.ac: Remove multi-ice code.
2236
2237 2018-09-04  Tom Tromey  <tom@tromey.com>
2238
2239         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2240         (ada-exp.o): Update.
2241
2242 2018-09-04  Tom Tromey  <tom@tromey.com>
2243
2244         * Makefile.in (printcmd.o, target-float.o): Remove.
2245         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2246
2247 2018-09-04  Tom Tromey  <tom@tromey.com>
2248
2249         * gnulib/Makefile.in: Remove obsolete comment.
2250         * Makefile.in: Remove obsolete comment.
2251
2252 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2253
2254         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2255         line with '+'.
2256
2257 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2258
2259         * riscv-tdep.c: Add 'prologue-value.h' include.
2260         (struct riscv_unwind_cache): New struct.
2261         (riscv_debug_unwinder): New global.
2262         (riscv_scan_prologue): Update arguments, capture register details
2263         from prologue scan.
2264         (riscv_skip_prologue): Reformat arguments line, move end of
2265         prologue calculation into riscv_scan_prologue.
2266         (riscv_frame_cache): Update return type, create
2267         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2268         details.
2269         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2270         (riscv_frame_prev_register): Use the trad_frame within the
2271         riscv_unwind_cache.
2272         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2273         flag.
2274
2275 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2276
2277         * trad-frame.h (trad_frame_set_realreg): Declare.
2278         (trad_frame_set_addr): Declare.
2279         * trad-frame.c (trad_frame_set_realreg): Define new function.
2280         (trad_frame_set_addr): Define new function.
2281         (trad_frame_set_reg_realreg): Use new function.
2282         (trad_frame_set_reg_addr): Use new function.
2283
2284 2018-09-01  Keith Seitz  <keiths@redhat.com>
2285
2286         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2287         pulongest instead of "%lld".
2288         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2289         ATTRIBUTE_UNUSED.
2290
2291 2018-08-31  Tom Tromey  <tom@tromey.com>
2292
2293         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2294         variant part type.
2295
2296 2018-08-31  Pedro Alves  <palves@redhat.com>
2297
2298         * gdbarch.h: Regenerate.
2299
2300 2018-08-31  Pedro Alves  <palves@redhat.com>
2301
2302         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2303         * target.h (Hardware watchpoint interfaces): Describe
2304         continuable/steppable/non-steppable watchpoints.
2305         * gdbarch.h, gdbarch.c: Regenerate.
2306
2307 2018-08-31  Pedro Alves  <palves@redhat.com>
2308
2309         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2310         Delete.
2311         * s390-linux-nat.c
2312         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2313         * target.h (target_ops::have_continuable_watchpoint): Delete.
2314         (target_have_continuable_watchpoint): Delete.
2315         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2316         * target-delegates.c: Regenerate.
2317
2318 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2319
2320         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2321         the files present in "gnulib/import/m4/".
2322
2323 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2324
2325         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2326         c.sw, c.swsp, and c.sdsp.
2327
2328 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2329
2330         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2331         (riscv_read_misa_reg): Don't cache value read into inferior data.
2332         (riscv_new_inferior_data): Delete.
2333         (riscv_inferior_data_cleanup): Delete.
2334         (riscv_inferior_data): Delete.
2335         (riscv_invalidate_inferior_data): Delete.
2336         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2337
2338 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2339
2340         * compile/compile-cplus-types.c
2341         (compile_cplus_instance::leave_scope): Take the address of scope
2342         object.
2343         (compile_cplus_instance::convert_qualified_base): Compare quals
2344         to 0.
2345
2346 2018-08-30  Keith Seitz  <keiths@redhat.com>
2347
2348         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2349         Use "%s" and host_address_to_string instead of "%p" in printf.
2350
2351 2018-08-29  Keith Seitz  <keiths@redhat.com>
2352
2353         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2354         and compile-cplus-types.c.
2355         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2356         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2357         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2358         Declare.
2359         * compile/compile-c-support.c: Include compile-cplus.h.
2360         (load_libcompile): Templatize.
2361         (get_compile_context): "New" function.
2362         (c_get_compile_context): Use get_compile_context.
2363         (cplus_get_compile_context): New function.
2364         (cplus_push_user_expression, cplus_pop_user_expression)
2365         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2366         (cplus_compute_program): Define new structs/functions.
2367         * compile/compile-cplus-symmbols.c: New file.
2368         * compile/compile-cplus-types.c: New file.
2369         * compile/compile-cplus.h: New file.
2370         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2371         Declare.
2372         * compile/compile-object-load.c (get_out_value_type): Use
2373         strncmp_iw when comparing symbol names.
2374         (compile_object_load): Add mst_bss and mst_data.
2375         * compile/compile.c (_initialize_compile): Remove
2376         -Wno-implicit-function-declaration from `compile_args'.
2377         * compile/gcc-cp-plugin.h: New file.
2378         * NEWS: Mention C++ compile support and new debug options.
2379
2380 2018-08-29  Keith Seitz  <keiths@redhat.com>
2381
2382         * linespec.c (collect_info::add_symbol): Make virtual.
2383         (struct symbol_searcher_collect_info): New struct.
2384         (symbol_searcher::find_all_symbols): New method.
2385         * symtab.h (class symbol_searcher): New class.
2386
2387 2018-08-29  Keith Seitz  <keiths@redhat.com>
2388
2389         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2390         Change to vector of block_symbol.  Update all users.
2391         (struct collect_info) <symbols>: Likewise.
2392         (collect_info::add_symbol): Take block_symbol as argument.
2393         Update all callers.
2394         (decode_compound_collector) <m_symbols>: Change type to vector
2395         of block_symbol.  Update all users.
2396         (decode_compound_collector::operator ()): Change parameter type
2397         to block_symbol.
2398         (find_method, find_function_symbols, find_linespec_symbols)
2399         (find_label_symbols_in_block, find_label_symbols): Change symbol
2400         vectors to block_symbol vectors.
2401         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2402         block_symbol.
2403
2404 2018-08-29  Keith Seitz  <keiths@redhat.com>
2405
2406         * linespec.c (symbolp): Remove typedef and VEC definitions.
2407         (bound_minimal_symbol_d): Likewise.
2408
2409 2018-08-29  Keith Seitz  <keiths@redhat.com>
2410
2411         * linespec.c (decode_compound_collector::decode_compound_collector):
2412         Remove initialization for `m_symtabs'.
2413         (decode_compound_collector::release_symbols): Change return type
2414         to std::vector.  Update all callers.
2415         (class decode_compound_collector) <m_symbols>: Change type to
2416         std::vector.
2417         (lookup_prefix_sym): Change return type to std::vector.  Update all
2418         callers.
2419         (compare_symbols): Remove.
2420         (std_compare_symbols): Rename to `compare_symbols'.
2421         (find_method): Change `sym_classes' parameter to std::vector.
2422         Update all callers.  Use std::sort to sort sym_classes.
2423         (find_linespec_symbols): Remove cleanup.
2424
2425 2018-08-29  Keith Seitz  <keiths@redhat.com>
2426
2427         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2428         std::vector.  Update all users.
2429         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2430         (struct collect_info) <minimal_symbols>: Likewise.
2431         (compare_msymbols): Return bool.  Change parameters to const
2432         bound_minimal_symbol references.
2433         (find_method, find_function_symbols, find_linespec_symbols): Change
2434         `minsyms' parameter to std::vector.  Update all callers.
2435
2436 2018-08-29  Keith Seitz  <keiths@redhat.com>
2437
2438         * linespec.c (struct linespec) <label_symbols>: Change type to
2439         std::vector.  Update all users.
2440         (find_label_symbols_in_block): Change `result' parameter to
2441         std::vector.  Update all callers.
2442         (find_label_symbols): Return std::vector.  Update all callers.
2443
2444 2018-08-29  Keith Seitz  <keiths@redhat.com>
2445
2446         * linespec.c (struct linespec) <function_symbols>: Change type to
2447         std::vector.  Update all users.
2448         (struct collect_info) <function_symbols>: Likewise.
2449         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2450         (std_compare_symbols): New function.
2451         (find_method, find_function_symbols, find_linespec_symbols)
2452         (find_label_symbols_in_block): Change `symbols' parameter to
2453         std::vector.  Update all callers.
2454         (find_label_symbols): Likewise for `function_symbols' and
2455         `label_funcs_ret'.
2456
2457 2018-08-29  Keith Seitz  <keiths@redhat.com>
2458
2459         * linespec.c (symtab_vector_up): Define.
2460         (struct linespec) <file_symtabs>: Change type to std::vector *.
2461         Update all uses.
2462         (struct collect_info) <file_symtabs>: Likewise.
2463         (collect_symtabs_from_filename): Return symtab_vector_up.
2464         Update all callers.
2465         (decode_objc): Remove cleanup.
2466         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2467         (symtab_collector::release_symtabs): Return symtab_vector_up.
2468         Update all callers.
2469         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2470         Update all users.
2471         (collect_symtabs_from_filename, symtabs_from_filename): Return
2472         symtab_vector_up.  Update all callers.
2473
2474 2018-08-29  Tom Tromey  <tom@tromey.com>
2475
2476         * csky-tdep.c (csky_analyze_prologue): Use
2477         core_addr_to_string_nz.
2478
2479 2018-08-29  Tom Tromey  <tom@tromey.com>
2480
2481         * windows-nat.c (struct xlate_exception) <them>: Change type to
2482         DWORD.
2483         (xlate): Fix formatting.  Remove last entry.
2484         (struct xlate_exception, xlate): Comment out.
2485         (windows_nat_target::resume): Use ranged for.
2486
2487 2018-08-29  Jim Wilson  <jimw@sifive.com>
2488
2489         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2490         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2491         of NT_PRFPREG.
2492         (riscv_linux_nat_target::store_registers): Likewise.
2493
2494 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2495
2496         PR gdb/23555
2497         PR gdb/23558
2498         * gnulib/aclocal.m4: Regenerate.
2499         * gnulib/config.in: Regenerate.
2500         * gnulib/configure: Regenerate.
2501         * gnulib/import/Makefile.am: Update.
2502         * gnulib/import/Makefile.in: Update.
2503         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2504         * gnulib/import/_Noreturn.h: ... this.
2505         * gnulib/import/alloca.in.h: Update.
2506         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2507         * gnulib/import/arg-nonnull.h: ... this.
2508         * gnulib/import/assure.h: Update.
2509         * gnulib/import/at-func.c: Update.
2510         * gnulib/import/basename-lgpl.c: Update.
2511         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2512         * gnulib/import/c++defs.h: ... this.
2513         * gnulib/import/canonicalize-lgpl.c: Update.
2514         * gnulib/import/cdefs.h: Update.
2515         * gnulib/import/chdir-long.c: Update.
2516         * gnulib/import/chdir-long.h: Update.
2517         * gnulib/import/cloexec.c: Update.
2518         * gnulib/import/cloexec.h: Update.
2519         * gnulib/import/close.c: Update.
2520         * gnulib/import/closedir.c: Update.
2521         * gnulib/import/config.charset: Update.
2522         * gnulib/import/dirent-private.h: Update.
2523         * gnulib/import/dirent.in.h: Update.
2524         * gnulib/import/dirfd.c: Update.
2525         * gnulib/import/dirname-lgpl.c: Update.
2526         * gnulib/import/dirname.h: Update.
2527         * gnulib/import/dosname.h: Update.
2528         * gnulib/import/dup-safer-flag.c: Update.
2529         * gnulib/import/dup-safer.c: Update.
2530         * gnulib/import/dup.c: Update.
2531         * gnulib/import/dup2.c: Update.
2532         * gnulib/import/errno.in.h: Update.
2533         * gnulib/import/error.c: Update.
2534         * gnulib/import/error.h: Update.
2535         * gnulib/import/exitfail.c: Update.
2536         * gnulib/import/exitfail.h: Update.
2537         * gnulib/import/extra/update-copyright: Update.
2538         * gnulib/import/fchdir.c: Update.
2539         * gnulib/import/fcntl.c: Update.
2540         * gnulib/import/fcntl.in.h: Update.
2541         * gnulib/import/fd-hook.c: Update.
2542         * gnulib/import/fd-hook.h: Update.
2543         * gnulib/import/fd-safer-flag.c: Update.
2544         * gnulib/import/fd-safer.c: Update.
2545         * gnulib/import/fdopendir.c: Update.
2546         * gnulib/import/filename.h: Update.
2547         * gnulib/import/filenamecat-lgpl.c: Update.
2548         * gnulib/import/filenamecat.h: Update.
2549         * gnulib/import/flexmember.h: Update.
2550         * gnulib/import/float+.h: Update.
2551         * gnulib/import/float.c: Update.
2552         * gnulib/import/float.in.h: Update.
2553         * gnulib/import/fnmatch.c: Update.
2554         * gnulib/import/fnmatch.in.h: Update.
2555         * gnulib/import/fnmatch_loop.c: Update.
2556         * gnulib/import/fpucw.h: Update.
2557         * gnulib/import/frexp.c: Update.
2558         * gnulib/import/frexpl.c: Update.
2559         * gnulib/import/fstat.c: Update.
2560         * gnulib/import/fstatat.c: Update.
2561         * gnulib/import/getcwd-lgpl.c: Update.
2562         * gnulib/import/getcwd.c: Update.
2563         * gnulib/import/getdtablesize.c: Update.
2564         * gnulib/import/getlogin_r.c: Update.
2565         * gnulib/import/getprogname.c: Update.
2566         * gnulib/import/getprogname.h: Update.
2567         * gnulib/import/gettext.h: Update.
2568         * gnulib/import/gettimeofday.c: Update.
2569         * gnulib/import/glob-libc.h: Update.
2570         * gnulib/import/glob.c: Update.
2571         * gnulib/import/glob.in.h: Update.
2572         * gnulib/import/glob_internal.h: Update.
2573         * gnulib/import/glob_pattern_p.c: Update.
2574         * gnulib/import/globfree.c: Update.
2575         * gnulib/import/hard-locale.c: Update.
2576         * gnulib/import/hard-locale.h: Update.
2577         * gnulib/import/intprops.h: Update.
2578         * gnulib/import/inttypes.in.h: Update.
2579         * gnulib/import/isnan.c: Update.
2580         * gnulib/import/isnand-nolibm.h: Update.
2581         * gnulib/import/isnand.c: Update.
2582         * gnulib/import/isnanl-nolibm.h: Update.
2583         * gnulib/import/isnanl.c: Update.
2584         * gnulib/import/itold.c: Update.
2585         * gnulib/import/libc-config.h: Update.
2586         * gnulib/import/limits.in.h: Update.
2587         * gnulib/import/localcharset.c: Update.
2588         * gnulib/import/localcharset.h: Update.
2589         * gnulib/import/localtime-buffer.c: Update.
2590         * gnulib/import/localtime-buffer.h: Update.
2591         * gnulib/import/lstat.c: Update.
2592         * gnulib/import/m4/00gnulib.m4: Update.
2593         * gnulib/import/m4/__inline.m4: Update.
2594         * gnulib/import/m4/absolute-header.m4: Update.
2595         * gnulib/import/m4/alloca.m4: Update.
2596         * gnulib/import/m4/builtin-expect.m4: Update.
2597         * gnulib/import/m4/canonicalize.m4: Update.
2598         * gnulib/import/m4/chdir-long.m4: Update.
2599         * gnulib/import/m4/close.m4: Update.
2600         * gnulib/import/m4/closedir.m4: Update.
2601         * gnulib/import/m4/configmake.m4: Update.
2602         * gnulib/import/m4/d-ino.m4: Update.
2603         * gnulib/import/m4/d-type.m4: Update.
2604         * gnulib/import/m4/dirent_h.m4: Update.
2605         * gnulib/import/m4/dirfd.m4: Update.
2606         * gnulib/import/m4/dirname.m4: Update.
2607         * gnulib/import/m4/double-slash-root.m4: Update.
2608         * gnulib/import/m4/dup.m4: Update.
2609         * gnulib/import/m4/dup2.m4: Update.
2610         * gnulib/import/m4/eealloc.m4: Update.
2611         * gnulib/import/m4/environ.m4: Update.
2612         * gnulib/import/m4/errno_h.m4: Update.
2613         * gnulib/import/m4/error.m4: Update.
2614         * gnulib/import/m4/exponentd.m4: Update.
2615         * gnulib/import/m4/exponentl.m4: Update.
2616         * gnulib/import/m4/extensions.m4: Update.
2617         * gnulib/import/m4/extern-inline.m4: Update.
2618         * gnulib/import/m4/fchdir.m4: Update.
2619         * gnulib/import/m4/fcntl-o.m4: Update.
2620         * gnulib/import/m4/fcntl.m4: Update.
2621         * gnulib/import/m4/fcntl_h.m4: Update.
2622         * gnulib/import/m4/fdopendir.m4: Update.
2623         * gnulib/import/m4/filenamecat.m4: Update.
2624         * gnulib/import/m4/flexmember.m4: Update.
2625         * gnulib/import/m4/float_h.m4: Update.
2626         * gnulib/import/m4/fnmatch.m4: Update.
2627         * gnulib/import/m4/fnmatch_h.m4: Update.
2628         * gnulib/import/m4/fpieee.m4: Update.
2629         * gnulib/import/m4/frexp.m4: Update.
2630         * gnulib/import/m4/frexpl.m4: Update.
2631         * gnulib/import/m4/fstat.m4: Update.
2632         * gnulib/import/m4/fstatat.m4: Update.
2633         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2634         * gnulib/import/m4/getcwd-path-max.m4: Update.
2635         * gnulib/import/m4/getcwd.m4: Update.
2636         * gnulib/import/m4/getdtablesize.m4: Update.
2637         * gnulib/import/m4/getlogin.m4: Update.
2638         * gnulib/import/m4/getlogin_r.m4: Update.
2639         * gnulib/import/m4/getpagesize.m4: Update.
2640         * gnulib/import/m4/getprogname.m4: Update.
2641         * gnulib/import/m4/gettimeofday.m4: Update.
2642         * gnulib/import/m4/glibc21.m4: Update.
2643         * gnulib/import/m4/glob.m4: Update.
2644         * gnulib/import/m4/glob_h.m4: Update.
2645         * gnulib/import/m4/gnulib-cache.m4: Update.
2646         * gnulib/import/m4/gnulib-common.m4: Update.
2647         * gnulib/import/m4/gnulib-comp.m4: Update.
2648         * gnulib/import/m4/gnulib-tool.m4: Update.
2649         * gnulib/import/m4/hard-locale.m4: Update.
2650         * gnulib/import/m4/include_next.m4: Update.
2651         * gnulib/import/m4/inttypes-pri.m4: Update.
2652         * gnulib/import/m4/inttypes.m4: Update.
2653         * gnulib/import/m4/isnand.m4: Update.
2654         * gnulib/import/m4/isnanl.m4: Update.
2655         * gnulib/import/m4/largefile.m4: Update.
2656         * gnulib/import/m4/limits-h.m4: Update.
2657         * gnulib/import/m4/localcharset.m4: Update.
2658         * gnulib/import/m4/locale-fr.m4: Update.
2659         * gnulib/import/m4/locale-ja.m4: Update.
2660         * gnulib/import/m4/locale-zh.m4: Update.
2661         * gnulib/import/m4/localtime-buffer.m4: Update.
2662         * gnulib/import/m4/longlong.m4: Update.
2663         * gnulib/import/m4/lstat.m4: Update.
2664         * gnulib/import/m4/malloc.m4: Update.
2665         * gnulib/import/m4/malloca.m4: Update.
2666         * gnulib/import/m4/math_h.m4: Update.
2667         * gnulib/import/m4/mbrtowc.m4: Update.
2668         * gnulib/import/m4/mbsinit.m4: Update.
2669         * gnulib/import/m4/mbsrtowcs.m4: Update.
2670         * gnulib/import/m4/mbstate_t.m4: Update.
2671         * gnulib/import/m4/memchr.m4: Update.
2672         * gnulib/import/m4/memmem.m4: Update.
2673         * gnulib/import/m4/mempcpy.m4: Update.
2674         * gnulib/import/m4/memrchr.m4: Update.
2675         * gnulib/import/m4/mkdir.m4: Update.
2676         * gnulib/import/m4/mkstemp.m4: Update.
2677         * gnulib/import/m4/mmap-anon.m4: Update.
2678         * gnulib/import/m4/mode_t.m4: Update.
2679         * gnulib/import/m4/msvc-inval.m4: Update.
2680         * gnulib/import/m4/msvc-nothrow.m4: Update.
2681         * gnulib/import/m4/multiarch.m4: Update.
2682         * gnulib/import/m4/nocrash.m4: Update.
2683         * gnulib/import/m4/off_t.m4: Update.
2684         * gnulib/import/m4/onceonly.m4: Update.
2685         * gnulib/import/m4/open-cloexec.m4: Update.
2686         * gnulib/import/m4/open.m4: Update.
2687         * gnulib/import/m4/openat.m4: Update.
2688         * gnulib/import/m4/opendir.m4: Update.
2689         * gnulib/import/m4/pathmax.m4: Update.
2690         * gnulib/import/m4/rawmemchr.m4: Update.
2691         * gnulib/import/m4/readdir.m4: Update.
2692         * gnulib/import/m4/readlink.m4: Update.
2693         * gnulib/import/m4/realloc.m4: Update.
2694         * gnulib/import/m4/rename.m4: Update.
2695         * gnulib/import/m4/rewinddir.m4: Update.
2696         * gnulib/import/m4/rmdir.m4: Update.
2697         * gnulib/import/m4/save-cwd.m4: Update.
2698         * gnulib/import/m4/secure_getenv.m4: Update.
2699         * gnulib/import/m4/setenv.m4: Update.
2700         * gnulib/import/m4/signal_h.m4: Update.
2701         * gnulib/import/m4/ssize_t.m4: Update.
2702         * gnulib/import/m4/stat-time.m4: Update.
2703         * gnulib/import/m4/stat.m4: Update.
2704         * gnulib/import/m4/std-gnu11.m4: Update.
2705         * gnulib/import/m4/stdbool.m4: Update.
2706         * gnulib/import/m4/stddef_h.m4: Update.
2707         * gnulib/import/m4/stdint.m4: Update.
2708         * gnulib/import/m4/stdio_h.m4: Update.
2709         * gnulib/import/m4/stdlib_h.m4: Update.
2710         * gnulib/import/m4/strchrnul.m4: Update.
2711         * gnulib/import/m4/strdup.m4: Update.
2712         * gnulib/import/m4/strerror.m4: Update.
2713         * gnulib/import/m4/string_h.m4: Update.
2714         * gnulib/import/m4/strstr.m4: Update.
2715         * gnulib/import/m4/strtok_r.m4: Update.
2716         * gnulib/import/m4/sys_socket_h.m4: Update.
2717         * gnulib/import/m4/sys_stat_h.m4: Update.
2718         * gnulib/import/m4/sys_time_h.m4: Update.
2719         * gnulib/import/m4/sys_types_h.m4: Update.
2720         * gnulib/import/m4/tempname.m4: Update.
2721         * gnulib/import/m4/time_h.m4: Update.
2722         * gnulib/import/m4/unistd-safer.m4: Update.
2723         * gnulib/import/m4/unistd_h.m4: Update.
2724         * gnulib/import/m4/warn-on-use.m4: Update.
2725         * gnulib/import/m4/wchar_h.m4: Update.
2726         * gnulib/import/m4/wchar_t.m4: Update.
2727         * gnulib/import/m4/wctype_h.m4: Update.
2728         * gnulib/import/m4/wint_t.m4: Update.
2729         * gnulib/import/malloc.c: Update.
2730         * gnulib/import/malloc/scratch_buffer.h: Update.
2731         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2732         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2733         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2734         * gnulib/import/malloca.c: Update.
2735         * gnulib/import/malloca.h: Update.
2736         * gnulib/import/malloca.valgrind: Update.
2737         * gnulib/import/math.in.h: Update.
2738         * gnulib/import/mbrtowc.c: Update.
2739         * gnulib/import/mbsinit.c: Update.
2740         * gnulib/import/mbsrtowcs-impl.h: Update.
2741         * gnulib/import/mbsrtowcs-state.c: Update.
2742         * gnulib/import/mbsrtowcs.c: Update.
2743         * gnulib/import/memchr.c: Update.
2744         * gnulib/import/memmem.c: Update.
2745         * gnulib/import/mempcpy.c: Update.
2746         * gnulib/import/memrchr.c: Update.
2747         * gnulib/import/mkdir.c: Update.
2748         * gnulib/import/mkstemp.c: Update.
2749         * gnulib/import/msvc-inval.c: Update.
2750         * gnulib/import/msvc-inval.h: Update.
2751         * gnulib/import/msvc-nothrow.c: Update.
2752         * gnulib/import/msvc-nothrow.h: Update.
2753         * gnulib/import/open.c: Update.
2754         * gnulib/import/openat-die.c: Update.
2755         * gnulib/import/openat-priv.h: Update.
2756         * gnulib/import/openat-proc.c: Update.
2757         * gnulib/import/openat.c: Update.
2758         * gnulib/import/openat.h: Update.
2759         * gnulib/import/opendir.c: Update.
2760         * gnulib/import/pathmax.h: Update.
2761         * gnulib/import/pipe-safer.c: Update.
2762         * gnulib/import/rawmemchr.c: Update.
2763         * gnulib/import/readdir.c: Update.
2764         * gnulib/import/readlink.c: Update.
2765         * gnulib/import/realloc.c: Update.
2766         * gnulib/import/ref-add.sin: Update.
2767         * gnulib/import/ref-del.sin: Update.
2768         * gnulib/import/rename.c: Update.
2769         * gnulib/import/rewinddir.c: Update.
2770         * gnulib/import/rmdir.c: Update.
2771         * gnulib/import/same-inode.h: Update.
2772         * gnulib/import/save-cwd.c: Update.
2773         * gnulib/import/save-cwd.h: Update.
2774         * gnulib/import/scratch_buffer.h: Update.
2775         * gnulib/import/secure_getenv.c: Update.
2776         * gnulib/import/setenv.c: Update.
2777         * gnulib/import/signal.in.h: Update.
2778         * gnulib/import/stat-time.c: Update.
2779         * gnulib/import/stat-time.h: Update.
2780         * gnulib/import/stat-w32.c: Update.
2781         * gnulib/import/stat-w32.h: Update.
2782         * gnulib/import/stat.c: Update.
2783         * gnulib/import/stdbool.in.h: Update.
2784         * gnulib/import/stddef.in.h: Update.
2785         * gnulib/import/stdint.in.h: Update.
2786         * gnulib/import/stdio.in.h: Update.
2787         * gnulib/import/stdlib.in.h: Update.
2788         * gnulib/import/str-two-way.h: Update.
2789         * gnulib/import/strchrnul.c: Update.
2790         * gnulib/import/strdup.c: Update.
2791         * gnulib/import/streq.h: Update.
2792         * gnulib/import/strerror-override.c: Update.
2793         * gnulib/import/strerror-override.h: Update.
2794         * gnulib/import/strerror.c: Update.
2795         * gnulib/import/string.in.h: Update.
2796         * gnulib/import/stripslash.c: Update.
2797         * gnulib/import/strnlen1.c: Update.
2798         * gnulib/import/strnlen1.h: Update.
2799         * gnulib/import/strstr.c: Update.
2800         * gnulib/import/strtok_r.c: Update.
2801         * gnulib/import/sys_stat.in.h: Update.
2802         * gnulib/import/sys_time.in.h: Update.
2803         * gnulib/import/sys_types.in.h: Update.
2804         * gnulib/import/tempname.c: Update.
2805         * gnulib/import/tempname.h: Update.
2806         * gnulib/import/time.in.h: Update.
2807         * gnulib/import/unistd--.h: Update.
2808         * gnulib/import/unistd-safer.h: Update.
2809         * gnulib/import/unistd.in.h: Update.
2810         * gnulib/import/unsetenv.c: Update.
2811         * gnulib/import/verify.h: Update.
2812         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2813         * gnulib/import/wchar.in.h: Update.
2814         * gnulib/import/wctype.in.h: Update.
2815         * gnulib/import/xalloc-oversized.h: Update.
2816         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2817         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2818
2819 2018-08-16  Gary Benson <gbenson@redhat.com>
2820
2821         PR gdb/13000:
2822         * gdb/main.c (captured_main_1): Exit with nonzero status
2823         in batch mode if the last command to be executed failed.
2824         * NEWS: Mention the above.
2825
2826 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
2827
2828         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
2829         end of warning message.
2830
2831 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2832
2833         PR gdb/22943:
2834         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
2835         (aarch64_extract_return_value): Use
2836         aapcs_is_vfp_call_or_return_candidate.
2837         (aarch64_return_in_memory): Likewise.
2838         (aarch64_store_return_value): Likewise.
2839
2840 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2841
2842         * aarch64-tdep.c
2843         (aapcs_is_vfp_call_or_return_candidate): Make static
2844         (pass_in_v_or_stack): Remove function.
2845         (pass_in_v_vfp_candidate): New function.
2846         (aarch64_push_dummy_call): Check for float register candidates.
2847
2848 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2849
2850         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
2851         (aapcs_is_vfp_call_or_return_candidate_1): New function.
2852         (aapcs_is_vfp_call_or_return_candidate): Likewise.
2853
2854 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
2855
2856         PR build/23399
2857         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
2858         (struct ipa_sym_addresses): Rename to...
2859         (struct ipa_sym_addresses_common): ... this.
2860         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
2861
2862 2018-08-28  Tom Tromey  <tom@tromey.com>
2863
2864         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2865         (token_fifo): Now a std::vector.
2866         (yylex, c_parse): Update.
2867         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2868         (token_fifo): Now a std::vector.
2869         (yylex, d_parse): Update.
2870         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2871         (token_fifo): Now a std::vector.
2872         (yylex, go_parse): Update.
2873
2874 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
2875
2876         * parser-defs.h (struct type_stack) <elements>: Change type to
2877         std::vector<union type_stack_elt>.
2878         <depth, size>: Remove.
2879         * parse.c (parse_exp_in_context_1): Adjust.
2880         (type_stack_reserve): Remove.
2881         (check_type_stack_depth): Remove.
2882         (insert_into_type_stack): Adjust to std::vector.
2883         (insert_type): Likewise.
2884         (push_type): Likewise.
2885         (push_type_int): Likewise.
2886         (insert_type_address_space): Likewise.
2887         (pop_type): Likewise.
2888         (pop_type_int): Likewise.
2889         (pop_typelist): Likewise.
2890         (pop_type_stack): Likewise.
2891         (append_type_stack): Likewise.
2892         (push_type_stack): Likewise.
2893         (get_type_stack): Likewise.
2894         (type_stack_cleanup): Likewise.
2895         (push_typelist): Likewise.
2896         (follow_types): Likewise.
2897         (_initialize_parse): Likewise.
2898
2899 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2900
2901         * NEWS: Mention csky target.
2902
2903 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
2904             Hafiz Abid Qadeer  <abidh@codesourcery.com>
2905             Don Breazeal  <donb@codesourcery.com>
2906
2907         * csky-linux-tdep.c: New file.
2908         * csky-tdep.c: Likewise.
2909         * csky-tdep.h: Likewise.
2910         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
2911         csky-tdep.o.
2912         (HFILES_NO_SRCDIR): Add csky-tdep.h.
2913         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
2914         * configure.tgt: Add csky support.
2915
2916 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
2917
2918         * python/py-framefilter.c (py_print_frame): Print frame architecture
2919         when printing on an MI output.
2920
2921 2018-08-27  Tom Tromey  <tom@tromey.com>
2922
2923         PR build/23087:
2924         * configure: Rebuild.
2925         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
2926
2927 2018-08-27  Tom Tromey  <tom@tromey.com>
2928
2929         * aarch64-linux-tdep.c
2930         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
2931         casts to int.
2932
2933 2018-08-27  Tom Tromey  <tom@tromey.com>
2934
2935         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
2936         unsigned.
2937         (ppc64_standard_linkage1, ppc64_standard_linkage2)
2938         (ppc64_standard_linkage3, ppc64_standard_linkage4)
2939         (ppc64_standard_linkage5, ppc64_standard_linkage6)
2940         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
2941         unsigned.
2942
2943 2018-08-27  Tom Tromey  <tom@tromey.com>
2944
2945         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
2946         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
2947
2948 2018-08-27  Tom Tromey  <tom@tromey.com>
2949
2950         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
2951         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
2952         ULONGEST_MAX.
2953         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
2954         ULONGEST_MAX.
2955         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
2956         ULONGEST_MAX.
2957         * sparc-linux-tdep.c (sparc32_linux_sigframe)
2958         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
2959         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
2960         ULONGEST_MAX.
2961         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
2962         (ppc64_linux_sigaction_tramp_frame)
2963         (ppc32_linux_sighandler_tramp_frame)
2964         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2965         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
2966         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
2967         * mn10300-linux-tdep.c (am33_linux_sigframe)
2968         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
2969         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
2970         * mips-linux-tdep.c (mips_linux_o32_sigframe)
2971         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
2972         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
2973         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
2974         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
2975         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
2976         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
2977         * microblaze-linux-tdep.c
2978         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2979         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
2980         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
2981         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
2982         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
2983         * common/common-types.h (ULONGEST_MAX): New define.
2984         (CORE_ADDR_MAX): Fix formatting.
2985         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
2986         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
2987         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
2988         (arm_linux_rt_sigreturn_tramp_frame)
2989         (arm_eabi_linux_sigreturn_tramp_frame)
2990         (arm_eabi_linux_rt_sigreturn_tramp_frame)
2991         (thumb2_eabi_linux_sigreturn_tramp_frame)
2992         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
2993         (arm_linux_restart_syscall_tramp_frame)
2994         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
2995         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
2996         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
2997         ULONGEST_MAX.
2998         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
2999
3000 2018-08-27  Tom Tromey  <tom@tromey.com>
3001
3002         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3003         CORE_ADDR_MAX.
3004         * mips-tdep.c (mips_deal_with_atomic_sequence)
3005         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3006         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3007         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3008         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3009         CORE_ADDR_MAX.
3010         * aarch64-tdep.c (aarch64_software_single_step): Use
3011         CORE_ADDR_MAX.
3012
3013 2018-08-27  Tom Tromey  <tom@tromey.com>
3014
3015         * linespec.c (complete_linespec_component): Add cast to "char".
3016         * completer.c (completion_tracker::build_completion_result): Add
3017         cast to "char".
3018
3019 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3020
3021         * solist.h (struct solist, struct target_so_ops): Fix
3022         indentation.
3023
3024 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3025
3026         * ada-tasks.c (ada_task_info_s): Remove typedef.
3027         (DEF_VEC_O(ada_task_info_s)): Remove.
3028         (struct ada_tasks_inferior_data): Initialize fields.
3029         <task_list>: Make an std::vector.
3030         (get_ada_tasks_inferior_data): Allocate with new.
3031         (ada_get_task_number): Adjust.
3032         (get_task_number_from_id): Likewise.
3033         (valid_task_id): Likewise.
3034         (ada_get_task_info_from_ptid): Likewise.
3035         (iterate_over_live_ada_tasks): Likewise.
3036         (add_ada_task): Likewise.
3037         (read_known_tasks): Likewise.
3038         (ada_build_task_list): Likewise.
3039         (print_ada_task_info): Likewise.
3040         (info_task): Likewise.
3041         (task_command_1): Likewise.
3042
3043 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3044
3045         * ada-lang.c (add_angle_brackets): Return std::string.
3046
3047 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3048
3049         * python/py-threadevent.c (py_get_event_thread): Initialize
3050         pythread.
3051
3052 2018-08-24  Pedro Alves  <palves@redhat.com>
3053
3054         * python/py-bpevent.c (create_breakpoint_event_object): Use
3055         copy-initialization.
3056         * python/py-continueevent.c (emit_continue_event): Use
3057         copy-initialization.
3058         * python/py-exitedevent.c (create_exited_event_object): Return a
3059         gdbpy_ref<>.
3060         (emit_exited_event): Use copy-initialization.
3061         * python/py-inferior.c (python_new_inferior)
3062         (python_inferior_deleted, add_thread_object): Use
3063         copy-initialization.
3064         * python/py-infevents.c (create_inferior_call_event_object)
3065         (create_register_changed_event_object)
3066         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3067         (emit_inferior_call_event, emit_memory_changed_event)
3068         (emit_register_changed_event): Use copy-initialization.
3069         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3070         Return a gdbpy_ref<>.
3071         (emit_new_objfile_event): Use copy-initialization.
3072         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3073         (emit_clear_objfiles_event): Use copy-initialization.
3074         * python/py-signalevent.c (create_signal_event_object): Use
3075         copy-initialization.
3076         * python/py-threadevent.c (create_thread_event_object): Use
3077         copy-initialization.
3078
3079 2018-08-24  Pedro Alves  <palves@redhat.com>
3080             Simon Marchi  <simon.marchi@ericsson.com>
3081
3082         PR gdb/23379
3083         * python/py-continueevent.c: Include "gdbthread.h".
3084         (create_continue_event_object): Add intro comment.  Add 'ptid'
3085         parameter.  Use it to find thread to pass to
3086         create_thread_event_object.
3087         (emit_continue_event): Pass PTID down to
3088         create_continue_event_object.
3089         * python/py-event.h (py_get_event_thread): Declare.
3090         (create_thread_event_object): Remove default from 'thread'
3091         parameter.
3092         * python/py-stopevent.c (create_stop_event_object): Use
3093         py_get_event_thread.
3094         * python/py-threadevent.c (get_event_thread): Rename to ...
3095         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3096         and use it to find the thread.
3097         (create_thread_event_object): Assert that THREAD isn't null.
3098         Don't find the event thread here.
3099
3100 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3101
3102         * block.h (blockrange, blockranges): New struct declarations.
3103         (struct block): Add new field named `ranges'.
3104         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3105         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3106         macros for accessing ranges in struct block.
3107         (make_blockranges): New declaration.
3108         block.c (make_blockranges): New function.
3109         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3110         for block.
3111         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3112         * blockframe.c (cache_pc_function_block): New static global.
3113         (clear_pc_function_cache): Clear cache_pc_function_block.
3114         (find_pc_partial_function): Move comment to symtab.h.  Add
3115         support for non-contiguous blocks.
3116         * cli/cli-cmds.c (block.h): Include.
3117         (print_disassembly): Handle printing of non-contiguous blocks.
3118         (disassemble_current_function): Likewise.
3119         (disassemble_command): Likewise.
3120
3121         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3122         BLOCK_START.
3123         * blockframe.c (get_pc_function_start): Likewise.
3124         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3125         (gcc_symbol_address): Likewise.
3126         * compile/compile-object-run.c (compile_object_run): Likewise.
3127         * compile/compile.c (get_expr_block_and_pc): Likewise.
3128         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3129         (func_addr_to_tail_call_list): Likewise.
3130         * findvar.c (default_read_var_value): Likewise.
3131         * inline-frame.c (inline_frame_this_id): Likewise.
3132         (skip-inline_frames): Likewise.
3133         * infcmd.c (until_next_command): Likewise.
3134         * linespec.c (convert_linespec_to_sals): Likewise.
3135         * parse.c (parse_exp_in_context_1): Likewise.
3136         * printcmd.c (build_address_symbolic): likewise.
3137         (info_address_command): Likewise.
3138         symtab.c (find_function_start_sal): Likewise.
3139         (skip_prologue_sal): Likewise.
3140         (find_function_alias_target): Likewise.
3141         (find_gnu_ifunc): Likewise.
3142         * stack.c (find_frame_funname): Likewise.
3143         * symtab.c (fixup_symbol_section): Likewise.
3144         (find_function_start_sal): Likewise.
3145         (skip_prologue_sal): Likewsie.
3146         (find_function_alias_target): Likewise.
3147         (find_gnu_ifunc): Likewise.
3148         * tracepoint.c (info_scope_command): Likewise.
3149         * value.c (value_fn_field): Likewise.
3150
3151         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3152         in place of find_pc_partial_function.
3153         * blockframe.c (find_function_entry_range_from_pc): New function.
3154         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3155         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3156         for each range in a block.
3157
3158
3159 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3160
3161         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3162         incrementation.
3163
3164 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3165
3166         * solib-svr4.c (read_program_headers_from_bfd): Return
3167         gdb::optional<gdb::byte_vector>.
3168         (svr4_exec_displacement): Adjust.
3169
3170 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3171
3172         * solib-svr4.c (read_program_header): Return
3173         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3174         (find_program_interpreter): Return
3175         gdb::optional<gdb::byte_vector>.
3176         (scan_dyntag_auxv): Adjust.
3177         (enable_break): Adjust.
3178         (svr4_exec_displacement): Adjust.
3179
3180 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3181
3182         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3183         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3184
3185 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3186
3187         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3188         string_vprintf.
3189         * guile/scm-utils.c (gdbscm_printf): Likewise.
3190         * serial.c (serial_printf): Likewise.
3191         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3192
3193 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3194
3195         * stack.c (print_frame): Print frame architecture when printing on
3196         an MI output.
3197         * NEWS: Mention new "arch" attribute in frame output.
3198
3199 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3200
3201         * arch/aarch64.h (aarch64_regnum): Update comment.
3202
3203 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3204
3205         * NEWS: Add SVE to 8.2 section.
3206
3207 2018-08-21  Pedro Alves  <palves@redhat.com>
3208
3209         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3210         out from gdbscm_parse_function_args.
3211         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3212         gdbscm_parse_function_args_1.
3213
3214 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3215
3216         PR gdb/17816
3217         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3218         operator.
3219
3220 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3221
3222         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3223
3224 2018-08-19  Michael Spang  <spang@google.com>
3225
3226         PR gdb/11786
3227         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3228         for PT_TLS segments.
3229
3230 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3231
3232         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3233         dwarf_variable_value.
3234         * dwarf2-frame.c (class dwarf_expr_executor):
3235         Add override for dwarf_variable_value.
3236         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3237         (class symbol_needs_eval_context): Likewise.
3238         (indirect_synthetic_pointer): Add forward declaration.
3239         (sect_variable_value): New function.
3240         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3241         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3242         for DW_OP_GNU_variable_value.
3243
3244 2018-08-16  Tom Tromey  <tom@tromey.com>
3245
3246         * top.c (read_command_file): Update.
3247         (command_line_input): Remove "repeat" argument.
3248         * ada-lang.c (get_selections): Update.
3249         * linespec.c (decode_line_2): Update.
3250         * defs.h (command_line_input): Remove argument.
3251         * cli/cli-script.c (read_next_line): Update.
3252         * python/py-gdb-readline.c: Update.
3253
3254 2018-08-17  Tom Tromey  <tom@tromey.com>
3255
3256         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3257         command_line_input.
3258
3259 2018-08-15  Tom Tromey  <tom@tromey.com>
3260
3261         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3262
3263 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3264
3265         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3266         If used, use find_pc_partial_function to find address range
3267         to disassemble.
3268         * mi/mi-main.c (mi_cmd_list_features): Report
3269         "data-disassemble-a-option" feature.
3270         * NEWS: Mention new -data-disassemble option -a.
3271
3272 2018-08-13  Tom Tromey  <tom@tromey.com>
3273
3274         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3275
3276 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3277
3278         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3279         (aarch64_linux_collect_sve_regset): Likewise.
3280         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3281         * regcache.h (regcache_map_entry_size): New function.
3282
3283 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3284
3285         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3286         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3287         (SVE_HEADER_VL_LENGTH): Likewise.
3288         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3289         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3290         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3291         (SVE_HEADER_SIZE_OFFSET): Likewise.
3292         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3293         (SVE_HEADER_VL_OFFSET): Likewise.
3294         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3295         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3296         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3297         (SVE_HEADER_SIZE): Likewise.
3298         (aarch64_linux_core_read_vq): Add function.
3299         (aarch64_linux_core_read_description): Check for SVE section.
3300
3301 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3302
3303         * aarch64-fbsd-tdep.c
3304         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3305         collect_size.
3306         * aarch64-linux-tdep.c
3307         (aarch64_linux_iterate_over_regset_sections): Likewise.
3308         * alpha-linux-tdep.c
3309         (alpha_linux_iterate_over_regset_sections):
3310         * alpha-nbsd-tdep.c
3311         (alphanbsd_iterate_over_regset_sections): Likewise.
3312         * amd64-fbsd-tdep.c
3313         (amd64fbsd_iterate_over_regset_sections): Likewise.
3314         * amd64-linux-tdep.c
3315         (amd64_linux_iterate_over_regset_sections): Likewise.
3316         * arm-bsd-tdep.c
3317         (armbsd_iterate_over_regset_sections): Likewise.
3318         * arm-fbsd-tdep.c
3319         (arm_fbsd_iterate_over_regset_sections): Likewise.
3320         * arm-linux-tdep.c
3321         (arm_linux_iterate_over_regset_sections): Likewise.
3322         * corelow.c (get_core_registers_cb): Likewise.
3323         (core_target::fetch_registers): Likewise.
3324         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3325         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3326         * gdbarch.h (void): Regenerate.
3327         * gdbarch.sh: Add supply_size and collect_size.
3328         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3329         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3330         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3331         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3332         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3333         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3334         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3335         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3336         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3337         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3338         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3339         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3340         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3341         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3342         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3343         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3344         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3345         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3346         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3347         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3348         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3349         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3350         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3351         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3352         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3353         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3354         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3355         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3356         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3357         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3358
3359 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3360
3361         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3362         with string_printf.
3363
3364 2018-08-10  Keith Seitz  <keiths@redhat.com>
3365
3366         * compile/compile-c-support.c (add_code_header, add_code_footer):
3367         Move into policy class.
3368         (c_push_user_expression, pop_user_expression_nop)
3369         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3370         (compile_program): New host class.
3371         (c_compile_program): New typedef.
3372         (c_compute_porgram): Use c_compile_program.
3373
3374 2018-08-10  Keith Seitz  <keiths@redhat.com>
3375
3376         * compile/compile-internal.h (compile_instance::~compile_instance):
3377         Remove calls to htab_delete.
3378         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3379         * compile.c (compile_instance::compile_instance): Initialize
3380         htab unique pointers.
3381         (compile_instance::get_cached_type, compile_instance::insert_type)
3382         (compile_instance::error_symbol_once): Update for unique_ptr.
3383
3384 2018-08-10  Keith Seitz  <keiths@redhat.com>
3385
3386         * compile/compile-c-symbols.c (struct symbol_error)
3387         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3388         (compile_instance::insert_symbol_error)
3389         (compile_instance::error_symbol_once): Move to ...
3390         * compile/compile.c: ... here.
3391
3392 2018-08-10  Keith Seitz  <keiths@redhat.com>
3393
3394         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3395         instead of `new_compile_instance'.
3396         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3397         Update description.
3398         If the symbol error map is not initialized, create it.
3399         (generate_c_for_for_one_symbol): Do not check/initialize
3400         the symbol error map.
3401         * compile/compile-c-types.c (compile_c_instance): Make a class.
3402         Update all callers.
3403         (compile_instance::compile_instance): Initialize the type cache.
3404         (get_cached_type): New function.
3405         (insert_type): Update description.
3406         (compile_c_instance::m_default_cflags): Define.
3407         (convert_type): Update description.  Use get_cached_type.
3408         (delete_instance): Moved to destructor.
3409         (new_compile_instance): Moved to constructor.
3410         * compile/compile-c.h (compile_c_instance): Make class inheriting
3411         from compile_instance.
3412         <base>: Remove field.
3413         <type_map, symbol_err_map>: Move to base class.
3414         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3415         * compile/compile-internal.h (compile_instance): Make class.
3416         <type_map_t, symbol_err_map_t>: Define.
3417         <fe>: Rename to `m_gcc_fe'.
3418         <scope, block, gcc_target_options>: Add `m_' prefix.
3419         <m_type_map, m_symbol_err_map>: New fields, moved from
3420         compile_c_instance.
3421         <destroy>: Remove.
3422         (convert_type, new_compile_instance): Remove.
3423         * compile/compile.c (cleanup_compile_instance): Remove.
3424         (compile_to_object): Use unique_ptr to eliminate cleanups.
3425         (compile_instance::set_print_callback, compile_instance::version)
3426         (compile_instance::set_verbose)
3427         (compile_instance::set_driver_filename)
3428         (compile_instance::set_triplet_regexp)
3429         (compile_instance::set_arguments)
3430         (compile_instance::set_source_file)
3431         (compile_instance::compile): Define.
3432
3433 2018-08-10  Keith Seitz  <keiths@redhat.com>
3434
3435         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3436         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3437         gcc-c-fe.def to define C plugin.
3438         (delete_instance): Delete `c_plugin'.
3439         (new_compile_instance): Initialize `c_plugin'.
3440         * compile/compile-c.h: Include gcc_c_plugin.h.
3441         (struct compile_c_instance) <c_plugin>: New member.
3442         * gcc-c-plugin.h: New file.
3443         Update all callers with API change.
3444
3445 2018-08-10  Keith Seitz  <keiths@redhat.com>
3446
3447         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3448         (HFILES_NO_SRCDIR): ... to here.
3449         Add compile-internal.h and compile-c.h.
3450         * compile/compile-c-support.c: Include compile-c.h.
3451         * compile/compile-c-symbols.c: Include compile-c.h.
3452         (generate_c_for_variable_locations): Update comment.
3453         * compile/compile-c-types.c: Include compile-c.h.
3454         * compile/compile-c.h: New file -- moved C language declarations
3455         from other files here.
3456         * compile/compile-internal.h: Do not include hashtab.h or
3457         common/enum-flags.h.
3458         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3459         (gcc_convert_symbol, gcc_symbol_address)
3460         (generate_c_for_variable_locations, c_get_mode_for_size)
3461         (c_get_range_decl_name): Definitions moved to compile-c.h.
3462         * compile/compile-loc2c.c: Include compile-c.h.
3463
3464 2018-08-10  Keith Seitz  <keiths@redhat.com>
3465
3466         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3467         (c_symbol_substitution_name): ... this.
3468         Update all callers.
3469
3470 2018-08-10  Keith Seitz  <keiths@redhat.com>
3471
3472         * compile/compile-c-support.c (c_compute_program): Use
3473         unique_xmalloc_ptr to eliminate cleanup.
3474         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3475         Return a unique_xmalloc_ptr and eliminate cleanup.
3476         * compile/compile-internal.h (generate_c_for_variable_locations):
3477         Return unique_xmalloc_ptr and update description.
3478
3479 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3480
3481         * corelow.c (core_target::get_core_register_section): Rename
3482         min_size to section_min_size.
3483
3484 2018-08-09  Jim Wilson  <jimw@sifive.com>
3485
3486         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3487         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3488         * NEWS: Mention new GNU/Linux RISC-V target.
3489         * configure.host: Add riscv*-*-linux*.
3490         * configure.nat: Add riscv*.
3491         * configure.tgt: Add riscv*-*-linux*.
3492         * riscv-linux-nat.c: New file.
3493         * riscv-linux-tdep.c: New file.
3494
3495 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3496
3497         * infrun.c (resume): Make static, add forward declaration.
3498         (proceed): Update header comment.
3499         * infrun.h (resume): Delete declaration.
3500
3501 2018-08-09  Tom Tromey  <tom@tromey.com>
3502
3503         * riscv-tdep.h: Minor formatting fixes.
3504
3505 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3506
3507         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3508         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3509         (test_mkdir_recursive): Likewise.
3510         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3511
3512 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3513
3514         * valarith.c (value_subscripted_rvalue): If an array is not in
3515         memory, and we don't know the upper bound, then we can't know that
3516         the requested element exists or not.
3517
3518 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3519
3520         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3521         (target_options_to_string): Add comment.
3522
3523 2018-08-08  Tom Tromey  <tom@tromey.com>
3524
3525         * unittests/scoped_mmap-selftests.c: Check result of "write".
3526
3527 2018-08-08  Jim Wilson  <jimw@sifive.com>
3528
3529         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3530         (decode_register_index_short): New.
3531         (decode_j_type_insn, decode_cj_type_insn): New.
3532         (decode_b_type_insn, decode_cb_type_insn): New.
3533         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3534         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3535         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3536         is_c_sw_insn instead of is_sw_insn.
3537         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3538         (riscv_software_single_step): New.
3539         * riscv-tdep.h (riscv_software_single_step): Declare.
3540
3541         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3542         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3543
3544 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3545
3546         PR gdb/18050:
3547         * target.c (dispose_inferior): Don't dispose of inferiors that are
3548         already killed.
3549
3550 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3551
3552         * remote.c (remote_target::download_tracepoint): Change char* to
3553         const char*.
3554
3555 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3556
3557         * target.h (target_options_to_string): Return an std::string.
3558         * target.c (str_comma_list_concat_elem): Return void, use
3559         std::string.
3560         (do_option): Likewise.
3561         (target_options_to_string): Return an std::string.
3562         * linux-nat.c (linux_nat_target::wait): Adjust.
3563         * target-debug.h (target_debug_print_options): Adjust.
3564
3565 2018-08-07  Tom Tromey  <tom@tromey.com>
3566
3567         * Makefile.in (CPPFLAGS): New variable.
3568         (INTERNAL_CPPFLAGS): Use it.
3569
3570 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3571
3572         * NEWS: Mention the index cache.
3573
3574 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3575
3576         * common/pathstuff.h (get_standard_cache_dir): New.
3577         * common/pathstuff.c (get_standard_cache_dir): New.
3578         * build-id.h (build_id_to_string): New.
3579         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
3580         DEBUG_STR_SUFFIX): Move to here.
3581         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
3582         DEBUG_STR_SUFFIX): Move from there.
3583         (write_psymtabs_to_index): Make non-static, add basename
3584         parameter.  Write to temporary files, rename when done.
3585         (save_gdb_index_command): Adjust call to
3586         write_psymtabs_to_index.
3587         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
3588         field.
3589         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
3590         (get_gdb_index_contents_from_cache): New.
3591         (get_gdb_index_contents_from_cache_dwz): New.
3592         (dwarf2_initialize_objfile): Read index from cache.
3593         (dwarf2_build_psymtabs): Save to index.
3594         * dwarf-index-cache.h: New file.
3595         * dwarf-index-cache.c: New file.
3596         * dwarf-index-write.h: New file.
3597
3598 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3599
3600         * gnulib/aclocal.m4: Re-generate.
3601         * gnulib/config.in: Re-generate.
3602         * gnulib/configure: Re-generate.
3603         * gnulib/import/Makefile.am: Re-generate.
3604         * gnulib/import/Makefile.in: Re-generate.
3605         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3606         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3607         * gnulib/import/m4/mkdir.m4: New file.
3608         * gnulib/import/mkdir.c: New file.
3609         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
3610         module.
3611
3612 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3613
3614         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
3615         * common/scoped_mmap.c: New file.
3616         * common/scoped_mmap.h (destroy): New method.
3617         (~scoped_mmap, reset): Use destroy.
3618         (scoped_mmap): New move constructor.
3619         (mmap_file): New declaration.
3620         * unittests/scoped_mmap-selftests.c (test_normal,
3621         test_invalid_filename, run_tests): New functions.
3622         (_initialize_scoped_mmap_selftests): Register selftest.
3623
3624 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3625
3626         * dwarf2read.c (read_gdb_index_from_section): Rename to...
3627         (read_gdb_index_from_buffer): ... this.  Remove section
3628         parameter, add buffer parameter.
3629         (get_gdb_index_contents_ftype,
3630         get_gdb_index_contents_dwz_ftype): New typedefs.
3631         (dwarf2_read_gdb_index): Add callback parameters to get the
3632         index contents.
3633         (get_gdb_index_contents_from_section): New.
3634         (dwarf2_initialize_objfile): Update call to
3635         dwarf2_read_gdb_index.
3636
3637 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3638
3639         * common/filestuff.h (gdb_fopen_cloexec): New overload.
3640         (gdb_open_cloexec): Likewise.
3641         * nat/linux-osdata.c (command_from_pid): Use string_printf.
3642         (commandline_from_pid): Likewise.
3643         (linux_xfer_osdata_threads): Likewise.
3644         (linux_xfer_osdata_fds): Likewise.
3645         * ada-lang.c (is_package_name): Likewise.
3646         * auxv.c (procfs_xfer_auxv): Likewise.
3647         * breakpoint.c (print_one_breakpoint_location): Use
3648         uiout::field_fmt.
3649         (print_one_catch_solib): Use string_printf.
3650         * coff-pe-read.c (add_pe_exported_sym): Likewise.
3651         (add_pe_forwarded_sym): Likewise.
3652         * dwarf2read.c (create_type_unit_group): Likewise.
3653         (build_error_marker_type): Likewise.
3654         * infcall.c (get_function_name): Likewise.
3655         * valprint.c (print_converted_chars_to_obstack): Likewise.
3656         * xtensa-tdep.c (xtensa_register_type): Likewise.
3657
3658 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
3659
3660         * remote.c (remote_target::download_tracepoint): Fix format
3661         string errors.
3662
3663 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3664
3665         * tracefile.c: Include common/byte-vector.h.
3666         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
3667         with trace_regblock_size if needed.  Update uses of buf.
3668
3669 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3670
3671         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
3672         std::vector<unsigned char>.
3673         * tracepoint.c (collection_list::collection_list): Remove
3674         m_regs_mask initializer from initializer list.  Resize
3675         m_regs_mask using the largest remote register number.
3676         (collection_list::add_remote_register): Remove size check on
3677         m_regs_mask.  Use at to access element.
3678         (collection_list::stringify): Change type of temp_buf to
3679         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
3680         stringify the register mask.  Use pack_hex_byte for the register
3681         mask.
3682
3683 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3684
3685         * tracepoint.h (class collection_list) <add_register>: Remove.
3686         <add_remote_register, add_ax_registers, add_local_register>:
3687         Declare.
3688         <add_memrange>: Add scope parameter.
3689         * tracepoint.c (encode_actions_1): Likewise.
3690         (collection_list::add_register): Rename to ...
3691         (collection_list::add_remote_register): ... this.  Update
3692         comment.
3693         (collection_list::add_ax_registers, add_local_register): New
3694         methods.
3695         (collection_list::add_memrange): Add scope parameter.  Call
3696         add_local_register instead of add_register.
3697         (finalize_tracepoint_aexpr): New function.
3698         (collection_list::collect_symbol): Update calls to add_memrange.
3699         Call add_local_register instead of add_register.  Call
3700         add_ax_registers.  Call finalize_tracepoint_aexpr.
3701         (encode_actions_1): Get remote regnos for $reg action.  Call
3702         add_remote_register, add_ax_registers, and add_local_register.
3703         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
3704         (validate_actionline): Call finalize_tracepoint_aexpr.
3705
3706 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3707
3708         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
3709         Replace array buf with gdb::char_vector buf, of size
3710         get_remote_packet_size ().  Replace references to buf and
3711         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
3712         and xsnprintf with snprintf.  Raise errors if the buffer is too
3713         small.
3714
3715 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3716
3717         * remote.c (remote_target::download_tracepoint): Fix the has_more
3718         predicate in the QTDP action list iteration.
3719
3720 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3721
3722         * remote.c (remote_target::download_tracepoint): Fix indentation
3723         in for block.
3724
3725 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3726
3727         * proc-api.c (_initialize_proc_api): Remove c, unused.
3728         * procfs.c (procfs_init_inferior): Remove signals, unused.
3729         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
3730         unused.
3731
3732 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
3733             Andrew Burgess  <andrew.burgess@embecosm.com>
3734
3735         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
3736         'W_STOPCODE (0)' as this could be ambiguous.
3737
3738 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
3739
3740         * ser-tcp.c (net_open): Fix thinko when deciding whether to
3741         disable TCP's Nagle algorithm (use "ai_protocol" instead of
3742         "ai_socktype").
3743
3744 2018-08-02  Tom Tromey  <tom@tromey.com>
3745
3746         PR symtab/16842.
3747         * dwarf2read.c (read_func_scope): Set symtab on template parameter
3748         symbols.
3749         (process_structure_scope): Likewise.
3750
3751 2018-08-02  Xavier Roirand  <roirand@adacore.com>
3752
3753         PR gdb/22629:
3754         * darwin-nat.c (darwin_kill_inferior): Fix handling of
3755         kill inferior.
3756
3757 2018-08-02  Tom Tromey  <tom@tromey.com>
3758
3759         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
3760         (darwin_suspend_inferior, darwin_resume_inferior)
3761         (darwin_decode_notify_message, darwin_resume_inferior_threads)
3762         (darwin_check_new_threads): Check result of get_darwin_inferior.
3763
3764 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
3765
3766         GDB 8.1.1 released.
3767
3768 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
3769
3770         * varobj.c (varobj_get_path_expr_parent): Report an error if
3771         parent is a dynamic varobj.
3772
3773 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3774
3775         * gnulib/aclocal.m4: Re-generate.
3776         * gnulib/config.in: Re-generate.
3777         * gnulib/configure: Re-generate.
3778         * gnulib/import/Makefile.in: Re-generate.
3779         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3780         * gnulib/import/m4/onceonly.m4: Re-generate.
3781
3782 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3783
3784         * target-descriptions.c (struct xml_test_tdesc): New.
3785         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
3786         (record_xml_tdesc): Update.
3787         (maintenance_check_xml_descriptions): Update.
3788         * target-descriptions.h (record_xml_tdesc): Update comment.
3789
3790 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3791
3792         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
3793         checking array bounds are defined.
3794
3795 2018-07-30  Tom Tromey  <tom@tromey.com>
3796
3797         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
3798         irreflexivity violation.
3799
3800 2018-07-30  Tom Tromey  <tom@tromey.com>
3801
3802         * cli/cli-decode.c (lookup_cmd): Remove lint code.
3803         * value.c (unpack_long): Remove lint code.
3804         * valops.c (value_ind): Remove lint code.
3805         * valarith.c (value_x_binop, value_x_unop, value_equal)
3806         (value_pos): Remove lint code.
3807
3808 2018-07-28  Tom de Vries  <tdevries@suse.de>
3809
3810         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
3811         with undefined upper bound as <optimized out>.
3812
3813 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
3814
3815         * gcore.in: Rename variable "name" to "prefix".  Expand
3816         "usage" text.
3817
3818 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
3819
3820         * windows-nat.c (windows_nat_target::create_inferior): Update to
3821         call close() in global namespace.
3822
3823 2018-07-26  Tom Tromey  <tom@tromey.com>
3824
3825         * dwarf-index-write.c (add_address_entry): Don't add objfile
3826         offsets.
3827         * dbxread.c (find_stab_function): Rename from
3828         find_stab_function_addr.  Return a bound_minimal_symbol.
3829         (read_dbx_symtab): Use raw_text_low, raw_text_high.
3830         Don't add objfile offsets.
3831         (end_psymtab): Use raw_text_low, raw_text_high,
3832         MSYMBOL_VALUE_RAW_ADDRESS.
3833         (read_ofile_symtab): Update.
3834         (process_one_symbol): Update.
3835         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
3836         offsets.
3837         (dw2_relocate): Remove.
3838         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
3839         searching addrmap.
3840         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
3841         Update.
3842         (process_psymtab_comp_unit_reader, add_partial_symbol)
3843         (add_partial_subprogram, dwarf2_ranges_read): Update.
3844         (load_partial_dies): Update.
3845         (add_address_entry): Don't add objfile offsets.
3846         (dwarf2_build_include_psymtabs): Update.
3847         (create_addrmap_from_aranges): Don't add objfile offsets.
3848         (dw2_find_pc_sect_compunit_symtab): Update.
3849         * mdebugread.c (parse_symbol): Don't add objfile offsets.
3850         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
3851         Update.
3852         (parse_partial_symbols): Don't add objfile offsets.  Use
3853         raw_text_low, raw_text_high.  Update.
3854         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
3855         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
3856         or call 'relocate' quick function.  Clear psymbol_map.
3857         * psympriv.h (struct partial_symbol) <address>: Add section
3858         offset.
3859         <set_unrelocated_address>: Rename from set_address.
3860         <raw_text_low, raw_text_high>: New methods.
3861         <text_low, text_high>: Add objfile parameter.
3862         (add_psymbol_to_bcache): Add 'section' parameter.  Call
3863         set_unrelocated_address.
3864         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3865         (find_pc_psymbol): Update.
3866         (fixup_psymbol_section, relocate_psymtabs): Remove.
3867         (dump_psymtab, psym_functions): Update.
3868         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
3869         parameter.
3870         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
3871         (start_psymtab_common): Update.
3872         * symfile-debug.c (debug_qf_relocate): Remove.
3873         (debug_sym_quick_functions): Update.
3874         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
3875         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
3876         Update.
3877
3878 2018-07-26  Tom Tromey  <tromey@redhat.com>
3879
3880         * dbxread.c (end_psymtab): Use text_high_valid and
3881         text_low_valid.
3882         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
3883         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
3884         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3885         Update comment.
3886         <text_low_valid, text_high_valid>: New fields.
3887         <set_text_low, set_text_high>: Update.
3888         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
3889
3890 2018-07-26  Tom Tromey  <tom@tromey.com>
3891
3892         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
3893         Update.
3894         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
3895         textlow and texthigh fields.
3896         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
3897         Update.
3898         * mdebugread.c (parse_lines, parse_partial_symbols)
3899         (psymtab_to_symtab_1): Update.
3900         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3901         Rename fields.  Update comment.  Now private.
3902         <text_low, text_high, set_text_low, set_text_high>: New methods.
3903         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3904         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
3905         (start_psymtab_common, maintenance_info_psymtabs)
3906         (maintenance_check_psymtabs): Update.
3907         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
3908         texthigh fields.
3909         (scan_xcoff_symtab): Update.
3910
3911 2018-07-26  Tom Tromey  <tromey@redhat.com>
3912
3913         * psympriv.h (struct partial_symbol) <unrelocated_address,
3914         address, set_address>: New methods.
3915         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
3916         (fixup_psymbol_section, relocate_psymtabs): Update.
3917         (print_partial_symbols): Add 'objfile' parameter.  Update.
3918         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
3919         Update.
3920
3921 2018-07-26  Tom Tromey  <tom@tromey.com>
3922
3923         * dwarf-index-write.c (write_psymbols, debug_names::insert)
3924         (debug_names::write_psymbols): Update.
3925         * psympriv.h (struct partial_symbol): Derive from
3926         general_symbol_info.
3927         <obj_section>: New method.
3928         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
3929         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3930         (find_pc_sect_psymbol, fixup_psymbol_section)
3931         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
3932         (print_partial_symbols, recursively_search_psymtabs)
3933         (compare_psymbols, psymbol_hash, psymbol_compare)
3934         (add_psymbol_to_bcache, maintenance_check_psymtabs)
3935         (psymbol_name_matches, psym_fill_psymbol_map): Update.
3936
3937 2018-07-26  Tom Tromey  <tromey@redhat.com>
3938
3939         * dbxread.c (end_psymtab): Remove dead code.
3940
3941 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
3942
3943         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
3944         DWARF unwinders are disabled.
3945         * dwarf2-frame.c: Add dwarf2read.h include.
3946         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
3947         disabled.
3948         (dwarf2_frame_unwinders_enabled_p): Define.
3949         (show_dwarf_unwinders_enabled_p): New function.
3950         (_initialize_dwarf2_frame): Register switch to control DWARF
3951         unwinder use.
3952         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
3953         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
3954         (show_dwarf_cmdlist): Remove static keyword.
3955         * dwarf2read.h (set_dwarf_cmdlist): Declare.
3956         (show_dwarf_cmdlist): Declare.
3957         * NEWS: Document new feature.
3958
3959 2018-07-26  Tom de Vries  <tdevries@suse.de>
3960
3961         PR breakpoints/23366
3962         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
3963
3964 2018-07-26  Tom de Vries  <tdevries@suse.de>
3965
3966         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
3967         DW_AT_count can't be translated to a dynamic prop.
3968
3969 2018-07-25  Tom de Vries  <tdevries@suse.de>
3970
3971         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
3972         try/catch.
3973
3974 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
3975
3976         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
3977
3978 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
3979
3980         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
3981
3982 2018-07-24  Keith Seitz  <keiths@redhat.comt
3983
3984         PR symtab/23010
3985         * dwarf2read.c (dw2_add_symbol_to_list): New function.
3986         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
3987         instead of add_symbol_to_list.
3988         (read_file_scope): Call prepare_one_comp_unit before reading
3989         any other DIEs.
3990
3991 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
3992
3993         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
3994
3995 2018-07-24  Tom Tromey  <tom@tromey.com>
3996
3997         * utils.c (malloc, realloc, free): Don't declare.
3998         * configure, config.in: Rebuild.
3999         * configure.ac: Don't check for declarations of free, malloc, or
4000         realloc.
4001
4002 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4003
4004         * aarch64-linux-nat.c
4005         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4006         variable.
4007         * arm-linux-nat.c (fetch_regs): Likewise.
4008         (store_regs): Likewise.
4009         (fetch_vfp_regs): Likewise.
4010         (store_vfp_regs): Likewise.
4011         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4012         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4013         (arm_linux_nat_target::insert_watchpoint): Likewise.
4014         (arm_linux_nat_target::remove_watchpoint): Likewise.
4015         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4016         Likewise.
4017         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4018         Likewise.
4019         * ppc-linux-nat.c (fetch_register): Likewise.
4020         (fetch_all_gp_regs): Likewise.
4021         (fetch_ppc_registers): Likewise.
4022         (store_all_gp_regs): Likewise.
4023         (store_ppc_registers): Likewise.
4024         (hwdebug_insert_point): Likewise.
4025         (can_use_watchpoint_cond_accel): Likewise.
4026         * remote-sim.c (gdb_os_write_stdout): Likewise.
4027
4028 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4029             Tom Tromey  <tom@tromey.com>
4030
4031         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4032         test for it.
4033         * configure: Rebuild.
4034
4035 2018-07-22  Tom Tromey  <tom@tromey.com>
4036
4037         * regformats/regdat.sh: Define xmltarget_${name} inside
4038         #ifndef IN_PROCESS_AGENT.
4039
4040 2018-07-22  Tom Tromey  <tom@tromey.com>
4041
4042         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4043
4044 2018-07-22  Tom Tromey  <tom@tromey.com>
4045
4046         * symfile.c (reread_symbols): Notify iter, not objfile.
4047
4048 2018-07-22  Tom Tromey  <tom@tromey.com>
4049
4050         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4051         Use arch_ops.
4052         (ravenscar_thread_target::prepare_to_store): Likewise.
4053
4054 2018-07-22  Tom Tromey  <tom@tromey.com>
4055
4056         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4057         unused variable.  Call value_fetch_lazy when needed.
4058         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4059         Remove unused variable.  Call value_fetch_lazy when needed.
4060
4061 2018-07-22  Tom Tromey  <tom@tromey.com>
4062
4063         * m32c-tdep.c (mark_dma): Return void.
4064         (make_regs): Remove unused declarations.
4065
4066 2018-07-22  Tom Tromey  <tom@tromey.com>
4067
4068         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4069         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4070         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4071         bkscm_get_valid_block_smob_arg_unsafe for effect.
4072
4073 2018-07-22  Tom Tromey  <tom@tromey.com>
4074
4075         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4076         value_type.
4077
4078 2018-07-22  Tom Tromey  <tom@tromey.com>
4079
4080         * windows-nat.c (saved_context): Conditionally define.
4081         * remote.c (remote_target::remote_btrace_maybe_reopen):
4082         Conditionally declare "warned".
4083         * inflow.c (sigquit_ours): Conditionally define.
4084         (new_tty): Move "tty" declaration inside #if.
4085         * guile/guile.c (guile_datadir): Conditionally define.
4086         * charset.c (set_be_le_names): Move some declarations inside #if.
4087         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4088         #if.
4089         (parse_xml_btrace_conf): Likewise.
4090
4091 2018-07-22  Tom Tromey  <tom@tromey.com>
4092
4093         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4094
4095 2018-07-22  Tom Tromey  <tom@tromey.com>
4096
4097         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4098         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4099         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4100         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4101         * stack.c (frame_apply_level_command): Remove unused variable.
4102         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4103         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4104         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4105         unused variable.
4106         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4107         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4108         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4109         variable.
4110         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4111         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4112         variable.
4113         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4114         Remove unused variable.
4115         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4116         variable.
4117         * common/tdesc.c (print_xml_feature::visit): Remove unused
4118         variable.
4119         * compile/compile-object-load.c (store_regs): Remove unused
4120         variables.
4121         * complaints.c (clear_complaints): Remove unused variable.
4122         * corelow.c (core_target_open): Remove unused variable.
4123         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4124         variable.
4125         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4126         variable.
4127         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4128         variable.
4129         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4130         variable.
4131         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4132         variable.
4133         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4134         variable.
4135         * ia64-tdep.c (examine_prologue): Remove unused variable.
4136         * infcall.c (run_inferior_call): Remove unused variable.
4137         * inferior.c (exit_inferior): Remove unused variable.
4138         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4139         * linespec.c (decode_line_2): Remove unused variable.
4140         * linux-nat.c (super_close): Remove.
4141         * linux-tdep.c (linux_info_proc): Remove unused variable.
4142         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4143         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4144         Remove unused variable.
4145         * parse.c (find_minsym_type_and_address): Remove unused variable.
4146         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4147         variable.
4148         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4149         variable.
4150         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4151         variables.
4152         * record-btrace.c (record_btrace_target::store_registers): Remove
4153         unused variable.
4154         (cmd_show_record_btrace_cpu): Remove unused variable.
4155         * riscv-tdep.c (riscv_register_reggroup_p)
4156         (riscv_push_dummy_call, riscv_return_value): Remove unused
4157         variable.
4158         * rust-exp.y (literal): Remove unused variable.
4159         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4160         unused variable.
4161         <STRUCTOP_ANONYMOUS>: Likewise.
4162         * s390-linux-tdep.c (s390_linux_init_abi_31)
4163         (s390_linux_init_abi_64): Remove unused variable.
4164         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4165         (file_select_thread, net_windows_open, _initialize_ser_windows):
4166         Remove unused variables.
4167         * symtab.c (find_pc_sect_line): Remove unused variable.
4168         * target-memory.c (compute_garbled_blocks): Remove unused
4169         variable.
4170         (target_write_memory_blocks): Remove unused variable.
4171         * target.c (target_stack::unpush): Remove unused variables.
4172         * tracepoint.c (start_tracing, all_tracepoint_actions)
4173         (merge_uploaded_trace_state_variables)
4174         (print_one_static_tracepoint_marker): Remove unused variable.
4175         * unittests/basic_string_view/element_access/char/1.cc (test01):
4176         Remove unused variable.
4177         * windows-nat.c (windows_continue, windows_add_all_dlls)
4178         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4179         Remove unused variables.
4180
4181 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4182
4183         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4184         attr_profile in HAVE_ELF.
4185         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4186         HAVE_ELF.
4187
4188 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4189
4190         * frame.c (frame_register_unwind): Change parameter name.
4191         (frame_unwind_register): Likewise.
4192         (frame_unwind_register_value): Likewise.
4193         (frame_unwind_register_signed): Likewise.
4194         (frame_unwind_register_unsigned): Likewise.
4195         * frame.h (frame_register_unwind): Likewise.
4196         (frame_unwind_register): Likewise.
4197         (frame_unwind_register_value): Likewise.
4198         (frame_unwind_register_signed): Likewise.
4199         (frame_unwind_register_unsigned): Likewise.
4200         (frame_unwind_arch): Likewise.
4201
4202 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4203
4204         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4205         ISA maintenance.
4206
4207 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4208
4209         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4210         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4211         hand.
4212
4213 2018-07-20  Keith Seitz  <keiths@redhat.com>
4214
4215         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4216         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4217         m_compunit_symtab, m_language>: Add "m_" prefix.
4218         Update all uses.
4219         * buildsym.c: Update all uses.
4220
4221 2018-07-20  Tom Tromey  <tom@tromey.com>
4222
4223         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4224         * buildsym.h (record_line_ftype): Remove typedef.
4225
4226 2018-07-20  Tom Tromey  <tom@tromey.com>
4227
4228         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4229         (end_expandable_symtab): Likewise.
4230         (end_symtab_get_static_block): Likewise.
4231         (end_symtab_from_static_block): Likewise.
4232         * buildsym-legacy.c (augment_type_symtab): Remove.
4233         (end_expandable_symtab): Remove.
4234         (end_symtab_get_static_block): Remove.
4235         (end_symtab_from_static_block): Remove.
4236
4237 2018-07-20  Tom Tromey  <tom@tromey.com>
4238
4239         * dwarf2read.c: Include buildsym.h.
4240         (struct dwarf2_cu) <builder>: New method.
4241         (fixup_go_packaging): Update.
4242         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4243         use scoped_free_pendings.
4244         (using_directives): Add "cu" parameter, remove "language".
4245         (read_import_statement, setup_type_unit_groups, )
4246         (read_func_scope, read_lexical_block_scope)
4247         (dwarf2_record_block_ranges, read_namespace): Update.
4248         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4249         (lnp_state_machine::handle_end_sequence): Update.
4250         (class lnp_state_machine) <m_cu>: New member.
4251         <m_record_line_callback>: Remove.
4252         <m_currently_recording_lines>: New member.
4253         (lnp_state_machine::handle_set_file): Update.
4254         (noop_record_line): Remove.
4255         (dwarf_record_line_p): Add cu parameter.
4256         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4257         (lnp_state_machine::record_line)
4258         (lnp_state_machine::lnp_state_machine)
4259         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4260         (dwarf_decode_lines): Update.
4261         (dwarf2_start_subfile): Add cu parameter.
4262         (dwarf2_start_symtab, new_symbol): Update.
4263         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4264         Remove dwarf2_per_objfile parameter.
4265         (dwarf_decode_macros): Update.
4266
4267 2018-07-20  Tom Tromey  <tom@tromey.com>
4268
4269         * stabsread.c (define_symbol): Update.
4270         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4271         * dwarf2read.c (new_symbol): Update.
4272         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4273         * cp-namespace.c: Include buildsym.h.
4274         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4275         * buildsym-legacy.c (get_buildsym_compunit): New function.
4276
4277 2018-07-20  Tom Tromey  <tom@tromey.com>
4278
4279         * xcoffread.c: Include buildsym-legacy.h.
4280         * windows-nat.c: Include buildsym-legacy.h.
4281         * stabsread.c: Include buildsym-legacy.h.
4282         * mdebugread.c: Include buildsym-legacy.h.
4283         * buildsym-legacy.h: New file.
4284         * buildsym-legacy.c: New file, from buildsym.c.
4285         * go32-nat.c: Include buildsym-legacy.h.
4286         * dwarf2read.c: Include buildsym-legacy.h.
4287         * dbxread.c: Include buildsym-legacy.h.
4288         * cp-namespace.c: Include buildsym-legacy.h.
4289         * coffread.c: Include buildsym-legacy.h.
4290         * buildsym.h: Move some contents to buildsym-legacy.h.
4291         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4292         buildsym-legacy.c.
4293         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4294
4295 2018-07-20  Tom Tromey  <tom@tromey.com>
4296
4297         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4298         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4299         (buildsym_compunit::buildsym_compunit)
4300         (buildsym_compunit::~buildsym_compunit)
4301         (buildsym_compunit::get_macro_table): Define.
4302
4303 2018-07-20  Tom Tromey  <tom@tromey.com>
4304
4305         * buildsym.c (reset_symtab_globals): Remove.
4306         (buildsym_compunit::end_symtab_from_static_block): Update.
4307         (buildsym_compunit::augment_type_symtab): Update.
4308         (end_symtab_from_static_block): Call free_buildsym_compunit.
4309         (augment_type_symtab, end_symtab, end_expandable_symtab):
4310         Likewise.
4311
4312 2018-07-20  Tom Tromey  <tom@tromey.com>
4313
4314         * arch-utils.c: Do not include buildsym.h.
4315         * mipsread.c: Do not include buildsym.h.
4316         * machoread.c: Do not include buildsym.h.
4317         * elfread.c: Do not include buildsym.h.
4318
4319 2018-07-20  Tom Tromey  <tom@tromey.com>
4320
4321         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4322         initialization.
4323         (buildsym_compunit): Add new constructor.
4324         (struct buildsym_compunit) <get_last_source_file, finish_block,
4325         record_block_range, start_subfile, patch_subfile_names,
4326         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4327         set_last_source_start_addr, get_last_source_start_addr,
4328         get_local_using_directives, set_local_using_directives,
4329         get_global_using_directives, outermost_context_p,
4330         get_current_context_stack, get_context_stack_depth,
4331         get_current_subfile, get_local_symbols, get_file_symbols,
4332         get_global_symbols, record_debugformat, record_producer,
4333         push_context, pop_context, end_symtab_get_static_block,
4334         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4335         New public methods.
4336         <record_pending_block, finish_block_internal, make_blockvector,
4337         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4338         private methods.
4339         Update all users.
4340
4341 2018-05-22  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.c (record_pending_block): Move earlier.  Remove objfile
4350         parameter.
4351         (finish_block_internal): Update.
4352
4353 2018-07-20  Tom Tromey  <tom@tromey.com>
4354
4355         * buildsym.h (EXTERN): Don't define or undef.
4356         * buildsym.c (EXTERN): Don't define.
4357
4358 2018-07-20  Tom Tromey  <tom@tromey.com>
4359
4360         * buildsym.c: Remove TODO comment.
4361
4362 2018-07-20  Tom Tromey  <tom@tromey.com>
4363
4364         * coffread.c (coff_symtab_read): Update.
4365         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4366         (xcoff_new_init): Update.
4367         * mipsread.c (mipscoff_new_init): Update.
4368         * mdebugread.c (mdebug_build_psymtabs): Update.
4369         * elfread.c (elf_new_init): Update.
4370         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4371         Update.
4372         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4373         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4374         (stabsect_build_psymtabs): Update.
4375         * buildsym.h (buildsym_init): Don't declare.
4376         * buildsym.c: Update comment.
4377         (prepare_for_building): Remove.
4378         (start_symtab, restart_symtab): Update.
4379         (reset_symtab_globals): Update comment.
4380         (buildsym_init): Remove.
4381
4382 2018-07-20  Tom Tromey  <tom@tromey.com>
4383
4384         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4385         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4386         (read_enum_type, common_block_start, common_block_end)
4387         (cleanup_undefined_types_1, finish_global_stabs): Update.
4388         * mdebugread.c (psymtab_to_symtab_1): Update.
4389         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4390         (read_lexical_block_scope, new_symbol): Update.
4391         * dbxread.c (process_one_symbol): Update.
4392         * coffread.c (coff_symtab_read, process_coff_symbol)
4393         (coff_read_enum_type): Update.
4394         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4395         declare.
4396         (get_local_symbols, get_file_symbols, get_global_symbols): New
4397         functions.
4398         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4399         m_global_symbols.
4400         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4401         (~scoped_free_pendings): Update.
4402         (finish_block, prepare_for_building, reset_symtab_globals)
4403         (end_symtab_get_static_block, end_symtab_with_blockvector)
4404         (augment_type_symtab, push_context): Update.
4405         (get_local_symbols, get_file_symbols, get_global_symbols): New
4406         functions.
4407         (buildsym_init): Update.
4408
4409 2018-07-20  Tom Tromey  <tom@tromey.com>
4410
4411         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4412         (process_full_type_unit): Likewise.
4413         (dwarf2_start_symtab): Set list_in_scope.
4414
4415 2018-07-20  Tom Tromey  <tom@tromey.com>
4416
4417         * dwarf2read.c (process_psymtab_comp_unit_reader)
4418         (build_type_psymtabs_reader): Do not set list_in_scope.
4419
4420 2018-07-20  Tom Tromey  <tom@tromey.com>
4421
4422         * buildsym.c (free_pendings): Remove.
4423         (add_symbol_to_list, scoped_free_pendings)
4424         (finish_block_internal, buildsym_init): Update.
4425
4426 2018-07-20  Tom Tromey  <tom@tromey.com>
4427
4428         * xcoffread.c (read_xcoff_symtab): Update.
4429         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4430         Update.
4431         * dbxread.c (process_one_symbol): Update.
4432         * coffread.c (coff_symtab_read): Update.
4433         * buildsym.h (finish_block): Update.
4434         * buildsym.c (finish_block): Remove "listhead" argument.
4435         (end_symtab_get_static_block): Update.
4436
4437 2018-07-20  Tom Tromey  <tom@tromey.com>
4438
4439         * buildsym.h (class scoped_free_pendings): Remove constructor.
4440         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4441         method.
4442         <m_pending_block_obstack, m_pending_blocks>: New members.
4443         (pending_block_obstack, pending_blocks): Remove.
4444         (scoped_free_pendings::scoped_free_pendings): Default.
4445         (~scoped_free_pendings): Update.
4446         (free_pending_blocks): Remove.
4447         (finish_block_internal, record_pending_block, make_blockvector)
4448         (end_symtab_get_static_block, augment_type_symtab, push_context)
4449         (buildsym_init): Update.
4450
4451 2018-07-20  Tom Tromey  <tom@tromey.com>
4452
4453         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4454         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4455         members.
4456         (pending_addrmap, pending_addrmap_obstack)
4457         (pending_addrmap_interesting): Remove.
4458         (scoped_free_pendings, record_block_range, make_blockvector)
4459         (prepare_for_building, reset_symtab_globals, buildsym_init):
4460         Update.
4461
4462 2018-07-20  Tom Tromey  <tom@tromey.com>
4463
4464         * xcoffread.c (process_linenos): Update.
4465         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4466         * mdebugread.c (psymtab_to_symtab_1): Update.
4467         * dwarf2read.c (setup_type_unit_groups)
4468         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4469         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4470         * dbxread.c (process_one_symbol): Update.
4471         * coffread.c (coff_symtab_read, enter_linenos)
4472         (process_coff_symbol): Update.
4473         * buildsym.h (current_subfile): Don't declare.
4474         (get_current_subfile): Declare.
4475         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4476         member.
4477         (start_subfile, free_buildsym_compunit, push_subfile)
4478         (prepare_for_building, start_symtab): Update.
4479         (get_current_subfile): New function.
4480
4481 2018-07-20  Tom Tromey  <tom@tromey.com>
4482
4483         * coffread.c (coff_symtab_read): Update.
4484         * xcoffread.c (read_xcoff_symtab): Update.
4485         * dwarf2read.c (new_symbol): Update.
4486         (read_func_scope, read_lexical_block_scope): Update.
4487         * dbxread.c (process_one_symbol): Update.
4488         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4489         (outermost_context_p): Remove macro.
4490         (outermost_context_p, get_current_context_stack)
4491         (get_context_stack_depth): Declare.
4492         (pop_context): Return struct context_stack.
4493         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4494         member.
4495         (context_stack_size): Remove.
4496         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4497         (prepare_for_building, end_symtab_get_static_block)
4498         (augment_type_symtab, push_context): Update.
4499         (pop_context): Return struct context_stack.
4500         (outermost_context_p, get_current_context_stack)
4501         (get_context_stack_depth): New functions.
4502         (buildsym_init): Update.
4503
4504 2018-07-20  Tom Tromey  <tom@tromey.com>
4505
4506         * rust-exp.y: Now a pure parser.  Update all rules.
4507         (%union): Move earlier.
4508         (current_parser, work_obstack): Remove globals.
4509         (rust_parser, ~rust_parser): Update.
4510         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4511         lex_character, lex_number, lex_string, lex_identifier,
4512         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4513         convert_name, convert_params_to_expression,
4514         convert_ast_to_expression, ast_basic_type, ast_operation,
4515         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4516         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4517         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4518         ast_array_type, ast_slice_type, ast_reference_type,
4519         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4520         (rust_parse): Update.
4521         (rustyyerror, rustyylex): Add parser parameter.
4522         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4523         (rust_lex_stringish_test, rust_lex_test_sequence)
4524         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4525         (rust_lex_test_push_back, rust_lex_tests): Update.
4526
4527 2018-07-19  Pedro Alves  <palves@redhat.com>
4528
4529         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4530         gdb::unique_xmalloc_ptr.
4531         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4532         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4533         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4534         copy-initialization.
4535         * guile/scm-pretty-print.c (ppscm_print_children): Use
4536         gdb::unique_xmalloc_ptr instead of cleanups.
4537         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4538         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4539         gdb::unique_xmalloc_ptr.
4540         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4541         Adjust to use gdb::unique_xmalloc_ptr.
4542         * guile/scm-utils.c (extract_arg): Adjust.
4543         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4544         gdb::unique_xmalloc_ptr instead of a cleanup.
4545
4546 2018-07-19  Tom Tromey  <tom@tromey.com>
4547
4548         * utils.c (do_value_free_to_mark)
4549         (make_cleanup_value_free_to_mark): Remove.
4550         * utils.h (make_cleanup_value_free_to_mark): Remove.
4551
4552 2018-07-19  Pedro Alves  <palves@redhat.com>
4553
4554         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4555         forwarding reference.
4556
4557 2018-07-18  Pedro Alves  <palves@redhat.com>
4558
4559         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4560         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4561         cleanup.
4562
4563 2018-07-18  Pedro Alves  <palves@redhat.com>
4564
4565         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4566         exceptions.
4567         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4568         (gdbscm_wrap): New.
4569         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4570         directly instead of a cleanup.
4571         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4572         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
4573         (vlscm_binop_gdbthrow): New, factored out from ...
4574         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
4575         (vlscm_rich_compare): Use gdbscm_wrap.
4576         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
4577         instead of a cleanup.
4578         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
4579         cleanup.
4580         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4581         Use xfree directly instead of a cleanup.
4582         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
4583         Adjust to use gdbscm_wrap and scoped_value_mark.
4584         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
4585         (gdbscm_value_address, gdbscm_value_dereference)
4586         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
4587         scoped_value_mark.
4588         (gdbscm_value_dynamic_type): Use scoped_value_mark.
4589         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
4590         scoped_value_mark.
4591         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
4592         gdbscm_wrap and scoped_value_mark.
4593         (gdbscm_value_to_string): Use xfree directly instead of a
4594         cleanup.  Move 'buffer' unique_ptr to TRY scope.
4595         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
4596         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
4597         scoped_value_mark.
4598         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
4599         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
4600         scoped_value_mark.
4601         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
4602         gdbscm_wrap.
4603
4604 2018-07-18  Tom de Vries  <tdevries@suse.de>
4605
4606         * findvar.c (default_read_var_value): Also resolve dynamic type for
4607         LOC_OPTIMIZED_OUT vars.
4608
4609 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
4610
4611         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
4612         decoding.
4613
4614 2018-07-17  Tom Tromey  <tom@tromey.com>
4615
4616         * guile/scm-param.c (pascm_set_func, pascm_show_func)
4617         (compute_enum_list, pascm_set_param_value_x)
4618         (gdbscm_parameter_value): Update.
4619         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
4620         (gdbscm_scm_to_host_string): Update.
4621         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
4622         Update.
4623         * guile/scm-cmd.c (cmdscm_add_completion): Update.
4624         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
4625         * guile/scm-string.c (gdbscm_scm_to_string): Return
4626         unique_xmalloc_ptr.
4627         (gdbscm_scm_to_host_string): Likewise.
4628
4629 2018-07-17  Tom Tromey  <tom@tromey.com>
4630
4631         * guile/guile.c (gdbscm_eval_from_control_command): Update.
4632         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
4633         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
4634         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
4635         unique_xmalloc_ptr.
4636
4637 2018-07-17  Tom Tromey  <tom@tromey.com>
4638
4639         * guile/scm-param.c (pascm_signal_setshow_error): Update.
4640         * guile/guile-internal.h (gdbscm_exception_message_to_string):
4641         Update.
4642         * guile/scm-cmd.c (cmdscm_function): Update.
4643         * guile/scm-pretty-print.c
4644         (ppscm_print_exception_unless_memory_error): Update.
4645         * guile/scm-exception.c (gdbscm_exception_message_to_string):
4646         Return unique_xmalloc_ptr.
4647
4648 2018-07-17  Tom Tromey  <tom@tromey.com>
4649
4650         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
4651         Use string_printf.
4652
4653 2018-07-17  Jim Wilson  <jimw@sifive.com>
4654
4655         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
4656         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
4657         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
4658         unecessary braces after EF_RISCV_RVC test.  Delete call to
4659         set_gdbarch_decr_pc_after_break.
4660
4661         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
4662         RISCV_LAST_FP_REGNUM + 1.
4663         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
4664
4665 2018-07-17  Tom Tromey  <tom@tromey.com>
4666
4667         * configure.ac: Remove --disable-gdbcli.
4668         * configure: Rebuild.
4669         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
4670         (SUBDIR_CLI_CFLAGS): Remove.
4671         (SFILES): Use SUBDIR_CLI_SRCS.
4672         (COMMON_OBS): Use SUBDIR_CLI_OBS.
4673
4674 2018-07-17  Tom Tromey  <tom@tromey.com>
4675
4676         PR gdb/18624:
4677         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
4678
4679 2018-07-16  Jim Wilson  <jimw@sifive.com>
4680
4681         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
4682
4683 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4684
4685         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
4686         variable.
4687         (libunwind_frame_sniffer): Likewise.
4688         (libunwind_frame_prev_register): Likewise.
4689         (libunwind_sigtramp_frame_sniffer): Likewise.
4690         * ia64-tdep.c (ia64_access_reg): Likewise.
4691         (ia64_access_rse_reg): Likewise.
4692         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
4693         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
4694
4695 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4696
4697         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
4698
4699 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4700
4701         * remote-sim.c (gdbsim_target::close,
4702         gdbsim_target::mourn_inferior): Remove unused variables.
4703
4704 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
4705
4706         * ia64-tdep.c (ktab_buf): New global.
4707         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
4708         (get_kernel_table): Adjust.
4709
4710 2018-07-16  Tom Tromey  <tom@tromey.com>
4711
4712         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
4713         * dwarf2read.c (using_directives, new_symbol): Use
4714         outermost_context_p.
4715         * dbxread.c (process_one_symbol): Use outermost_context_p.
4716         * coffread.c (coff_symtab_read): Use outermost_context_p.
4717
4718 2018-07-16  Tom Tromey  <tom@tromey.com>
4719
4720         * dwarf2read.c (using_directives, read_func_scope)
4721         (read_lexical_block_scope): Update.
4722         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
4723         * buildsym.h (local_using_directives, global_using_directives):
4724         Don't declare.
4725         (get_local_using_directives, set_local_using_directives)
4726         (get_global_using_directives): Declare.
4727         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
4728         m_global_using_directives>: New members.
4729         (finish_block_internal, prepare_for_building)
4730         (reset_symtab_globals, end_symtab_get_static_block)
4731         (push_context): Update.
4732         (get_local_using_directives, set_local_using_directives)
4733         (get_global_using_directives): New functions.
4734         (buildsym_init): Update.
4735
4736 2018-07-16  Tom Tromey  <tom@tromey.com>
4737
4738         * xcoffread.c (xcoff_initial_scan): Don't call
4739         free_pending_blocks.
4740         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
4741         * buildsym.h (class scoped_free_pendings): Add constructor.
4742         (free_pending_blocks): Don't declare.
4743         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
4744         (free_pending_blocks): Now static.
4745
4746 2018-07-16  Tom Tromey  <tom@tromey.com>
4747
4748         * buildsym.h (push_subfile, pop_subfile): Update declarations.
4749         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
4750         member.
4751         (struct subfile_stack): Remove.
4752         (subfile_stack): Remove.
4753         (push_subfile, pop_subfile, buildsym_init): Update.
4754
4755 2018-07-16  Tom Tromey  <tom@tromey.com>
4756
4757         * buildsym.c (push_subfile): Use gdb_assert.
4758         (pop_subfile): Use gdb_assert.
4759
4760 2018-07-16  Tom Tromey  <tom@tromey.com>
4761
4762         * buildsym.h (merge_symbol_lists): Remove.
4763         * buildsym.c (merge_symbol_lists): Remove.
4764
4765 2018-07-16  Tom Tromey  <tom@tromey.com>
4766
4767         * stabsread.c (scan_file_globals): Update comment.
4768         * stabsread.h (scan_file_globals): Move from buildsym.h.
4769         * buildsym.h (scan_file_globals): Move to stabsread.h.
4770
4771 2018-07-16  Tom Tromey  <tom@tromey.com>
4772
4773         * xcoffread.c (xcoff_new_init): Update.
4774         * mipsread.c (mipscoff_new_init): Update.
4775         * mdebugread.c (mdebug_build_psymtabs): Update.
4776         * elfread.c (elf_new_init): Update.
4777         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
4778         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
4779         * buildsym.h (buildsym_new_init): Don't declare.
4780         * buildsym.c (buildsym_new_init): Remove.
4781
4782 2018-07-16  Tom Tromey  <tom@tromey.com>
4783
4784         * stabsread.h (within_function): Move from buildsym.h.
4785         * stabsread.c (start_stabs): Clear within_function.
4786         * coffread.c (coff_start_symtab): Clear within_function.
4787         * buildsym.h (within_function): Move to stabsread.h.
4788         * buildsym.c (prepare_for_building): Update.
4789
4790 2018-07-16  Tom Tromey  <tom@tromey.com>
4791
4792         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
4793         * dwarf2read.c (dwarf2_start_symtab): Don't set
4794         processing_gcc_compilation.
4795         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
4796
4797 2018-07-16  Tom Tromey  <tom@tromey.com>
4798
4799         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
4800         (next_symbol_text_func): Move from buildsym.h.
4801         * stabsread.c (hashname): Move from buildsym.c.
4802         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
4803         (next_symbol_text_func, hashname): Move to stabsread.h.
4804         * buildsym.c: Don't include bcache.h
4805         (hashname): Move to stasbread.c.
4806
4807 2018-07-16  Tom Tromey  <tom@tromey.com>
4808
4809         * buildsym.h (context_stack_size): Don't declare.
4810         * buildsym.c (context_stack_size): New global.
4811
4812 2018-07-16  Tom Tromey  <tom@tromey.com>
4813
4814         * dbxread.c (processing_acc_compilation): New global.
4815         * buildsym.h (processing_acc_compilation): Don't declare.
4816
4817 2018-07-16  Tom Tromey  <tom@tromey.com>
4818
4819         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
4820         * dbxread.c (read_ofile_symtab): Update.
4821         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
4822         * buildsym.h (last_source_start_addr): Remove.
4823         (set_last_source_start_addr, get_last_source_start_addr):
4824         Declare.
4825         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
4826         parameter.
4827         (struct buildsym_compunit) <m_last_source_start_addr>: New
4828         member.
4829         (prepare_for_building): Remove start_addr parameter.
4830         (start_symtab, restart_symtab, end_symtab_get_static_block)
4831         (end_symtab_with_blockvector): Update.
4832         (set_last_source_start_addr, get_last_source_start_addr): New
4833         functions.
4834
4835 2018-07-16  Tom Tromey  <tom@tromey.com>
4836
4837         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
4838         member.
4839         (have_line_numbers): Remove.
4840         (record_line, prepare_for_building, end_symtab_get_static_block)
4841         (augment_type_symtab): Update.
4842
4843 2018-07-16  Tom Tromey  <tom@tromey.com>
4844
4845         * buildsym.c (~buildsym_compunit): Free the macro table.
4846         (struct buildsym_compunit) <get_macro_table, release_macros>: New
4847         methods.
4848         <m_pending_macros>: New member.
4849         (pending_macros): Remove.
4850         (~scoped_free_pendings, get_macro_table, prepare_for_building)
4851         (reset_symtab_globals, end_symtab_get_static_block)
4852         (end_symtab_with_blockvector, augment_type_symtab)
4853         (buildsym_init): Update.
4854
4855 2018-07-16  Tom Tromey  <tom@tromey.com>
4856
4857         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
4858         parameter.
4859         (buildsym_compunit::set_last_source_file): New method.
4860         <m_last_source_file>: New member.
4861         (prepare_for_building): Remove "name" parameter.
4862         (start_symtab, restart_symtab, reset_symtab_globals): Update.
4863         (last_source_file): Remove.
4864         (set_last_source_file, get_last_source_file): Update.
4865
4866 2018-07-16  Tom Tromey  <tom@tromey.com>
4867
4868         * buildsym.c (prepare_for_building): Add assert.
4869
4870 2018-07-16  Tom Tromey  <tom@tromey.com>
4871
4872         * buildsym.c (~buildsym_compunit): Update.
4873         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
4874         (start_subfile, patch_subfile_names)
4875         (end_symtab_with_blockvector): Update.
4876
4877 2018-07-16  Tom Tromey  <tom@tromey.com>
4878
4879         * buildsym.c (struct buildsym_compunit): Add constructor,
4880         destructor, initializers.
4881         (start_buildsym_compunit): Remove.
4882         (free_buildsym_compunit): Use "delete".
4883         (start_symtab, restart_symtab): Use "new".
4884
4885 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
4886
4887         * symfile.c (set_objfile_default_section_offset): Remove struct
4888         keyword.
4889
4890 2018-07-14  Stafford Horne  <shorne@gmail.com>
4891
4892         * (Responsible Maintainers): Add myself as or1k maintainer.
4893
4894 2018-07-13  Tom Tromey  <tom@tromey.com>
4895
4896         * symfile.c (set_objfile_default_section_offset): Use extra braces
4897         around initializer.
4898
4899 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
4900
4901         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
4902         non-branching basr.
4903
4904 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4905
4906         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4907         unittests/cli-utils-selftests.c
4908         * unittests/cli-utils-selftests.c: New file.
4909
4910 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4911
4912         * NEWS: Mention new commands. Mention change to 'thread apply'.
4913
4914 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4915
4916         * thread.c (thr_try_catch_cmd): New function.
4917         (thread_apply_all_command): Handle qcs flags.
4918         (thread_apply_command): Handle qcs flags.
4919         (taas_command): New function.
4920         (tfaas_command): New function.
4921         (_initialize_thread): Update to setup the new commands 'taas
4922         and 'tfaas'. Change doc string for 'thread apply'.
4923
4924 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4925
4926         * stack.c: (trailing_outermost_frame): New function, mostly
4927         extracted from backtrace_command_1.
4928         (leading_innermost_frame): New function.
4929         (backtrace_command_1): Update to call trailing_outermost_frame.
4930         (frame_apply_command_count): New function.
4931         (frame_apply_level_command): New function.
4932         (frame_apply_all_command): New function.
4933         (frame_apply_command): New function.
4934         (faas_command): New function.
4935         (frame_cmd_list): New variable.
4936         (_initialize_stack): Update to setup the new commands 'frame apply'
4937         and 'faas'.
4938
4939 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4940
4941         * cli-utils.c (number_or_range_parser::get_number): Only handle
4942         numbers or convenience var as numbers.
4943         (parse_flags): New function.
4944         (parse_flags_qcs): New function.
4945         (number_or_range_parser::finished): Ensure parsing end is detected
4946         before end of string.
4947         * cli-utils.h (parse_flags): New function.
4948         (parse_flags_qcs): New function.
4949         (number_or_range_parser): Remove m_finished bool.
4950         (number_or_range_parser::skip_range): Set m_in_range to false.
4951
4952 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
4953
4954         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
4955         on Windows.
4956
4957 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4958             Jan Kratochvil  <jan.kratochvil@redhat.com>
4959             Paul Fertser  <fercerpav@gmail.com>
4960             Tsutomu Seki  <sekiriki@gmail.com>
4961             Pedro Alves  <palves@redhat.com>
4962
4963         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4964         'unittests/parse-connection-spec-selftests.c'.
4965         (COMMON_SFILES): Add 'common/netstuff.c'.
4966         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
4967         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
4968         * common/netstuff.c: New file.
4969         * common/netstuff.h: New file.
4970         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
4971         (wait_for_connect): Update comment.  New parameter
4972         'gdb::optional<int> sock' instead of 'struct serial *scb'.
4973         Use 'sock' directly instead of 'scb->fd'.
4974         (try_connect): New function, with code from 'net_open'.
4975         (net_open): Rewrite main loop to deal with multiple
4976         sockets/addresses.  Handle IPv6-style hostnames; implement
4977         support for IPv6 connections.
4978         * unittests/parse-connection-spec-selftests.c: New file.
4979
4980 2018-07-11  Pedro Alves  <palves@redhat.com>
4981
4982         PR gdb/23377
4983         * remote.c (remote_target::remote_detach_pid): Call
4984         set_current_process.
4985
4986 2018-07-11  Pedro Alves  <palves@redhat.com>
4987
4988         * h8300-tdep.c (h8300_gdbarch_init): Remove
4989         set_gdbarch_ecoff_reg_to_regnum calls.
4990
4991 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4992
4993         PR c++/23373
4994         * c-typeprint.c (c_type_print_base_struct_union): Don't print
4995         offsets/sizes for static members of a class/struct.
4996
4997 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
4998
4999         * target-descriptions.c (tdesc_register_bitsize): Rename.
5000         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5001         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5002         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5003
5004 2018-07-10  Tom Tromey  <tom@tromey.com>
5005
5006         * breakpoint.c (moribund_locations): Now static and a
5007         std::vector.
5008         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5009         (build_bpstat_chain, update_global_location_list)
5010         (breakpoint_retire_moribund): Update.
5011         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5012         VEC.
5013
5014 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5015
5016         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5017         (riscv_register_reggroup_p): Use new function, remove unneeded
5018         parenthesis.
5019         (riscv_push_dummy_call): Extend assert to compare against xlen or
5020         flen based on register type.
5021
5022 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5023
5024         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5025
5026 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5027
5028         * remote.c (show_hardware_watchpoint_limit): New function.
5029         (show_hardware_watchpoint_length_limit): New function.
5030         (show_hardware_breakpoint_limit): New function.
5031         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5032         where appropriate, update help text.
5033
5034 2018-07-09  Tom Tromey  <tom@tromey.com>
5035
5036         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5037         (CLIBS): Don't mention NAT_CLIBS.
5038
5039 2018-07-09  Tom Tromey  <tom@tromey.com>
5040
5041         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5042         (LIBGDB_OBS, clean mostlyclean): Update.
5043         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5044
5045 2018-07-09  Tom Tromey  <tom@tromey.com>
5046
5047         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5048         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5049         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5050
5051 2018-07-09  Tom Tromey  <tom@tromey.com>
5052
5053         * Makefile.in (ALLDEPFILES): Remove exec.c.
5054         (COMMON_OBS): Remove exec.o.
5055         (COMMON_SFILES): Add exec.c.
5056
5057 2018-07-09  Tom Tromey  <tom@tromey.com>
5058
5059         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5060
5061 2018-07-09  Tom Tromey  <tom@tromey.com>
5062
5063         * Makefile.in (clean mostlyclean): Remove stamp-version.
5064         (version.c): Depend on stamp-version.
5065         (stamp-version): New rule, from version.c rule.
5066
5067 2018-07-09  Tom Tromey  <tom@tromey.com>
5068
5069         * Makefile.in (init.c): Depend on stamp-init.
5070         (stamp-init): New rule, from init.c rule.
5071         (clean mostlyclean): Remove stamp-init.
5072
5073 2018-07-09  Tom Tromey  <tom@tromey.com>
5074
5075         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5076         SUBDIR_GCC_COMPILE_SRCS.
5077
5078 2018-07-09  Tom Tromey  <tom@tromey.com>
5079
5080         * Makefile.in (init.c): Remove some unused sed rules.
5081
5082 2018-07-09  Tom Tromey  <tom@tromey.com>
5083
5084         * Makefile.in (TSOBS): Remove.
5085         (INIT_FILES): Update.
5086         (LIBGDB_OBS): Update.
5087         (COMMON_SFILES): Add inflow.c.
5088         (SFILES): Remove inflow.c.
5089
5090 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5091
5092         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5093
5094 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5095
5096         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5097         get_saveloc_name, is_signal_frame_name, step_name,
5098         init_remote_name, create_addr_space_name,
5099         destroy_addr_space_name, search_unwind_table_name,
5100         find_dyn_list_name): Constify.
5101
5102 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5103
5104         * darwin-nat.c (darwin_pthread_kill): New function.
5105         (darwin_resume_thread): Use darwin_pthread_kill.
5106
5107 2018-07-05  Tom de Vries  <tdevries@suse.de>
5108
5109         * macroexp.c (macro_buffer) <operator=>: New member function.
5110
5111 2018-07-04  Tom Tromey  <tom@tromey.com>
5112
5113         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5114
5115 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5116
5117         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5118         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5119         * maint.c: Likewise.
5120         * top.c: Likewise.
5121
5122 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5123
5124         * NEWS: Create a new section for the next release branch.
5125         Rename the section of the current branch, now that it has
5126         been cut.
5127
5128 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5129
5130         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5131         * version.in: Bump version to 8.2.50.DATE-git.
5132
5133 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5134             Pedro Alves  <palves@redhat.com>
5135
5136         * linux-nat.c (linux_init_ptrace): Rename to ...
5137         (linux_init_ptrace_procfs): ... this.  Call
5138         linux_proc_init_warnings.
5139         (linux_nat_target::post_attach)
5140         (linux_nat_target::post_startup_inferior): Adjust.
5141         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5142         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5143
5144 2018-07-04  Tom de Vries  <tdevries@suse.de>
5145
5146         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5147         check ...
5148         (read_comp_unit_head): ... here.
5149
5150 2018-07-03  Tom Tromey  <tom@tromey.com>
5151
5152         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5153         (stop_tracing, tstatus_command)
5154         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5155         (print_one_static_tracepoint_marker): Update.
5156         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5157         std::vector.
5158         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5159         VEC.
5160         (all_tracepoints, static_tracepoints_here): Return std::vector.
5161
5162 2018-07-03  Tom Tromey  <tom@tromey.com>
5163
5164         * common/ptid.c (ptid_equal): Remove.
5165         * common/ptid.h (ptid_equal): Don't declare.
5166         * ada-tasks.c: Update.
5167         * breakpoint.c: Update.
5168         * common/agent.c: Update.
5169         * corelow.c: Update.
5170         * darwin-nat-info.c: Update.
5171         * darwin-nat.c: Update.
5172         * dcache.c: Update.
5173         * dtrace-probe.c: Update.
5174         * dummy-frame.c: Update.
5175         * fbsd-nat.c: Update.
5176         * frame.c: Update.
5177         * gdbthread.h: Update.
5178         * gnu-nat.c: Update.
5179         * go32-nat.c: Update.
5180         * inf-loop.c: Update.
5181         * inf-ptrace.c: Update.
5182         * infcall.c: Update.
5183         * infcmd.c: Update.
5184         * inflow.c: Update.
5185         * infrun.c: Update.
5186         * linux-fork.c: Update.
5187         * linux-nat.c: Update.
5188         * linux-thread-db.c: Update.
5189         * mi/mi-cmd-var.c: Update.
5190         * mi/mi-interp.c: Update.
5191         * mi/mi-main.c: Update.
5192         * nto-procfs.c: Update.
5193         * ppc-linux-tdep.c: Update.
5194         * procfs.c: Update.
5195         * python/py-inferior.c: Update.
5196         * python/py-record-btrace.c: Update.
5197         * python/py-record.c: Update.
5198         * ravenscar-thread.c: Update.
5199         * regcache.c: Update.
5200         * remote-sim.c: Update.
5201         * remote.c: Update.
5202         * sol-thread.c: Update.
5203         * solib.c: Update.
5204         * target.c: Update.
5205         * tui/tui-stack.c: Update.
5206         * varobj.c: Update.
5207         * windows-nat.c: Update.
5208         * windows-tdep.c: Update.
5209
5210 2018-07-03  Tom Tromey  <tom@tromey.com>
5211
5212         * common/ptid.c (ptid_match): Remove.
5213         * common/ptid.h (ptid_match): Don't declare.
5214         * fbsd-nat.c: Update.
5215         * infcmd.c: Update.
5216         * infrun.c: Update.
5217         * linux-nat.c: Update.
5218         * record-btrace.c: Update.
5219         * regcache.c: Update.
5220         * remote.c: Update.
5221
5222 2018-07-03  Tom Tromey  <tom@tromey.com>
5223
5224         * common/ptid.c (ptid_tid_p): Remove.
5225         * common/ptid.h (ptid_tid_p): Don't declare.
5226         * sol-thread.c: Update.
5227
5228 2018-07-03  Tom Tromey  <tom@tromey.com>
5229
5230         * common/ptid.c (ptid_lwp_p): Remove.
5231         * common/ptid.h (ptid_lwp_p): Don't declare.
5232         * fbsd-nat.c: Update.
5233         * linux-nat.c: Update.
5234         * nat/linux-procfs.c: Update.
5235         * nat/x86-linux-dregs.c: Update.
5236         * sol-thread.c: Update.
5237
5238 2018-07-03  Tom Tromey  <tom@tromey.com>
5239
5240         * common/ptid.c (ptid_is_pid): Remove.
5241         * common/ptid.h (ptid_is_pid): Don't declare.
5242         * infrun.c: Update.
5243         * linux-nat.c: Update.
5244         * mi/mi-interp.c: Update.
5245         * remote.c: Update.
5246         * thread.c: Update.
5247
5248 2018-07-03  Tom Tromey  <tom@tromey.com>
5249
5250         * common/ptid.c (ptid_get_tid): Remove.
5251         * common/ptid.h (ptid_get_tid): Don't declare.
5252         * ada-tasks.c: Update.
5253         * aix-thread.c: Update.
5254         * bsd-uthread.c: Update.
5255         * darwin-nat.c: Update.
5256         * fbsd-nat.c: Update.
5257         * i386-darwin-nat.c: Update.
5258         * infrun.c: Update.
5259         * linux-tdep.c: Update.
5260         * nto-procfs.c: Update.
5261         * ppc-ravenscar-thread.c: Update.
5262         * python/py-infthread.c: Update.
5263         * ravenscar-thread.c: Update.
5264         * sol-thread.c: Update.
5265         * sparc-ravenscar-thread.c: Update.
5266         * windows-nat.c: Update.
5267
5268 2018-07-03  Tom Tromey  <tom@tromey.com>
5269
5270         * common/ptid.c (ptid_get_lwp): Remove.
5271         * common/ptid.h (ptid_get_lwp): Don't declare.
5272         * aarch64-linux-nat.c: Update.
5273         * ada-tasks.c: Update.
5274         * aix-thread.c: Update.
5275         * amd64-linux-nat.c: Update.
5276         * arm-linux-nat.c: Update.
5277         * corelow.c: Update.
5278         * fbsd-nat.c: Update.
5279         * fbsd-tdep.c: Update.
5280         * gnu-nat.c: Update.
5281         * i386-cygwin-tdep.c: Update.
5282         * i386-gnu-nat.c: Update.
5283         * i386-linux-nat.c: Update.
5284         * ia64-linux-nat.c: Update.
5285         * inf-ptrace.c: Update.
5286         * infrun.c: Update.
5287         * linux-fork.c: Update.
5288         * linux-nat.c: Update.
5289         * linux-tdep.c: Update.
5290         * linux-thread-db.c: Update.
5291         * mips-linux-nat.c: Update.
5292         * nat/aarch64-linux-hw-point.c: Update.
5293         * nat/aarch64-linux.c: Update.
5294         * nat/linux-btrace.c: Update.
5295         * nat/linux-osdata.c: Update.
5296         * nat/linux-procfs.c: Update.
5297         * nat/x86-linux-dregs.c: Update.
5298         * obsd-nat.c: Update.
5299         * ppc-fbsd-nat.c: Update.
5300         * ppc-linux-nat.c: Update.
5301         * procfs.c: Update.
5302         * python/py-infthread.c: Update.
5303         * ravenscar-thread.c: Update.
5304         * remote.c: Update.
5305         * s390-linux-nat.c: Update.
5306         * sol-thread.c: Update.
5307         * sol2-tdep.c: Update.
5308         * spu-linux-nat.c: Update.
5309         * x86-linux-nat.c: Update.
5310         * xtensa-linux-nat.c: Update.
5311
5312 2018-07-03  Tom Tromey  <tom@tromey.com>
5313
5314         * common/ptid.c (ptid_get_pid): Remove.
5315         * common/ptid.h (ptid_get_pid): Don't declare.
5316         * aarch64-linux-nat.c: Update.
5317         * ada-lang.c: Update.
5318         * aix-thread.c: Update.
5319         * alpha-bsd-nat.c: Update.
5320         * amd64-fbsd-nat.c: Update.
5321         * amd64-linux-nat.c: Update.
5322         * arm-linux-nat.c: Update.
5323         * arm-nbsd-nat.c: Update.
5324         * auxv.c: Update.
5325         * break-catch-syscall.c: Update.
5326         * breakpoint.c: Update.
5327         * bsd-uthread.c: Update.
5328         * corelow.c: Update.
5329         * ctf.c: Update.
5330         * darwin-nat.c: Update.
5331         * fbsd-nat.c: Update.
5332         * fbsd-tdep.c: Update.
5333         * gcore.c: Update.
5334         * gnu-nat.c: Update.
5335         * hppa-nbsd-nat.c: Update.
5336         * hppa-obsd-nat.c: Update.
5337         * i386-fbsd-nat.c: Update.
5338         * ia64-linux-nat.c: Update.
5339         * inf-ptrace.c: Update.
5340         * infcmd.c: Update.
5341         * inferior.c: Update.
5342         * inferior.h: Update.
5343         * inflow.c: Update.
5344         * infrun.c: Update.
5345         * linux-fork.c: Update.
5346         * linux-nat.c: Update.
5347         * linux-tdep.c: Update.
5348         * linux-thread-db.c: Update.
5349         * m68k-bsd-nat.c: Update.
5350         * mi/mi-interp.c: Update.
5351         * mi/mi-main.c: Update.
5352         * mips-linux-nat.c: Update.
5353         * mips-nbsd-nat.c: Update.
5354         * mips64-obsd-nat.c: Update.
5355         * nat/aarch64-linux-hw-point.c: Update.
5356         * nat/aarch64-linux.c: Update.
5357         * nat/linux-btrace.c: Update.
5358         * nat/linux-osdata.c: Update.
5359         * nat/linux-procfs.c: Update.
5360         * nat/x86-linux-dregs.c: Update.
5361         * nto-procfs.c: Update.
5362         * obsd-nat.c: Update.
5363         * ppc-linux-nat.c: Update.
5364         * ppc-nbsd-nat.c: Update.
5365         * ppc-obsd-nat.c: Update.
5366         * proc-service.c: Update.
5367         * procfs.c: Update.
5368         * python/py-inferior.c: Update.
5369         * python/py-infthread.c: Update.
5370         * ravenscar-thread.c: Update.
5371         * record.c: Update.
5372         * remote-sim.c: Update.
5373         * remote.c: Update.
5374         * rs6000-nat.c: Update.
5375         * s390-linux-nat.c: Update.
5376         * sh-nbsd-nat.c: Update.
5377         * sol-thread.c: Update.
5378         * sparc-nat.c: Update.
5379         * sparc64-tdep.c: Update.
5380         * spu-linux-nat.c: Update.
5381         * spu-tdep.c: Update.
5382         * target-debug.h: Update.
5383         * target.c: Update.
5384         * thread.c: Update.
5385         * tid-parse.c: Update.
5386         * tracefile-tfile.c: Update.
5387         * vax-bsd-nat.c: Update.
5388         * windows-nat.c: Update.
5389         * x86-linux-nat.c: Update.
5390         * x86-nat.c: Update.
5391
5392 2018-07-03  Tom Tromey  <tom@tromey.com>
5393
5394         * common/ptid.c (pid_to_ptid): Remove.
5395         * common/ptid.h (pid_to_ptid): Don't declare.
5396         * aix-thread.c: Update.
5397         * arm-linux-nat.c: Update.
5398         * common/ptid.c: Update.
5399         * common/ptid.h: Update.
5400         * corelow.c: Update.
5401         * ctf.c: Update.
5402         * darwin-nat.c: Update.
5403         * fbsd-nat.c: Update.
5404         * fork-child.c: Update.
5405         * gnu-nat.c: Update.
5406         * go32-nat.c: Update.
5407         * inf-ptrace.c: Update.
5408         * infcmd.c: Update.
5409         * inferior.c: Update.
5410         * infrun.c: Update.
5411         * linux-fork.c: Update.
5412         * linux-nat.c: Update.
5413         * nat/aarch64-linux-hw-point.c: Update.
5414         * nat/fork-inferior.c: Update.
5415         * nat/x86-linux-dregs.c: Update.
5416         * nto-procfs.c: Update.
5417         * obsd-nat.c: Update.
5418         * procfs.c: Update.
5419         * progspace.c: Update.
5420         * remote.c: Update.
5421         * rs6000-nat.c: Update.
5422         * s390-linux-nat.c: Update.
5423         * sol-thread.c: Update.
5424         * spu-linux-nat.c: Update.
5425         * target.c: Update.
5426         * top.c: Update.
5427         * tracefile-tfile.c: Update.
5428         * windows-nat.c: Update.
5429
5430 2018-07-03  Tom Tromey  <tom@tromey.com>
5431
5432         * common/ptid.h (ptid_build): Don't declare.
5433         * common/ptid.c (ptid_build): Remove.
5434         * aix-thread.c: Update.
5435         * bsd-kvm.c: Update.
5436         * bsd-uthread.c: Update.
5437         * common/agent.c: Update.
5438         * common/ptid.c: Update.
5439         * common/ptid.h: Update.
5440         * corelow.c: Update.
5441         * darwin-nat.c: Update.
5442         * fbsd-nat.c: Update.
5443         * gnu-nat.c: Update.
5444         * linux-fork.c: Update.
5445         * linux-nat.c: Update.
5446         * linux-thread-db.c: Update.
5447         * nat/linux-osdata.c: Update.
5448         * nat/linux-procfs.c: Update.
5449         * nto-procfs.c: Update.
5450         * obsd-nat.c: Update.
5451         * proc-service.c: Update.
5452         * procfs.c: Update.
5453         * ravenscar-thread.c: Update.
5454         * remote-sim.c: Update.
5455         * remote.c: Update.
5456         * sol-thread.c: Update.
5457         * target.c: Update.
5458         * windows-nat.c: Update.
5459
5460 2018-07-03  Tom Tromey  <tom@tromey.com>
5461
5462         * infrun.c (follow_exec): Use exit_inferior_silent.
5463         * inferior.c (exit_inferior_num_silent): Remove.
5464         * inferior.h (exit_inferior_num_silent): Don't declare.
5465
5466 2018-07-03  Tom Tromey  <tom@tromey.com>
5467
5468         PR cli/23340:
5469         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5470         inferior_ptid on error.
5471
5472 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5473             Simon Marchi  <simon.marchi@polymtl.ca>
5474
5475         PR tdep/8282
5476         * disasm.h (gdb_disassembler): Add
5477         `m_disassembler_options_holder'. member
5478         * disasm.c (get_all_disassembler_options): New function.
5479         (gdb_disassembler::gdb_disassembler): Use it.
5480         (gdb_buffered_insn_length_init_dis): Likewise.
5481         (gdb_buffered_insn_length): Adjust accordingly.
5482         (set_disassembler_options): Handle options with arguments.
5483         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5484         line if showing options with descriptions.
5485         (disassembler_options_completer): Adapt to using the
5486         `disasm_options_and_args_t' structure.
5487         * mips-tdep.c (mips_disassembler_options): New variable.
5488         (mips_disassembler_options_o32): Likewise.
5489         (mips_disassembler_options_n32): Likewise.
5490         (mips_disassembler_options_n64): Likewise.
5491         (gdb_print_insn_mips): Don't set `disassembler_options'.
5492         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5493         functions.
5494         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5495         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5496         `gdbarch_disassembler_options_implicit' and
5497         `gdbarch_valid_disassembler_options'.
5498         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5499         `disasm_options_and_args_t' structure.
5500         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5501         method.
5502         (valid_disassembler_options): Switch from `disasm_options_t' to
5503         the `disasm_options_and_args_t' structure.
5504         * NEWS: Document `set disassembler-options' support for the MIPS
5505         target.
5506         * gdbarch.h: Regenerate.
5507         * gdbarch.c: Regenerate.
5508
5509 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5510
5511         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5512
5513 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5514
5515         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5516         parameter in call to amd64_target_description.
5517         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5518         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5519         (amd64fbsd_init_abi): Likewise.
5520         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5521         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5522         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5523         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5524
5525 2018-06-29  Pedro Alves  <palves@redhat.com>
5526
5527         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5528         "segments" parameter.
5529         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5530         (_initialize_amd64_tdep): Update call to
5531         amd64_create_target_description.
5532         (amd64_target_description): Add "segments" parameter.  Adjust
5533         the implementation to use it.
5534         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5535         call to amd64_create_target_description.
5536         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5537         * gdb/arch/amd64.h (amd64_create_target_description): Add
5538         "segments" register.
5539         * gdb/arch/amd64.c (amd64_create_target_description): Add
5540         "segments" parameter.  Call create_feature_i386_64bit_segments
5541         only if SEGMENTS is true.
5542         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5543         call to amd64_create_target_description.
5544
5545 2018-06-29  Pedro Alves  <palves@redhat.com>
5546
5547         * thread.c (thread_target_id_str): New, factored out from ...
5548         (print_thread_info_1): ... here.  Use it to compute the max
5549         "Target Id" column width.
5550
5551 2018-06-29  Pedro Alves  <palves@redhat.com>
5552
5553         * remote.c (remote_target::extra_thread_info): Delete
5554         'display_buf' and 'n' locals.  from the cache, regardless of
5555         packet mechanims is in use.  Use cache for qThreadExtra and qP
5556         methods too.
5557
5558 2018-06-29  Pedro Alves  <palves@redhat.com>
5559
5560         * blockframe.c (find_pc_sect_containing_function): New function.
5561         * breakpoint.c (print_breakpoint_location): Don't call
5562         find_pc_sect_function.
5563         * linespec.c (create_sals_line_offset): Record the location's
5564         symbol in the sal.
5565         * linespec.c (convert_address_location_to_sals): Fill in sal's
5566         symbol with find_pc_sect_containing_function.
5567         * symtab.c (find_function_start_sal): Rename to ...
5568         (find_function_start_sal_1): ... this.
5569         (find_function_start_sal): Reimplement as wrapper around
5570         find_function_start_sal_1, and use
5571         find_pc_sect_containing_function to fill in the sal's symbol.
5572         (find_function_start_sal(symbol*, bool)): Adjust.
5573         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
5574         comments.
5575         (find_pc_sect_containing_function): Declare.
5576
5577 2018-06-29  Pedro Alves  <palves@redhat.com>
5578
5579         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
5580         true if the the location has no symbol.
5581
5582 2018-06-28  Tom Tromey  <tom@tromey.com>
5583
5584         * NEWS: Mention --enable-codesign.
5585         * silent-rules.mk (ECHO_SIGN): New variable.
5586         * configure.ac: Add --enable-codesign.
5587         * configure: Rebuild.
5588         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
5589         (gdb$(EXEEXT)): Optionally invoke codesign.
5590
5591 2018-06-28  Pedro Alves  <palves@redhat.com>
5592
5593         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
5594         comments.
5595         (switch_to_thread_no_regs): Adjust comment.
5596         * infcmd.c (stop_pc): Delete.
5597         (post_create_inferior, info_program_command): Replace references
5598         to stop_pc with references to thread_info->suspend.stop_pc.
5599         * inferior.h (stop_pc): Delete declaration.
5600         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
5601         (handle_inferior_event_1, handle_signal_stop)
5602         (process_event_stop_test, keep_going_stepped_thread)
5603         (handle_step_into_function, handle_step_into_function_backward)
5604         (print_stop_location): Replace references to stop_pc with
5605         references to thread_info->suspend.stop_pc.
5606         (struct infcall_suspend_state) <stop_pc>: Delete field.
5607         (save_infcall_suspend_state, restore_infcall_suspend_state):
5608         Remove references to inf_stat->stop_pc.
5609         * linux-fork.c (fork_load_infrun_state): Likewise.
5610         * record-btrace.c (record_btrace_set_replay): Likewise.
5611         * record-full.c (record_full_goto_entry): Likewise.
5612         * remote.c (print_one_stopped_thread): Likewise.
5613         * target.c (target_resume): Extend comment.
5614         * thread.c (set_executing_thread): New.
5615         (set_executing): Use it.
5616         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
5617         Remove references to stop_pc.
5618
5619 2018-06-28  Pedro Alves  <palves@redhat.com>
5620
5621         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
5622         Moving fetching stop_pc until after ecs->event_thread is refreshed.
5623
5624 2018-06-28  Tom Tromey  <tom@tromey.com>
5625
5626         * coffread.c (coff_symfile_finish): Update.
5627         * xcoffread.c (xcoff_symfile_finish): Update.
5628         * elfread.c (elf_symfile_finish): Update.
5629         * symfile.h (dwarf2_free_objfile): Don't declare.
5630         * dwarf2read.c (_initialize_dwarf2_read): Use
5631         register_objfile_data_with_cleanup.
5632         (dwarf2_free_objfile): Now static.  Change signature.
5633
5634 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5635
5636         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
5637         option "-o" to add-symbol-file-load to add an offset to each
5638         section's load address.
5639         * symfile.c (set_objfile_default_section_offset): New function.
5640
5641 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5642
5643         * symfile.c (add_symbol_file_command): Make sure that sections
5644         with the same name are sorted in the same order.
5645
5646 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5647
5648         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
5649         require the second argument.  If omitted, load sections at the
5650         addresses specified in the file.
5651
5652 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5653
5654         * symfile.c (symbol_file_command, symbol_file_add_main_1)
5655         (_initialize_symfile): Add option "-o" to symbol-file to add an
5656         offset to each section of the symbol file.
5657
5658 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5659
5660         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
5661
5662 2018-06-27  Tom Tromey  <tom@tromey.com>
5663
5664         * stack.c (_initialize_stack): Update "func" help text.
5665
5666 2018-06-27  Tom Tromey  <tom@tromey.com>
5667
5668         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
5669         std::vector.
5670         (unwind_infopy_str, pyuw_create_unwind_info)
5671         (unwind_infopy_add_saved_register, pyuw_sniffer)
5672         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
5673         Update.
5674         (struct saved_reg): Add constructor.
5675         <value>: Now a gdbpy_ref<>.
5676
5677 2018-06-27  Tom Tromey  <tom@tromey.com>
5678
5679         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
5680
5681 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5682
5683         * gdb-gdb.py.in: Format using autopep8.
5684
5685 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5686
5687         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
5688         (type_lookup_function): Recognize CORE_ADDR values.
5689
5690 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5691
5692         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
5693         print tag_name.
5694
5695 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5696
5697         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
5698         <__lt__>: Add.
5699
5700 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5701
5702         * gdb-gdb.py: Move to...
5703         * gdb-gdb.py.in: ... here.
5704         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
5705         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
5706         dependencies.
5707         (distclean): Remove gdb-gdb.py when cleaning.
5708         (gdb-gdb.py, gdb-gdb.gdb): New rules.
5709         * configure: Re-generate.
5710
5711 2018-06-27  Pedro Alves  <palves@redhat.com>
5712
5713         * proc-service.c (get_ps_regcache): New.
5714         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
5715         (ps_lsetfpregs): Use it.
5716
5717 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
5718
5719         PR gdb/21695
5720         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
5721         (dwarf_decode_lines_1): Adjust.
5722
5723 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5724
5725         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
5726         override.
5727         <info_proc>: Likewise.
5728
5729 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
5730
5731         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
5732         to windows_fetch_one_register, and only handle the case of
5733         fetching one register.  Move the code that reloads the context
5734         and iterates over all registers if R is negative to...
5735         (windows_nat_target::fetch_registers): ... here.
5736         (do_windows_store_inferior_registers): Rename to
5737         windows_store_one_register, and only handle the case of storing
5738         one register.  Move the code that handles the case where r is
5739         negative to...
5740         (windows_nat_target::store_registers) ... here.
5741
5742 2018-06-26  Tom Tromey  <tom@tromey.com>
5743
5744         PR rust/22574:
5745         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
5746         * rust-lang.c (rust_print_struct_def): Add podata parameter.
5747         Update.
5748         (rust_internal_print_type): Add podata parameter.
5749         (rust_print_type): Update.
5750
5751 2018-06-26  Tom Tromey  <tom@tromey.com>
5752
5753         * typeprint.h (struct print_offset_data) <update, finish,
5754         maybe_print_hole>: New methods.
5755         <indentation>: New constant.
5756         * typeprint.c (print_offset_data::indentation): Define.
5757         (print_offset_data::maybe_print_hole, print_offset_data::update)
5758         (print_offset_data::finish): Move from c-typeprint.c and rename.
5759         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
5760         (print_spaces_filtered_with_print_options): Update.
5761         (c_print_type_union_field_offset, maybe_print_hole)
5762         (c_print_type_struct_field_offset): Move to typeprint.c and
5763         rename.
5764         (c_type_print_base_struct_union): Update.
5765
5766 2018-06-25  Pedro Alves  <palves@redhat.com>
5767
5768         * gdbthread.h (thread_info_ref, delete_thread)
5769         (delete_thread_silent, first_thread_of_inferior)
5770         (any_thread_of_inferior, switch_to_thread)
5771         (enable_thread_stack_temporaries)
5772         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5773         (get_last_thread_stack_temporary)
5774         (value_in_thread_stack_temporaries, can_access_registers_thread):
5775         Spell out "struct thread_info" instead of just "thread_info".
5776         * inferior.h (notice_new_inferior): Likewise.
5777
5778 2018-06-25  Pedro Alves  <palves@redhat.com>
5779
5780         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5781         pass thread_info pointer to delete_thread.
5782         (windows_nat_target::detach): Pass inferior pointer to
5783         detach_inferior.
5784         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
5785         delete_thread.
5786         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
5787         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
5788         and pass a thread_info pointer to delete_thread.
5789         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
5790         pass thread_info pointer to delete_thread.
5791         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
5792         delete_thread_silent call.
5793         * procfs.c (procfs_target::detach): Pass inferior pointer to
5794         detach_inferior.
5795         (procfs_target::wait): Pass thread_info pointer to delete_thread.
5796         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
5797         delete_thread_silent call.
5798         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5799         pass thread_info pointer to delete_thread.
5800         (windows_nat_target::detach): Pass inferior pointer to
5801         delete_inferior.
5802
5803 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5804
5805         * regcache.c (readable_regcache::read_part): Fix asserts.
5806         (reg_buffer::raw_collect_part): New function.
5807         (regcache::write_part): Fix asserts.
5808         (reg_buffer::raw_supply_part): New function.
5809         (regcache::transfer_regset_register): New helper function.
5810         (regcache::transfer_regset): Call new functions.
5811         (regcache_supply_regset): Use gdb_byte*.
5812         (regcache::supply_regset): Likewise.
5813         (regcache_collect_regset): Likewise.
5814         (regcache::collect_regset): Likewise.
5815         * regcache.h (reg_buffer::raw_collect_part): New declaration.
5816         (reg_buffer::raw_supply_part): Likewise.
5817         (regcache::transfer_regset_register): Likewise.
5818         (regcache::transfer_regset): Use gdb_byte*.
5819
5820 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5821
5822         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
5823
5824 2018-06-21  Pedro Alves  <palves@redhat.com>
5825
5826         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
5827         instead of a ptid_t.  All callers adjusted.
5828         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
5829         adjusted.
5830         (print_ada_task_info, display_current_task_id, task_command_1):
5831         Adjust.
5832         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
5833         inferior_thread.
5834         (breakpoint_kind): Adjust.
5835         (remove_breakpoints_pid): Rename to ...
5836         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
5837         pointer.  All callers adjusted.
5838         (bpstat_clear_actions): Use inferior_thread.
5839         (get_bpstat_thread): New.
5840         (bpstat_do_actions): Use it.
5841         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
5842         to take a thread_info pointer.  All callers adjusted.
5843         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
5844         (breakpoint_re_set_thread): Use inferior_thread.
5845         * breakpoint.h (struct inferior): Forward declare.
5846         (bpstat_stop_status): Update.
5847         (remove_breakpoints_pid): Delete.
5848         (remove_breakpoints_inf): New.
5849         * bsd-uthread.c (bsd_uthread_target::wait)
5850         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
5851         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
5852         (maint_btrace_packet_history_cmd)
5853         (maint_btrace_clear_packet_history_cmd): Adjust.
5854         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
5855         inferior_thread.
5856         * cli/cli-interp.c: Include "inferior.h".
5857         * common/refcounted-object.h (struct
5858         refcounted_object_ref_policy): New.
5859         * compile/compile-object-load.c: Include gdbthread.h.
5860         (store_regs): Use inferior_thread.
5861         * corelow.c (core_target::close): Use current_inferior.
5862         (core_target_open): Adjust to use first_thread_of_inferior and use
5863         the current inferior.
5864         * ctf.c (ctf_target::close): Adjust to use current_inferior.
5865         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
5866         <thread>: ... this new field.  All references adjusted.
5867         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
5868         Take a thread_info pointer instead of a ptid_t.
5869         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
5870         (dummy_frame_discard, register_dummy_frame_dtor): Take a
5871         thread_info pointer instead of a ptid_t.
5872         * elfread.c: Include "inferior.h".
5873         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
5874         Use inferior_thread.
5875         * eval.c (evaluate_subexp): Likewise.
5876         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
5877         inferior_thread.
5878         * gdb_proc_service.h (struct thread_info): Forward declare.
5879         (struct ps_prochandle) <ptid>: Delete, replaced by ...
5880         <thread>: ... this new field.  All references adjusted.
5881         * gdbarch.h, gdbarch.c: Regenerate.
5882         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
5883         'thread' parameter.  All implementations and callers adjusted.
5884         * gdbthread.h (thread_info) <set_running>: New method.
5885         (delete_thread, delete_thread_silent): Take a thread_info pointer
5886         instead of a ptid.
5887         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
5888         (first_thread_of_process): Delete, replaced by ...
5889         (first_thread_of_inferior): ... this new function.  All callers
5890         adjusted.
5891         (any_live_thread_of_process): Delete, replaced by ...
5892         (any_live_thread_of_inferior): ... this new function.  All callers
5893         adjusted.
5894         (switch_to_thread, switch_to_no_thread): Declare.
5895         (is_executing): Delete.
5896         (enable_thread_stack_temporaries): Update comment.
5897         <enable_thread_stack_temporaries>: Take a thread_info pointer
5898         instead of a ptid_t.  Incref the thread.
5899         <~enable_thread_stack_temporaries>: Decref the thread.
5900         <m_ptid>: Delete
5901         <m_thr>: New.
5902         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5903         (get_last_thread_stack_temporary)
5904         (value_in_thread_stack_temporaries, can_access_registers_thread):
5905         Take a thread_info pointer instead of a ptid_t.  All callers
5906         adjusted.
5907         * infcall.c (get_call_return_value): Use inferior_thread.
5908         (run_inferior_call): Work with thread pointers instead of ptid_t.
5909         (call_function_by_hand_dummy): Work with thread pointers instead
5910         of ptid_t.  Use thread_info_ref.
5911         * infcmd.c (proceed_thread_callback): Access thread's state
5912         directly.
5913         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
5914         access thread's state directly.
5915         (continue_command): Use inferior_thread.
5916         (info_program_command): Use find_thread_ptid and access thread
5917         state directly.
5918         (proceed_after_attach_callback): Use thread state directly.
5919         (notice_new_inferior): Take a thread_info pointer instead of a
5920         ptid_t.  All callers adjusted.
5921         (exit_inferior): Take an inferior pointer instead of a pid.  All
5922         callers adjusted.
5923         (exit_inferior_silent): New.
5924         (detach_inferior): Delete.
5925         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
5926         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
5927         (detach_inferior_command, kill_inferior_command): Use
5928         find_inferior_id instead of valid_gdb_inferior_id and
5929         gdb_inferior_id_to_pid.
5930         (inferior_command): Use inferior and thread pointers.
5931         * inferior.h (struct thread_info): Forward declare.
5932         (notice_new_inferior): Take a thread_info pointer instead of a
5933         ptid_t.  All callers adjusted.
5934         (detach_inferior): Delete declaration.
5935         (exit_inferior, exit_inferior_silent): Take an inferior pointer
5936         instead of a pid.  All callers adjusted.
5937         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
5938         (valid_gdb_inferior_id): Delete.
5939         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
5940         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
5941         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
5942         ...
5943         <inf>: ... this new field.
5944         <step_ptid>: Delete, replaced by ...
5945         <step_thread>: ... this new field.
5946         (get_displaced_stepping_state): Take an inferior pointer instead
5947         of a pid.  All callers adjusted.
5948         (displaced_step_in_progress_any_inferior): Adjust.
5949         (displaced_step_in_progress_thread): Take a thread pointer instead
5950         of a ptid_t.  All callers adjusted.
5951         (displaced_step_in_progress, add_displaced_stepping_state): Take
5952         an inferior pointer instead of a pid.  All callers adjusted.
5953         (get_displaced_step_closure_by_addr): Adjust.
5954         (remove_displaced_stepping_state): Take an inferior pointer
5955         instead of a pid.  All callers adjusted.
5956         (displaced_step_prepare_throw, displaced_step_prepare)
5957         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
5958         All callers adjusted.
5959         (start_step_over): Adjust.
5960         (infrun_thread_ptid_changed): Remove bit updating ptids in the
5961         displaced step queue.
5962         (do_target_resume): Adjust.
5963         (fetch_inferior_event): Use inferior_thread.
5964         (context_switch, get_inferior_stop_soon): Take an
5965         execution_control_state pointer instead of a ptid_t.  All callers
5966         adjusted.
5967         (switch_to_thread_cleanup): Delete.
5968         (stop_all_threads): Use scoped_restore_current_thread.
5969         * inline-frame.c: Include "gdbthread.h".
5970         (inline_state) <inline_state>: Take a thread pointer instead of a
5971         ptid_t.  All callers adjusted.
5972         <ptid>: Delete, replaced by ...
5973         <thread>: ... this new field.
5974         (find_inline_frame_state): Take a thread pointer instead of a
5975         ptid_t.  All callers adjusted.
5976         (skip_inline_frames, step_into_inline_frame)
5977         (inline_skipped_frames, inline_skipped_symbol): Take a thread
5978         pointer instead of a ptid_t.  All callers adjusted.
5979         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
5980         (inline_skipped_frames, inline_skipped_symbol): Likewise.
5981         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
5982         pointers directly.
5983         * linux-nat.c (get_detach_signal): Likewise.
5984         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
5985         (thread_db_notice_clone): Adjust.
5986         (thread_db_find_new_threads_silently)
5987         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
5988         a thread pointer instead of a ptid_t.  All callers adjusted.
5989         * mi/mi-cmd-var.c: Include "inferior.h".
5990         (mi_cmd_var_update_iter): Update to use thread pointers.
5991         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
5992         inferior directly.
5993         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
5994         out to ...
5995         (mi_output_running): ... this new function.
5996         (mi_on_resume_1): Adjust to use it.
5997         (mi_user_selected_context_changed): Adjust to use inferior_thread.
5998         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
5999         directly.
6000         (interrupt_thread_callback): : Adjust to use thread and inferior
6001         pointers.
6002         * proc-service.c: Include "gdbthread.h".
6003         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6004         * progspace-and-thread.c: Include "inferior.h".
6005         * progspace.c: Include "inferior.h".
6006         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6007         hold a reference to an inferior_object.
6008         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6009         inferior_thread.
6010         * python/py-inferior.c (struct inferior_object): Give the type a
6011         tag name instead of a typedef.
6012         (python_on_normal_stop): No need to check if the current thread is
6013         listed.
6014         (inferior_to_inferior_object): Change return type to
6015         inferior_object.  All callers adjusted.
6016         (find_thread_object): Delete, bits factored out to ...
6017         (thread_to_thread_object): ... this new function.
6018         * python/py-infthread.c (create_thread_object): Use
6019         inferior_to_inferior_object.
6020         (thpy_is_stopped): Use thread pointer directly.
6021         (gdbpy_selected_thread): Use inferior_thread.
6022         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6023         field, replaced with ...
6024         <thread>: ... this new field.  All users adjusted.
6025         (btpy_insn_or_gap_new): Drop const.
6026         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6027         callers adjusted.
6028         * python/py-record.c: Include "gdbthread.h".
6029         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6030         a ptid_t.  All callers adjusted.
6031         (gdbpy_current_recording): Use inferior_thread.
6032         * python/py-record.h (recpy_record_object) <ptid>: Delete
6033         field, replaced with ...
6034         <thread>: ... this new field.  All users adjusted.
6035         (recpy_element_object) <ptid>: Delete
6036         field, replaced with ...
6037         <thread>: ... this new field.  All users adjusted.
6038         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6039         a ptid_t.  All callers adjusted.
6040         * python/py-threadevent.c: Include "gdbthread.h".
6041         (get_event_thread): Use thread_to_thread_object.
6042         * python/python-internal.h (struct inferior_object): Forward
6043         declare.
6044         (find_thread_object, find_inferior_object): Delete declarations.
6045         (thread_to_thread_object, inferior_to_inferior_object): New
6046         declarations.
6047         * record-btrace.c: Include "inferior.h".
6048         (require_btrace_thread): Use inferior_thread.
6049         (record_btrace_frame_sniffer)
6050         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6051         (get_thread_current_frame): Use scoped_restore_current_thread and
6052         switch_to_thread.
6053         (get_thread_current_frame): Use thread pointer directly.
6054         (record_btrace_replay_at_breakpoint): Use thread's inferior
6055         pointer directly.
6056         * record-full.c: Include "inferior.h".
6057         * regcache.c: Include "gdbthread.h".
6058         (get_thread_arch_regcache): Use the inferior's address space
6059         directly.
6060         (get_thread_regcache, registers_changed_thread): New.
6061         * regcache.h (get_thread_regcache(thread_info *thread)): New
6062         overload.
6063         (registers_changed_thread): New.
6064         (remote_target) <remote_detach_1>: Swap order of parameters.
6065         (remote_add_thread): <remote_add_thread>: Return the new thread.
6066         (get_remote_thread_info(ptid_t)): New overload.
6067         (remote_target::remote_notice_new_inferior): Use thread pointers
6068         directly.
6069         (remote_target::process_initial_stop_replies): Use
6070         thread_info::set_running.
6071         (remote_target::remote_detach_1, remote_target::detach)
6072         (extended_remote_target::detach): Adjust.
6073         * stack.c (frame_show_address): Use inferior_thread.
6074         * target-debug.h (target_debug_print_thread_info_pp): New.
6075         * target-delegates.c: Regenerate.
6076         * target.c (default_thread_address_space): Delete.
6077         (memory_xfer_partial_1): Use current_inferior.
6078         (target_detach): Use current_inferior.
6079         (target_thread_address_space): Delete.
6080         (generic_mourn_inferior): Use current_inferior.
6081         * target.h (struct target_ops) <thread_address_space>: Delete.
6082         (target_thread_address_space): Delete.
6083         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6084         pointers directly.
6085         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6086         thread pointer instead of a ptid_t.  Adjust all callers.
6087         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6088         (first_thread_of_process): Delete, replaced by ...
6089         (first_thread_of_inferior): ... this new function.  All callers
6090         adjusted.
6091         (any_thread_of_process): Rename to ...
6092         (any_thread_of_inferior): ... this, and take an inferior pointer.
6093         (any_live_thread_of_process): Rename to ...
6094         (any_live_thread_of_inferior): ... this, and take an inferior
6095         pointer.
6096         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6097         (value_in_thread_stack_temporaries)
6098         (get_last_thread_stack_temporary): Take a thread pointer instead
6099         of a ptid_t.  Adjust all callers.
6100         (thread_info::set_running): New.
6101         (validate_registers_access): Use inferior_thread.
6102         (can_access_registers_ptid): Rename to ...
6103         (can_access_registers_thread): ... this, and take a thread
6104         pointer.
6105         (print_thread_info_1): Adjust to compare thread pointers instead
6106         of ptids.
6107         (switch_to_no_thread, switch_to_thread): Make extern.
6108         (scoped_restore_current_thread::~scoped_restore_current_thread):
6109         Use m_thread pointer directly.
6110         (scoped_restore_current_thread::scoped_restore_current_thread):
6111         Use inferior_thread.
6112         (thread_command): Use thread pointer directly.
6113         (thread_num_make_value_helper): Use inferior_thread.
6114         * top.c (execute_command): Use inferior_thread.
6115         * tui/tui-interp.c: Include "inferior.h".
6116         * varobj.c (varobj_create): Use inferior_thread.
6117         (value_of_root_1): Use find_thread_global_id instead of
6118         global_thread_id_to_ptid.
6119
6120 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6121
6122         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6123         possible.
6124         (regcache::write_part): Likewise.
6125         (readable_regcache::cooked_read_part): Update comment.
6126         (readable_regcache::cooked_write_part): Likewise.
6127         * regcache.h: (readable_regcache::read_part): Likewise.
6128         (regcache::write_part): Likewise.
6129
6130 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6131             Dirk Schubert  <dirk.schubert@arm.com>
6132
6133         * aarch64-linux-nat.c (post_attach): New.
6134         (aarch64_linux_nat_target::post_attach): Override post_attach to
6135         record the number of hardware debug registers.
6136
6137 2018-06-20  Tom Tromey  <tom@tromey.com>
6138
6139         * python/py-param.c (add_setshow_generic): Make parameters const.
6140         (parmpy_init): Update.
6141
6142 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6143
6144         * regcache.h (regcache_cooked_read_ftype): Rename to...
6145         (register_read_ftype): ...this, change type to function_view.
6146         (class reg_buffer) <save>: Remove src parameter.
6147         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6148         parameter non-const in first overload.  Remove src parameter in
6149         second overload.
6150         * regcache.c (do_cooked_read): Remove.
6151         (readonly_detached_regcache::readonly_detached_regcache): Make
6152         parameter non-const, adjust call to other constructor.
6153         (reg_buffer::save): Remove src parameter.
6154         * frame.c (do_frame_register_read): Remove.
6155         (frame_save_as_regcache): Use lambda function.
6156         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6157         parameter to ppu2spu_data *.
6158         (ppu2spu_sniffer): Use lambda function.
6159
6160 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6161
6162         * record-full.c (record_full_target::insert_breakpoint): Remove
6163         "struct" keyword, add const.
6164
6165 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6166
6167         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6168         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6169         * configure.ac: Remove AC_PREREQ, add missing quoting.
6170         * gnulib/configure.ac: Modernize usage of
6171         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6172         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6173         (AUTOMAKE_VERSION): Bump to 1.15.1.
6174         * configure: Re-generate.
6175         * config.in: Re-generate.
6176         * aclocal.m4: Re-generate.
6177         * gnulib/aclocal.m4: Re-generate.
6178         * gnulib/config.in: Re-generate.
6179         * gnulib/configure: Re-generate.
6180         * gnulib/import/Makefile.in: Re-generate.
6181
6182 2018-06-19  Pedro Alves  <palves@redhat.com>
6183
6184         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6185         (lookup_minimal_symbol_by_pc_section): ... here with
6186         gdb_assert_not_reached added.
6187
6188 2018-06-19  Pedro Alves  <palves@redhat.com>
6189
6190         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6191         parameter with a block parameter.  Compare location's block symbol
6192         with the frame's block instead of addresses.
6193         (skip_inline_frames): Pass the current block instead of the
6194         frame's address.  Break out as soon as we determine the frame
6195         should not be skipped.
6196
6197 2018-06-18  Tom Tromey  <tom@tromey.com>
6198
6199         * solib-aix.c (solib_aix_get_section_offsets): Return
6200         unique_xmalloc_ptr.
6201         (solib_aix_solib_create_inferior_hook): Update.
6202
6203 2018-06-18  Tom Tromey  <tom@tromey.com>
6204
6205         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6206
6207 2018-06-18  Tom Tromey  <tom@tromey.com>
6208
6209         * solib-frv.c (frv_relocate_main_executable): Use
6210         unique_xmalloc_ptr.
6211         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6212         unique_xmalloc_ptr.
6213
6214 2018-06-18  Tom Tromey  <tom@tromey.com>
6215
6216         * objfiles.h (inhibit_section_map_updates): Update.
6217         (resume_section_map_updates, resume_section_map_updates_cleanup):
6218         Remove.
6219         * solib-svr4.c (svr4_handle_solib_event): Update.
6220         * objfiles.c (inhibit_section_map_updates): Return
6221         scoped_restore_tmpl<int>.
6222         (resume_section_map_updates, resume_section_map_updates_cleanup):
6223         Remove.
6224
6225 2018-06-18  Tom Tromey  <tom@tromey.com>
6226
6227         * valprint.h (read_string): Update.
6228         * valprint.c (read_string): Change type of "buffer".
6229         (val_print_string): Update.
6230         * python/py-value.c (valpy_string): Update.
6231         * language.h (struct language_defn) <la_get_string>: Change
6232         type of "buffer".
6233         (default_get_string, c_get_string): Update.
6234         * language.c (default_get_string): Change type of "buffer".
6235         * guile/scm-value.c (gdbscm_value_to_string): Update.
6236         * c-lang.c (c_get_string): Change type of "buffer".
6237
6238 2018-06-18  Tom Tromey  <tom@tromey.com>
6239
6240         * ser-mingw.c (struct pipe_state_destroyer): New.
6241         (pipe_state_up): New typedef.
6242         (cleanup_pipe_state): Remove.
6243         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6244
6245 2018-06-18  Tom Tromey  <tom@tromey.com>
6246
6247         * rust-lang.h (rust_yyerror): Don't declare.
6248         * rust-lang.c (rust_language_defn): Update.
6249         * rust-exp.y (yyerror): Now static.
6250         * parse.c (parse_exp_in_context_1): Update.
6251         * p-lang.h (p_yyerror): Don't declare.
6252         * p-lang.c (p_language_defn): Update.
6253         * p-exp.y (yyerror): Now static.
6254         * opencl-lang.c (opencl_language_defn): Update.
6255         * objc-lang.c (objc_language_defn): Update.
6256         * m2-lang.h (m2_yyerror): Don't declare.
6257         * m2-lang.c (m2_language_defn): Update.
6258         * m2-exp.y (yyerror): Now static.
6259         * language.h (struct language_defn) <la_error>: Remove.
6260         * language.c (unk_lang_error): Remove.
6261         (unknown_language_defn, auto_language_defn): Remove.
6262         * go-lang.h (go_yyerror): Don't declare.
6263         * go-lang.c (go_language_defn): Update.
6264         * go-exp.y (yyerror): Now static.
6265         * f-lang.h (f_yyerror): Don't declare.
6266         * f-lang.c (f_language_defn): Update.
6267         * f-exp.y (yyerror): Now static.
6268         * d-lang.h (d_yyerror): Don't declare.
6269         * d-lang.c (d_language_defn): Update.
6270         * d-exp.y (yyerror): Now static.
6271         * c-lang.h (c_yyerror): Don't declare.
6272         * c-lang.c (c_language_defn, cplus_language_defn)
6273         (asm_language_defn, minimal_language_defn): Update.
6274         * c-exp.y (yyerror): Now static.
6275         * ada-lang.h (ada_yyerror): Don't declare.
6276         * ada-lang.c (ada_language_defn): Update.
6277         * ada-exp.y (yyerror): Now static.
6278
6279 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6280
6281         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6282         (store_sveregs_to_thread): Likewise.
6283         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6284         (aarch64_linux_store_inferior_registers): Likewise.
6285         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6286         function.
6287         (aarch64_sve_regs_copy_to_regcache): Likewise.
6288         (aarch64_sve_regs_copy_from_regcache): Likewise.
6289         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6290         declaration.
6291         (aarch64_sve_regs_copy_to_regcache): Likewise.
6292         (aarch64_sve_regs_copy_from_regcache): Likewise.
6293         (sve_context): Structure from Linux headers.
6294         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6295         (SVE_SIG_ZREG_SIZE): Likewise.
6296         (SVE_SIG_PREG_SIZE): Likewise.
6297         (SVE_SIG_FFR_SIZE): Likewise.
6298         (SVE_SIG_REGS_OFFSET): Likewise.
6299         (SVE_SIG_ZREGS_OFFSET): Likewise.
6300         (SVE_SIG_ZREG_OFFSET): Likewise.
6301         (SVE_SIG_ZREGS_SIZE): Likewise.
6302         (SVE_SIG_PREGS_OFFSET): Likewise.
6303         (SVE_SIG_PREG_OFFSET): Likewise.
6304         (SVE_SIG_PREGS_SIZE): Likewise.
6305         (SVE_SIG_FFR_OFFSET): Likewise.
6306         (SVE_SIG_REGS_SIZE): Likewise.
6307         (SVE_SIG_CONTEXT_SIZE): Likewise.
6308         (SVE_PT_REGS_MASK): Likewise.
6309         (SVE_PT_REGS_FPSIMD): Likewise.
6310         (SVE_PT_REGS_SVE): Likewise.
6311         (SVE_PT_VL_INHERIT): Likewise.
6312         (SVE_PT_VL_ONEXEC): Likewise.
6313         (SVE_PT_REGS_OFFSET): Likewise.
6314         (SVE_PT_FPSIMD_OFFSET): Likewise.
6315         (SVE_PT_FPSIMD_SIZE): Likewise.
6316         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6317         (SVE_PT_SVE_PREG_SIZE): Likewise.
6318         (SVE_PT_SVE_FFR_SIZE): Likewise.
6319         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6320         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6321         (__SVE_SIG_TO_PT): Likewise.
6322         (SVE_PT_SVE_OFFSET): Likewise.
6323         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6324         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6325         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6326         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6327         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6328         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6329         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6330         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6331         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6332         (SVE_PT_SVE_SIZE): Likewise.
6333         (SVE_PT_SIZE): Likewise.
6334         (HAS_SVE_STATE): New define.
6335
6336 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6337
6338         * nat/aarch64-sve-linux-sigcontext.h: New file.
6339         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6340         new files.
6341         (SVE_VQ_MIN): Likewise.
6342         (SVE_VQ_MAX): Likewise.
6343         (SVE_VL_MIN): Likewise.
6344         (SVE_VL_MAX): Likewise.
6345         (SVE_NUM_ZREGS): Likewise.
6346         (SVE_NUM_PREGS): Likewise.
6347         (sve_vl_valid): Likewise.
6348         (struct user_sve_header): Likewise.
6349
6350 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6351             Richard Bunt <Richard.Bunt@arm.com>
6352
6353         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6354         was requested by GDB.
6355
6356 2018-06-15  Tom de Vries  <tdevries@suse.de>
6357
6358         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6359
6360 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6361
6362         * gnulib/update-gnulib.sh: Print expected versions of
6363         autoconf/aclocal.
6364
6365 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6366
6367         * arch-utils.c (default_type_align): Use type_length_units.
6368         * gdbtypes.c (type_align): Use type_length_units.
6369
6370 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6371
6372         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6373         of 'define' command.
6374
6375 2018-06-14  Tom de Vries  <tdevries@suse.de>
6376
6377         PR cli/22573
6378         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6379         get_no_prettyformat_print_options.
6380
6381 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6382
6383         * sparc-nat.h: Include target.h.
6384         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6385         <fetch_registers>: Remove this argument in function call.
6386         <store_registers>: Remove this argument in function call, remove
6387         extra semicolon.
6388         <low_forget_process>: Call sparc64_forget_process instead of
6389         sparc_forget_process.
6390
6391 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6392
6393         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6394         (procfs_target::make_corefile_notes): Adjust to new
6395         target_read_alloc return type.
6396
6397 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6398             Stephen Roberts  <stephen.roberts@arm.com>
6399
6400         PR gdb/22882
6401         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6402         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6403         Move should_notify_stop local into more inner scope.
6404
6405 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6406             Stephen Roberts  <stephen.roberts@arm.com>
6407
6408         PR gdb/22882
6409         * infrun.c (resume_1): Add call to mark_async_event_handler.
6410
6411 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6412
6413         * infrun.c (do_target_wait): Change old version of $pc printed.
6414
6415 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6416
6417         * dwarf2read.c (read_index_from_section): Rename to...
6418         (read_gdb_index_from_section): ... this, update all callers.
6419         (dwarf2_read_index): Rename to...
6420         (dwarf2_read_gdb_index): ... this, update all callers.
6421
6422 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6423
6424         * gdb/hppa-linux-nat.c
6425         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6426         hppa_linux_nat_target::fetch_registers.
6427
6428 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6429
6430         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6431         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6432         (AARCH64_DWARF_SVE_FFR): Likewise.
6433         (AARCH64_DWARF_SVE_P0): Likewise.
6434         (AARCH64_DWARF_SVE_Z0): Likewise.
6435
6436 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6437
6438         * common/common-regcache.h (raw_compare): New function.
6439         * regcache.c (regcache::raw_compare): Likewise.
6440         * regcache.h (regcache::raw_compare): New declaration.
6441
6442 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6443
6444         * common/common-regcache.h (reg_buffer_common): New structure.
6445         * regcache.c (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         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6452         (reg_buffer::raw_supply): Likewise.
6453         (reg_buffer::raw_supply_integer): Likewise.
6454         (reg_buffer::raw_supply_zeroed): Likewise.
6455         (reg_buffer::raw_collect): Likewise.
6456         (reg_buffer::raw_collect_integer): Likewise.
6457
6458 2018-06-10  Tom Tromey  <tom@tromey.com>
6459
6460         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6461         (class remote_state) <stop_reply_queue>: Now std::vector.
6462         (remote_state::~remote_state)
6463         (remote_target::stop_reply_queue_length): Update.
6464         (struct queue_iter_param, remove_child_of_pending_fork)
6465         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6466         (check_pending_event_prevents_wildcard_vcont_callback)
6467         (remove_stop_reply_for_inferior)
6468         (remove_stop_reply_of_remote_state)
6469         (remote_notif_remove_once_on_match)
6470         (stop_reply_match_ptid_and_ws)
6471         (remote_kill_child_of_pending_fork): Remove.
6472         (remote_target::remove_new_fork_children)
6473         (remote_target::check_pending_events_prevent_wildcard_vcont)
6474         (remote_target::discard_pending_stop_replies)
6475         (remote_target::discard_pending_stop_replies_in_queue)
6476         (remote_target::remote_notif_remove_queued_reply)
6477         (remote_target::queued_stop_reply)
6478         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6479         (remote_target::wait, remote_target::kill_new_fork_children)
6480         (remote_target::async): Update.
6481
6482 2018-06-10  Tom Tromey  <tom@tromey.com>
6483
6484         * record-full.c (record_full_arch_list_cleanups): Remove.
6485         (record_full_message): Use try/catch.
6486         (record_full_wait_cleanups): Remove.
6487         (record_full_wait_1): Use try/catch.
6488         (record_full_restore): Likewise.
6489
6490 2018-06-10  Tom Tromey  <tom@tromey.com>
6491
6492         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6493         declare VEC.  Add constructor.
6494         <in_target_beneath>: Now bool.
6495         (record_full_breakpoints): Now a std::vector, static.
6496         (record_full_sync_record_breakpoints)
6497         (record_full_init_record_breakpoints)
6498         (record_full_target::insert_breakpoint)
6499         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6500
6501 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6502
6503         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6504         * serial.c (serial_interface_lookup): Remove struct keyword.
6505
6506 2018-06-10  Tom Tromey  <tom@tromey.com>
6507
6508         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6509         method.
6510         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6511         a method.
6512         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6513         method.
6514         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6515         "beneath" as a method.
6516         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6517         Use "beneath" as a method.
6518
6519 2018-06-10  Tom Tromey  <tom@tromey.com>
6520
6521         * tracefile.c (struct trace_file_writer_deleter): New.
6522         <operator()>: Rename from trace_file_writer_xfree.
6523         (trace_file_writer_up): New typedef.
6524         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6525
6526 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6527
6528         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6529         <m_registers, m_register_status>: Change type to
6530         std::unique_ptr.
6531         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6532         XCNEWVEC.
6533
6534 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6535
6536         * common/common-regcache.h (enum register_status): Add
6537         underlying type "signed char".
6538         * regcache.h (reg_buffer) <m_register_status>: Change type to
6539         register_status *.
6540         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6541         register_status instead of signed char.
6542         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6543         (reg_buffer::get_register_status): Remove cast.
6544         (readable_regcache::raw_read): Remove cast.
6545         (readable_regcache::cooked_read): Remove cast.
6546
6547 2018-06-09  Tom Tromey  <tom@tromey.com>
6548
6549         * source.c (reverse_search_command, forward_search_command): Use
6550         scoped_fd.
6551
6552 2018-06-09  Tom Tromey  <tom@tromey.com>
6553
6554         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6555         (serial_ops_list): Now static, std::vector.
6556         (serial_interface_lookup, serial_add_interface): Update.
6557
6558 2018-06-09  Tom Tromey  <tom@tromey.com>
6559
6560         * dwarf2read.c (process_cu_includes): Update.
6561         (process_full_comp_unit): Update.
6562         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6563         std::vector.
6564
6565 2018-06-08  Paul Koning  <paul_koning@dell.com>
6566
6567         PR gdb/23252
6568
6569         * python/python.c (do_start_initialization):
6570         Avoid call to internal Python API.
6571         (init__gdb_module): New function.
6572
6573 2018-06-08  Gary Benson <gbenson@redhat.com>
6574
6575         * linux-thread-db.c (valprint.h): New include.
6576         (struct check_thread_db_info): New structure.
6577         (check_thread_db_on_load, tdb_testinfo): New static globals.
6578         (check_thread_db, check_thread_db_callback): New functions.
6579         (try_thread_db_load_1): Run integrity checks if requested.
6580         (maintenance_check_libthread_db): New function.
6581         (_initialize_thread_db): Register "maint check libthread-db"
6582         and "maint set/show check-libthread-db".
6583         * NEWS: Mention the above new commands.
6584
6585 2018-06-08  Tom Tromey  <tom@tromey.com>
6586
6587         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
6588         now a method.
6589
6590 2018-06-08  Tom Tromey  <tom@tromey.com>
6591
6592         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
6593
6594 2018-06-08  Tom Tromey  <tom@tromey.com>
6595
6596         * common/btrace-common.h (struct btrace_data): Add constructor,
6597         destructor, move assignment operator.
6598         <empty, clear, fini>: New methods.
6599         <format>: Initialize.
6600         (btrace_data_init, btrace_data_fini, btrace_data_clear)
6601         (btrace_data_empty): Don't declare.
6602         * common/btrace-common.c (btrace_data_init): Remove.
6603         (btrace_data::fini): Rename from btrace_data_fini.
6604         (btrace_data::empty): Rename from btrace_data_empty.
6605         (btrace_data::clear): Rename from btrace_data_clear.  Return
6606         bool.
6607         * btrace.h (make_cleanup_btrace_data): Don't declare.
6608         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
6609         (parse_xml_btrace): Update.
6610         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
6611         (maint_btrace_clear_packet_history_cmd): Update.
6612
6613 2018-06-07  Pedro Alves  <palves@redhat.com>
6614
6615         * target.h (target_ops) <beneath>: Now a method.  All references
6616         updated.
6617         (class target_stack): New.
6618         * target.c (g_target_stack): New.
6619         (g_current_top_target): Delete.
6620         (current_top_target): Get the top target out of g_target_stack.
6621         (target_stack::push, target_stack::unpush): New.
6622         (push_target, unpush_target): Reimplement.
6623         (target_is_pushed): Reimplement in terms of g_target_stack.
6624         (target_ops::beneath, target_stack::find_beneath): New.
6625
6626 2018-06-07  Pedro Alves  <palves@redhat.com>
6627
6628         * target.h (find_target_beneath): Delete declaration.
6629         * target.c (find_target_beneath): Delete definition.
6630         * aix-thread.c: All callers of find_target_beneath adjusted to
6631         call target_ops::beneath instead.
6632         * bsd-uthread.c: Likewise.
6633         * linux-thread-db.c: Likewise.
6634         * ravenscar-thread.c: Likewise.
6635         * sol-thread.c: Likewise.
6636         * spu-multiarch.c: Likewise.
6637
6638 2018-06-07  Pedro Alves  <palves@redhat.com>
6639
6640         * target.h (target_ops) <beneath>: Now a method.  All references
6641         updated.
6642         (target_ops) <m_beneath>: New.
6643         * target.c (target_ops::beneath): New.
6644         * corelow.c: Adjust all references to target_ops::beneath.
6645         * linux-thread-db.c: Likewise.
6646         * make-target-delegates: Likewise.
6647         * record-btrace.c: Likewise.
6648         * record-full.c: Likewise.
6649         * remote.c: Likewise.
6650         * target.c: Likewise.
6651         * target-delegates.c: Regenerate.
6652
6653 2018-06-07  Pedro Alves  <palves@redhat.com>
6654
6655         * target.h (target_stack): Delete.
6656         (current_top_target): Declare function.
6657         * target.c (target_stack): Delete.
6658         (g_current_top_target): New.
6659         (current_top_target): New function.
6660         * auxv.c: Use current_top_target instead of target_stack
6661         throughout.
6662         * avr-tdep.c: Likewise.
6663         * breakpoint.c: Likewise.
6664         * corefile.c: Likewise.
6665         * elfread.c: Likewise.
6666         * eval.c: Likewise.
6667         * exceptions.c: Likewise.
6668         * frame.c: Likewise.
6669         * gdbarch-selftests.c: Likewise.
6670         * gnu-v3-abi.c: Likewise.
6671         * ia64-tdep.c: Likewise.
6672         * ia64-vms-tdep.c: Likewise.
6673         * infcall.c: Likewise.
6674         * infcmd.c: Likewise.
6675         * infrun.c: Likewise.
6676         * linespec.c: Likewise.
6677         * linux-tdep.c: Likewise.
6678         * minsyms.c: Likewise.
6679         * ppc-linux-nat.c: Likewise.
6680         * ppc-linux-tdep.c: Likewise.
6681         * procfs.c: Likewise.
6682         * regcache.c: Likewise.
6683         * remote.c: Likewise.
6684         * rs6000-tdep.c: Likewise.
6685         * s390-linux-nat.c: Likewise.
6686         * s390-tdep.c: Likewise.
6687         * solib-aix.c: Likewise.
6688         * solib-darwin.c: Likewise.
6689         * solib-dsbt.c: Likewise.
6690         * solib-spu.c: Likewise.
6691         * solib-svr4.c: Likewise.
6692         * solib-target.c: Likewise.
6693         * sparc-tdep.c: Likewise.
6694         * sparc64-tdep.c: Likewise.
6695         * spu-tdep.c: Likewise.
6696         * symfile.c: Likewise.
6697         * symtab.c: Likewise.
6698         * target-descriptions.c: Likewise.
6699         * target-memory.c: Likewise.
6700         * target.c: Likewise.
6701         * target.h: Likewise.
6702         * tracefile-tfile.c: Likewise.
6703         * tracepoint.c: Likewise.
6704         * valops.c: Likewise.
6705         * valprint.c: Likewise.
6706         * value.c: Likewise.
6707         * windows-tdep.c: Likewise.
6708         * mi/mi-main.c: Likewise.
6709
6710 2018-06-07  Tom Tromey  <tom@tromey.com>
6711
6712         * valprint.h (build_address_symbolic): Declare.
6713         * printcmd.c (print_address_symbolic): Update.
6714         (build_address_symbolic): Change "name" and "filename" to
6715         std::string.
6716         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
6717         Update.
6718         * defs.h (build_address_symbolic): Remove declaration.
6719
6720 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
6721
6722         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
6723         (aarch64_vnv_type): Add function.
6724         (aarch64_pseudo_register_name): Add V regs for SVE.
6725         (aarch64_pseudo_register_type): Likewise.
6726         (aarch64_pseudo_register_reggroup_p): Likewise.
6727         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
6728         (aarch64_pseudo_read_value): Add V regs for SVE.
6729         (aarch64_pseudo_write_2): Use V0 offset for SVE
6730         (aarch64_pseudo_write): Add V regs for SVE.
6731         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
6732
6733 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
6734
6735         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
6736         (sve_vl_from_vq): Likewise.
6737
6738 2018-06-05  Tom Tromey  <tom@tromey.com>
6739
6740         * cli/cli-cmds.c (show_version): Update.
6741         * top.c (print_gdb_version): Add "interactive" parameter.
6742         Update.
6743         * main.c (captured_main_1): Update.
6744         * top.h (print_gdb_version): Add "interactive" parameter and a
6745         comment.
6746
6747 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
6748
6749         * common/enum-flags.h: Add trailing semicolon to example in
6750         comment.
6751
6752 2018-06-05  Tom Tromey  <tom@tromey.com>
6753
6754         PR cli/12326:
6755         * NEWS: Add entry about pager.
6756         * utils.c (pagination_disabled_for_command): New global.
6757         (prompt_for_continue): Allow "c" response to prompt.
6758         (reinitialize_more_filter): Clear
6759         pagination_disabled_for_command.
6760         (fputs_maybe_filtered): Check pagination_disabled_for_command.
6761
6762 2018-06-04  Tom Tromey  <tom@tromey.com>
6763
6764         * ada-lang.h (ada_lookup_symbol_list): Update.
6765         * ada-lang.c (resolve_subexp): Update.
6766         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
6767         parameter.
6768         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
6769         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
6770         results parameter to std::vector.
6771         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
6772         Update.
6773         * ada-exp.y (block_lookup): Update.
6774         (select_possible_type_sym): Change type of syms.  Remove nsyms
6775         parameter.
6776         (write_var_or_type, write_name_assoc): Update.
6777
6778 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
6779
6780         * windows-nat.c (windows_nat_target::xfer_partial): Return
6781         TARGET_XFER_E_IO if we need to delegate to the target beneath
6782         but BENEATH is NULL.
6783
6784 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
6785
6786         * Makefile.in (config.status): Add configure.nat as a
6787         dependency.
6788
6789 2018-06-04  Tom Tromey  <tom@tromey.com>
6790
6791         * cp-name-parser.y (cpname_state): Add method declarations.
6792         (HANDLE_QUAL): Update.
6793         (cpname_state::d_grab, cpname_state::fill_comp)
6794         (cpname_state::make_operator, cpname_state::make_dtor)
6795         (cpname_state::make_builtin_type, cpname_state::make_name)
6796         (cpname_state::d_qualify, cpname_state::d_int_type)
6797         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
6798         (%union): Move earlier.
6799
6800 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6801
6802         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
6803
6804 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6805
6806         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
6807         (aarch64_pseudo_write_1): Likewise.
6808         (aarch64_pseudo_read_value): Use helper.
6809         (aarch64_pseudo_write): Likewise.
6810
6811 2018-06-04  Pedro Alves  <palves@redhat.com>
6812
6813         * darwin-nat.c (darwin_ops): Delete.
6814         (darwin_attach_pid): Use get_native_target.
6815
6816 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6817
6818         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
6819         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
6820
6821 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6822
6823         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
6824         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
6825         (aarch64_gdbarch_init): Check for SVE.
6826         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
6827
6828 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6829
6830         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
6831         * aarch64-tdep.h (aarch64_read_description): Likewise.
6832         * arch/aarch64.c (aarch64_create_target_description): Likewise.
6833         * arch/aarch64.h (aarch64_create_target_description): Likewise.
6834         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
6835         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
6836         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
6837
6838 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
6839
6840         * value.c (value_fetch_lazy_bitfield): New.
6841         (value_fetch_lazy_memory): New.
6842         (value_fetch_lazy_register): New.
6843         (value_fetch_lazy): Factor out to smaller functions.
6844
6845 2018-06-01  Tom Tromey  <tom@tromey.com>
6846
6847         * cp-name-parser.y (backslashable, represented): Now const.
6848
6849 2018-06-01  Tom Tromey  <tom@tromey.com>
6850
6851         * cp-name-parser.y: Include parser-defs.h.
6852         (parser_fprintf): Remove declaration.
6853
6854 2018-06-01  Tom Tromey  <tom@tromey.com>
6855
6856         * cp-name-parser.y: Use %pure-parser, %lex-param, and
6857         %parse-param.
6858         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
6859         (global_result): Remove globals.
6860         (struct cpname_state): New.
6861         (yyparse): Don't declare.
6862         (yylex, yyerror): Move declarations after %union.
6863         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
6864         (make_name): Add state parameter.
6865         Update all callers.
6866         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
6867         parameter.
6868         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
6869         Update.
6870         (yylex): Add lvalp, state parameters.
6871         (yyerror): Add state parameter.
6872         (cp_demangled_name_to_comp): Update.
6873
6874 2018-06-01  Tom Tromey  <tom@tromey.com>
6875
6876         * cp-name-parser.y (parser_fprintf): Declare.
6877         (GDB_YY_REMAP_PREFIX): Define.
6878         Include yy-remap.h.  Don't redefine yy* identifiers.
6879
6880 2018-06-01  Tom Tromey  <tom@tromey.com>
6881
6882         * python/py-type.c (typy_legacy_template_argument): Update.
6883         * cp-support.h (cp_demangled_name_to_comp): Update.
6884         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
6885         parameter to be a "std::string *".
6886         (main): Update.
6887
6888 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
6889
6890         * ada-lex.l: Include "diagnostics.h" instead of
6891         "common/diagnostics.h".
6892         * unittests/environ-selftests.c: Likewise.
6893         * common/diagnostics.h: Moved to ../include.
6894
6895 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
6896
6897         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
6898         to language_mode_manual while calling breakpoint_re_set_one.
6899
6900 2018-06-01  Tom Tromey  <tom@tromey.com>
6901
6902         * valops.c (value_cast_structs, destructor_name_p): Update.
6903         * symtab.c (gdb_mangle_name): Update.
6904         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
6905         Update.
6906         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
6907         (pascal_object_print_value_fields, pascal_object_print_value):
6908         Update.
6909         * p-typeprint.c (pascal_type_print_derivation_info): Update.
6910         * linespec.c (find_methods): Update.
6911         * gdbtypes.h (type_name_no_tag): Remove.
6912         (type_name_or_error): Rename from type_name_no_tag_or_error.
6913         * gdbtypes.c (type_name_no_tag): Remove.
6914         (type_name_or_error): Rename from type_name_no_tag_or_error.
6915         (lookup_struct_elt_type, check_typedef): Update.
6916         * expprint.c (print_subexp_standard): Update.
6917         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
6918         * d-namespace.c (d_lookup_nested_symbol): Update.
6919         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
6920         (cp_print_class_member): Update.
6921         * cp-namespace.c (cp_lookup_nested_symbol): Update.
6922         * completer.c (add_struct_fields): Update.
6923         * c-typeprint.c (cp_type_print_derivation_info)
6924         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
6925         Update.
6926         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
6927         (ada_prefer_type, ada_is_exception_sym): Update.
6928
6929 2018-06-01  Tom Tromey  <tom@tromey.com>
6930
6931         * valops.c (enum_constant_from_type, value_namespace_elt)
6932         (value_maybe_namespace_elt): Update.
6933         * valarith.c (find_size_for_pointer_math): Update.
6934         * target-descriptions.c (make_gdb_type): Update.
6935         * symmisc.c (print_symbol): Update.
6936         * stabsread.c (define_symbol, read_type)
6937         (complain_about_struct_wipeout, add_undefined_type)
6938         (cleanup_undefined_types_1): Update.
6939         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
6940         (rust_range_type_p, val_print_struct, rust_print_struct_def)
6941         (rust_internal_print_type, rust_composite_type)
6942         (rust_evaluate_funcall, rust_evaluate_subexp)
6943         (rust_inclusive_range_type_p): Update.
6944         * python/py-type.c (typy_get_tag): Update.
6945         * p-typeprint.c (pascal_type_print_base): Update.
6946         * mdebugread.c (parse_symbol, parse_type): Update.
6947         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
6948         Update.
6949         * guile/scm-type.c (gdbscm_type_tag): Update.
6950         * go-lang.c (sixg_string_p): Update.
6951         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
6952         Update.
6953         * gdbtypes.h (struct main_type) <tag_name>: Remove.
6954         (TYPE_TAG_NAME): Remove.
6955         * gdbtypes.c (type_name_no_tag): Simplify.
6956         (check_typedef, check_types_equal, recursive_dump_type)
6957         (copy_type_recursive, arch_composite_type): Update.
6958         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
6959         in summary mode when needed.
6960         * eval.c (evaluate_funcall): Update.
6961         * dwarf2read.c (fixup_go_packaging, read_structure_type)
6962         (process_structure_scope, read_enumeration_type)
6963         (read_namespace_type, read_module_type, determine_prefix): Update.
6964         * cp-support.c (inspect_type): Update.
6965         * coffread.c (process_coff_symbol, decode_base_type): Update.
6966         * c-varobj.c (c_is_path_expr_parent): Update.
6967         * c-typeprint.c (c_type_print_base_struct_union): Update.
6968         (c_type_print_base_1): Update.  Print struct/class/union/enum in
6969         summary when using C language.
6970         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
6971         (gen_maybe_namespace_elt): Update.
6972         * ada-lang.c (ada_type_name): Simplify.
6973         (empty_record, ada_template_to_fixed_record_type_1)
6974         (template_to_static_fixed_type)
6975         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
6976
6977 2018-06-01  Tom Tromey  <tom@tromey.com>
6978
6979         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
6980         c_print_type.
6981         * c-typeprint.c (c_print_type_1): Add "language" parameter.
6982         (c_print_type): Update.
6983         (c_print_type): New overload.
6984         (c_type_print_varspec_prefix, c_type_print_args)
6985         (c_type_print_varspec_suffix, c_print_type_no_offsets)
6986         (c_type_print_base_struct_union, c_type_print_base_1)
6987         (cp_type_print_method_args): Add "language" parameter.
6988         (c_type_print_base): Update.
6989         * c-lang.h (c_print_type): Add new overload.
6990
6991 2018-06-01  Tom Tromey  <tom@tromey.com>
6992
6993         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
6994         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
6995
6996 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
6997
6998         * aarch64-tdep.c (aarch64_sve_register_names): New const
6999         var.
7000         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7001         (AARCH64_SVE_Z_REGS_NUM): New define.
7002         (AARCH64_SVE_P_REGS_NUM): Likewise.
7003         (AARCH64_SVE_NUM_REGS): Likewise.
7004
7005 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7006
7007         * nat/linux-ptrace.h [__alpha__]
7008         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7009         definitions.
7010
7011 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7012
7013         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7014         the endianness selected.
7015         * NEWS: Document `set endian auto' mode operation update.
7016
7017 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7018
7019         * Makefile.in: Add new header.
7020         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7021         (sve_vl_from_vg): Likewise.
7022         (sve_vq_from_vl): Likewise.
7023         (sve_vl_from_vq): Likewise.
7024         (sve_vq_from_vg): Likewise.
7025         (sve_vg_from_vq): Likewise.
7026         * configure.nat: Add new c file.
7027         * nat/aarch64-sve-linux-ptrace.c: New file.
7028         * nat/aarch64-sve-linux-ptrace.h: New file.
7029
7030 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7031
7032         * aarch64-linux-nat.c (aarch64_linux_read_description):
7033         Add parmeter zero.
7034         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7035         Likewise.
7036         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7037         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7038         (aarch64_gdbarch_init): Add parmeter zero.
7039         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7040         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7041         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7042         parmeter.
7043         * doc/gdb.texinfo: Describe SVE feature
7044         * features/aarch64-sve.c: New file.
7045
7046 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7047
7048         PR gdb/23210
7049         * gdbarch.sh (significant_addr_bit): Default to zero when
7050         not set by target architecture.
7051         * gdbarch.c: Re-generated.
7052         * utils.c (address_significant): Update.
7053
7054 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7055
7056         * stack.c (func_command): Remove trailing newline in call to error.
7057
7058 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7059
7060         * regcache.h (regcache_raw_collect): Remove, update callers to
7061         use regcache::raw_collect.
7062         * regcache.c (regcache_raw_collect): Remove.
7063
7064 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7065
7066         * regcache.h (regcache_raw_supply): Remove, update callers to
7067         use detached_regcache::raw_supply.
7068         * regcache.c (regcache_raw_supply): Remove.
7069
7070 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7071
7072         * regcache.h (regcache_cooked_write_part): Remove, update
7073         callers to use regcache::cooked_write_part.
7074         * regcache.c (regcache_cooked_write_part): Remove.
7075
7076 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7077
7078         * regcache.h (regcache_cooked_read_part): Remove, update callers
7079         to use readable_regcache::cooked_read_part.
7080         * regcache.c (regcache_cooked_read_part): Remove.
7081
7082 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7083
7084         * regcache.h (regcache_cooked_read_value): Remove, update
7085         callers to use readable_regcache::cooked_read_value.
7086         * regcache.c (regcache_cooked_read_value): Remove.
7087
7088 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7089
7090         * regcache.h (regcache_cooked_write): Remove, update callers to
7091         use regcache::cooked_write.
7092         * regcache.c (regcache_cooked_write): Remove.
7093
7094 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7095
7096         * regcache.h (regcache_invalidate): Remove, update callers to
7097         use detached_regcache::invalidate instead.
7098         * regcache.c (regcache_invalidate): Remove.
7099
7100 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7101
7102         * regcache.h (regcache_raw_write_part): Remove, update callers
7103         to use regcache::raw_write_part instead.
7104         * regcache.c (regcache_raw_write_part): Remove.
7105
7106 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7107
7108         * regcache.h (regcache_raw_read_part): Remove, update callers to
7109         use readable_regcache::raw_read_part instead.
7110         * regcache.c (regcache_raw_read_part): Remove.
7111
7112 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7113
7114         * regcache.h (regcache_cooked_read): Remove, update callers to
7115         use readable_regcache::cooked_read instead.
7116         * regcache.c (regcache_cooked_read): Remove.
7117
7118 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7119
7120         * regcache.h (regcache_raw_write): Remove, update callers to use
7121         regcache::raw_write instead.
7122         * regcache.c (regcache_raw_write): Remove.
7123
7124 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7125
7126         * regcache.h (regcache_raw_read): Remove, update callers to use
7127         readable_regcache::raw_read instead.
7128         * regcache.c (regcache_raw_read): Remove.
7129
7130 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7131
7132         * regcache.h (regcache_raw_update): Remove, update callers to
7133         use readable_regcache::raw_update instead.
7134         * regcache.c (regcache_raw_update): Remove.
7135
7136 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7137
7138         * regcache.h (regcache_register_status): Remove, update callers
7139         to use reg_buffer::get_register_status directly instead.
7140         * regcache.c (regcache_register_status): Remove.
7141
7142 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7143
7144         * regcache.h (regcache_get_ptid): Remove, update all callers to
7145         call regcache::ptid instead.
7146         * regcache.c (regcache_get_ptid): Remove.
7147
7148 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7149
7150         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7151
7152 2018-05-30  Pedro Alves  <palves@redhat.com>
7153
7154         * common/common-exceptions.h (exception_rethrow): Use
7155         ATTRIBUTE_NORETURN.
7156
7157 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7158
7159         * breakpoint.c (print_solib_event, check_status_catch_solib):
7160         Remove struct keyword in range-based for loops.
7161         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7162         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7163         Likewise.
7164         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7165         Likewise.
7166         * symfile.c (addr_info_make_relative): Likewise.
7167         * thread.c (value_in_thread_stack_temporaries): Likewise.
7168
7169 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7170
7171         PR gdb/16841
7172         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7173         aggregate type to get its real type before accessing it.
7174
7175 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7176
7177         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7178         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7179         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7180         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7181         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7182         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7183         * printcmd.c (info_address_command): Likewise.
7184
7185 2018-05-29  Tom Tromey  <tom@tromey.com>
7186
7187         * windows-nat.c (handle_exception): Update fall-through comment.
7188
7189 2018-05-29  Tom Tromey  <tom@tromey.com>
7190
7191         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7192         (struct program_space) <added_solibs>: Now a std::vector.
7193         * breakpoint.c (print_solib_event): Update.
7194         (check_status_catch_solib): Update.
7195         * progspace.c (clear_program_space_solib_cache): Update.
7196         * solib.c (update_solib_list): Update.
7197
7198 2018-05-29  Tom Tromey  <tom@tromey.com>
7199
7200         * python/py-type.c (typy_richcompare): Update.
7201         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7202         * gdbtypes.h (types_deeply_equal): Return bool.
7203         (types_equal): Likewise.
7204         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7205         declare VEC.
7206         (check_types_equal): Change worklist to std::vector.  Return
7207         bool.
7208         (struct type_equality_entry): Add constructor.
7209         (compare_maybe_null_strings): Return bool.
7210         (check_types_worklist): Return bool.  Change worklist to
7211         std::vector.
7212         (types_deeply_equal): Use std::vector.
7213         (types_equal): Return bool.
7214         (compare_maybe_null_strings): Simplify.
7215
7216 2018-05-29  Tom Tromey  <tom@tromey.com>
7217
7218         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7219
7220 2018-05-29  Tom Tromey  <tom@tromey.com>
7221
7222         * objc-lang.h: Don't include cp-support.h.
7223         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7224         declare VEC.
7225
7226 2018-05-27  Tom Tromey  <tom@tromey.com>
7227
7228         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7229
7230 2018-05-25  Tom Tromey  <tom@tromey.com>
7231
7232         * value.c (value::location): Initialize.
7233
7234 2018-05-25  Tom Tromey  <tom@tromey.com>
7235
7236         * dbxread.c (init_bincl_list): Remove.
7237         (bincl_list): Now a std::vector.
7238         (bincls_allocated, next_bincl): Remove.
7239         (free_bincl_list, do_free_bincl_list_cleanup)
7240         (make_cleanup_free_bincl_list): Remove.
7241         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7242         unique_xmalloc_ptr.
7243         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7244         (struct header_file_location): Add constructor.
7245         (add_bincl_to_list): Remove.
7246
7247 2018-05-25  Tom Tromey  <tom@tromey.com>
7248
7249         * tui/tui.c (tui_enable): Update.
7250         * mi/mi-interp.c (mi_interp::init): Update.
7251         * interps.h (class interp) <name>: New method.
7252         <m_name>: Rename from name.
7253         (~scoped_restore_interp): Update.
7254         * interps.c (interp::interp): Update.
7255         (interp_add, interp_set, interp_lookup_existing)
7256         (current_interp_named_p): Update.
7257
7258 2018-05-25  Tom Tromey  <tom@tromey.com>
7259
7260         * interps.c (interp_name): Remove.
7261         * mi/mi-interp.c (mi_interp::init): Update.
7262         * interps.h (interp_name): Remove.
7263         (~scoped_restore_interp): Update.
7264         * tui/tui.c (tui_enable): Update.
7265
7266 2018-05-25  Tom Tromey  <tom@tromey.com>
7267
7268         * utils.c (fputs_maybe_filtered): Update.
7269         * linespec.c (decode_line_full): Update.
7270         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7271         (mi_print_breakpoint_for_event, mi_solib_loaded)
7272         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7273         (mi_user_selected_context_changed): Update.
7274         * mi/mi-main.c (mi_execute_command): Update.
7275         * cli/cli-script.c (execute_control_command): Update.
7276         * python/python.c (execute_gdb_command): Update.
7277         * solib.c (info_sharedlibrary_command): Update.
7278         * interps.c (interp_ui_out): Remove.
7279         * interps.h (interp_ui_out): Remove.
7280
7281 2018-05-25  Tom Tromey  <tom@tromey.com>
7282
7283         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7284         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7285         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7286
7287 2018-05-25  Tom Tromey  <tom@tromey.com>
7288
7289         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7290         * interps.c (interp_exec): Use scoped_restore.
7291
7292 2018-05-25  Tom Tromey  <tom@tromey.com>
7293
7294         * remote.c (remote_target::remote_file_get): Use
7295         gdb::byte_vector.
7296         (remote_target::remote_file_put): Likewise.
7297
7298 2018-05-25  Tom Tromey  <tom@tromey.com>
7299
7300         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7301         a std::string.
7302         (get_pe_section_index, add_pe_exported_sym): Update.
7303         (read_pe_exported_syms): Use gdb::def_vector.
7304
7305 2018-05-25  Tom Tromey  <tom@tromey.com>
7306
7307         * frame.c (remove_prev_frame): Remove.
7308         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7309
7310 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7311
7312         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7313         Remove prototypes.
7314         * mips-linux-nat.c (supply_fpregset): Always call
7315         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7316         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7317         `mips_fill_fpregset'.
7318         * mips-linux-tdep.c (mips_supply_fpregset)
7319         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7320         (mips_fill_fpregset_wrapper): Remove functions.
7321         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7322         (mips_linux_fpregset): Remove variable.
7323         (mips_linux_iterate_over_regset_sections): Use
7324         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7325         (mips_linux_o32_sigframe_init): Remove comment.
7326
7327 2018-05-25  Pedro Alves  <palves@redhat.com>
7328
7329         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7330         (struct readahead_cache, struct packet_reg, struct
7331         remote_arch_state, class remote_state): Move higher up in the
7332         file.
7333         (remote_target::m_remote_state): Now an object instead of a pointer.
7334         (remote_target::get_remote_state): Adjust.
7335
7336 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7337
7338         * stack.c (select_and_print_frame): Delete.
7339         (struct function_bounds): Move struct within function.
7340         (func_command): Most content moved into new function
7341         find_frame_for_function, use new function, print result, add
7342         function comment.
7343         (find_frame_for_function): New function, now returns a result.
7344
7345 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7346
7347         * stack.c (iterate_over_block_arg_vars): Fix comment.
7348         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7349
7350 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7351
7352         PR gdb/23203
7353         * frame.c
7354         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7355         Define.
7356         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7357         Define.
7358         * frame.h (class scoped_restore_selected_frame): New class.
7359         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7360         of any exception, use scoped_restore_selected_frame to restore the
7361         frame instead.
7362
7363 2018-05-24  Pedro Alves  <palves@redhat.com>
7364
7365         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7366         override.
7367
7368 2018-05-23  Tom Tromey  <tom@tromey.com>
7369
7370         * complaints.c (struct complaints): Remove.
7371         (symfile_complaint_book): Remove.
7372         (series): New global.
7373         (complaint_internal): Update.
7374         (clear_complaints): Update.
7375
7376 2018-05-23  Tom Tromey  <tom@tromey.com>
7377
7378         * complaints.c (counters): New global.
7379         (struct complain): Remove.
7380         (struct complaints) <root>: Remove.
7381         (complaint_sentinel): Remove.
7382         (symfile_complaint_book): Update.
7383         (find_complaint) Remove.
7384         (complaint_internal, clear_complaints): Update.
7385
7386 2018-05-23  Tom Tromey  <tom@tromey.com>
7387
7388         * complaints.c (struct complain) <file, line>: Remove.
7389         (find_complaint): Remove file, line parameters.
7390         (complaint_internal): Update.
7391
7392 2018-05-23  Tom Tromey  <tom@tromey.com>
7393
7394         * complaints.c (vcomplaint): Remove.
7395         (complaint_internal) Merge in contents of vcomplaint.
7396
7397 2018-05-23  Tom Tromey  <tom@tromey.com>
7398
7399         * complaints.c (struct complaints) <explanation>: Remove.
7400         (symfile_explanations): Remove.
7401         (symfile_complaint_book): Update.
7402         (vcomplaint): Update.
7403         (struct explanation): Remove.
7404
7405 2018-05-23  Tom Tromey  <tom@tromey.com>
7406
7407         * complaints.c (symfile_complaints): Remove.
7408         (complaint_internal): Remove "complaints" parameter.
7409         (clear_complaints, vcomplaint): Remove "c" parameter.
7410         (get_complaints): Remove.
7411         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7412         (dwarf2_debug_line_missing_file_complaint)
7413         (dwarf2_debug_line_missing_end_sequence_complaint)
7414         (dwarf2_complex_location_expr_complaint)
7415         (dwarf2_const_value_length_mismatch_complaint)
7416         (dwarf2_section_buffer_overflow_complaint)
7417         (dwarf2_macro_malformed_definition_complaint)
7418         (dwarf2_invalid_attrib_class_complaint)
7419         (create_addrmap_from_index, dw2_symtab_iter_next)
7420         (dw2_expand_marked_cus)
7421         (dw2_debug_names_iterator::find_vec_in_debug_names)
7422         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7423         (create_debug_type_hash_table, init_cutu_and_read_dies)
7424         (partial_die_parent_scope, add_partial_enumeration)
7425         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7426         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7427         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7428         (create_cus_hash_table, create_dwp_hash_table)
7429         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7430         (dwarf2_rnglists_process, dwarf2_ranges_process)
7431         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7432         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7433         (handle_struct_member_die, process_structure_scope)
7434         (read_array_type, read_common_block, read_module_type)
7435         (read_tag_pointer_type, read_typedef, read_base_type)
7436         (read_subrange_type, load_partial_dies, partial_die_info::read)
7437         (partial_die_info::read, partial_die_info::read)
7438         (partial_die_info::read, read_checked_initial_length_and_offset)
7439         (dwarf2_string_attr, read_formatted_entries)
7440         (dwarf_decode_line_header)
7441         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7442         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7443         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7444         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7445         (get_signatured_type, get_DW_AT_signature_type)
7446         (decode_locdesc, file_file_name, consume_improper_spaces)
7447         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7448         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7449         (dwarf2_symbol_mark_computed, set_die_type)
7450         (read_attribute_value): Update.
7451         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7452         Update.
7453         * dbxread.c (unknown_symtype_complaint)
7454         (lbrac_mismatch_complaint, repeated_header_complaint)
7455         (set_namestring, function_outside_compilation_unit_complaint)
7456         (read_dbx_symtab, process_one_symbol): Update.
7457         * gdbtypes.c (stub_noname_complaint): Update.
7458         * windows-nat.c (handle_unload_dll): Update.
7459         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7460         (decode_base_type): Update.
7461         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7462         (eb_complaint, record_include_begin, record_include_end)
7463         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7464         (process_xcoff_symbol, read_symbol)
7465         (function_outside_compilation_unit_complaint)
7466         (scan_xcoff_symtab): Update.
7467         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7468         * buildsym.c (finish_block_internal, make_blockvector)
7469         (end_symtab_get_static_block, augment_type_symtab): Update.
7470         * dtrace-probe.c (dtrace_process_dof)
7471         (dtrace_static_probe_ops::get_probes): Update.
7472         * complaints.h (struct complaint): Don't declare.
7473         (symfile_complaints): Remove.
7474         (complaint_internal): Remove "complaints" parameter.
7475         (complaint): Likewise.
7476         (clear_complaints): Likewise.
7477         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7478         (reread_symbols): Update.
7479         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7480         (dwarf2_frame_cache, decode_frame_entry): Update.
7481         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7482         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7483         (info_selectors_command): Update.
7484         * macrotab.c (macro_include, check_for_redefinition)
7485         (macro_undef): Update.
7486         * objfiles.c (filter_overlapping_sections): Update.
7487         * stabsread.c (invalid_cpp_abbrev_complaint)
7488         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7489         (define_symbol, error_type, read_type, rs6000_builtin_type)
7490         (stabs_method_name_from_physname, read_member_functions)
7491         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7492         (attach_fields_to_type, complain_about_struct_wipeout)
7493         (read_range_type, read_args, common_block_start)
7494         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7495         Update.
7496         * mdebugread.c (index_complaint, unknown_ext_complaint)
7497         (basic_type_complaint, bad_tag_guess_complaint)
7498         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7499         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7500         (parse_procedure, parse_lines)
7501         (function_outside_compilation_unit_complaint)
7502         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7503         (bad_tag_guess_complaint, reg_value_complaint): Update.
7504         * cp-support.c (demangled_name_complaint): Update.
7505         * macroscope.c (sal_macro_scope): Update.
7506         * dwarf-index-write.c (class debug_names): Update.
7507
7508 2018-05-23  Tom Tromey  <tom@tromey.com>
7509
7510         * complaints.c (clear_complaints): Remove "noisy" parameter.
7511         * complaints.h (clear_complaints): Update.
7512         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7513         (reread_symbols): Update.
7514
7515 2018-05-23  Tom Tromey  <tom@tromey.com>
7516
7517         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7518         SUBSEQUENT_MESSAGE.
7519         (vcomplaint, clear_complaints): Update.
7520         (symfile_explanations): Remove some messages.
7521
7522 2018-05-23  Tom Tromey  <tom@tromey.com>
7523
7524         * complaints.c (internal_complaint): Remove.
7525         * complaints.h (internal_complaint): Remove.
7526
7527 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7528
7529         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7530
7531 2018-05-22  Pedro Alves  <palves@redhat.com>
7532
7533         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7534         (remote_fileio_badfd, remote_fileio_return_errno)
7535         (remote_fileio_return_success, remote_fileio_func_open)
7536         (remote_fileio_func_open, remote_fileio_func_close)
7537         (remote_fileio_func_read, remote_fileio_func_write)
7538         (remote_fileio_func_lseek, remote_fileio_func_rename)
7539         (remote_fileio_func_unlink, remote_fileio_func_stat)
7540         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7541         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7542         remote_target parameter.
7543         (remote_fio_func_map) <func>: Add remote_target parameter.
7544         (do_remote_fileio_request, remote_fileio_request):
7545         * remote-fileio.h (remote_fileio_request):
7546         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7547         remote_target parameter.
7548         (remote_notif_process, handle_notification): Adjust to pass down
7549         the remote.
7550         (remote_notif_state_allocate): Add remote_target parameter.  Save
7551         it.
7552         * remote-notif.h (struct remote_target): Forward declare.
7553         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7554         remote_target parameter.
7555         (struct remote_notif_state) <remote>: New field.
7556         (remote_notif_ack, remote_notif_parse): Add remote_target
7557         parameter.
7558         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7559         remote_target parameter.
7560         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7561         (threads_listing_context, rmt_thread_action, protocol_feature)
7562         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7563         (packet_result, struct threads_listing_context, remote_state):
7564         Move definitions and declarations higher up.
7565         (remote_target) <~remote_target>: Declare.
7566         (remote_download_command_source, remote_file_put, remote_file_get)
7567         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7568         (remote_hostio_pread_vFile, remote_hostio_send_command)
7569         (remote_hostio_set_filesystem, remote_hostio_open)
7570         (remote_hostio_close, remote_hostio_unlink, remote_state)
7571         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7572         (get_memory_write_packet_size, get_memory_read_packet_size)
7573         (append_pending_thread_resumptions, remote_detach_1)
7574         (append_resumption, remote_resume_with_vcont)
7575         (add_current_inferior_and_thread, wait_ns, wait_as)
7576         (process_stop_reply, remote_notice_new_inferior)
7577         (process_initial_stop_replies, remote_add_thread)
7578         (btrace_sync_conf, remote_btrace_maybe_reopen)
7579         (remove_new_fork_children, kill_new_fork_children)
7580         (discard_pending_stop_replies, stop_reply_queue_length)
7581         (check_pending_events_prevent_wildcard_vcont)
7582         (discard_pending_stop_replies_in_queue, stop_reply)
7583         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
7584         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
7585         (remote_interrupt_as, remote_interrupt_ns)
7586         (remote_get_noisy_reply, remote_query_attached)
7587         (remote_add_inferior, remote_current_thread, get_current_thread)
7588         (set_thread, set_general_thread, set_continue_thread)
7589         (set_general_process, write_ptid)
7590         (remote_unpack_thread_info_response, remote_get_threadinfo)
7591         (parse_threadlist_response, remote_get_threadlist)
7592         (remote_threadlist_iterator, remote_get_threads_with_ql)
7593         (remote_get_threads_with_qxfer)
7594         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
7595         (get_offsets, remote_check_symbols, remote_supported_packet)
7596         (remote_query_supported, remote_packet_size)
7597         (remote_serial_quit_handler, remote_detach_pid)
7598         (remote_vcont_probe, remote_resume_with_hc)
7599         (send_interrupt_sequence, interrupt_query)
7600         (remote_notif_get_pending_events, fetch_register_using_p)
7601         (send_g_packet, process_g_packet, fetch_registers_using_g)
7602         (store_register_using_P, store_registers_using_G)
7603         (set_remote_traceframe, check_binary_download)
7604         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
7605         (remote_xfer_live_readonly_partial, remote_read_bytes)
7606         (remote_send_printf, remote_flash_write, readchar)
7607         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
7608         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
7609         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
7610         (extended_remote_disable_randomization, extended_remote_run)
7611         (send_environment_packet, extended_remote_environment_support)
7612         (extended_remote_set_inferior_cwd, remote_write_qxfer)
7613         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
7614         (packet_command): Now methods of ...
7615         (remote_target): ... this class.
7616         (m_remote_state) <remote_target>: New field.
7617         (struct remote_state) <stop_reply_queue,
7618         remote_async_inferior_event_token, wait_forever_enabled_p>: New
7619         fields.
7620         (remote_state::remote_state): Allocate stop_reply_queue.
7621         (remote_state): Delete global.
7622         (get_remote_state_raw): Delete.
7623         (remote_target::get_remote_state): Allocate m_remote_state on
7624         demand.
7625         (get_current_remote_target): New.
7626         (remote_ops, extended_remote_ops): Delete.
7627         (wait_forever_enabled_p, remote_async_inferior_event_token):
7628         Delete, moved to struct remote_state.
7629         (remote_target::close): Delete self.  Destruction bits split to
7630         ...
7631         (remote_target::~remote_target): ... this.
7632         (show_memory_packet_size): Adjust to use
7633         get_current_remote_target.
7634         (struct protocol_feature) <func>: Add remote_target parameter.
7635         All callers adjusted.
7636         (curr_quit_handler_target): New.
7637         (remote_serial_quit_handler): Reimplement.
7638         (remote_target::open_1): Adjust to use get_current_remote_target.
7639         Heap-allocate remote_target/extended_remote_target instances.
7640         (vcont_builder::vcont_builder): Add remote_target parameter, and
7641         save it in m_remote.  All callers adjusted.
7642         (vcont_builder::m_remote): New field.
7643         (vcont_builder::restart, vcont_builder::flush)
7644         (vcont_builder::push_action): Use it.
7645         (remote_target::commit_resume): Use it.
7646         (struct queue_iter_param) <remote>: New field.
7647         (remote_target::remove_new_fork_children): Fill in 'remote' field.
7648         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
7649         (check_pending_event_prevents_wildcard_vcont_callback)
7650         (remote_target::check_pending_events_prevent_wildcard_vcont)
7651         (remote_target::discard_pending_stop_replies)
7652         (remote_target::discard_pending_stop_replies_in_queue)
7653         (remote_target::remote_notif_remove_queued_reply): Fill in
7654         'remote' field.
7655         (remote_notif_get_pending_events): New.
7656         (remote_target::readchar, remote_target::remote_serial_write):
7657         Save/restore curr_quit_handler_target.
7658         (putpkt): New.
7659         (kill_new_fork_children): Fill in 'remote' field.
7660         (packet_command): Use get_current_remote_target, defer to
7661         remote_target method of same name.
7662         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
7663         parameter, and save it in m_remote.  All callers adjusted.
7664         (scoped_remote_fd::release): Use m_remote.
7665         (scoped_remote_fd::m_remote): New field.
7666         (remote_file_put, remote_file_get, remote_file_delete): Use
7667         get_current_remote_target, defer to remote_target method of same
7668         name.
7669         (remote_btrace_reset): Add remote_state paremeter.  Update all
7670         callers.
7671         (remote_async_inferior_event_handler). Pass down 'data'.
7672         (remote_new_objfile): Use get_current_remote_target.
7673         (remote_target::vcont_r_supported): New.
7674         (set_range_stepping): Use get_current_remote_target and
7675         remote_target::vcont_r_supported.
7676         (_initialize_remote): Don't allocate 'remote_state' and
7677         'stop_reply_queue' globals.
7678         * remote.h (struct remote_target): Forward declare.
7679         (getpkt, putpkt, remote_notif_get_pending_events): Add
7680         'remote_target' parameter.
7681
7682 2018-05-22  Pedro Alves  <palves@redhat.com>
7683
7684         * remote.c (vcont_builder): Now a class.  Make all data members
7685         private.
7686         (vcont_builder) <vcont_builder, restart, flush, push_action>:
7687         Declare methods.
7688         (vcont_builder_restart): Rename to ...
7689         (vcont_builder::restart): ... this.
7690         (vcont_builder_flush): Rename to ...
7691         (vcont_builder::flush): ... this.
7692         (vcont_builder_push_action): Rename to ...
7693         (vcont_builder::push_action): ... this.
7694         (remote_target::commit_resume): Adjust.
7695
7696 2018-05-22  Pedro Alves  <palves@redhat.com>
7697
7698         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
7699         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
7700         (get_fixed_memory_packet_size): New.
7701         (get_memory_packet_size): Use it.
7702         (set_memory_packet_size): Don't override the config size with
7703         DEFAULT_MAX_MEMORY_PACKET_SIZE.
7704         (show_memory_packet_size): Use get_fixed_memory_packet_size.
7705         Don't refer to get_memory_packet_size if not connected to a remote
7706         target.  Show "(default)" if configured size is 0.
7707
7708 2018-05-22  Pedro Alves  <palves@redhat.com>
7709
7710         * remote.c (remote_target::mourn_inferior): Move
7711         discard_pending_stop_replies call here from ...
7712         (_initialize_remote): ... here.
7713
7714 2018-05-22  Pedro Alves  <palves@redhat.com>
7715
7716         * remote.c (compare_section_command): Remove set_general_process
7717         call.
7718
7719 2018-05-22  Pedro Alves  <palves@redhat.com>
7720
7721         * remote.c (struct packet_reg, struct remote_arch_state):
7722         Move higher up in the file.
7723         (remote_state) <m_arch_states>: Store remote_arch_state values
7724         instead of remote_arch_state pointers.
7725         (remote_state::get_remote_arch_state): Adjust.
7726
7727 2018-05-22  Pedro Alves  <palves@redhat.com>
7728
7729         * remote.c: Include <unordered_map>.
7730         (remote_state): Now a class.
7731         (remote_state) <get_remote_arch_state>: Declare method.
7732         <get_remote_arch_state>: New field.
7733         (remote_arch_state) <remote_arch_state>: Declare ctor.
7734         <regs>: Now a unique_ptr.
7735         (remote_gdbarch_data_handle): Delete.
7736         (get_remote_arch_state): Delete.
7737         (remote_state::get_remote_arch_state): New.
7738         (get_remote_state): Adjust to call remote_state's
7739         get_remote_arch_state method.
7740         (init_remote_state): Delete, bits factored out to ...
7741         (remote_arch_state::remote_arch_state): ... this new method.
7742         (get_remote_packet_size, get_memory_packet_size)
7743         (process_g_packet, remote_target::fetch_registers)
7744         (remote_target::prepare_to_store, store_registers_using_G)
7745         (remote_target::store_registers, remote_target::get_trace_status):
7746         Adjust to call remote_state's method.
7747         (_initialize_remote): Remove reference to
7748         remote_gdbarch_data_handle.
7749
7750 2018-05-22  Pedro Alves  <palves@redhat.com>
7751
7752         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
7753         pread>: New method declarations.
7754         (remote_target::open_1): Adjust.
7755         (readahead_cache_invalidate): Rename to ...
7756         (readahead_cache::invalidate): ... this, and adjust to be a class
7757         method.
7758         (readahead_cache_invalidate_fd): Rename to ...
7759         (readahead_cache::invalidate_fd): ... this, and adjust to be a
7760         class method.
7761         (remote_hostio_pwrite): Adjust.
7762         (remote_hostio_pread_from_cache): Rename to ...
7763         (readahead_cache::pread): ... this, and adjust to be a class
7764         method.
7765         (remote_hostio_close): Adjust.
7766
7767 2018-05-22  Pedro Alves  <palves@redhat.com>
7768
7769         * remote.c (remote_hostio_close_cleanup): Delete.
7770         (class scoped_remote_fd): New.
7771         (remote_file_put, remote_file_get): Use it.
7772
7773 2018-05-22  Pedro Alves  <palves@redhat.com>
7774
7775         (struct vCont_action_support): Use bool and initialize all fields.
7776         (struct readahead_cache): Initialize all fields.
7777         (remote_state): Use bool and initialize all fields.
7778         (remote_state::remote_state, remote_state::~remote_state): New.
7779         (new_remote_state): Delete.
7780         (_initialize_remote): Use new to allocate remote_state.
7781
7782 2018-05-22  Pedro Alves  <palves@redhat.com>
7783             張俊芝  <zjz@zjz.name>
7784
7785         PR gdb/22973
7786         * c-exp.y: Include "c-support.h".
7787         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
7788         of tolower.  Use c_ident_is_alpha to scan names.
7789         * c-lang.c: Include "c-support.h".
7790         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
7791         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
7792         * c-support.h: New file, with bits factored out from ...
7793         * cp-name-parser.y: ... this file.
7794         Include "c-support.h".
7795         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
7796         c-support.h and renamed.
7797         (symbol_end, yylex): Adjust.
7798
7799 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7800
7801         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
7802         parameter type to CORE_ADDR.
7803         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
7804         parameter type in declaration to CORE_ADDR.
7805         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
7806         target_auxv_search to get AT_HWCAP and use the result to get the
7807         target description.
7808         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
7809         to CORE_ADDR. Remove the cast of the return value to unsigned
7810         long. Fix error predicate of target_auxv_search.
7811         (ppc_linux_nat_target::read_description): Change the type of the
7812         hwcap variable to CORE_ADDR.
7813
7814 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7815
7816         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
7817         if the size of fpscr is larger than 32 bits.
7818
7819 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7820
7821         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
7822         (ppc32_linux_vsxregmap): New global.
7823         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
7824         regcache_supply_regset, and regcache_collect_regset.
7825         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
7826         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
7827         (fetch_vsx_register, store_vsx_register): Remove.
7828         (fetch_vsx_registers): Add regno parameter. Get regset using
7829         ppc_linux_vsxregset. Use regset to supply registers.
7830         (store_vsx_registers): Add regno parameter. Get regset using
7831         ppc_linux_vsxregset. Use regset to collect registers.
7832         (fetch_register): Call fetch_vsx_registers instead of
7833         fetch_vsx_register.
7834         (store_register): Call store_vsx_registers instead of
7835         store_vsx_register.
7836         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
7837         new regno parameter.
7838         (store_ppc_registers): Call store_vsx_registers with -1 for the
7839         new regno parameter.
7840         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
7841         (ppc_collect_vsxregset): Remove.
7842
7843 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7844
7845         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
7846         offset fields.
7847         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
7848         for vector register offset fields.
7849         (ppc64_fbsd_reg_offsets): Likewise.
7850         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7851         to vector register offset fields.
7852         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7853         to vector register offset fields.
7854         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
7855         vector register offset fields.
7856         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
7857         initializers for vector register offset fields.
7858         (rs6000_aix64_reg_offsets): Likewise.
7859         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
7860         (ppc_supply_vrregset): Remove.
7861         (ppc_collect_vrregset): Remove.
7862         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
7863         (ppc_linux_vrregset) : New function.
7864         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
7865         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
7866         (ppc32_linux_vrregset): Remove.
7867         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
7868         and use result instead of ppc32_linux_vrregset.
7869         (ppc32_linux_reg_offsets): Remove initializers for vector register
7870         offset fields.
7871         (ppc64_linux_reg_offsets): Likewise.
7872         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
7873         * ppc-linux-nat.c: Include regset.h.
7874         (gdb_vrregset_t): Adjust comment to account for little-endian
7875         mode.
7876         (supply_vrregset, fill_vrregset): Remove.
7877         (fetch_altivec_register, store_altivec_register): Remove.
7878         (fetch_altivec_registers): Add regno parameter. Get regset using
7879         ppc_linux_vrregset. Use regset to supply registers.
7880         (store_altivec_registers): Add regno parameter. Get regset using
7881         ppc_linux_vrregset. Use regset to collect registers.
7882         (fetch_register): Call fetch_altivec_registers instead of
7883         fetch_altivec_register.
7884         (store_register): Call store_altivec_registers instead of
7885         store_altivec_register.
7886         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
7887         the new regno parameter.
7888         (store_ppc_registers): Call store_altivec_registers with -1 for
7889         the new regno parameter.
7890
7891 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7892
7893         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
7894         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
7895         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
7896         (gdb_vrregset_t): Change array type size to
7897         PPC_LINUX_SIZEOF_VRREGSET.
7898         (gdb_vsxregset_t): Change array type size to
7899         PPC_LINUX_SIZEOF_VSXREGSET.
7900         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
7901         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
7902         PPC_LINUX_SIZEOF_VSXREGSET.
7903
7904 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7905
7906         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
7907         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
7908         nat/ppc-linux.c.
7909         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
7910         ppc_linux_target_wordsize with tid.
7911         (ppc_linux_nat_target::read_description): Call ppc_linux_target
7912         wordsize with tid.
7913         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
7914         (ppc64_64bit_inferior_p): Add static and inline specifiers.
7915         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
7916         tid parameter. Remove static specifier.
7917         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
7918         (ppc_linux_target_wordsize): New declaration.
7919
7920 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7921
7922         * arch/ppc-linux-common.c: New file.
7923         * arch/ppc-linux-common.h: New file.
7924         * arch/ppc-linux-tdesc.h: New file.
7925         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
7926         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
7927         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
7928         arch/ppc-linux-tdesc.h.
7929         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
7930         arch/ppc-linux-tdesc.h.
7931         (ppc_linux_nat_target::read_description): Remove target
7932         description matching code. Fill a ppc_linux_features struct and
7933         call ppc_linux_match_description with it. Move comment about ISA
7934         2.05 to ppc-linux-common.c.
7935         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
7936         arch/ppc-linux-tdesc.h.
7937         (ppc_linux_core_read_description): Remove target description
7938         matching code. Fill a ppc_linux_features struct and call
7939         ppc_linux_match_description with it.
7940         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
7941         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
7942         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
7943         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
7944         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
7945         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
7946         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
7947         (tdesc_powerpc_e500l): Remove.
7948
7949 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
7950
7951         * ada-lang.c (catch_assert_command): Pass empty string instead
7952         of NULL for excep_string argument.
7953
7954 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7955
7956         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
7957         the width of the requested register exceeds the width of the
7958         `ptrace' data type.
7959
7960 2018-05-21  Tom Tromey  <tom@tromey.com>
7961
7962         * printcmd.c (output_command): Remove.
7963         (output_command_const): Rename to output_command.
7964         * valprint.h (output_command): Rename from output_command_const.
7965         * tracepoint.c (trace_dump_actions): Call output_command.
7966
7967 2018-05-21  Tom Tromey  <tom@tromey.com>
7968
7969         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
7970         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
7971         * ada-lang.h (create_ada_exception_catchpoint): Update.
7972         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
7973         std::string.
7974         (create_excep_cond_exprs, ~ada_catchpoint)
7975         (should_stop_exception, print_one_exception)
7976         (print_mention_exception, print_recreate_exception): Update.
7977         (ada_get_next_arg): Remove.
7978         (catch_ada_exception_command_split): Use std::string.  Change type
7979         of "excep_string", "cond_string".
7980         (catch_ada_exception_command): Update.
7981         (create_ada_exception_catchpoint): Change type of excep_string.
7982         (ada_exception_sal): Remove excep_string parameter.
7983         (~ada_catchpoint): Remove.
7984
7985 2018-05-21  Tom Tromey  <tom@tromey.com>
7986
7987         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
7988         cleanup.
7989
7990 2018-05-21  Tom Tromey  <tom@tromey.com>
7991
7992         * ada-lang.c (ada_exception_message_1, ada_exception_message):
7993         Return unique_xmalloc_ptr.
7994         (print_it_exception): Update.
7995
7996 2018-05-21  Tom Tromey  <tom@tromey.com>
7997
7998         * tracepoint.c (trace_dump_actions): Use std::string.
7999
8000 2018-05-21  Tom Tromey  <tom@tromey.com>
8001
8002         * symfile.c (reread_symbols): Use std::string for original_name.
8003
8004 2018-05-21  Tom Tromey  <tom@tromey.com>
8005
8006         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8007         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8008         constructor.
8009
8010 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8011
8012         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8013         instance to...
8014         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8015         * objfiles.c (get_objfile_bfd_data): Allocate
8016         objfile_per_bfd_storage with obstack_new when allocating on
8017         obstack.
8018
8019 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8020
8021         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8022         OBSTACK_ZALLOC.
8023         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8024         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8025         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8026         (add_pending): Likewise.
8027         (parse_symbol): Likewise.
8028         (parse_partial_symbols): Likewise.
8029         (psymtab_to_symtab_1): Likewise.
8030         (new_psymtab): Likewise.
8031         (elfmdebug_build_psymtabs): Likewise.
8032         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8033         * objfiles.c (get_objfile_bfd_data): Likewise.
8034         (objfile_register_static_link): Likewise.
8035         * psymtab.c (allocate_psymtab): Likewise.
8036         * stabsread.c (read_member_functions): Likewise.
8037         * xcoffread.c (xcoff_end_psymtab): Likewise.
8038
8039 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8040
8041         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8042         compiler supports std::is_trivially_constructible.
8043         * common/poison.h: Include obstack.h.
8044         (IsMallocable): Define to is_trivially_constructible if the
8045         compiler supports it, define to true_type otherwise.
8046         (xobnew): New.
8047         (XOBNEW): Redefine.
8048         (xobnewvec): New.
8049         (XOBNEWVEC): Redefine.
8050         * gdb_obstack.h (obstack_zalloc): New.
8051         (OBSTACK_ZALLOC): Redefine.
8052         (obstack_calloc): New.
8053         (OBSTACK_CALLOC): Redefine.
8054         (obstack_new): New.
8055         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8056         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8057         gdbarch.c.
8058         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8059         obstack_calloc/obstack_zalloc.
8060         (gdbarch_obstack_zalloc): Remove.
8061         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8062
8063 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8064
8065         * stack.c (backtrace_command_1): Remove useless variable int i.
8066
8067 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8068
8069         * stack.c (print_frame_info): Fix comment.
8070
8071 2018-05-18  Tom Tromey  <tom@tromey.com>
8072
8073         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8074         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8075         (~dwarf2_per_objfile): Update
8076         (dwarf2_get_dwz_file): Use new.
8077         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8078         unique_ptr.
8079
8080 2018-05-18  Tom Tromey  <tom@tromey.com>
8081
8082         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8083         unique_ptr.
8084         * dwarf2read.c (struct dwp_file): Add constructor and
8085         initializers.
8086         (open_and_init_dwp_file): Return a unique_ptr.
8087         (dwarf2_per_objfile, create_dwp_hash_table)
8088         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8089         (lookup_dwo_unit_in_dwp): Update.
8090         (open_and_init_dwp_file, get_dwp_file): Update.
8091
8092 2018-05-18  Tom Tromey  <tom@tromey.com>
8093
8094         * dwarf2read.c (dwarf2_per_objfile): Update.
8095         (struct mapped_index): Add initializers.
8096         (dwarf2_read_index): Use new.
8097         (dw2_symtab_iter_init): Update.
8098         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8099         unique_ptr.
8100
8101 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8102
8103         * dwarf2read.c (mapped_index) <total_size>: Remove.
8104
8105 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8106
8107         * unittests/format_pieces-selftests.c (test_format_specifier):
8108         Add ARI comments.
8109
8110 2018-05-18  Tom Tromey  <tom@tromey.com>
8111
8112         * c-typeprint.c (maybe_print_hole): New function.
8113         (c_print_type_struct_field_offset): Update.
8114         (c_type_print_base_struct_union): Call maybe_print_hole.
8115
8116 2018-05-17  Keith Seitz  <keiths@redhat.com>
8117
8118         * breakpoint.c (build_bpstat_chain): New function, moved from
8119         bpstat_stop_status.
8120         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8121         If no stop chain is passed, call build_bpstat_chain to build it.
8122         * breakpoint.h (build_bpstat_chain): Declare.
8123         (bpstat_stop_status): Move documentation here from breakpoint.c.
8124         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8125         build the stop chain and pass it to skip_inline_frames.
8126         Pass this stop chain to bpstat_stop_status.
8127         * inline-frame.c: Include breakpoint.h.
8128         (stopped_by_user_bp_inline_frame): New function.
8129         (skip_inline_frames): Add parameter `stop_chain'.
8130         Move documention to inline-frame.h.
8131         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8132         whether the frame should be elided.
8133         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8134         Add moved documentation and update for new parameter.
8135
8136 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8137
8138         PR cli/14975
8139         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8140         unittests/format_pieces-selftests.c.
8141         * common/format.h (format_piece) <operator==>: New.
8142         (format_pieces) <operator[]>: Remove.
8143         * common/format.c (format_pieces::format_pieces): Handle \e.
8144         * unittests/format_pieces-selftests.c: New.
8145
8146 2018-05-17  Tom Tromey  <tom@tromey.com>
8147
8148         PR symtab/23010:
8149         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8150         (dw2_instantiate_symtab): Add skip_partial parameter.
8151         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8152         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8153         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8154         (dw2_expand_symtabs_matching_one)
8155         (dw2_find_pc_sect_compunit_symtab)
8156         (dw2_debug_names_lookup_symbol)
8157         (dw2_debug_names_expand_symtabs_for_function): Update.
8158         (init_cutu_and_read_dies): Add skip_partial parameter.
8159         (process_psymtab_comp_unit, build_type_psymtabs_1)
8160         (process_skeletonless_type_unit, load_partial_comp_unit)
8161         (psymtab_to_symtab_1): Update.
8162         (load_full_comp_unit): Add skip_partial parameter.
8163         (process_imported_unit_die, dwarf2_read_addr_index)
8164         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8165         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8166         (read_signatured_type): Update.
8167
8168 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8169
8170         * value.c (release_value): Remove unused variable.
8171         (record_latest_value): Likewise.
8172         (access_value_history): Likewise.
8173         (preserve_values): Likewise.
8174
8175 2018-05-17  Tom Tromey  <tom@tromey.com>
8176
8177         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8178         Initialize.
8179
8180 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8181
8182         PR gdb/22286
8183         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8184         Also handle registers whose width is not a multiple of
8185         PTRACE_TYPE_RET.
8186         (linux_nat_trad_target::store_register): Likewise.
8187
8188 2018-05-16  Tom Tromey  <tom@tromey.com>
8189
8190         * gdbcore.h (core_bfd): Redefine.
8191         * corelow.c (core_target::close): Update.
8192         (core_target_open): Update.
8193         * progspace.h (struct program_space) <cbfd>: Now a
8194         gdb_bfd_ref_ptr.
8195
8196 2018-05-16  Tom Tromey  <tom@tromey.com>
8197
8198         PR cli/19551:
8199         * symfile-add-flags.h (enum symfile_add_flags)
8200         <SYMFILE_NOT_FILENAME>: New constant.
8201         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8202         objfile name from BFD.
8203         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8204         * minidebug.c (find_separate_debug_file_in_section): Put
8205         ".gnu_debugdata" into BFD's file name.
8206
8207 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8208
8209         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8210         Remove.
8211
8212 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8213
8214         PR binutils/21446
8215         * aarch64-tdep.c (aarch64_analyze_prologue,
8216         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8217         Indicate not interested in errors.
8218
8219 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8220
8221         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8222         Supply the MIPS_ZERO_REGNUM register.
8223
8224 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8225
8226         * mips-tdep.c (mask_address_var): Make variable static.
8227
8228 2018-05-14  Tom Tromey  <tom@tromey.com>
8229
8230         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8231
8232 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8233
8234         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8235         FXSAVE_ADDR for the mxcsr register.
8236
8237 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8238
8239         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8240
8241 2018-05-11  Pedro Alves  <palves@redhat.com>
8242
8243         * corelow.c (core_target) <core_target>: No longer inline.
8244         Initialize m_core_gdbarch, m_core_vec and build the section table
8245         here.
8246         <~core_target>: New.
8247         <core_gdbarch, get_core_register_section>: New methods.
8248         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8249         factored out from ...
8250         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8251         (core_ops): Delete.
8252         (sniff_core_bfd): Add gdbarch parameter.
8253         (core_close): Delete, merged into ...
8254         (core_target::close): ... here.  Delete self.
8255         (core_close_cleanup): Delete.
8256         (core_target_open): Allocate a core_target on the heap.  Use a
8257         unique_ptr instead of a cleanup.  Bits moved into the core_target
8258         ctor.  Adjust to use core_target methods instead of globals.
8259         (get_core_register_section): Rename to ...
8260         (core_target::get_core_register_section): ... this and adjust.
8261         (struct get_core_registers_cb_data): New.
8262         (get_core_registers_cb): Use it.  Use bool.
8263         (core_target::fetch_registers, core_target::files_info)
8264         (core_target::xfer_partial, core_target::read_description)
8265         (core_target::pid_to, core_target::thread_name): Adjust to
8266         reference class fields instead of globals.
8267         * target.h (struct target_ops_deleter, target_ops_up): New.
8268
8269 2018-05-11  Pedro Alves  <palves@redhat.com>
8270
8271         * corefile.c (core_file_command): Move to corelow.c.
8272         * corelow.c (the_core_target): Delete.
8273         (core_file_command): Moved from corefile.c.  Check exec_bfd
8274         instead of the_core_target.  Use target_detach instead of calling
8275         into the_core_target directly.
8276         (maybe_say_no_core_file_now): New.
8277         (core_target::detach): Use it.
8278         (_initialize_corelow): Remove references to the_core_target.
8279         * gdbcore.h (the_core_target): Delete.
8280
8281 2018-05-11  Tom Tromey  <tromey@redhat.com>
8282             Pedro Alves  <palves@redhat.com>
8283
8284         * corefile.c (core_bfd): Remove.
8285         * gdbcore.h (core_bfd): Now a macro.
8286         * progspace.h (struct program_space) <cbfd>: New field.
8287
8288 2018-05-11  Tom Tromey  <tom@tromey.com>
8289
8290         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8291         gdb::def_vector.
8292
8293 2018-05-10  Tom Tromey  <tom@tromey.com>
8294
8295         * configure: Rebuild.
8296         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8297
8298 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8299
8300         PR server/23158:
8301         * regformats/regdat.sh: Adjust script, following the addition
8302         of the new expedite_regs parameter to init_target_desc.
8303
8304 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8305     
8306         PR gdb/23127
8307         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8308         set_gdbarch_significant_addr_bit.
8309         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8310         set_gdbarch_significant_addr_bit.
8311         * utils.c (address_significant): Update to sign extend addr.
8312
8313 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8314
8315         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8316         (xtensa_linux_init_abi): Limit tdep->num_regs by
8317         tdep->num_nopriv_regs.
8318         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8319         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8320         not initialized.
8321
8322 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8323
8324         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8325
8326 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8327
8328         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8329         (I387_MXCSR_INIT_VAL): New constant.
8330         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8331         buffer if it was supplied by the inferior.
8332         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8333         (i387_xsave_get_clear_bv): New function.
8334         (i387_supply_xsave): Only read x87 control registers from the
8335         xsave buffer if the feature is enabled, and the state will have
8336         been written, otherwise, provide a suitable default.
8337         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8338         including x87 control registers.  Update control registers if they
8339         have changed from the default value, and mark features as enabled
8340         as required.
8341         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8342
8343 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8344
8345         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8346
8347 2018-05-07  Tom Tromey  <tom@tromey.com>
8348
8349         * configure: Rebuild.
8350         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8351
8352 2018-05-07  Tom Tromey  <tom@tromey.com>
8353
8354         PR tdep/20362:
8355         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8356         bit.  Use correct value for VDIV.
8357
8358 2018-05-04  Tom Tromey  <tom@tromey.com>
8359
8360         * configure: Rebuild.
8361         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8362
8363 2018-05-04  Tom Tromey  <tom@tromey.com>
8364
8365         * linux-record.c (record_linux_system_call) <case
8366         RECORD_SYS_RECVFROM>: Add "break".
8367
8368 2018-05-04  Tom Tromey  <tom@tromey.com>
8369
8370         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8371         Add missing "break".
8372         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8373         Add missing "break".
8374
8375 2018-05-04  Tom Tromey  <tom@tromey.com>
8376
8377         * rs6000-tdep.c (ppc_process_record_op4)
8378         (ppc_process_record_op63): Add fall-through comment.
8379
8380 2018-05-04  Tom Tromey  <tom@tromey.com>
8381
8382         * i386-tdep.c (i386_process_record): Add fall-through comment.
8383
8384 2018-05-04  Tom Tromey  <tom@tromey.com>
8385
8386         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8387         comment.
8388
8389 2018-05-04  Tom Tromey  <tom@tromey.com>
8390
8391         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8392         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8393         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8394         comment.
8395         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8396         comment.
8397         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8398         comment.
8399
8400 2018-05-04  Tom Tromey  <tom@tromey.com>
8401
8402         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8403
8404 2018-05-04  Tom Tromey  <tom@tromey.com>
8405
8406         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8407         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8408         * symfile.c (section_is_mapped): Fix fall-through comment.
8409         * stabsread.c (define_symbol, read_member_functions): Fix
8410         fall-through comment.
8411         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8412         comment.
8413         * remote.c (remote_wait_as): Fix fall-through comment.
8414         * p-exp.y (yylex): Fix fall-through comment.
8415         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8416         comment.
8417         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8418         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8419         * jv-exp.y (yylex): Fix fall-through comment.
8420         * go-exp.y (lex_one_token): Fix fall-through comment.
8421         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8422         fall-through comment.
8423         * f-exp.y (yylex): Fix fall-through comment.
8424         * dwarf2read.c (process_die): Fix fall-through comments.
8425         * dbxread.c (process_one_symbol): Fix fall-through comment.
8426         * d-exp.y (lex_one_token): Fix fall-through comment.
8427         * cp-name-parser.y (yylex): Fix fall-through comment.
8428         * coffread.c (coff_symtab_read): Fix fall-through comment.
8429         * c-exp.y (lex_one_token): Fix fall-through comment.
8430         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8431         comment.
8432         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8433         comment.
8434
8435 2018-05-04  Tom Tromey  <tom@tromey.com>
8436
8437         PR python/22730:
8438         * NEWS: Mention gdb.execute change.
8439         * gdbcmd.h (execute_control_command): Don't declare.
8440         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8441         execute_control_commands, execute_control_commands_to_string.
8442         * cli/cli-script.h (execute_control_commands)
8443         (execute_control_commands_to_string): Declare.
8444         (execute_control_command): Add from_tty parameter.
8445         * cli/cli-script.c (execute_control_commands)
8446         (execute_control_commands_to_string): New functions.
8447         (execute_user_command): Use execute_control_commands.
8448         (execute_control_command_1): Add "from_tty" parameter.  Update.
8449         (execute_control_command): Likewise.
8450
8451 2018-05-04  Tom Tromey  <tom@tromey.com>
8452
8453         PR python/22731:
8454         * NEWS: Mention that breakpoint commands are writable.
8455         * python/py-breakpoint.c (bppy_set_commands): New function.
8456         (breakpoint_object_getset) <"commands">: Use it.
8457
8458 2018-05-04  Tom Tromey  <tom@tromey.com>
8459
8460         * tracepoint.c (actions_command): Update.
8461         * mi/mi-cmd-break.c (mi_command_line_array)
8462         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8463         (mi_read_next_line): Remove.
8464         (mi_cmd_break_commands): Update.
8465         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8466         function_view.
8467         * cli/cli-script.c (get_command_line): Update.
8468         (process_next_line): Use function_view.  Constify.
8469         (recurse_read_control_structure, read_command_lines)
8470         (read_command_lines_1): Change argument types to function_view.
8471         (do_define_command, document_command): Update.
8472         * breakpoint.h (check_tracepoint_command): Don't declare.
8473         * breakpoint.c (check_tracepoint_command): Remove.
8474         (commands_command_1, create_tracepoint_from_upload): Update.
8475
8476 2018-05-04  Tom Tromey  <tom@tromey.com>
8477
8478         PR gdb/11750:
8479         * cli/cli-script.h (enum command_control_type) <define_control>:
8480         New constant.
8481         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8482         (build_command_line, execute_control_command_1)
8483         (process_next_line): Likewise.
8484         (do_define_command): New function, extracted from define_command.
8485         (define_command): Use it.
8486
8487 2018-05-04  Tom Tromey  <tom@tromey.com>
8488
8489         * tracepoint.c (actions_command): Update.
8490         * cli/cli-script.h (read_command_lines): Update.
8491         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8492         (MAX_TMPBUF): Remove define.
8493         (define_command): Use string_printf.
8494         (document_command): Likewise.
8495         * breakpoint.c (commands_command_1): Update.
8496
8497 2018-05-04  Tom Tromey  <tom@tromey.com>
8498
8499         * top.c (execute_command): Update.
8500         * cli/cli-script.h (print_command_lines): Now varargs.
8501         * cli/cli-script.c (print_command_lines): Now varargs.
8502         (execute_control_command_1) <case while_control, case if_control>:
8503         Update.
8504
8505 2018-05-04  Tom Tromey  <tom@tromey.com>
8506
8507         * tracepoint.c (all_tracepoint_actions): Rename from
8508         all_tracepoint_actions_and_cleanup.  Change return type.
8509         (actions_command, encode_actions_1, encode_actions)
8510         (trace_dump_actions, tdump_command): Update.
8511         * remote.c (remote_download_command_source): Update.
8512         * python/python.c (gdbpy_eval_from_control_command)
8513         (python_command, python_interactive_command): Update.
8514         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8515         * guile/guile.c (guile_command)
8516         (gdbscm_eval_from_control_command, guile_command): Update.
8517         * compile/compile.c (compile_code_command)
8518         (compile_print_command, compile_to_object): Update.
8519         * cli/cli-script.h (struct command_lines_deleter): New.
8520         (counted_command_line): New typedef.
8521         (struct command_line): Add constructor, destructor.
8522         <body_list>: Remove.
8523         <body_list_0, body_list_1>: New members.
8524         (command_line_up): Remove typedef.
8525         (read_command_lines, read_command_lines_1, get_command_line):
8526         Update.
8527         (copy_command_lines): Don't declare.
8528         * cli/cli-script.c (build_command_line): Use "new".
8529         (get_command_line): Return counted_command_line.
8530         (print_command_lines, execute_user_command)
8531         (execute_control_command_1, while_command, if_command): Update.
8532         (realloc_body_list): Remove.
8533         (process_next_line, recurse_read_control_structure): Update.
8534         (read_command_lines, read_command_lines_1): Return counted_command_line.
8535         (free_command_lines): Use "delete".
8536         (copy_command_lines): Remove.
8537         (define_command, document_command, show_user_1): Update.
8538         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8539         a counted_command_line.
8540         * breakpoint.h (counted_command_line): Remove typedef.
8541         (breakpoint_set_commands): Update.
8542         * breakpoint.c (check_no_tracepoint_commands)
8543         (validate_commands_for_breakpoint): Update.
8544         (breakpoint_set_commands): Change commands to be a
8545         counted_command_line.
8546         (commands_command_1, update_dprintf_command_list)
8547         (create_tracepoint_from_upload): Update.
8548
8549 2018-05-04  Tom Tromey  <tom@tromey.com>
8550
8551         * cli/cli-decode.h (cmd_list_element): New constructor.
8552         (~cmd_list_element): New destructor.
8553         (struct cmd_list_element): Add initializers.
8554         * cli/cli-decode.c (do_add_cmd): Use "new".
8555         (delete_cmd): Use "delete".
8556
8557 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8558             Pedro Alves <palves@redhat.com>
8559
8560         PR breakpoints/19806 and support for PR external/20207.
8561         * NEWS: Mention Aarch64 watchpoint improvements.
8562         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8563         watchpoints and PR external/20207 watchpoints.
8564         * nat/aarch64-linux-hw-point.c
8565         (kernel_supports_any_contiguous_range): New.
8566         (aarch64_watchpoint_offset): New.
8567         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8568         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8569         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8570         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8571         next_addr_orig_p.  Support PR external/20207 watchpoints.
8572         (aarch64_downgrade_regs): New.
8573         (aarch64_dr_state_insert_one_point): New parameters offset and
8574         addr_orig.
8575         (aarch64_dr_state_remove_one_point): Likewise.
8576         (aarch64_handle_breakpoint): Update caller.
8577         (aarch64_handle_aligned_watchpoint): Likewise.
8578         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
8579         aligned_offset.
8580         (aarch64_linux_set_debug_regs): Remove const from state.  Call
8581         aarch64_downgrade_regs.
8582         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
8583         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
8584         (DR_CONTROL_MASK): ... this.
8585         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
8586         (unsigned int aarch64_watchpoint_offset): New prototype.
8587         (aarch64_linux_set_debug_regs): Remove const from state.
8588         * utils.c (align_up, align_down): Move to ...
8589         * common/common-utils.c (align_up, align_down): ... here.
8590         * utils.h (align_up, align_down): Move to ...
8591         * common/common-utils.h (align_up, align_down): ... here.
8592
8593 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
8594
8595         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
8596         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
8597         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
8598         Re-implement to match the ABI as summarized in GCC's
8599         gcc/config/sparc/sparc.c.  All callers updated.
8600         (sparc32_store_arguments): Remove assertion.
8601
8602 2018-05-04  Tom Tromey  <tom@tromey.com>
8603
8604         * printcmd.c: Don't include tui.h.
8605         (decode_format): Use skip_spaces.
8606
8607 2018-05-04  Tom Tromey  <tom@tromey.com>
8608
8609         PR gdb/22619:
8610         * printcmd.c (last_count): New global.
8611         (x_command): Use saved count when repeating.
8612
8613 2018-05-04  Tom Tromey  <tom@tromey.com>
8614
8615         * nto-procfs.c (do_closedir_cleanup): Remove.
8616         (procfs_pidlist): Use gdb_dir_up.
8617         * procfs.c (do_closedir_cleanup): Remove.
8618         (proc_update_threads): Use gdb_dir_up.
8619         * common/filestuff.h (struct gdb_dir_deleter): New.
8620         (gdb_dir_up): New typedef.
8621
8622 2018-05-04  Tom Tromey  <tom@tromey.com>
8623
8624         * ada-lang.c (print_mention_exception): Use std::string.
8625
8626 2018-05-04  Tom Tromey  <tom@tromey.com>
8627
8628         * ada-lang.c (create_excep_cond_exprs): Update.
8629         (ada_exception_catchpoint_cond_string): Use std::string.
8630
8631 2018-05-04  Tom Tromey  <tom@tromey.com>
8632
8633         * ada-lang.c (xget_renaming_scope): Return std::string.
8634         (old_renaming_is_invisible): Update.
8635
8636 2018-05-04  Tom Tromey  <tom@tromey.com>
8637
8638         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
8639         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
8640
8641 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
8642
8643         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
8644
8645 2018-05-04  Tom Tromey  <tom@tromey.com>
8646
8647         * remote.c (remote_query_supported_append): Change type.
8648         (remote_check_symbols): Update.
8649
8650 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
8651
8652         PR gdb/11420
8653         * configure.ac: Prepend libpython.
8654         * python/python-config.py: Likewise.
8655         * configure: Regenerate.
8656
8657 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
8658
8659         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
8660
8661 2018-05-03  Pedro Alves  <palves@redhat.com>
8662
8663         * s390-linux-nat.c
8664         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
8665         override.  Write 'true' instead of '1'.
8666         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
8667         declaration.
8668
8669 2018-05-02  Pedro Alves  <palves@redhat.com>
8670
8671         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
8672         add_inf_child_target.
8673         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
8674         add_inf_child_target.
8675         * aix-thread.c (aix_thread_target_info): New.
8676         (aix_thread_target) <shortname, longname, doc>: Delete.
8677         <info>: New.
8678         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
8679         add_inf_child_target.
8680         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
8681         add_inf_child_target.
8682         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
8683         add_inf_child_target.
8684         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
8685         add_inf_child_target.
8686         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
8687         add_inf_child_target.
8688         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
8689         add_inf_child_target.
8690         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
8691         add_inf_child_target.
8692         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
8693         add_inf_child_target.
8694         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
8695         add_inf_child_target.
8696         * bfd-target.c (target_bfd_target_info): New.
8697         (target_bfd) <shortname, longname, doc>: Delete.
8698         <info>: New.
8699         * bsd-kvm.c (bsd_kvm_target_info): New.
8700         (bsd_kvm_target) <shortname, longname, doc>: Delete.
8701         <info>: New.
8702         (bsd_kvm_target::open): Rename to ...
8703         (bsd_kvm_target_open): ... this.  Adjust.
8704         * bsd-uthread.c (bsd_uthread_target_info): New.
8705         (bsd_uthread_target) <shortname, longname, doc>: Delete.
8706         <info>: New.
8707         * corefile.c (core_file_command): Adjust.
8708         * corelow.c (core_target_info): New.
8709         (core_target) <shortname, longname, doc>: Delete.
8710         <info>: New.
8711         (core_target::open): Rename to ...
8712         (core_target_open): ... this.  Adjust.
8713         * ctf.c (ctf_target_info): New.
8714         (ctf_target) <shortname, longname, doc>: Delete.
8715         <info>: New.
8716         (ctf_target::open): Rename to ...
8717         (ctf_target_open): ... this.
8718         (_initialize_ctf): Adjust.
8719         * exec.c (exec_target_info): New.
8720         (exec_target) <shortname, longname, doc>: Delete.
8721         <info>: New.
8722         (exec_target::open): Rename to ...
8723         (exec_target_open): ... this.
8724         * gdbcore.h (core_target_open): Declare.
8725         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
8726         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
8727         add_inf_child_target.
8728         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
8729         add_inf_child_target.
8730         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
8731         add_inf_child_target.
8732         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
8733         add_inf_child_target.
8734         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
8735         add_inf_child_target.
8736         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
8737         add_inf_child_target.
8738         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
8739         add_inf_child_target.
8740         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
8741         add_inf_child_target.
8742         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
8743         add_inf_child_target.
8744         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
8745         add_inf_child_target.
8746         * inf-child.c (inf_child_target_info): New.
8747         (inf_child_target::info): New.
8748         (inf_child_open_target): Remove 'target' parameter.  Use
8749         get_native_target instead.
8750         (inf_child_target::open): Delete.
8751         (add_inf_child_target): New.
8752         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
8753         Delete.
8754         <info>: New.
8755         (add_inf_child_target): Declare.
8756         (inf_child_open_target): Declare.
8757         * linux-thread-db.c (thread_db_target_info): New.
8758         (thread_db_target) <shortname, longname, doc>: Delete.
8759         <info>: New.
8760         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
8761         add_inf_child_target.
8762         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
8763         add_inf_child_target.
8764         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
8765         add_inf_child_target.
8766         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
8767         add_inf_child_target.
8768         * make-target-delegates (print_class): Adjust.
8769         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
8770         add_inf_child_target.
8771         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
8772         add_inf_child_target.
8773         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
8774         add_inf_child_target.
8775         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
8776         add_inf_child_target.
8777         * nto-procfs.c (nto_native_target_info): New.
8778         (nto_procfs_target_native) <shortname, longname, doc>:
8779         Delete.
8780         <info>: New.
8781         (nto_procfs_target_info): New.
8782         (nto_procfs_target_procfs) <shortname, longname, doc>:
8783         Delete.
8784         <info>: New.
8785         (init_procfs_targets): Adjust.
8786         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
8787         add_inf_child_target.
8788         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
8789         add_inf_child_target.
8790         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
8791         add_inf_child_target.
8792         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
8793         add_inf_child_target.
8794         * ravenscar-thread.c (ravenscar_target_info): New.
8795         (ravenscar_thread_target) <shortname, longname, doc>:
8796         Delete.
8797         <info>: New.
8798         * record-btrace.c (record_btrace_target_info):
8799         (record_btrace_target) <shortname, longname, doc>: Delete.
8800         <info>: New.
8801         (record_btrace_target::open): Rename to ...
8802         (record_btrace_target_open): ... this.  Adjust.
8803         * record-full.c (record_longname, record_doc): New.
8804         (record_full_base_target) <shortname, longname, doc>: Delete.
8805         <info>: New.
8806         (record_full_target_info): New.
8807         (record_full_target): <shortname>: Delete.
8808         <info>: New.
8809         (record_full_core_open_1, record_full_open_1): Update comments.
8810         (record_full_base_target::open): Rename to ...
8811         (record_full_open): ... this.
8812         (cmd_record_full_restore): Update.
8813         (_initialize_record_full): Update.
8814         * remote-sim.c (remote_sim_target_info): New.
8815         (gdbsim_target) <shortname, longname, doc>: Delete.
8816         <info>: New.
8817         (gdbsim_target::open): Rename to ...
8818         (gdbsim_target_open): ... this.
8819         (_initialize_remote_sim): Adjust.
8820         * remote.c (remote_doc): New.
8821         (remote_target_info): New.
8822         (remote_target) <shortname, longname, doc>: Delete.
8823         <info>: New.
8824         (extended_remote_target_info): New.
8825         (extended_remote_target) <shortname, longname, doc>: Delete.
8826         <info>: New.
8827         (remote_target::open_1): Make static.  Adjust.
8828         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
8829         * s390-linux-nat.c (_initialize_s390_nat): Use
8830         add_inf_child_target.
8831         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
8832         add_inf_child_target.
8833         * sol-thread.c (thread_db_target_info): New.
8834         (sol_thread_target) <shortname, longname, doc>: Delete.
8835         <info>: New.
8836         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
8837         add_inf_child_target.
8838         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
8839         add_inf_child_target.
8840         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
8841         add_inf_child_target.
8842         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
8843         add_inf_child_target.
8844         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
8845         add_inf_child_target.
8846         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
8847         add_inf_child_target.
8848         * spu-linux-nat.c (_initialize_spu_nat): Use
8849         add_inf_child_target.
8850         * spu-multiarch.c (spu_multiarch_target_info): New.
8851         (spu_multiarch_target) <shortname, longname, doc>: Delete.
8852         <info>: New.
8853         * target-delegates.c: Regenerate.
8854         * target.c: Include <unordered_map>.
8855         (target_ops_p): Delete.
8856         (DEF_VEC_P(target_ops_p)): Delete.
8857         (target_factories): New.
8858         (test_target_info): New.
8859         (test_target_ops::info): New.
8860         (open_target): Adjust to use target_factories.
8861         (add_target_with_completer): Rename to ...
8862         (add_target): ... this.  Change prototype.  Register target_info
8863         and open callback in target_factories.  Register target_info in
8864         command context instead of target_ops.
8865         (add_target): Delete old implementation.
8866         (add_deprecated_target_alias): Change prototype.  Adjust.
8867         (the_native_target): New.
8868         (set_native_target, get_native_target): New.
8869         (find_default_run_target): Use the_native_target.
8870         (find_attach_target, find_run_target): Simplify.
8871         (target_ops::open): Delete.
8872         (dummy_target_info): New.
8873         (dummy_target::shortname, dummy_target::longname)
8874         (dummy_target::doc): Delete.
8875         (dummy_target::info): New.
8876         (debug_target::shortname, debug_target::longname)
8877         (debug_target::doc): Delete.
8878         (debug_target::info): New.
8879         * target.h (struct target_info): New.
8880         (target_ops::~target_ops): Add comment.
8881         (target_ops::info): New.
8882         (target_ops::shortname, target_ops::longname, target_ops::doc): No
8883         longer virtual.  Implement in terms of target_info.
8884         (set_native_target, get_native_target): Declare.
8885         (target_open_ftype): New.
8886         (add_target, add_target_with_completer)
8887         (add_deprecated_target_alias): Change prototype.
8888         (test_target) <shortname, longname, doc>: Delete.
8889         <info>: New.
8890         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
8891         add_inf_child_target.
8892         * tracefile-tfile.c (tfile_target_info): New.
8893         (tfile_target) <shortname, longname, doc>: Delete.
8894         <info>: New.
8895         (tfile_target::open): Rename to ...
8896         (tfile_target_open): ... this.
8897         (_initialize_tracefile_tfile): Adjust.
8898         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
8899         add_inf_child_target.
8900         * windows-nat.c (_initialize_windows_nat): Use
8901         add_inf_child_target.
8902         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
8903         add_inf_child_target.
8904
8905 2018-05-02  Pedro Alves  <palves@redhat.com>
8906
8907         * linux-nat.h (linux_nat_target) <low_new_thread,
8908         low_delete_thread, low_new_fork, low_forget_process,
8909         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
8910         New virtual methods.
8911         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8912         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
8913         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
8914         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8915         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
8916         Delete.
8917         * linux-fork.c (delete_fork): Adjust to call low method.
8918         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
8919         (linux_nat_new_fork, linux_nat_forget_process_hook)
8920         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
8921         (linux_nat_status_is_event):
8922         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
8923         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
8924         to call low method.
8925         (sigtrap_is_event): Rename to ...
8926         (linux_nat_target::low_status_is_event): ... this.
8927         (linux_nat_set_status_is_event): Delete.
8928         (save_stop_reason, linux_nat_wait_1)
8929         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
8930         low methods.
8931         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8932         (linux_nat_set_new_fork, linux_nat_set_forget_process)
8933         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8934         (linux_nat_set_prepare_to_resume): Delete.
8935         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
8936         low virtual methods.
8937         * amd64-linux-nat.c: Likewise.
8938         * arm-linux-nat.c: Likewise.
8939         * i386-linux-nat.c: Likewise.
8940         * ia64-linux-nat.c: Likewise.
8941         * mips-linux-nat.c: Likewise.
8942         * ppc-linux-nat.c: Likewise.
8943         * s390-linux-nat.c: Likewise.
8944         * sparc64-linux-nat.c: Likewise.
8945         * x86-linux-nat.c: Likewise.
8946         * x86-linux-nat.h: Include "nat/x86-linux.h".
8947         (x86_linux_nat_target) <low_new_fork, low_forget_process,
8948         low_prepare_to_resume, low_new_thread, low_delete_thread>:
8949         Override methods.
8950
8951 2018-05-02  Pedro Alves  <palves@redhat.com>
8952
8953         * target.h (target_ops)
8954         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
8955         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
8956         stopped_by_watchpoint, have_continuable_watchpoint,
8957         stopped_data_address, watchpoint_addr_within_range,
8958         can_accel_watchpoint_condition, can_run, thread_alive,
8959         has_all_memory, has_memory, has_stack, has_registers,
8960         has_execution, can_async_p, is_async_p, supports_non_stop,
8961         always_non_stop_p, can_execute_reverse, supports_multi_process,
8962         supports_enable_disable_tracepoint,
8963         supports_disable_randomization, supports_string_tracing,
8964         supports_evaluation_of_breakpoint_conditions,
8965         can_run_breakpoint_commands, filesystem_is_local,
8966         can_download_tracepoint, get_trace_state_variable_value,
8967         set_trace_notes, get_tib_address, use_agent, can_use_agent,
8968         record_is_replaying, record_will_replay,
8969         augmented_libraries_svr4_read>: Adjust to return bool.
8970         * aarch64-linux-nat.c: All implementations adjusted.
8971         * aix-thread.c: All implementations adjusted.
8972         * arm-linux-nat.c: All implementations adjusted.
8973         * breakpoint.c: All implementations adjusted.
8974         * bsd-kvm.c: All implementations adjusted.
8975         * bsd-uthread.c: All implementations adjusted.
8976         * corelow.c: All implementations adjusted.
8977         * ctf.c: All implementations adjusted.
8978         * darwin-nat.c: All implementations adjusted.
8979         * darwin-nat.h: All implementations adjusted.
8980         * exec.c: All implementations adjusted.
8981         * fbsd-nat.c: All implementations adjusted.
8982         * fbsd-nat.h: All implementations adjusted.
8983         * gnu-nat.c: All implementations adjusted.
8984         * gnu-nat.h: All implementations adjusted.
8985         * go32-nat.c: All implementations adjusted.
8986         * ia64-linux-nat.c: All implementations adjusted.
8987         * inf-child.c: All implementations adjusted.
8988         * inf-child.h: All implementations adjusted.
8989         * inf-ptrace.c: All implementations adjusted.
8990         * inf-ptrace.h: All implementations adjusted.
8991         * linux-nat.c: All implementations adjusted.
8992         * linux-nat.h: All implementations adjusted.
8993         * mips-linux-nat.c: All implementations adjusted.
8994         * nto-procfs.c: All implementations adjusted.
8995         * ppc-linux-nat.c: All implementations adjusted.
8996         * procfs.c: All implementations adjusted.
8997         * ravenscar-thread.c: All implementations adjusted.
8998         * record-btrace.c: All implementations adjusted.
8999         * record-full.c: All implementations adjusted.
9000         * remote-sim.c: All implementations adjusted.
9001         * remote.c: All implementations adjusted.
9002         * s390-linux-nat.c: All implementations adjusted.
9003         * sol-thread.c: All implementations adjusted.
9004         * spu-multiarch.c: All implementations adjusted.
9005         * target-delegates.c: All implementations adjusted.
9006         * target.c: All implementations adjusted.
9007         * target.h: All implementations adjusted.
9008         * tracefile-tfile.c: All implementations adjusted.
9009         * tracefile.c: All implementations adjusted.
9010         * tracefile.h: All implementations adjusted.
9011         * windows-nat.c: All implementations adjusted.
9012         * x86-linux-nat.h: All implementations adjusted.
9013         * x86-nat.h: All implementations adjusted.
9014
9015 2018-05-02  Pedro Alves  <palves@redhat.com>
9016
9017         * make-target-delegates (scan_target_h): Don't trim lines here.
9018         Replace sequences of tabs and/or whitespace with a single
9019         whitespace.
9020         (top level, parsing methods): Trim each line before processing it
9021         here.
9022
9023 2018-05-02  Pedro Alves  <palves@redhat.com>
9024             John Baldwin  <jhb@freebsd.org>
9025
9026         * target.h (enum strata) <debug_stratum>: New.
9027         (struct target_ops) <all delegation methods>: Replace by C++
9028         virtual methods, and drop "to_" prefix.  All references updated
9029         throughout.
9030         <to_shortname, to_longname, to_doc, to_data,
9031         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9032         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9033         virtual methods.  All references updated throughout.
9034         <can_attach, supports_terminal_ours, can_create_inferior,
9035         get_thread_control_capabilities, attach_no_wait>: New
9036         virtual methods.
9037         <insert_breakpoint, remove_breakpoint>: Now
9038         TARGET_DEFAULT_NORETURN methods.
9039         <info_proc>: Now returns bool.
9040         <to_magic>: Delete.
9041         (OPS_MAGIC): Delete.
9042         (current_target): Delete.  All references replaced by references
9043         to ...
9044         (target_stack): ... this.  New.
9045         (target_shortname, target_longname): Adjust.
9046         (target_can_run): Now a function declaration.
9047         (default_child_has_all_memory, default_child_has_memory)
9048         (default_child_has_stack, default_child_has_registers)
9049         (default_child_has_execution): Remove target_ops parameter.
9050         (complete_target_initialization): Delete.
9051         (memory_breakpoint_target): New template class.
9052         (test_target_ops): Refactor as a C++ class with virtual methods.
9053         * make-target-delegates (NAME_PART): Tighten.
9054         (POINTER_PART, CP_SYMBOL): New.
9055         (SIMPLE_RETURN_PART): Reimplement.
9056         (VEC_RETURN_PART): Expect less.
9057         (RETURN_PART, VIRTUAL_PART): New.
9058         (METHOD): Adjust to C++ virtual methods.
9059         (scan_target_h): Remove reference to C99.
9060         (dname): Output "target_ops::" prefix.
9061         (write_function_header): Adjust to output a C++ class method.
9062         (write_declaration): New.
9063         (write_delegator): Adjust to output a C++ class method.
9064         (tdname): Output "dummy_target::" prefix.
9065         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9066         method.
9067         (tdefault_names, debug_names): Delete.
9068         (return_types, tdefaults, styles, argtypes_array): New.
9069         (top level): All methods are delegators.
9070         (print_class): New.
9071         (top level): Print dummy_target and debug_target classes.
9072         * target-delegates.c: Regenerate.
9073         * target-debug.h (target_debug_print_enum_info_proc_what)
9074         (target_debug_print_thread_control_capabilities)
9075         (target_debug_print_thread_info_p): New.
9076         * target.c (dummy_target): Delete.
9077         (the_dummy_target, the_debug_target): New.
9078         (target_stack): Now extern.
9079         (set_targetdebug): Push/unpush debug target.
9080         (default_child_has_all_memory, default_child_has_memory)
9081         (default_child_has_stack, default_child_has_registers)
9082         (default_child_has_execution): Remove target_ops parameter.
9083         (complete_target_initialization): Delete.
9084         (add_target_with_completer): No longer call
9085         complete_target_initialization.
9086         (target_supports_terminal_ours): Use regular delegation.
9087         (update_current_target): Delete.
9088         (push_target): No longer check magic number.  Don't call
9089         update_current_target.
9090         (unpush_target): Don't call update_current_target.
9091         (target_is_pushed): No longer check magic number.
9092         (target_require_runnable): Skip for all stratums over
9093         process_stratum.
9094         (target_ops::info_proc): New.
9095         (target_info_proc): Use find_target_at and
9096         find_default_run_target.
9097         (target_supports_disable_randomization): Use regular delegation.
9098         (target_get_osdata): Use find_target_at.
9099         (target_ops::open, target_ops::close, target_ops::can_attach)
9100         (target_ops::attach, target_ops::can_create_inferior)
9101         (target_ops::create_inferior, target_ops::can_run)
9102         (target_can_run): New.
9103         (default_fileio_target): Use regular delegation.
9104         (target_ops::fileio_open, target_ops::fileio_pwrite)
9105         (target_ops::fileio_pread, target_ops::fileio_fstat)
9106         (target_ops::fileio_close, target_ops::fileio_unlink)
9107         (target_ops::fileio_readlink): New.
9108         (target_fileio_open_1, target_fileio_unlink)
9109         (target_fileio_readlink): Always call the target method.  Handle
9110         FILEIO_ENOSYS.
9111         (return_zero, return_zero_has_execution): Delete.
9112         (init_dummy_target): Delete.
9113         (dummy_target::dummy_target, dummy_target::shortname)
9114         (dummy_target::longname, dummy_target::doc)
9115         (debug_target::debug_target, debug_target::shortname)
9116         (debug_target::longname, debug_target::doc): New.
9117         (target_supports_delete_record): Use regular delegation.
9118         (setup_target_debug): Delete.
9119         (maintenance_print_target_stack): Skip debug_stratum.
9120         (initialize_targets): Instantiate the_dummy_target and
9121         the_debug_target.
9122         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9123         use target_stack.
9124         (target_auxv_search, fprint_target_auxv): Adjust.
9125         (info_auxv_command): Adjust to use target_stack.
9126         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9127         * exceptions.c (print_flush): Handle a NULL target_stack.
9128         * regcache.c (target_ops_no_register): Refactor as class with
9129         virtual methods.
9130
9131         * exec.c (exec_target): New class.
9132         (exec_ops): Now an exec_target.
9133         (exec_open, exec_close_1, exec_get_section_table)
9134         (exec_xfer_partial, exec_files_info, exec_has_memory)
9135         (exec_make_note_section): Refactor as exec_target methods.
9136         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9137         Delete.
9138         (exec_target::find_memory_regions): New.
9139         (_initialize_exec): Don't call init_exec_ops.
9140         * gdbcore.h (exec_file_clear): Delete.
9141
9142         * corefile.c (core_target): Delete.
9143         (core_file_command): Adjust.
9144         * corelow.c (core_target): New class.
9145         (the_core_target): New.
9146         (core_close): Remove target_ops parameter.
9147         (core_close_cleanup): Adjust.
9148         (core_target::close): New.
9149         (core_open, core_detach, get_core_registers, core_files_info)
9150         (core_xfer_partial, core_thread_alive, core_read_description)
9151         (core_pid_to_str, core_thread_name, core_has_memory)
9152         (core_has_stack, core_has_registers, core_info_proc): Rework as
9153         core_target methods.
9154         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9155         (_initialize_corelow): Initialize the_core_target.
9156         * gdbcore.h (core_target): Delete.
9157         (the_core_target): New.
9158
9159         * ctf.c: (ctf_target): New class.
9160         (ctf_ops): Now a ctf_target.
9161         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9162         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9163         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9164         methods.
9165         (init_ctf_ops): Delete.
9166         (_initialize_ctf): Don't call it.
9167         * tracefile-tfile.c (tfile_target): New class.
9168         (tfile_ops): Now a tfile_target.
9169         (tfile_open, tfile_close, tfile_files_info)
9170         (tfile_get_tracepoint_status, tfile_trace_find)
9171         (tfile_fetch_registers, tfile_xfer_partial)
9172         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9173         Refactor as tfile_target methods.
9174         (tfile_xfer_partial_features): Remove target_ops parameter.
9175         (init_tfile_ops): Delete.
9176         (_initialize_tracefile_tfile): Don't call it.
9177         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9178         (tracefile_has_stack, tracefile_has_registers)
9179         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9180         tracefile_target methods.
9181         (init_tracefile_ops): Delete.
9182         (tracefile_target::tracefile_target): New.
9183         * tracefile.h: Include "target.h".
9184         (tracefile_target): New class.
9185         (init_tracefile_ops): Delete.
9186
9187         * spu-multiarch.c (spu_multiarch_target): New class.
9188         (spu_ops): Now a spu_multiarch_target.
9189         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9190         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9191         (spu_search_memory, spu_mourn_inferior): Refactor as
9192         spu_multiarch_target methods.
9193         (init_spu_ops): Delete.
9194         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9195         complete_target_initialization.
9196
9197         * ravenscar-thread.c (ravenscar_thread_target): New class.
9198         (ravenscar_ops): Now a ravenscar_thread_target.
9199         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9200         (ravenscar_thread_alive, ravenscar_pid_to_str)
9201         (ravenscar_fetch_registers, ravenscar_store_registers)
9202         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9203         (ravenscar_stopped_by_hw_breakpoint)
9204         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9205         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9206         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9207         methods.
9208         (init_ravenscar_thread_ops): Delete.
9209         (_initialize_ravenscar): Remove references to
9210         init_ravenscar_thread_ops and complete_target_initialization.
9211
9212         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9213         (bsd_uthread_target): New class.
9214         (bsd_uthread_ops): Now a bsd_uthread_target.
9215         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9216         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9217         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9218         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9219         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9220         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9221         (bsd_uthread_target): Delete function.
9222         (_initialize_bsd_uthread): Remove reference to
9223         complete_target_initialization.
9224
9225         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9226         (target_bfd): ... this new class.
9227         (target_bfd_xfer_partial, target_bfd_get_section_table)
9228         (target_bfd_close): Refactor as target_bfd methods.
9229         (target_bfd::~target_bfd): New.
9230         (target_bfd_reopen): Adjust.
9231         (target_bfd::close): New.
9232
9233         * record-btrace.c (record_btrace_target): New class.
9234         (record_btrace_ops): Now a record_btrace_target.
9235         (record_btrace_open, record_btrace_stop_recording)
9236         (record_btrace_disconnect, record_btrace_close)
9237         (record_btrace_async, record_btrace_info)
9238         (record_btrace_insn_history, record_btrace_insn_history_range)
9239         (record_btrace_insn_history_from, record_btrace_call_history)
9240         (record_btrace_call_history_range)
9241         (record_btrace_call_history_from, record_btrace_record_method)
9242         (record_btrace_is_replaying, record_btrace_will_replay)
9243         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9244         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9245         (record_btrace_store_registers, record_btrace_prepare_to_store)
9246         (record_btrace_to_get_unwinder)
9247         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9248         (record_btrace_commit_resume, record_btrace_wait)
9249         (record_btrace_stop, record_btrace_can_execute_reverse)
9250         (record_btrace_stopped_by_sw_breakpoint)
9251         (record_btrace_supports_stopped_by_sw_breakpoint)
9252         (record_btrace_stopped_by_hw_breakpoint)
9253         (record_btrace_supports_stopped_by_hw_breakpoint)
9254         (record_btrace_update_thread_list, record_btrace_thread_alive)
9255         (record_btrace_goto_begin, record_btrace_goto_end)
9256         (record_btrace_goto, record_btrace_stop_replaying_all)
9257         (record_btrace_execution_direction)
9258         (record_btrace_prepare_to_generate_core)
9259         (record_btrace_done_generating_core): Refactor as
9260         record_btrace_target methods.
9261         (init_record_btrace_ops): Delete.
9262         (_initialize_record_btrace): Remove reference to
9263         init_record_btrace_ops.
9264         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9265         the execution_direction global.
9266         (record_full_base_target, record_full_target)
9267         (record_full_core_target): New classes.
9268         (record_full_ops): Now a record_full_target.
9269         (record_full_core_ops): Now a record_full_core_target.
9270         (record_full_target::detach, record_full_target::disconnect)
9271         (record_full_core_target::disconnect)
9272         (record_full_target::mourn_inferior, record_full_target::kill):
9273         New.
9274         (record_full_open, record_full_close, record_full_async): Refactor
9275         as methods of the record_full_base_target class.
9276         (record_full_resume, record_full_commit_resume): Refactor
9277         as methods of the record_full_target class.
9278         (record_full_wait, record_full_stopped_by_watchpoint)
9279         (record_full_stopped_data_address)
9280         (record_full_stopped_by_sw_breakpoint)
9281         (record_full_supports_stopped_by_sw_breakpoint)
9282         (record_full_stopped_by_hw_breakpoint)
9283         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9284         methods of the record_full_base_target class.
9285         (record_full_store_registers, record_full_xfer_partial)
9286         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9287         Refactor as methods of the record_full_target class.
9288         (record_full_can_execute_reverse, record_full_get_bookmark)
9289         (record_full_goto_bookmark, record_full_execution_direction)
9290         (record_full_record_method, record_full_info, record_full_delete)
9291         (record_full_is_replaying, record_full_will_replay)
9292         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9293         (record_full_stop_replaying): Refactor as methods of the
9294         record_full_base_target class.
9295         (record_full_core_resume, record_full_core_kill)
9296         (record_full_core_fetch_registers)
9297         (record_full_core_prepare_to_store)
9298         (record_full_core_store_registers, record_full_core_xfer_partial)
9299         (record_full_core_insert_breakpoint)
9300         (record_full_core_remove_breakpoint)
9301         (record_full_core_has_execution): Refactor
9302         as methods of the record_full_core_target class.
9303         (record_full_base_target::supports_delete_record): New.
9304         (init_record_full_ops): Delete.
9305         (init_record_full_core_ops): Delete.
9306         (record_full_save): Refactor as method of the
9307         record_full_base_target class.
9308         (_initialize_record_full): Remove references to
9309         init_record_full_ops and init_record_full_core_ops.
9310
9311         * remote.c (remote_target, extended_remote_target): New classes.
9312         (remote_ops): Now a remote_target.
9313         (extended_remote_ops): Now an extended_remote_target.
9314         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9315         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9316         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9317         (remote_pass_signals, remote_set_syscall_catchpoint)
9318         (remote_program_signals, )
9319         (remote_thread_always_alive): Remove target_ops parameter.
9320         (remote_thread_alive, remote_thread_name)
9321         (remote_update_thread_list, remote_threads_extra_info)
9322         (remote_static_tracepoint_marker_at)
9323         (remote_static_tracepoint_markers_by_strid)
9324         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9325         (remote_open): Refactor as methods of remote_target.
9326         (extended_remote_open, extended_remote_detach)
9327         (extended_remote_attach, extended_remote_post_attach):
9328         (extended_remote_supports_disable_randomization)
9329         (extended_remote_create_inferior): : Refactor as method of
9330         extended_remote_target.
9331         (remote_set_permissions, remote_open_1, remote_detach)
9332         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9333         (remote_resume, remote_commit_resume, remote_stop)
9334         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9335         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9336         (remote_prepare_to_store, remote_store_registers)
9337         (remote_flash_erase, remote_flash_done, remote_files_info)
9338         (remote_kill, remote_mourn, remote_insert_breakpoint)
9339         (remote_remove_breakpoint, remote_insert_watchpoint)
9340         (remote_watchpoint_addr_within_range)
9341         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9342         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9343         (remote_supports_stopped_by_sw_breakpoint)
9344         (remote_stopped_by_hw_breakpoint)
9345         (remote_supports_stopped_by_hw_breakpoint)
9346         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9347         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9348         (remote_verify_memory): Refactor as methods of remote_target.
9349         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9350         parameter.
9351         (remote_xfer_partial, remote_get_memory_xfer_limit)
9352         (remote_search_memory, remote_rcmd, remote_memory_map)
9353         (remote_pid_to_str, remote_get_thread_local_address)
9354         (remote_get_tib_address, remote_read_description): Refactor as
9355         methods of remote_target.
9356         (remote_target::fileio_open, remote_target::fileio_pwrite)
9357         (remote_target::fileio_pread, remote_target::fileio_close): New.
9358         (remote_hostio_readlink, remote_hostio_fstat)
9359         (remote_filesystem_is_local, remote_can_execute_reverse)
9360         (remote_supports_non_stop, remote_supports_disable_randomization)
9361         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9362         (remote_supports_enable_disable_tracepoint)
9363         (remote_supports_string_tracing)
9364         (remote_can_run_breakpoint_commands, remote_trace_init)
9365         (remote_download_tracepoint, remote_can_download_tracepoint)
9366         (remote_download_trace_state_variable, remote_enable_tracepoint)
9367         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9368         (remote_trace_start, remote_get_trace_status)
9369         (remote_get_tracepoint_status, remote_trace_stop)
9370         (remote_trace_find, remote_get_trace_state_variable_value)
9371         (remote_save_trace_data, remote_get_raw_trace_data)
9372         (remote_set_disconnected_tracing, remote_core_of_thread)
9373         (remote_set_circular_trace_buffer, remote_traceframe_info)
9374         (remote_get_min_fast_tracepoint_insn_len)
9375         (remote_set_trace_buffer_size, remote_set_trace_notes)
9376         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9377         (remote_disable_btrace, remote_teardown_btrace)
9378         (remote_read_btrace, remote_btrace_conf)
9379         (remote_augmented_libraries_svr4_read, remote_load)
9380         (remote_pid_to_exec_file, remote_can_do_single_step)
9381         (remote_execution_direction, remote_thread_handle_to_thread_info):
9382         Refactor as methods of remote_target.
9383         (init_remote_ops, init_extended_remote_ops): Delete.
9384         (remote_can_async_p, remote_is_async_p, remote_async)
9385         (remote_thread_events, remote_upload_tracepoints)
9386         (remote_upload_trace_state_variables): Refactor as methods of
9387         remote_target.
9388         (_initialize_remote): Remove references to init_remote_ops and
9389         init_extended_remote_ops.
9390
9391         * remote-sim.c (gdbsim_target): New class.
9392         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9393         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9394         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9395         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9396         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9397         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9398         Refactor as methods of gdbsim_target.
9399         (gdbsim_ops): Now a gdbsim_target.
9400         (init_gdbsim_ops): Delete.
9401         (gdbsim_cntrl_c): Adjust.
9402         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9403
9404         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9405         (the_amd64_linux_nat_target): New.
9406         (amd64_linux_fetch_inferior_registers)
9407         (amd64_linux_store_inferior_registers): Refactor as methods of
9408         amd64_linux_nat_target.
9409         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9410         * i386-linux-nat.c: Don't include "linux-nat.h".
9411         (i386_linux_nat_target): New class.
9412         (the_i386_linux_nat_target): New.
9413         (i386_linux_fetch_inferior_registers)
9414         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9415         as methods of i386_linux_nat_target.
9416         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9417         * inf-child.c (inf_child_ops): Delete.
9418         (inf_child_fetch_inferior_registers)
9419         (inf_child_store_inferior_registers): Delete.
9420         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9421         methods of inf_child_target.
9422         (inf_child_target::supports_terminal_ours)
9423         (inf_child_target::terminal_init)
9424         (inf_child_target::terminal_inferior)
9425         (inf_child_target::terminal_ours_for_output)
9426         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9427         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9428         New.
9429         (inf_child_open, inf_child_disconnect, inf_child_close)
9430         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9431         (inf_child_post_startup_inferior, inf_child_can_run)
9432         (inf_child_pid_to_exec_file): Refactor as methods of
9433         inf_child_target.
9434         (inf_child_follow_fork): Delete.
9435         (inf_child_target::can_create_inferior)
9436         (inf_child_target::can_attach): New.
9437         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9438         (inf_child_target::has_stack, inf_child_target::has_registers)
9439         (inf_child_target::has_execution): New.
9440         (inf_child_fileio_open, inf_child_fileio_pwrite)
9441         (inf_child_fileio_pread, inf_child_fileio_fstat)
9442         (inf_child_fileio_close, inf_child_fileio_unlink)
9443         (inf_child_fileio_readlink, inf_child_use_agent)
9444         (inf_child_can_use_agent): Refactor as methods of
9445         inf_child_target.
9446         (return_zero, inf_child_target): Delete.
9447         (inf_child_target::inf_child_target): New.
9448         * inf-child.h: Include "target.h".
9449         (inf_child_target): Delete function prototype.
9450         (inf_child_target): New class.
9451         (inf_child_open_target, inf_child_mourn_inferior)
9452         (inf_child_maybe_unpush_target): Delete.
9453         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9454         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9455         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9456         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9457         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9458         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9459         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9460         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9461         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9462         methods of inf_ptrace_target.
9463         (inf_ptrace_target): Delete function.
9464         * inf-ptrace.h: Include "inf-child.h".
9465         (inf_ptrace_target): Delete function declaration.
9466         (inf_ptrace_target): New class.
9467         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9468         * linux-nat.c (linux_target): New.
9469         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9470         (linux_nat_target::~linux_nat_target): New.
9471         (linux_child_post_attach, linux_child_post_startup_inferior)
9472         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9473         (linux_child_remove_fork_catchpoint)
9474         (linux_child_insert_vfork_catchpoint)
9475         (linux_child_remove_vfork_catchpoint)
9476         (linux_child_insert_exec_catchpoint)
9477         (linux_child_remove_exec_catchpoint)
9478         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9479         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9480         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9481         (linux_nat_stopped_data_address)
9482         (linux_nat_stopped_by_sw_breakpoint)
9483         (linux_nat_supports_stopped_by_sw_breakpoint)
9484         (linux_nat_stopped_by_hw_breakpoint)
9485         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9486         (linux_nat_kill, linux_nat_mourn_inferior)
9487         (linux_nat_xfer_partial, linux_nat_thread_alive)
9488         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9489         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9490         (linux_child_static_tracepoint_markers_by_strid)
9491         (linux_nat_is_async_p, linux_nat_can_async_p)
9492         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9493         (linux_nat_supports_multi_process)
9494         (linux_nat_supports_disable_randomization, linux_nat_async)
9495         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9496         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9497         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9498         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9499         methods of linux_nat_target.
9500         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9501         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9502         parameter.
9503         (check_stopped_by_watchpoint): Adjust.
9504         (linux_xfer_partial): Delete.
9505         (linux_target_install_ops, linux_target, linux_nat_add_target):
9506         Delete.
9507         (linux_nat_target::linux_nat_target): New.
9508         * linux-nat.h: Include "inf-ptrace.h".
9509         (linux_nat_target): New.
9510         (linux_target, linux_target_install_ops, linux_nat_add_target):
9511         Delete function declarations.
9512         (linux_target): Declare global.
9513         * linux-thread-db.c (thread_db_target): New.
9514         (thread_db_target::thread_db_target): New.
9515         (thread_db_ops): Delete.
9516         (the_thread_db_target): New.
9517         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9518         (thread_db_update_thread_list, thread_db_pid_to_str)
9519         (thread_db_extra_thread_info)
9520         (thread_db_thread_handle_to_thread_info)
9521         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9522         (thread_db_resume): Refactor as methods of thread_db_target.
9523         (init_thread_db_ops): Delete.
9524         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9525         * x86-linux-nat.c: Don't include "linux-nat.h".
9526         (super_post_startup_inferior): Delete.
9527         (x86_linux_nat_target::~x86_linux_nat_target): New.
9528         (x86_linux_child_post_startup_inferior)
9529         (x86_linux_read_description, x86_linux_enable_btrace)
9530         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9531         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9532         methods of x86_linux_nat_target.
9533         (x86_linux_create_target): Delete.  Bits folded ...
9534         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9535         pointer.
9536         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9537         (x86_linux_nat_target): New class.
9538         (x86_linux_create_target): Delete.
9539         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9540         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9541         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9542         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9543         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9544         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9545         make extern.
9546         (x86_use_watchpoints): Delete.
9547         * x86-nat.h: Include "breakpoint.h" and "target.h".
9548         (x86_use_watchpoints): Delete.
9549         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9550         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9551         (x86_insert_watchpoint, x86_remove_watchpoint)
9552         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9553         (x86_stopped_by_hw_breakpoint): New declarations.
9554         (x86_nat_target): New template class.
9555
9556         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9557         (the_ppc_linux_nat_target): New.
9558         (ppc_linux_fetch_inferior_registers)
9559         (ppc_linux_can_use_hw_breakpoint)
9560         (ppc_linux_region_ok_for_hw_watchpoint)
9561         (ppc_linux_ranged_break_num_registers)
9562         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9563         (ppc_linux_insert_mask_watchpoint)
9564         (ppc_linux_remove_mask_watchpoint)
9565         (ppc_linux_can_accel_watchpoint_condition)
9566         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9567         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9568         (ppc_linux_watchpoint_addr_within_range)
9569         (ppc_linux_masked_watch_num_registers)
9570         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9571         (ppc_linux_read_description): Refactor as methods of
9572         ppc_linux_nat_target.
9573         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
9574
9575         * procfs.c (procfs_xfer_partial): Delete forward declaration.
9576         (procfs_target): New class.
9577         (the_procfs_target): New.
9578         (procfs_target): Delete function.
9579         (procfs_auxv_parse, procfs_attach, procfs_detach)
9580         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
9581         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
9582         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
9583         (procfs_create_inferior, procfs_update_thread_list)
9584         (procfs_thread_alive, procfs_pid_to_str)
9585         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
9586         (procfs_stopped_data_address, procfs_insert_watchpoint)
9587         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
9588         (proc_find_memory_regions, procfs_info_proc)
9589         (procfs_make_note_section): Refactor as methods of procfs_target.
9590         (_initialize_procfs): Adjust.
9591         * sol-thread.c (sol_thread_target): New class.
9592         (sol_thread_ops): Now a sol_thread_target.
9593         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
9594         (sol_thread_fetch_registers, sol_thread_store_registers)
9595         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
9596         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
9597         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
9598         (init_sol_thread_ops): Delete.
9599         (_initialize_sol_thread): Adjust.  Remove references to
9600         init_sol_thread_ops and complete_target_initialization.
9601
9602         * windows-nat.c (windows_nat_target): New class.
9603         (windows_fetch_inferior_registers)
9604         (windows_store_inferior_registers, windows_resume, windows_wait)
9605         (windows_attach, windows_detach, windows_pid_to_exec_file)
9606         (windows_files_info, windows_create_inferior)
9607         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
9608         (windows_close, windows_pid_to_str, windows_xfer_partial)
9609         (windows_get_tib_address, windows_get_ada_task_ptid)
9610         (windows_thread_name, windows_thread_alive): Refactor as
9611         windows_nat_target methods.
9612         (do_initial_windows_stuff): Adjust.
9613         (windows_target): Delete function.
9614         (_initialize_windows_nat): Adjust.
9615
9616         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
9617         (darwin_mourn_inferior, darwin_kill_inferior)
9618         (darwin_create_inferior, darwin_attach, darwin_detach)
9619         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
9620         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
9621         (darwin_supports_multi_process): Refactor as darwin_nat_target
9622         methods.
9623         (darwin_resume_to, darwin_files_info): Delete.
9624         (_initialize_darwin_inferior): Rename to ...
9625         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
9626         * darwin-nat.h: Include "inf-child.h".
9627         (darwin_nat_target): New class.
9628         (darwin_complete_target): Delete.
9629         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
9630         (darwin_target): New.
9631         (i386_darwin_fetch_inferior_registers)
9632         (i386_darwin_store_inferior_registers): Refactor as methods of
9633         darwin_nat_target.
9634         (darwin_complete_target): Delete, with ...
9635         (_initialize_i386_darwin_nat): ... bits factored out here.
9636
9637         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
9638         (the_alpha_linux_nat_target): New.
9639         (alpha_linux_register_u_offset): Refactor as
9640         alpha_linux_nat_target method.
9641         (_initialize_alpha_linux_nat): Adjust.
9642         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
9643         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9644         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
9645         methods of linux_nat_trad_target.
9646         (linux_trad_target): Delete.
9647         * linux-nat-trad.h (linux_trad_target): Delete function.
9648         (linux_nat_trad_target): New class.
9649         * mips-linux-nat.c (mips_linux_nat_target): New class.
9650         (super_fetch_registers, super_store_registers, super_close):
9651         Delete.
9652         (the_mips_linux_nat_target): New.
9653         (mips64_linux_regsets_fetch_registers)
9654         (mips64_linux_regsets_store_registers)
9655         (mips64_linux_fetch_registers, mips64_linux_store_registers)
9656         (mips_linux_register_u_offset, mips_linux_read_description)
9657         (mips_linux_can_use_hw_breakpoint)
9658         (mips_linux_stopped_by_watchpoint)
9659         (mips_linux_stopped_data_address)
9660         (mips_linux_region_ok_for_hw_watchpoint)
9661         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
9662         (mips_linux_close): Refactor as methods of mips_linux_nat.
9663         (_initialize_mips_linux_nat): Adjust to C++ification.
9664
9665         * aix-thread.c (aix_thread_target): New class.
9666         (aix_thread_ops): Now an aix_thread_target.
9667         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
9668         (aix_thread_fetch_registers, aix_thread_store_registers)
9669         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
9670         (aix_thread_thread_alive, aix_thread_pid_to_str)
9671         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
9672         Refactor as methods of aix_thread_target.
9673         (init_aix_thread_ops): Delete.
9674         (_initialize_aix_thread): Remove references to init_aix_thread_ops
9675         and complete_target_initialization.
9676         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
9677         (rs6000_nat_target): New class.
9678         (the_rs6000_nat_target): New.
9679         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
9680         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
9681         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
9682         (super_create_inferior): Delete.
9683         (_initialize_rs6000_nat): Adjust to C++ification.
9684
9685         * arm-linux-nat.c (arm_linux_nat_target): New class.
9686         (the_arm_linux_nat_target): New.
9687         (arm_linux_fetch_inferior_registers)
9688         (arm_linux_store_inferior_registers, arm_linux_read_description)
9689         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
9690         (arm_linux_remove_hw_breakpoint)
9691         (arm_linux_region_ok_for_hw_watchpoint)
9692         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
9693         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
9694         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
9695         arm_linux_nat_target.
9696         (_initialize_arm_linux_nat): Adjust to C++ification.
9697
9698         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
9699         (the_aarch64_linux_nat_target): New.
9700         (aarch64_linux_fetch_inferior_registers)
9701         (aarch64_linux_store_inferior_registers)
9702         (aarch64_linux_child_post_startup_inferior)
9703         (aarch64_linux_read_description)
9704         (aarch64_linux_can_use_hw_breakpoint)
9705         (aarch64_linux_insert_hw_breakpoint)
9706         (aarch64_linux_remove_hw_breakpoint)
9707         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
9708         (aarch64_linux_region_ok_for_hw_watchpoint)
9709         (aarch64_linux_stopped_data_address)
9710         (aarch64_linux_stopped_by_watchpoint)
9711         (aarch64_linux_watchpoint_addr_within_range)
9712         (aarch64_linux_can_do_single_step): Refactor as methods of
9713         aarch64_linux_nat_target.
9714         (super_post_startup_inferior): Delete.
9715         (_initialize_aarch64_linux_nat): Adjust to C++ification.
9716
9717         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
9718         (the_hppa_linux_nat_target): New.
9719         (hppa_linux_fetch_inferior_registers)
9720         (hppa_linux_store_inferior_registers): Refactor as methods of
9721         hppa_linux_nat_target.
9722         (_initialize_hppa_linux_nat): Adjust to C++ification.
9723
9724         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
9725         (the_ia64_linux_nat_target): New.
9726         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
9727         (ia64_linux_stopped_data_address)
9728         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
9729         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
9730         ia64_linux_nat_target methods.
9731         (super_xfer_partial): Delete.
9732         (_initialize_ia64_linux_nat): Adjust to C++ification.
9733
9734         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
9735         (the_m32r_linux_nat_target): New.
9736         (m32r_linux_fetch_inferior_registers)
9737         (m32r_linux_store_inferior_registers): Refactor as
9738         m32r_linux_nat_target methods.
9739         (_initialize_m32r_linux_nat): Adjust to C++ification.
9740
9741         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
9742         (the_m68k_linux_nat_target): New.
9743         (m68k_linux_fetch_inferior_registers)
9744         (m68k_linux_store_inferior_registers): Refactor as
9745         m68k_linux_nat_target methods.
9746         (_initialize_m68k_linux_nat): Adjust to C++ification.
9747
9748         * s390-linux-nat.c (s390_linux_nat_target): New class.
9749         (the_s390_linux_nat_target): New.
9750         (s390_linux_fetch_inferior_registers)
9751         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
9752         (s390_insert_watchpoint, s390_remove_watchpoint)
9753         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
9754         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
9755         (s390_auxv_parse, s390_read_description): Refactor as methods of
9756         s390_linux_nat_target.
9757         (_initialize_s390_nat): Adjust to C++ification.
9758
9759         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
9760         (the_sparc_linux_nat_target): New.
9761         (_initialize_sparc_linux_nat): Adjust to C++ification.
9762         * sparc-nat.c (sparc_fetch_inferior_registers)
9763         (sparc_store_inferior_registers): Remove target_ops parameter.
9764         * sparc-nat.h (sparc_fetch_inferior_registers)
9765         (sparc_store_inferior_registers): Remove target_ops parameter.
9766         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
9767         (the_sparc64_linux_nat_target): New.
9768         (_initialize_sparc64_linux_nat): Adjust to C++ification.
9769
9770         * spu-linux-nat.c (spu_linux_nat_target): New class.
9771         (the_spu_linux_nat_target): New.
9772         (spu_child_post_startup_inferior, spu_child_post_attach)
9773         (spu_child_wait, spu_fetch_inferior_registers)
9774         (spu_store_inferior_registers, spu_xfer_partial)
9775         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
9776         methods.
9777         (_initialize_spu_nat): Adjust to C++ification.
9778
9779         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
9780         (the_tilegx_linux_nat_target): New.
9781         (fetch_inferior_registers, store_inferior_registers):
9782         Refactor as methods.
9783         (_initialize_tile_linux_nat): Adjust to C++ification.
9784
9785         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
9786         (the_xtensa_linux_nat_target): New.
9787         (xtensa_linux_fetch_inferior_registers)
9788         (xtensa_linux_store_inferior_registers): Refactor as
9789         xtensa_linux_nat_target methods.
9790         (_initialize_xtensa_linux_nat): Adjust to C++ification.
9791
9792         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
9793         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
9794         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
9795         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
9796         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
9797         (fbsd_stopped_by_sw_breakpoint)
9798         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
9799         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
9800         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
9801         (fbsd_post_startup_inferior, fbsd_post_attach)
9802         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
9803         (fbsd_set_syscall_catchpoint)
9804         (super_xfer_partial, super_resume, super_wait)
9805         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
9806         (fbsd_handle_debug_trap): Remove target_ops parameter.
9807         (fbsd_nat_add_target): Delete.
9808         * fbsd-nat.h: Include "inf-ptrace.h".
9809         (fbsd_nat_add_target): Delete.
9810         (USE_SIGTRAP_SIGINFO): Define.
9811         (fbsd_nat_target): New class.
9812
9813         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
9814         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
9815         (amd64bsd_target): Delete.
9816         * amd64-bsd-nat.h: New file.
9817         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
9818         "x86-bsd-nat.h".
9819         (amd64_fbsd_nat_target): New class.
9820         (the_amd64_fbsd_nat_target): New.
9821         (amd64fbsd_read_description): Refactor as method of
9822         amd64_fbsd_nat_target.
9823         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9824         (_initialize_amd64fbsd_nat): Adjust to C++ification.
9825         * amd64-nat.h (amd64bsd_target): Delete function declaration.
9826         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
9827         (i386bsd_store_inferior_registers): Remove target_ops parameter.
9828         (i386bsd_target): Delete.
9829         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
9830         (i386bsd_fetch_inferior_registers)
9831         (i386bsd_store_inferior_registers): Declare.
9832         (i386_bsd_nat_target): New class.
9833         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
9834         (the_i386_fbsd_nat_target): New.
9835         (i386fbsd_resume, i386fbsd_read_description): Refactor as
9836         i386_fbsd_nat_target methods.
9837         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9838         (_initialize_i386fbsd_nat): Adjust to C++ification.
9839         * x86-bsd-nat.c (super_mourn_inferior): Delete.
9840         (x86bsd_mourn_inferior, x86bsd_target): Delete.
9841         (_initialize_x86_bsd_nat): Adjust to C++ification.
9842         * x86-bsd-nat.h: Include "x86-nat.h".
9843         (x86bsd_target): Delete declaration.
9844         (x86bsd_nat_target): New class.
9845
9846         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
9847         (the_aarch64_fbsd_nat_target): New.
9848         (aarch64_fbsd_fetch_inferior_registers)
9849         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
9850         aarch64_fbsd_nat_target.
9851         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
9852         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
9853         (the_alpha_bsd_nat_target): New.
9854         (alphabsd_fetch_inferior_registers)
9855         (alphabsd_store_inferior_registers): Refactor as
9856         alpha_bsd_nat_target methods.
9857         (_initialize_alphabsd_nat): Refactor as methods of
9858         alpha_bsd_nat_target.
9859         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
9860         (the_amd64_nbsd_nat_target): New.
9861         (_initialize_amd64nbsd_nat): Adjust to C++ification.
9862         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
9863         (the_amd64_obsd_nat_target): New.
9864         (_initialize_amd64obsd_nat): Adjust to C++ification.
9865         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
9866         (the_arm_fbsd_nat_target): New.
9867         (arm_fbsd_fetch_inferior_registers)
9868         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
9869         (_initialize_arm_fbsd_nat): Refactor as methods of
9870         arm_fbsd_nat_target.
9871         (_initialize_arm_fbsd_nat): Adjust to C++ification.
9872         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
9873         (the_arm_netbsd_nat_target): New.
9874         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
9875         arm_netbsd_nat_target.
9876         (_initialize_arm_netbsd_nat): Adjust to C++ification.
9877         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
9878         (the_hppa_nbsd_nat_target): New.
9879         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
9880         hppa_nbsd_nat_target methods.
9881         (_initialize_hppanbsd_nat): Adjust to C++ification.
9882         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
9883         (the_hppa_obsd_nat_target): New.
9884         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
9885         methods of hppa_obsd_nat_target.
9886         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
9887         add_target.
9888         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
9889         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
9890         add_target.
9891         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
9892         (_initialize_i386obsd_nat): Use add_target.
9893         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
9894         (the_m68k_bsd_nat_target): New.
9895         (m68kbsd_fetch_inferior_registers)
9896         (m68kbsd_store_inferior_registers): Refactor as methods of
9897         m68k_bsd_nat_target.
9898         (_initialize_m68kbsd_nat): Adjust to C++ification.
9899         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
9900         (the_mips_fbsd_nat_target): New.
9901         (mips_fbsd_fetch_inferior_registers)
9902         (mips_fbsd_store_inferior_registers): Refactor as methods of
9903         mips_fbsd_nat_target.
9904         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
9905         add_target.
9906         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
9907         (the_mips_nbsd_nat_target): New.
9908         (mipsnbsd_fetch_inferior_registers)
9909         (mipsnbsd_store_inferior_registers): Refactor as methods of
9910         mips_nbsd_nat_target.
9911         (_initialize_mipsnbsd_nat): Adjust to C++ification.
9912         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
9913         (the_mips64_obsd_nat_target): New.
9914         (mips64obsd_fetch_inferior_registers)
9915         (mips64obsd_store_inferior_registers): Refactor as methods of
9916         mips64_obsd_nat_target.
9917         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
9918         add_target.
9919         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
9920         nbsd_nat_target.
9921         * nbsd-nat.h: Include "inf-ptrace.h".
9922         (nbsd_nat_target): New class.
9923         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
9924         (obsd_wait): Refactor as methods of obsd_nat_target.
9925         (obsd_add_target): Delete.
9926         * obsd-nat.h: Include "inf-ptrace.h".
9927         (obsd_nat_target): New class.
9928         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
9929         (the_ppc_fbsd_nat_target): New.
9930         (ppcfbsd_fetch_inferior_registers)
9931         (ppcfbsd_store_inferior_registers): Refactor as methods of
9932         ppc_fbsd_nat_target.
9933         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
9934         add_target.
9935         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
9936         (the_ppc_nbsd_nat_target): New.
9937         (ppcnbsd_fetch_inferior_registers)
9938         (ppcnbsd_store_inferior_registers): Refactor as methods of
9939         ppc_nbsd_nat_target.
9940         (_initialize_ppcnbsd_nat): Adjust to C++ification.
9941         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
9942         (the_ppc_obsd_nat_target): New.
9943         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
9944         methods of ppc_obsd_nat_target.
9945         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
9946         add_target.
9947         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
9948         (the_sh_nbsd_nat_target): New.
9949         (shnbsd_fetch_inferior_registers)
9950         (shnbsd_store_inferior_registers): Refactor as methods of
9951         sh_nbsd_nat_target.
9952         (_initialize_shnbsd_nat): Adjust to C++ification.
9953         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
9954         (inf_ptrace_xfer_partial): Delete.
9955         (sparc_xfer_partial, sparc_target): Delete.
9956         * sparc-nat.h (sparc_fetch_inferior_registers)
9957         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
9958         (sparc_target): Delete function declaration.
9959         (sparc_target): New template class.
9960         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
9961         (_initialize_sparcnbsd_nat): Adjust to C++ification.
9962         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
9963         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
9964         add_target.
9965         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
9966         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
9967         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
9968         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
9969         add_target.
9970         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
9971         (the_vax_bsd_nat_target): New.
9972         (vaxbsd_fetch_inferior_registers)
9973         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
9974         methods.
9975         (_initialize_vaxbsd_nat): Adjust to C++ification.
9976
9977         * bsd-kvm.c (bsd_kvm_target): New class.
9978         (bsd_kvm_ops): Now a bsd_kvm_target.
9979         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
9980         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
9981         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
9982         bsd_kvm_target.
9983         (bsd_kvm_return_one): Delete.
9984         (bsd_kvm_add_target): Adjust to C++ification.
9985
9986         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
9987         (nto_procfs_target_procfs): New classes.
9988         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
9989         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
9990         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
9991         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
9992         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
9993         (procfs_remove_hw_breakpoint, procfs_resume)
9994         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
9995         (procfs_kill_inferior, procfs_store_registers)
9996         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
9997         as methods of nto_procfs_target.
9998         (nto_procfs_ops): Now an nto_procfs_target_procfs.
9999         (nto_native_ops): Delete.
10000         (procfs_open, procfs_native_open): Delete.
10001         (nto_native_ops): Now an nto_procfs_target_native.
10002         (init_procfs_targets): Adjust to C++ification.
10003         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10004         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10005         Refactor as methods of nto_procfs_target.
10006
10007         * go32-nat.c (go32_nat_target): New class.
10008         (the_go32_nat_target): New.
10009         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10010         (go32_store_registers, go32_xfer_partial, go32_files_info)
10011         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10012         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10013         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10014         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10015         (go32_target): Delete.
10016         (_initialize_go32_nat): Adjust to C++ification.
10017
10018         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10019         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10020         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10021         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10022         gnu_nat_target.
10023         (gnu_target): Delete.
10024         * gnu-nat.h (gnu_target): Delete.
10025         (gnu_nat_target): New class.
10026         * i386-gnu-nat.c (gnu_base_target): New.
10027         (i386_gnu_nat_target): New class.
10028         (the_i386_gnu_nat_target): New.
10029         (_initialize_i386gnu_nat): Adjust to C++ification.
10030
10031 2018-05-02  Pedro Alves  <palves@redhat.com>
10032
10033         * bfd-target.c (target_bfd_xclose): Rename to ...
10034         (target_bfd_close): ... this.
10035         (target_bfd_reopen): Adjust.
10036         * target.c (target_close): Remove references to to_xclose.
10037         * target.h (target_ops::to_xclose): Delete.
10038         (target_ops::to_close): Update comments.
10039
10040 2018-05-02  Pedro Alves  <palves@redhat.com>
10041
10042         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10043         "linux-nat.h".
10044         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10045         * inf-ptrace.c (inf_ptrace_register_u_offset)
10046         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10047         (inf_ptrace_store_register, inf_ptrace_store_registers)
10048         (inf_ptrace_trad_target): Move to ...
10049         * linux-nat-trad.c: ... this new file.
10050         * linux-nat-trad.h: New file.
10051         * linux-nat.c (linux_target_install_ops): Make extern.
10052         (linux_trad_target): Delete.
10053         * linux-nat.h (linux_trad_target): Delete declaration.
10054         (linux_target_install_ops): Declare.
10055         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10056         "linux-nat.h".
10057
10058 2018-05-02  Pedro Alves  <palves@redhat.com>
10059
10060         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10061         procfs_target/add_target here.
10062         * procfs.c (procfs_target): Make static.
10063         (_initialize_procfs): Call add_target here.
10064         * procfs.h (struct target_ops): Remove forward declaration.
10065         (procfs_target): Remove declaration.
10066         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10067
10068 2018-05-02  Pedro Alves  <palves@redhat.com>
10069
10070         * procfs.c (procfs_stopped_by_watchpoint)
10071         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10072         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10073         Forward declare.
10074         (procfs_use_watchpoints): Delete, move contents...
10075         (procfs_target): ... here.
10076         * procfs.h (procfs_use_watchpoints): Delete declaration.
10077         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10078         procfs_use_watchpoints.
10079         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10080         procfs_use_watchpoints.
10081
10082 2018-05-02  Tom Tromey  <tom@tromey.com>
10083
10084         PR python/20084:
10085         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10086         and var_zuinteger_unlimited.
10087         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10088         and PARAM_ZUINTEGER_UNLIMITED.
10089         (set_parameter_value): Handle var_zuinteger and
10090         var_zuinteger_unlimited.
10091         (add_setshow_generic): Likewise.
10092         (parmpy_init): Likewise.
10093
10094 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10095
10096         PR rust/23124
10097         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10098         pointer is not null before dereferencing it.
10099
10100 2018-04-30  Tom Tromey  <tom@tromey.com>
10101
10102         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10103         is_mi_like_p.
10104
10105 2018-04-30  Tom Tromey  <tom@tromey.com>
10106
10107         * breakpoint.c (mention): Remove use of is_mi_like_p.
10108         (print_mention_ranged_breakpoint): Likewise.
10109         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10110         of is_mi_like_p.
10111
10112 2018-04-30  Tom Tromey  <tom@tromey.com>
10113
10114         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10115
10116 2018-04-30  Tom Tromey  <tom@tromey.com>
10117
10118         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10119         (info_spu_event_command): Remove some uses of is_mi_like_p.
10120
10121 2018-04-30  Tom Tromey  <tom@tromey.com>
10122
10123         * python/py-framefilter.c (py_print_single_arg)
10124         (enumerate_locals, py_print_args, py_print_frame): Remove some
10125         uses of is_mi_like_p.
10126
10127 2018-04-30  Tom Tromey  <tom@tromey.com>
10128
10129         * ui-out.c: Update.
10130         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10131         * ui-out.h (ui_out::is_mi_like_p): Now const.
10132         (ui_out::do_is_mi_like_p): Now const.
10133         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10134
10135 2018-04-30  Tom Tromey  <tom@tromey.com>
10136
10137         * varobj.c (varobj_set_visualizer): Use new_reference.
10138         * python/python.c (gdbpy_decode_line): Use new_reference.
10139         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10140         new_reference.
10141
10142 2018-04-30  Tom Tromey  <tom@tromey.com>
10143
10144         * varobj.c (install_new_value): Use new_reference.
10145         * value.h (value_incref): Return void.  Swap intro comment with
10146         value_decref.
10147         * value.c (set_value_parent): Use new_reference.
10148         (value_incref): Return void.  Update intro comment.
10149         (release_value): Use new_reference.
10150         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10151
10152 2018-04-30  Tom Tromey  <tom@tromey.com>
10153
10154         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10155         * gdb_bfd.h (new_bfd_ref): Remove.
10156         (gdb_bfd_open): Update comment.
10157         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10158         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10159         (gdb_bfd_fdopenr): Use new_reference.
10160         * exec.c (exec_file_attach): Use new_reference.
10161
10162 2018-04-30  Tom Tromey  <tom@tromey.com>
10163
10164         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10165         method.
10166
10167 2018-04-30  Tom Tromey  <tom@tromey.com>
10168
10169         * jit.c (jit_read_code_entry): Use type_align.
10170         * i386-tdep.c (i386_gdbarch_init): Don't call
10171         set_gdbarch_long_long_align_bit.
10172         * gdbarch.sh: Remove long_long_align_bit.
10173         * gdbarch.c, gdbarch.h: Rebuild.
10174         * arc-tdep.c (arc_type_align): New function.
10175         (arc_gdbarch_init): Use arc_type_align.  Don't call
10176         set_gdbarch_long_long_align_bit.
10177
10178 2018-04-30  Tom Tromey  <tom@tromey.com>
10179
10180         * rust-lang.c (rust_type_alignment): Remove.
10181         (rust_composite_type): Use type_align.
10182
10183 2018-04-30  Tom Tromey  <tom@tromey.com>
10184
10185         * NEWS: Mention Type.align.
10186         * python/py-type.c (typy_get_alignof): New function.
10187         (type_object_getset): Add "alignof".
10188
10189 2018-04-30  Tom Tromey  <tom@tromey.com>
10190
10191         PR exp/17095:
10192         * NEWS: Update.
10193         * std-operator.def (UNOP_ALIGNOF): New operator.
10194         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10195         New.
10196         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10197         * c-lang.c (c_op_print_tab): Add alignof.
10198         * c-exp.y (ALIGNOF): New token.
10199         (exp): Add "ALIGNOF" production.
10200         (ident_tokens): Add _Alignof and alignof.
10201
10202 2018-04-30  Tom Tromey  <tom@tromey.com>
10203
10204         * i386-tdep.c (i386_type_align): New function.
10205         (i386_gdbarch_init): Update.
10206         * gdbarch.sh (type_align): New method.
10207         * gdbarch.c, gdbarch.h: Rebuild.
10208         * arch-utils.h (default_type_align): Declare.
10209         * arch-utils.c (default_type_align): New function.
10210         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10211         (struct type) <align_log2>: New field.
10212         <instance_flags>: Now a bitfield.
10213         (TYPE_RAW_ALIGN): New macro.
10214         (type_align, type_raw_align, set_type_align): Declare.
10215         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10216         functions.
10217         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10218         (get_alignment, maybe_set_alignment): New functions.
10219         (read_structure_type, read_enumeration_type, read_array_type)
10220         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10221         (read_subrange_type, read_base_type): Set type alignment.
10222
10223 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10224
10225         * dwarf2read.c (read_index_from_section): Use bool.
10226
10227 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10228
10229         PR gdb/22950
10230         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10231         with #ifdef.
10232
10233 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10234
10235         PR build/22873
10236         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10237         last step, and do it atomically.
10238
10239 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10240
10241         * compile/compile-c-types.c (convert_int, convert_float):
10242         Update for C FE v1.
10243
10244 2018-04-27  Tom Tromey  <tom@tromey.com>
10245
10246         PR rust/22545:
10247         * rust-lang.c (rust_inclusive_range_type_p): New function.
10248         (rust_range): Handle inclusive ranges.
10249         (rust_compute_range): Likewise.
10250         * rust-exp.y (struct rust_op) <inclusive>: New field.
10251         (DOTDOTEQ): New constant.
10252         (range_expr): Add "..=" productions.
10253         (operator_tokens): Add "..=" token.
10254         (ast_range): Add "inclusive" parameter.
10255         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10256         ranges.
10257         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10258         bounds values.
10259         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10260         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10261         Update comments.
10262         * expprint.c (print_subexp_standard): Handle new bounds values.
10263         (dump_subexp_body_standard): Likewise.
10264
10265 2018-04-27  Tom Tromey  <tom@tromey.com>
10266
10267         * configure: Rebuild.
10268         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10269         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10270         "OVERRIDE".
10271         (class symbol_needs_eval_context): Likewise.
10272         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10273         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10274         "virtual".
10275         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10276         "override".
10277         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10278         * aarch64-tdep.c (instruction_reader::read): Use "override".
10279         (instruction_reader_test::read): Likewise.
10280         * arm-tdep.c (instruction_reader::read): Use "override".
10281         (instruction_reader_thumb::read): Likewise.
10282
10283 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10284
10285         PR remote/9665
10286         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10287         instead of remote_send.
10288         (remote_send): Remove.
10289
10290 2018-04-26  Pedro Alves  <palves@redhat.com>
10291
10292         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10293         find_function_start_sal instead of find_pc_line.
10294
10295 2018-04-26  Pedro Alves  <palves@redhat.com>
10296
10297         * breakpoint.c (set_breakpoint_location_function): Handle
10298         mst_data_gnu_ifunc.
10299         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10300         * elfread.c (elf_symtab_read): Give data symbols with
10301         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10302         (elf_rel_plt_read): Update comment.
10303         * linespec.c (convert_linespec_to_sals): Handle
10304         mst_data_gnu_ifunc.
10305         (minsym_found): Handle mst_data_gnu_ifunc.
10306         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10307         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10308         * parse.c (find_minsym_type_and_address): Handle
10309         mst_data_gnu_ifunc.
10310         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10311         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10312         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10313         comment.
10314         <mst_data_gnu_ifunc>: New enumerator.
10315
10316 2018-04-26  Pedro Alves  <palves@redhat.com>
10317
10318         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10319         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10320         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10321         Handle it.
10322         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10323         (lookup_minimal_symbol_by_pc): Adjust.
10324         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10325         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10326         * minsyms.h (lookup_msym_prefer): New enum.
10327         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10328         parameter by a lookup_msym_prefer parameter.
10329
10330 2018-04-26  Pedro Alves  <palves@redhat.com>
10331
10332         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10333         ends in "@plt" instead of looking at the symbol's section.
10334
10335 2018-04-26  Pedro Alves  <palves@redhat.com>
10336
10337         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10338         all references.
10339         (find_pc_partial_function_gnu_ifunc): Rename to ...
10340         (find_pc_partial_function): ... this, and remove references to
10341         'is_gnu_ifunc_p'.
10342         (find_pc_partial_function): Delete old implementation.
10343         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10344
10345 2018-04-26  Pedro Alves  <palves@redhat.com>
10346
10347         * linespec.c (struct bound_minimal_symbol_search_key): New.
10348         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10349         skip first line if we found a GNU ifunc minimal symbol by name.
10350         (compare_msymbols): Change parameters to work with a destructured
10351         lhs minsym.
10352         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10353         functions.
10354
10355 2018-04-26  Pedro Alves  <palves@redhat.com>
10356
10357         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10358         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10359         address/name.
10360         (add_location_to_breakpoint): Store the minsym and the objfile in
10361         the breakpoint location.
10362         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10363         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10364         Record the minsym in the sal.
10365         * symtab.h (symtab_and_line) <msymbol>: New field.
10366
10367 2018-04-26  Pedro Alves  <palves@redhat.com>
10368
10369         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10370         unless we actually resolved the ifunc.
10371
10372 2018-04-26  Pedro Alves  <palves@redhat.com>
10373
10374         * c-exp.y (variable production): Prefer ifunc minsyms over
10375         regular function symbols.
10376         * symtab.c (find_gnu_ifunc): New function.
10377         * minsyms.h (lookup_msym_prefer): New enum.
10378         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10379         parameter by a lookup_msym_prefer parameter.
10380         * symtab.h (find_gnu_ifunc): New declaration.
10381
10382 2018-04-26  Pedro Alves  <palves@redhat.com>
10383
10384         * blockframe.c (find_gnu_ifunc_target_type): New function.
10385         (find_function_type): New.
10386         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10387         return a value with a memory address.
10388         (eval_call): For calls to GNU ifunc functions, try to find the
10389         type of the target function from the type that the resolver
10390         returns.
10391         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10392         symbols.
10393         * infcall.c (find_function_return_type): Delete.
10394         (find_function_addr): Add 'function_type' parameter.  For calls to
10395         GNU ifunc functions, try to find the type of the target function
10396         from the type that the resolver returns, and return it via
10397         FUNCTION_TYPE.
10398         (call_function_by_hand_dummy): Adjust to use the function type
10399         returned by find_function_addr.
10400         (find_function_addr): Add 'function_type' parameter and move
10401         description here.
10402         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10403         declarations.
10404
10405 2018-04-26  Pedro Alves  <palves@redhat.com>
10406
10407         * c-exp.y (variable production): Skip finding an alias for ifunc
10408         symbols.
10409
10410 2018-04-26  Pedro Alves  <palves@redhat.com>
10411
10412         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10413
10414 2018-04-25  Pedro Alves  <palves@redhat.com>
10415
10416         * infcmd.c (kill_command): Print the pid as string, not the whole
10417         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10418         message.
10419         * remote.c (remote_detach_1): Print the pid as string, not the
10420         whole thread's ptid.
10421
10422 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10423             Sergio Durigan Junior  <sergiodj@redhat.com>
10424             Pedro Alves  <palves@redhat.com>
10425
10426         * infcmd.c (kill_command): Print message when inferior has
10427         been killed.
10428         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10429         '1'.
10430         (add_inferior): Improve message printed when
10431         'print_inferior_events' is on.
10432         (exit_inferior): Remove message printed when
10433         'print_inferior_events' is on.
10434         (detach_inferior): Improve message printed when
10435         'print_inferior_events' is on.
10436         (initialize_inferiors): Use 'add_inferior_silent' to set
10437         'current_inferior_'.
10438         * inferior.h (print_inferior_events): Declare here as
10439         'extern'.
10440         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10441         '[Detaching...]' messages when 'print_inferior_events' is on.
10442         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10443         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10444         'Detaching after fork from child...', replace it by '... from
10445         parent...'.
10446         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10447         prefix/suffix when printing 'Detaching...' messages.  Print
10448         them when 'print_inferior_events' is on.
10449         * remote.c (remote_detach_1): Print message when detaching
10450         from inferior and '!is_fork_parent'.
10451
10452 2018-04-24  Tom Tromey  <tom@tromey.com>
10453
10454         * cli-out.h: Reindent.
10455
10456 2018-04-24  Tom Tromey  <tom@tromey.com>
10457
10458         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10459         (cli_ui_out::do_field_string): Use fputs_filtered.
10460         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10461
10462 2018-04-23  Tom Tromey  <tom@tromey.com>
10463
10464         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10465         gdb::unique_xmalloc_ptr.
10466
10467 2018-04-23  Tom Tromey  <tom@tromey.com>
10468
10469         * configure: Rebuild.
10470
10471 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10472
10473         PR gdb/23095
10474         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10475         prepare_for_testing.  Set normal_bp to r_debug_state if target
10476         is bsd.
10477
10478 2018-04-21  Pedro Alves  <palves@redhat.com>
10479             Rajendra SY  <rajendra.sy@gmail.com>
10480
10481         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10482         * remote.c (extended_remote_attach): In all-stop mode, mark the
10483         thread as executing.
10484
10485 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10486
10487         * thread.c (thread_apply_all_command): Fix comment.
10488         (thread_command): Fix comment.
10489
10490 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10491
10492         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10493         parameter.
10494         * features/aarch64-core.c (create_feature_aarch64_core):
10495         Regenerate.
10496         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10497         Likewise.
10498         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10499         Likewise.
10500         * features/i386/32bit-avx512.c
10501         (create_feature_i386_32bit_avx512): Likewise.
10502         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10503         Likewise.
10504         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10505         Likewise.
10506         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10507         Likewise.
10508         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10509         Likewise.
10510         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10511         Likewise.
10512         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10513         Likewise.
10514         * features/i386/64bit-avx512.c
10515         (create_feature_i386_64bit_avx512): Likewise.
10516         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10517         Likewise.
10518         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10519         Likewise.
10520         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10521         Likewise.
10522         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10523         Likewise.
10524         * features/i386/64bit-segments.c
10525         (create_feature_i386_64bit_segments): Likewise.
10526         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10527         Likewise.
10528         * features/i386/x32-core.c
10529         (create_feature_i386_x32_core): Likewise.
10530         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10531         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10532         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10533         * target-descriptions.c: In generated code, don't pass xml
10534         filename.
10535
10536 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10537
10538         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10539         (print_xml_feature::visit_post): Likewise.
10540         (print_xml_feature::visit): Likewise.
10541         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10542         (print_xml_feature): Add new class.
10543         * regformats/regdat.sh: Null xmltarget on feature targets.
10544         * target-descriptions.c (struct target_desc): Add xmltarget.
10545         (maintenance_check_tdesc_xml_convert): Add unittest function.
10546         (tdesc_get_features_xml): Add function to get xml.
10547         (maintenance_check_xml_descriptions): Test xml generation.
10548         * xml-tdesc.c (string_read_description_xml): Add function.
10549         * xml-tdesc.h (string_read_description_xml): Add declaration.
10550
10551 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10552
10553         * features/Makefile: Add feature marker to targets with new style
10554         target descriptions.
10555         * regformats/aarch64.dat: Regenerate.
10556         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10557         * regformats/i386/amd64-avx-linux.dat: Likewise.
10558         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10559         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10560         * regformats/i386/amd64-linux.dat: Likewise.
10561         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10562         * regformats/i386/amd64.dat: Likewise.
10563         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10564         * regformats/i386/i386-avx-linux.dat: Likewise.
10565         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10566         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10567         * regformats/i386/i386-linux.dat: Likewise.
10568         * regformats/i386/i386-mmx-linux.dat: Likewise.
10569         * regformats/i386/i386-mpx-linux.dat: Likewise.
10570         * regformats/i386/i386.dat: Likewise.
10571         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10572         * regformats/i386/x32-avx-linux.dat: Likewise.
10573         * regformats/i386/x32-linux.dat: Likewise.
10574         * regformats/tic6x-c62x-linux.dat: Likewise.
10575         * regformats/tic6x-c64x-linux.dat: Likewise.
10576         * regformats/tic6x-c64xp-linux.dat: Likewise.
10577         * regformats/regdat.sh: Parse feature marker.
10578
10579 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10580
10581         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
10582         (tdesc_osabi_name): Likewise.
10583         * target-descriptions.c (tdesc_architecture_name): Add new
10584         function.
10585         (tdesc_osabi_name): Likewise.
10586
10587 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10588
10589         * common/tdesc.c (tdesc_predefined_type): Move to here.
10590         (tdesc_named_type): Likewise.
10591         (tdesc_create_vector): Likewise.
10592         (tdesc_create_struct): Likewise.
10593         (tdesc_set_struct_size): Likewise.
10594         (tdesc_create_union): Likewise.
10595         (tdesc_create_flags): Likewise.
10596         (tdesc_create_enum): Likewise.
10597         (tdesc_add_field): Likewise.
10598         (tdesc_add_typed_bitfield): Likewise.
10599         (tdesc_add_bitfield): Likewise.
10600         (tdesc_add_flag): Likewise.
10601         (tdesc_add_enum_value): Likewise.
10602         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
10603         (struct tdesc_type_vector): Likewise.
10604         (struct tdesc_type_field): Likewise.
10605         (struct tdesc_type_with_fields): Likewise.
10606         (tdesc_create_enum): Add declaration.
10607         (tdesc_add_typed_bitfield): Likewise.
10608         (tdesc_add_enum_value): Likewise.
10609         * target-descriptions.c (tdesc_type_field): Move from here.
10610         (tdesc_type_builtin): Likewise.
10611         (tdesc_type_vector): Likewise.
10612         (tdesc_type_with_fields): Likewise.
10613         (tdesc_predefined_types): Likewise.
10614         (tdesc_named_type): Likewise.
10615         (tdesc_create_vector): Likewise.
10616         (tdesc_create_struct): Likewise.
10617         (tdesc_set_struct_size): Likewise.
10618         (tdesc_create_union): Likewise.
10619         (tdesc_create_flags): Likewise.
10620         (tdesc_create_enum): Likewise.
10621         (tdesc_add_field): Likewise.
10622         (tdesc_add_typed_bitfield): Likewise.
10623         (tdesc_add_bitfield): Likewise.
10624         (tdesc_add_flag): Likewise.
10625         (tdesc_add_enum_value): Likewise.
10626         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
10627         (tdesc_add_typed_bitfield): Likewise.
10628         (tdesc_add_enum_value): Likewise.
10629
10630 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10631
10632         * common/tdesc.c (tdesc_feature::accept): Move to here.
10633         (tdesc_feature::operator==): Likewise.
10634         (tdesc_create_reg): Likewise.
10635         * common/tdesc.h (tdesc_type_kind): Likewise.
10636         (struct tdesc_type): Likewise.
10637         (struct tdesc_feature): Likewise.
10638         * regformats/regdat.sh: Create a feature.
10639         * target-descriptions.c (tdesc_type_kind): Move from here.
10640         (tdesc_type): Likewise.
10641         (tdesc_type_up): Likewise.
10642         (tdesc_feature): Likewise.
10643         (tdesc_create_reg): Likewise.
10644
10645 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10646
10647         * Makefile.in: Add arch/tdesc.c
10648         * common/tdesc.c: New file.
10649         * common/tdesc.h (tdesc_element_visitor): Move to here.
10650         (tdesc_element): Likewise.
10651         (tdesc_reg): Likewise.
10652         (tdesc_reg_up): Likewise.
10653         * regformats/regdef.h (reg): Add offset to constructors.
10654         * target-descriptions.c (tdesc_element_visitor): Move from here.
10655         (tdesc_element): Likewise.
10656         (tdesc_reg): Likewise.
10657         (tdesc_reg_up): Likewise.
10658
10659 2018-04-17  Tom Tromey  <tom@tromey.com>
10660
10661         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
10662         discriminant field.
10663
10664 2018-04-17  Tom Tromey  <tom@tromey.com>
10665
10666         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
10667
10668 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10669
10670         * symtab.c (print_symbol_info): Skip printing filename and line
10671         number when `last' is NULL.
10672         (symtab_symbol_info): Use empty string instead of NULL for first
10673         invocation of print_symbol_info.
10674         (rbreak_command): Pass NULL to `last' parameter of
10675         print_symbol_info.
10676
10677 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
10678
10679         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
10680         instead of nullptr.
10681
10682 2018-04-16  Pedro Alves  <palves@redhat.com>
10683
10684         * MAINTAINERS (sh): Remove.
10685         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
10686         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
10687         (ALLDEPFILES): Remove sh64-tdep.c.
10688         * NEWS: Mentions that support for SH-5/SH64 is removed.
10689         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
10690         (sh*-*-openbsd*): Ditto.
10691         (sh64-*-elf*): Remove.
10692         (sh*): Remove.
10693         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
10694         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
10695         * sh-tdep.c: No longer include "sh64-tdep.h".
10696         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
10697         * sh64-tdep.c, sh64-tdep.h: Remove files.
10698
10699 2018-04-16  Pedro Alves  <palves@redhat.com>
10700
10701         * MAINTAINERS: Remove m88k.
10702         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
10703         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
10704         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
10705         * NEWS: Mention that support for m88k was removed.
10706         * configure.host (m88*-*-*): Remove support.
10707         * configure.nat (m88k-*-*): Remove support.
10708         * configure.tgt (m88*-*-openbsd*): Remove.
10709         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
10710
10711 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
10712
10713         * configure.tgt (x86_tobjs): New variable.
10714         (amd64_tobjs, i386_tobjs): Use it.
10715
10716 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10717
10718         * symtab.c (print_symbol_info): Precede the symbol definition by
10719         the line number when available.
10720         * NEWS: Advertise this enhancement.
10721
10722 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10723
10724         * NEWS (New options): announce set/show record btrace cpu.
10725         * btrace.c: Include record-btrace.h.
10726         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
10727         the vendor is unknown.
10728         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
10729         Maybe overwrite the btrace configuration's cpu.
10730         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
10731         (btrace_fetch): Add cpu parameter.  Update callers.
10732         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
10733         Maybe overwrite the btrace configuration's cpu.  Skip enabling
10734         errata workarounds if the vendor is unknown.
10735         * python/py-record-btrace.c: Include record-btrace.h.
10736         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
10737         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
10738         * record-btrace.c (record_btrace_cpu_state_kind): New.
10739         (record_btrace_cpu): New.
10740         (set_record_btrace_cpu_cmdlist): New.
10741         (record_btrace_get_cpu): New.
10742         (require_btrace_thread, record_btrace_info)
10743         (record_btrace_resume_thread): Call record_btrace_get_cpu.
10744         (cmd_set_record_btrace_cpu_none): New.
10745         (cmd_set_record_btrace_cpu_auto): New.
10746         (cmd_set_record_btrace_cpu): New.
10747         (cmd_show_record_btrace_cpu): New.
10748         (_initialize_record_btrace): Initialize set/show record btrace cpu
10749         commands.
10750         * record-btrace.h (record_btrace_get_cpu): New.
10751
10752 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10753
10754         * record.c (set_record_command): Fix typo in message.
10755
10756 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10757
10758         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
10759
10760 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10761
10762         * infrun.c (process_event_stop_test): Call
10763         gdbarch_in_indirect_branch_thunk.
10764         * gdbarch.sh (in_indirect_branch_thunk): New.
10765         * gdbarch.c: Regenerated.
10766         * gdbarch.h: Regenerated.
10767         * x86-tdep.h: New.
10768         * x86-tdep.c: New.
10769         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
10770         (HFILES_NO_SRCDIR): Add x86-tdep.h.
10771         (ALLDEPFILES): Add x86-tdep.c.
10772         * arch-utils.h (default_in_indirect_branch_thunk): New.
10773         * arch-utils.c (default_in_indirect_branch_thunk): New.
10774         * i386-tdep: Include x86-tdep.h.
10775         (i386_in_indirect_branch_thunk): New.
10776         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
10777         function.
10778         * amd64-tdep: Include x86-tdep.h.
10779         (amd64_in_indirect_branch_thunk): New.
10780         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
10781
10782 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
10783
10784         PR gdb/23053
10785         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
10786         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
10787         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
10788         regression.
10789
10790 2018-04-12  Tom Tromey  <tom@tromey.com>
10791
10792         * rust-lang.c (rust_print_struct_def): Remove univariant code.
10793         (rust_evaluate_subexp): Likewise.
10794
10795 2018-04-12  Pedro Alves  <palves@redhat.com>
10796
10797         * procfs.c (procfs_detach): Make forward declaration's prototype
10798         match definition's protototype.
10799         (proc_get_LDT_entry): Remove stale do_cleanups call.
10800
10801 2018-04-12  Pedro Alves  <palves@redhat.com>
10802
10803         * target.h (target_ops::to_has_exited): Delete.
10804         (target_has_exited): Delete.
10805         * target-delegates.c: Regenerate.
10806
10807 2018-04-11  Pedro Alves  <palves@redhat.com>
10808
10809         * target.c (fileio_fh_t::t): Add comment.
10810         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10811         (target_fileio_close): Handle a NULL target.
10812         (invalidate_fileio_fh): New.
10813         (target_close): Call it.
10814         * remote.c (remote_hostio_send_command): No longer check whether
10815         remote_desc is open.
10816
10817 2018-04-11  Pedro Alves  <palves@redhat.com>
10818
10819         * target.c (fileio_fh_t): Make it a named struct instead of a
10820         typedef.
10821         (fileio_fh_t::is_closed): New method.
10822         (DEF_VEC_O (fileio_fh_t)): Remove.
10823         (fileio_fhandles): Now a std::vector.
10824         (is_closed_fileio_fh): Delete.
10825         (acquire_fileio_fd): Adjust.  Rename parameters.
10826         (release_fileio_fd): Adjust.
10827         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
10828         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10829         (target_fileio_close): Adjust.
10830
10831 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
10832
10833         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
10834         index.
10835
10836 2018-04-10  Pedro Alves  <palves@redhat.com>
10837
10838         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
10839         (scoped_finish_thread_state): New class.
10840         * infcmd.c (run_command_1): Use it instead of finish_thread_state
10841         cleanup.
10842         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
10843         (fetch_inferior_event, normal_stop): Likewise.
10844         * thread.c (finish_thread_state_cleanup): Delete.
10845
10846 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10847             Pedro Alves  <palves@redhat.com>
10848
10849         * value.c: Include "selftest.h" and "common/array-view.h".
10850         (struct range) <operator ==>: New.
10851         (test_ranges_contain): New.
10852         (check_ranges_vector): New.
10853         (test_insert_into_bit_range_vector): New.
10854         (_initialize_values): Register selftests.
10855         * common/array-view.h (operator==, operator!=): New.
10856
10857 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10858
10859         * common/gdb_vecs.h (unordered_remove): Add overload that takes
10860         an iterator.
10861         * inline-frame.c: Include <algorithm>.
10862         (struct inline_state): Add constructor.
10863         (inline_state_s): Remove.
10864         (DEF_VEC_O(inline_state_s)): Remove.
10865         (inline_states): Change type to std::vector.
10866         (find_inline_frame_state): Adjust to std::vector.
10867         (allocate_inline_frame_state): Remove.
10868         (clear_inline_frame_state): Adjust to std::vector.
10869         (skip_inline_frames): Adjust to std::vector.
10870
10871 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10872
10873         * tracepoint.h (struct trace_state_variable): Add constructor.
10874         <name>: Change type to std::string.
10875         * tracepoint.c (tsv_s): Remove.
10876         (DEF_VEC_O(tsv_s)): Remove.
10877         (tvariables): Change to std::vector.
10878         (create_trace_state_variable): Adjust to std::vector.
10879         (find_trace_state_variable): Likewise.
10880         (find_trace_state_variable_by_number): Likewise.
10881         (delete_trace_state_variable): Likewise.
10882         (trace_variable_command): Adjust to std::string.
10883         (delete_trace_variable_command): Likewise.
10884         (tvariables_info_1): Adjust to std::vector.
10885         (save_trace_state_variables): Likewise.
10886         (start_tracing): Likewise.
10887         (merge_uploaded_trace_state_variables): Adjust to std::vector
10888         and std::string.
10889         * target.h (struct target_ops)
10890         <to_download_trace_state_variable>: Pass reference to
10891         trace_state_variable.
10892         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
10893         * target-delegates.c: Re-generate.
10894         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
10895         (mi_tsv_deleted): Likewise.
10896         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
10897         * remote.c (remote_download_trace_state_variable): Change
10898         pointer to reference and adjust.
10899         * make-target-delegates (parse_argtypes): Handle references.
10900         (write_function_header): Likewise.
10901         (munge_type): Likewise.
10902
10903 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10904
10905         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10906         string_view-selftests.c.
10907         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
10908         testsuite.
10909         * unittests/basic_string_view/cons/char/1.cc: Likewise.
10910         * unittests/basic_string_view/cons/char/2.cc: Likewise.
10911         * unittests/basic_string_view/cons/char/3.cc: Likewise.
10912         * unittests/basic_string_view/element_access/char/1.cc:
10913         Likewise.
10914         * unittests/basic_string_view/element_access/char/empty.cc:
10915         Likewise.
10916         * unittests/basic_string_view/element_access/char/front_back.cc:
10917         Likewise.
10918         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
10919         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
10920         Likewise.
10921         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
10922         Likewise.
10923         * unittests/basic_string_view/modifiers/swap/char/1.cc:
10924         Likewise.
10925         * unittests/basic_string_view/operations/compare/char/1.cc:
10926         Likewise.
10927         * unittests/basic_string_view/operations/compare/char/13650.cc:
10928         Likewise.
10929         * unittests/basic_string_view/operations/copy/char/1.cc:
10930         Likewise.
10931         * unittests/basic_string_view/operations/data/char/1.cc:
10932         Likewise.
10933         * unittests/basic_string_view/operations/find/char/1.cc:
10934         Likewise.
10935         * unittests/basic_string_view/operations/find/char/2.cc:
10936         Likewise.
10937         * unittests/basic_string_view/operations/find/char/3.cc:
10938         Likewise.
10939         * unittests/basic_string_view/operations/find/char/4.cc:
10940         Likewise.
10941         * unittests/basic_string_view/operations/rfind/char/1.cc:
10942         Likewise.
10943         * unittests/basic_string_view/operations/rfind/char/2.cc:
10944         Likewise.
10945         * unittests/basic_string_view/operations/rfind/char/3.cc:
10946         Likewise.
10947         * unittests/basic_string_view/operations/substr/char/1.cc:
10948         Likewise.
10949         * unittests/basic_string_view/operators/char/2.cc: Likewise.
10950         * unittests/string_view-selftests.c: New file.
10951
10952 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10953
10954         * unittests/basic_string_view/capacity/1.cc: New file.
10955         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
10956         * unittests/basic_string_view/cons/char/1.cc: New file.
10957         * unittests/basic_string_view/cons/char/2.cc: New file.
10958         * unittests/basic_string_view/cons/char/3.cc: New file.
10959         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
10960         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
10961         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
10962         * unittests/basic_string_view/element_access/char/1.cc: New file.
10963         * unittests/basic_string_view/element_access/char/2.cc: New file.
10964         * unittests/basic_string_view/element_access/char/empty.cc: New file.
10965         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
10966         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
10967         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
10968         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
10969         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
10970         * unittests/basic_string_view/include.cc: New file.
10971         * unittests/basic_string_view/inserters/char/1.cc: New file.
10972         * unittests/basic_string_view/inserters/char/2.cc: New file.
10973         * unittests/basic_string_view/inserters/char/3.cc: New file.
10974         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
10975         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
10976         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
10977         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
10978         * unittests/basic_string_view/literals/types.cc: New file.
10979         * unittests/basic_string_view/literals/values.cc: New file.
10980         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
10981         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
10982         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
10983         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
10984         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
10985         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
10986         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
10987         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
10988         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
10989         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
10990         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
10991         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
10992         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
10993         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
10994         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
10995         * unittests/basic_string_view/operations/data/char/1.cc: New file.
10996         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
10997         * unittests/basic_string_view/operations/find/char/1.cc: New file.
10998         * unittests/basic_string_view/operations/find/char/2.cc: New file.
10999         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11000         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11001         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11002         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11003         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11004         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11005         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11006         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11007         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11008         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11009         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11010         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11011         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11012         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11013         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11014         * unittests/basic_string_view/operators/char/2.cc: New file.
11015         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11016         * unittests/basic_string_view/range_access/char/1.cc: New file.
11017         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11018         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11019         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11020         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11021         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11022         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11023         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11024         * unittests/basic_string_view/typedefs.cc: New file.
11025         * unittests/basic_string_view/types/1.cc: New file.
11026
11027 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11028
11029         * common/gdb_string_view.h: Remove libstdc++ implementation
11030         details, adjust to gdb reality.
11031         * common/gdb_string_view.tcc: Likewise.
11032         * cli/cli-script.c (struct string_view): Remove.
11033         (user_args) <m_args>: Change element type to gdb::string_view.
11034         (user_args::insert_args): Adjust.
11035
11036 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11037
11038         * common/gdb_string_view.h: New file.
11039         * common/gdb_string_view.tcc: New file.
11040
11041 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11042
11043         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11044         * configure: Re-generate.
11045
11046 2018-04-09  Pedro Alves  <palves@redhat.com>
11047
11048         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11049         (set_target_gdbarch): Call
11050         gdb::observers::architecture_changed.notify instead of
11051         observer_notify_architecture_changed.
11052
11053 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11054
11055         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11056         (do_restore_current_traceframe_cleanup): Remove.
11057         (restore_current_traceframe_cleanup_dtor): Remove.
11058         (make_cleanup_restore_current_traceframe): Remove.
11059         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11060         New.
11061         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11062         * infrun.c (fetch_inferior_event): Use
11063         scoped_restore_current_traceframe.
11064
11065 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11066
11067         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11068         Remove.
11069         <n_allocated_type_units>: Remove.
11070         <all_type_units>: Change to std::vector.
11071         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11072         to std::vector change.
11073         (dwarf2_per_objfile::get_cutu): Likewise.
11074         (dwarf2_per_objfile::get_tu): Likewise.
11075         (create_signatured_type_table_from_index): Likewise.
11076         (create_signatured_type_table_from_debug_names): Likewise.
11077         (dw2_symtab_iter_next): Likewise.
11078         (dw2_print_stats): Likewise.
11079         (dw2_expand_all_symtabs): Likewise.
11080         (dw2_expand_marked_cus): Likewise.
11081         (dw2_debug_names_iterator::next): Likewise.
11082         (dwarf2_initialize_objfile): Likewise.
11083         (add_signatured_type_cu_to_table): Likewise.
11084         (create_all_type_units): Likewise.
11085         (add_type_unit): Likewise.
11086         (struct tu_abbrev_offset): Add constructor.
11087         (build_type_psymtabs_1): Adjust to std::vector change.
11088         (print_tu_stats): Likewise.
11089         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11090         (write_debug_names): Likewise.
11091
11092 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11093
11094         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11095         Make an std::vector.
11096         <n_comp_units>: Remove.
11097         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11098         to std::vector change.
11099         (dwarf2_per_objfile::get_cutu): Likewise.
11100         (dwarf2_per_objfile::get_cu): Likewise.
11101         (create_cus_from_index): Likewise.
11102         (create_addrmap_from_index): Likewise.
11103         (create_addrmap_from_aranges): Likewise.
11104         (dwarf2_read_index): Likewise.
11105         (dw2_find_last_source_symtab): Likewise.
11106         (dw2_map_symtabs_matching_filename): Likewise.
11107         (dw2_symtab_iter_next): Likewise.
11108         (dw2_print_stats): Likewise.
11109         (dw2_expand_all_symtabs): Likewise.
11110         (dw2_expand_symtabs_with_fullname): Likewise.
11111         (dw2_expand_marked_cus): Likewise.
11112         (dw2_map_symbol_filenames): Likewise.
11113         (create_cus_from_debug_names): Likewise.
11114         (dwarf2_read_debug_names): Likewise.
11115         (dw2_debug_names_iterator::next): Likewise.
11116         (dwarf2_initialize_objfile): Likewise.
11117         (set_partial_user): Likewise.
11118         (dwarf2_build_psymtabs_hard): Likewise.
11119         (read_comp_units_from_section): Remove arguments, adjust to
11120         std::vector change.
11121         (create_all_comp_units): Adjust to std::vector and
11122         read_comp_units_from_section changes.
11123         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11124         change.
11125         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11126         (psyms_seen_size): Likewise.
11127         (write_gdbindex): Likewise.
11128         (write_debug_names): Likewise.
11129
11130 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11131
11132         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11133         with dwarf2_per_objfile.
11134         (create_cus_from_index): Likewise.
11135         (create_signatured_type_table_from_index): Likewise.
11136         (dwarf2_read_index): Likewise.
11137         (dwarf2_initialize_objfile): Likewise.
11138         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11139         per_cu rather than get_dwarf2_per_objfile.
11140
11141 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11142
11143         * dwarf2read.h (struct signatured_type): Forward declare.
11144         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11145         New methods.
11146         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11147         (dw2_get_cutu): ...this.
11148         (dwarf2_per_objfile::get_cu): Rename from...
11149         (dw2_get_cu): ...this.
11150         (dwarf2_per_objfile::get_tu): New.
11151         (create_addrmap_from_index): Adjust.
11152         (create_addrmap_from_aranges): Adjust.
11153         (dw2_find_last_source_symtab): Adjust.
11154         (dw2_map_symtabs_matching_filename): Adjust.
11155         (dw2_symtab_iter_next): Adjust.
11156         (dw2_print_stats): Adjust.
11157         (dw2_expand_all_symtabs): Adjust.
11158         (dw2_expand_symtabs_with_fullname): Adjust.
11159         (dw2_expand_marked_cus): Adjust.
11160         (dw_expand_symtabs_matching_file_matcher): Adjust.
11161         (dw2_map_symbol_filenames): Adjust.
11162         (dw2_debug_names_iterator::next): Adjust.
11163         (dwarf2_initialize_objfile): Adjust.
11164         (set_partial_user): Adjust.
11165         (dwarf2_build_psymtabs_hard): Adjust.
11166
11167 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11168
11169         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11170         Remove unused variables.
11171         (dw2_map_symtabs_matching_filename): Likewise.
11172         (dwarf2_record_block_ranges): Likewise.
11173         (dwarf2_read_addr_index): Likewise.
11174         (follow_die_offset): Likewise.
11175
11176 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11177
11178         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11179         to symbol_file_add_main.
11180
11181 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11182
11183         PR mi/22299
11184         * mi/mi-console.c (do_fputc_async_safe): New.
11185         (mi_console_file::write_async_safe): New.
11186         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11187         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11188         New.
11189         * ui-file.c (ui_file::putstrn): Adjust call to
11190         fputstrn_unfiltered.
11191         * utils.c (printchar): Replace do_fputs and do_fprintf
11192         parameters by do_fputc.
11193         (fputstr_filtered): Adjust call to printchar.
11194         (fputstr_unfiltered): Likewise.
11195         (fputstrn_filtered): Likewise.
11196         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11197         printchar.
11198         * utils.h (do_fputc_ftype): New typedef.
11199         (fputstrn_unfiltered): Add do_fputc parameter.
11200
11201 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11202
11203         * regformats/i386/i386-avx.dat: Remove.
11204
11205 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11206
11207         PR gdb/22979
11208         * amd64-tdep.c (amd64_none_init_abi): New function.
11209         (amd64_x32_none_init_abi): New function.
11210         (_initialize_amd64_tdep): Register handlers for x86-64 and
11211         x64_32 with GDB_OSABI_NONE.
11212         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11213         GDB_OSABI_NONE osabi.
11214
11215 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11216
11217         PR gdb/22980
11218         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11219         GDB_OSABI_NONE.
11220         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11221         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11222
11223 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11224
11225         * common/byte-vector.h (char_vector): New type.
11226         * target.h (target_read_alloc): Return
11227         gdb::optional<byte_vector>.
11228         (target_read_stralloc): Return gdb::optional<char_vector>.
11229         (target_get_osdata): Return gdb::optional<char_vector>.
11230         * target.c (target_read_alloc_1): Templatize.  Replacement
11231         manual memory management with vector.
11232         (target_read_alloc): Change return type, adjust.
11233         (target_read_stralloc): Change return type, adjust.
11234         (target_get_osdata): Change return type, adjust.
11235         * auxv.c (struct auxv_info) <length>: Remove.
11236         <data>: Change type to gdb::optional<byte_vector>.
11237         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11238         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11239         (target_auxv_search): Adjust.
11240         (fprint_target_auxv): Adjust.
11241         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11242         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11243         (linux_make_corefile_notes): Adjust.
11244         * osdata.c (get_osdata): Adjust.
11245         * remote.c (remote_get_threads_with_qxfer): Adjust.
11246         (remote_memory_map): Adjust.
11247         (remote_traceframe_info): Adjust.
11248         (btrace_read_config): Adjust.
11249         (remote_read_btrace): Adjust.
11250         (remote_pid_to_exec_file): Adjust.
11251         * solib-aix.c (solib_aix_get_library_list): Adjust.
11252         * solib-dsbt.c (decode_loadmap): Don't free buf.
11253         (dsbt_get_initial_loadmaps): Adjust.
11254         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11255         * solib-target.c (solib_target_current_sos): Adjust.
11256         * tracepoint.c (sdata_make_value): Adjust.
11257         * xml-support.c (xinclude_start_include): Adjust.
11258         (xml_fetch_content_from_file): Adjust.
11259         * xml-support.h (xml_fetch_another): Change return type.
11260         (xml_fetch_content_from_file): Change return type.
11261         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11262         * xml-tdesc.c (file_read_description_xml): Adjust.
11263         (fetch_available_features_from_target): Change return type.
11264         (target_fetch_description_xml): Adjust.
11265         (target_read_description_xml): Adjust.
11266
11267 2018-04-06  Tom Tromey  <tom@tromey.com>
11268
11269         * value.c (~value): Update.
11270         (struct value) <contents>: Now unique_xmalloc_ptr.
11271         (value_contents_bits_eq, allocate_value_contents)
11272         (value_contents_raw, value_contents_all_raw)
11273         (value_contents_for_printing, value_contents_for_printing_const)
11274         (set_value_enclosing_type): Update.
11275
11276 2018-04-06  Tom Tromey  <tom@tromey.com>
11277
11278         * value.c (range_s): Remove typedef, VEC.
11279         (struct range): Add operator<.
11280         (range_lessthan): Remove.
11281         (ranges_contain): Change type.
11282         (~value): Update.
11283         (struct value) <unavailable, optimized_out>: Now std::vector.
11284         (value_entirely_available)
11285         (value_entirely_covered_by_range_vector)
11286         (value_entirely_unavailable, value_entirely_optimized_out):
11287         Update.
11288         (insert_into_bit_range_vector): Change argument type.
11289         (find_first_range_overlap): Likewise.
11290         (struct ranges_and_idx, value_contents_bits_eq)
11291         (require_not_optimized_out, require_available): Update.
11292         (ranges_copy_adjusted): Change argument types.
11293         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11294
11295 2018-04-06  Tom Tromey  <tom@tromey.com>
11296
11297         * value.c (~value): Update.
11298         (struct value) <parent>: Now a value_ref_ptr.
11299         (value_parent, set_value_parent, value_address, value_copy):
11300         Update.
11301
11302 2018-04-06  Tom Tromey  <tom@tromey.com>
11303
11304         * value.c (struct value): Add constructor, destructor, and member
11305         initializers.
11306         (allocate_value_lazy, value_decref): Update.
11307
11308 2018-04-06  Tom Tromey  <tom@tromey.com>
11309
11310         * value.c (struct value) <released, next>: Remove.
11311         (all_values): Now a std::vector.
11312         (allocate_value_lazy): Update.
11313         (value_next): Remove.
11314         (value_mark, value_free_to_mark, release_value)
11315         (value_release_to_mark): Update.
11316
11317 2018-04-06  Tom Tromey  <tom@tromey.com>
11318
11319         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11320         (free_value_chain): Remove.
11321         * value.c (free_value_chain): Remove.
11322         (value_release_to_mark): Return a std::vector.
11323         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11324         std::vector.
11325         (check_condition): Update.
11326         * eval.c (fetch_subexp_value): Change "val_chain" to a
11327         std::vector.
11328         * breakpoint.c (update_watchpoint): Update.
11329         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11330
11331 2018-04-06  Tom Tromey  <tom@tromey.com>
11332
11333         * value.h (free_all_values): Remove.
11334         * value.c (free_all_values): Remove.
11335
11336 2018-04-06  Tom Tromey  <tom@tromey.com>
11337
11338         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11339         (value_history_chain, value_history_count): Remove.
11340         (value_history): New global.
11341         (record_latest_value, access_value_history, show_values)
11342         (preserve_values): Update.
11343
11344 2018-04-06  Tom Tromey  <tom@tromey.com>
11345
11346         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11347         * varobj.c (varobj_set_display_format, varobj_set_value)
11348         (install_default_visualizer, construct_visualizer)
11349         (install_new_value, ~varobj, varobj_get_value_type)
11350         (my_value_of_variable, varobj_editable_p): Update.
11351         * c-varobj.c (c_describe_child, c_value_of_variable)
11352         (cplus_number_of_children, cplus_describe_child): Update.
11353         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11354         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11355         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11356
11357 2018-04-06  Tom Tromey  <tom@tromey.com>
11358
11359         * printcmd.c (last_examine_address): Change type to
11360         value_ref_ptr.
11361         (do_examine, x_command): Update.
11362
11363 2018-04-06  Tom Tromey  <tom@tromey.com>
11364
11365         * value.c (release_value): Update.
11366         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11367         (struct bpstats) <val>: Now a value_ref_ptr.
11368         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11369         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11370         (~watchpoint, print_it_watchpoint, watch_command_1)
11371         (invalidate_bp_value_on_memory_change): Update.
11372
11373 2018-04-06  Tom Tromey  <tom@tromey.com>
11374
11375         * varobj.c (varobj_clear_saved_item)
11376         (update_dynamic_varobj_children, install_new_value, ~varobj):
11377         Update.
11378         * value.h (value_incref): Move declaration earlier.
11379         (value_decref): Rename from value_free.
11380         (struct value_ref_policy): New.
11381         (value_ref_ptr): New typedef.
11382         (struct value_deleter): Remove.
11383         (gdb_value_up): Remove typedef.
11384         (release_value): Change return type.
11385         (release_value_or_incref): Remove.
11386         * value.c (set_value_parent): Update.
11387         (value_incref): Change return type.
11388         (value_decref): Rename from value_free.
11389         (value_free_to_mark, free_all_values, free_value_chain): Update.
11390         (release_value): Return value_ref_ptr.
11391         (release_value_or_incref): Remove.
11392         (record_latest_value, set_internalvar, clear_internalvar):
11393         Update.
11394         * stack.c (info_frame_command): Don't call value_free.
11395         * python/py-value.c (valpy_dealloc, valpy_new)
11396         (value_to_value_object): Update.
11397         * printcmd.c (do_examine): Update.
11398         * opencl-lang.c (lval_func_free_closure): Update.
11399         * mi/mi-main.c (register_changed_p): Don't call value_free.
11400         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11401         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11402         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11403         value_free.
11404         * guile/scm-value.c (vlscm_free_value_smob)
11405         (vlscm_scm_from_value): Update.
11406         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11407         (frame_unwind_register_unsigned, get_frame_register_bytes)
11408         (put_frame_register_bytes): Don't call value_free.
11409         * findvar.c (address_from_register): Don't call value_free.
11410         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11411         * dwarf2loc.c (entry_data_value_free_closure)
11412         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11413         (dwarf2_evaluate_loc_desc_full): Update.
11414         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11415         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11416         (~watchpoint, watch_command_1)
11417         (invalidate_bp_value_on_memory_change): Update.
11418         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11419
11420 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11421
11422         PR gdb/23022
11423         * warning.m4: Add -Wno-error=deprecated-register.
11424         * configure: Re-generate.
11425
11426 2018-04-05  Tom Tromey  <tom@tromey.com>
11427
11428         * linespec.h: Remove include of "vec.h".
11429
11430 2018-04-05  Tom Tromey  <tom@tromey.com>
11431
11432         * linespec.c (typep): Remove typedef.
11433         (find_methods, find_superclass_methods): Take a std::vector.
11434         (find_method): Use std::vector.
11435
11436 2018-04-05  Tom Tromey  <tom@tromey.com>
11437
11438         * utils.c (compare_strings): Remove.
11439         * utils.h (compare_strings): Remove.
11440         * objc-lang.h (find_imps): Update.
11441         * objc-lang.c (find_methods): Take a std::vector.
11442         (uniquify_strings, find_imps): Likewise.
11443         * linespec.c (find_methods): Take a std::vector.
11444         (decode_objc): Use std::vector.
11445         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11446         a std::vector.
11447         (find_method, find_function_symbols): Use std::vector.
11448
11449 2018-04-05  Tom Tromey  <tom@tromey.com>
11450
11451         * completer.c (completion_tracker::completion_tracker): Remove
11452         cast.
11453         (completion_tracker::discard_completions): Likewise.
11454         * breakpoint.c (ambiguous_names_p): Remove cast.
11455         * ada-lang.c (_initialize_ada_language): Remove cast.
11456         * utils.h (streq): Update.
11457         (streq_hash): Add new declaration.
11458         * utils.c (streq): Return bool.
11459         (streq_hash): New function.
11460
11461 2018-04-05  Tom Tromey  <tom@tromey.com>
11462
11463         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11464         Remove a string copy.
11465
11466 2018-04-05  Tom Tromey  <tom@tromey.com>
11467
11468         * linespec.c (filter_results): Use std::vector.
11469         (decode_line_2, decode_line_full): Update.
11470
11471 2018-04-05  Tom Tromey  <tom@tromey.com>
11472
11473         * linespec.c (canonical_to_fullform): Return std::string.
11474         (filter_results): Update.
11475         (struct decode_line_2_item): Add constructor.
11476         <fullform, displayform>: Now std::string.
11477         (decode_line_2_compare_items): Now a std::sort comparator.
11478         (decode_line_2): Update.
11479
11480 2018-04-05  Tom Tromey  <tom@tromey.com>
11481
11482         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11483         (unexpected_linespec_error): Update.
11484         (linespec_parse_basic, parse_linespec): Update.
11485
11486 2018-04-05  Tom Tromey  <tom@tromey.com>
11487
11488         * linespec.c (linespec_parse_basic): Reindent.
11489
11490 2018-04-05  Tom Tromey  <tom@tromey.com>
11491
11492         * minsyms.h (iterate_over_minimal_symbols): Update.
11493         * minsyms.c (iterate_over_minimal_symbols): Take a
11494         gdb::function_view.
11495         * linespec.c (struct collect_minsyms): Remove.
11496         (compare_msyms): Now a std::sort comparator.
11497         (add_minsym): Add parameters.
11498         (search_minsyms_for_name): Update.  Use std::vector.
11499
11500 2018-04-03  Tom Tromey  <tom@tromey.com>
11501
11502         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11503         gdb::byte_vector.
11504
11505 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11506
11507         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11508
11509 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11510
11511         PR gdb/16959
11512         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11513         printing static type.
11514
11515 2018-04-01  Tom Tromey  <tom@tromey.com>
11516
11517         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11518         (rs6000_xfer_shared_libraries): Update.
11519
11520 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11521
11522         * common/gdb_vecs.h (char_ptr): Remove.
11523         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11524
11525 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11526
11527         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11528         with std::vector.
11529         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11530
11531 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11532
11533         * tracepoint.h (struct uploaded_tp): Initialize fields.
11534         <actions, step_actions, cmd_strings>: Change type to
11535         std::vector<char *>.
11536         * tracepoint.c (get_uploaded_tp): Allocate with new.
11537         (free_uploaded_tps): Free with delete.
11538         (parse_tracepoint_definition): Adjust to std::vector change.
11539         * breakpoint.c (read_uploaded_action): Likewise.
11540         (create_tracepoint_from_upload): Likewise.
11541         * ctf.c (ctf_write_uploaded_tp): Likewise.
11542         (SET_ARRAY_FIELD): Likewise.
11543         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11544
11545 2018-03-30  Tom Tromey  <tom@tromey.com>
11546
11547         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11548         std::unique_ptr.
11549         (svr4_keep_data_in_core): Update.
11550         (svr4_read_so_list): Update.
11551
11552 2018-03-30  Tom Tromey  <tom@tromey.com>
11553
11554         * windows-nat.c (handle_output_debug_string, handle_exception):
11555         Update.
11556         * target.h (target_read_string): Update.
11557         * target.c (target_read_string): Change "string" to
11558         unique_xmalloc_ptr.
11559         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11560         Update.
11561         * solib-frv.c (frv_current_sos): Update.
11562         * solib-dsbt.c (dsbt_current_sos): Update.
11563         * solib-darwin.c (darwin_current_sos): Update.
11564         * linux-thread-db.c (inferior_has_bug): Update.
11565         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11566         Update.  Remove alloca.
11567         * ada-lang.c (ada_main_name): Update.
11568
11569 2018-03-30  Tom Tromey  <tom@tromey.com>
11570
11571         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11572         (struct dwo_file_deleter): New.
11573         (dwo_file_up): New typedef.
11574         (open_and_init_dwo_file): Use dwo_file_up.
11575         (free_dwo_file_cleanup): Remove.
11576
11577 2018-03-30  Tom Tromey  <tom@tromey.com>
11578
11579         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
11580         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
11581
11582 2018-03-30  Tom Tromey  <tom@tromey.com>
11583
11584         * dwarf2read.c (class free_cached_comp_units): New class.
11585         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
11586         (free_cached_comp_units): Remove function.
11587
11588 2018-03-30  Tom Tromey  <tom@tromey.com>
11589
11590         * utils.h (make_cleanup_unpush_target): Remove.
11591         * inf-ptrace.c (struct target_unpusher): New.
11592         (target_unpush_up) New typedef.
11593         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
11594         target_unpush_up.
11595         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
11596
11597 2018-03-27  Tom Tromey  <tom@tromey.com>
11598
11599         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
11600
11601 2018-03-27  Pedro Alves  <palves@redhat.com>
11602             Tom Tromey  <tom@tromey.com>
11603
11604         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
11605         destructor.  Now a class.
11606         (gdb_readline_wrapper_cleanup): Remove function.
11607         (gdb_readline_wrapper): Remove cleanups.
11608
11609 2018-03-27  Tom Tromey  <tom@tromey.com>
11610
11611         * typeprint.h (struct type_print_options) <local_typedefs,
11612         global_typedefs>: Remove "struct" keyword.
11613         (class typedef_hash_table): New class.
11614         (recursively_update_typedef_hash, add_template_parameters)
11615         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
11616         (find_typedef_in_hash): Don't declare.
11617         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
11618         (typedef_hash_table::recursively_update): Rename from
11619         recursively_update_typedef_hash.  Now a member.
11620         (typedef_hash_table::add_template_parameters): Rename from
11621         add_template_parameters.  Now a member.
11622         (typedef_hash_table::typedef_hash_table): Now a constructor;
11623         rename from create_typedef_hash.
11624         (typedef_hash_table::~typedef_hash_table): Now a destructor;
11625         rename from free_typedef_hash.
11626         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
11627         (do_free_global_table): Remove.
11628         (typedef_hash_table::typedef_hash_table): New constructor; renamed
11629         from copy_type_recursive.
11630         (create_global_typedef_table): Remove.
11631         (typedef_hash_table::find_global_typedef): Now a member of
11632         typedef_hash_table.
11633         (typedef_hash_table::find_typedef): Rename from
11634         find_typedef_in_hash; now a member.
11635         (whatis_exp): Update.
11636         * extension.h (struct ext_lang_type_printers): Add constructor and
11637         destructor.
11638         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
11639         declare.
11640         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
11641         Now a constructor; rename from start_ext_lang_type_printers.
11642         (ext_lang_type_printers): Now a destructor; rename from
11643         free_ext_lang_type_printers.
11644         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
11645         Update.
11646         (c_type_print_base_struct_union): Update.  Remove cleanups.
11647
11648 2018-03-27  Tom Tromey  <tom@tromey.com>
11649
11650         * dwarf-index-write.c: Include <cmath>.
11651
11652 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11653
11654         * NEWS: Add entry describing new "set|show varsize-limit" command.
11655         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
11656         command.
11657         * printcmd.c (_initialize_printcmd): Add "set var" alias of
11658         "set variable".
11659
11660 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
11661
11662         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
11663         dwarf-index-write.c
11664         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
11665         * dwarf-index-common.c: New file.
11666         * dwarf-index-common.h: New file.
11667         * dwarf-index-write.c: New file.
11668         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
11669         (struct dwarf2_section_info): Move from here.
11670         (dwarf2_section_info_def): Likewise.
11671         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
11672         (offset_type): Likewise.
11673         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
11674         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
11675         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
11676         (byte_swap): Likewise.
11677         (MAYBE_SWAP): Likewise.
11678         (dwarf2_per_cu_ptr): Likewise.
11679         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
11680         (struct tu_stats): Likewise.
11681         (struct dwarf2_per_objfile): Likewise.
11682         (struct dwarf2_per_cu_data): Likewise.
11683         (struct signatured_type): Likewise.
11684         (sig_type_ptr): Likewise.
11685         (DEF_VEC_P (sig_type_ptr)): Likewise.
11686         (INDEX4_SUFFIX): Likewise.
11687         (INDEX5_SUFFIX): Likewise.
11688         (DEBUG_STR_SUFFIX): Likewise.
11689         (dwarf2_read_section): Make non-static.
11690         (mapped_index_string_hash): Move from here.
11691         (dwarf5_djb_hash): Likewise.
11692         (file_write): Likewise.
11693         (class data_buf): Likewise.
11694         (struct symtab_index_entry): Likewise.
11695         (struct mapped_symtab): Likewise.
11696         (find_slot): Likewise.
11697         (hash_expand): Likewise.
11698         (add_index_entry): Likewise.
11699         (uniquify_cu_indices): Likewise.
11700         (class c_str_view): Likewise.
11701         (class c_str_view_hasher): Likewise.
11702         (class vector_hasher): Likewise.
11703         (write_hash_table): Likewise.
11704         (psym_index_map): Likewise.
11705         (struct addrmap_index_data): Likewise.
11706         (add_address_entry): Likewise.
11707         (add_address_entry_worker): Likewise.
11708         (write_address_map): Likewise.
11709         (symbol_kind): Likewise.
11710         (write_psymbols): Likewise.
11711         (struct signatured_type_index_data): Likewise.
11712         (write_one_signatured_type): Likewise.
11713         (recursively_count_psymbols): Likewise.
11714         (recursively_write_psymbols): Likewise.
11715         (class debug_names): Likewise.
11716         (check_dwarf64_offsets): Likewise.
11717         (psyms_seen_size): Likewise.
11718         (write_gdbindex): Likewise.
11719         (write_debug_names): Likewise.
11720         (assert_file_size): Likewise.
11721         (write_psymtabs_to_index): Likewise.
11722         (save_gdb_index_command): Likewise.
11723         (_initialize_dwarf2_read): Don't register the "save gdb-index"
11724         command.
11725         * dwarf2read.h: New file.
11726
11727 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11728
11729         PR gdb/22670
11730         * dwarf2read.c (dwarf2_physname): Do not return the demangled
11731         symbol name if the CU's language stores symbol names in linkage
11732         format.
11733         * language.h (struct language_defn)
11734         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
11735         all instances of this struct.
11736
11737 2018-03-26  Tom Tromey  <tom@tromey.com>
11738
11739         * stack.c (backtrace_command_1): Remove verbose code.
11740
11741 2018-03-26  Tom Tromey  <tom@tromey.com>
11742
11743         * python/py-framefilter.c (py_print_type): Don't catch
11744         exceptions.  Return void.
11745         (py_print_value): Likewise.
11746         (py_print_single_arg): Likewise.
11747         (enumerate_args): Don't catch exceptions.
11748         (py_print_args): Likewise.
11749         (py_print_frame): Likewise.
11750         (gdbpy_apply_frame_filter): Catch exceptions here.
11751
11752 2018-03-26  Tom Tromey  <tom@tromey.com>
11753
11754         * stack.c (_initialize_stack): Remove trailing newlines from help
11755         text.  Add "Usage" line to "backtrace" help.
11756
11757 2018-03-26  Tom Tromey  <tom@tromey.com>
11758
11759         PR python/16486:
11760         * python/py-framefilter.c (py_print_args): Call wrap_hint.
11761
11762 2018-03-26  Tom Tromey  <tom@tromey.com>
11763
11764         * python/py-framefilter.c (py_print_single_arg): Return
11765         EXT_LANG_BT_ERROR from catch.
11766
11767 2018-03-26  Tom Tromey  <tom@tromey.com>
11768
11769         PR backtrace/15584:
11770         * stack.c (backtrace_command_1): Move some code into no-filters
11771         "if".
11772
11773 2018-03-26  Tom Tromey  <tom@tromey.com>
11774
11775         * python/py-framefilter.c (throw_quit_or_print_exception): New
11776         function.
11777         (gdbpy_apply_frame_filter): Use it.
11778
11779 2018-03-26  Tom Tromey  <tom@tromey.com>
11780
11781         PR cli/17716:
11782         * python/py-framefilter.c (py_print_type, py_print_value)
11783         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
11784         RETURN_MASK_ERROR.
11785
11786 2018-03-26  Tom Tromey  <tom@tromey.com>
11787
11788         * python/py-framefilter.c (enumerate_args): Use
11789         gdb::unique_xmalloc_ptr.
11790
11791 2018-03-26  Tom Tromey  <tom@tromey.com>
11792
11793         * python/py-framefilter.c (py_print_frame): Return
11794         EXT_LANG_BT_OK.
11795         (gdbpy_apply_frame_filter): Update comment.
11796         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
11797         Remove.
11798         <EXT_LANG_BT_NO_FILTERS>: Change value.
11799
11800 2018-03-26  Tom Tromey  <tom@tromey.com>
11801
11802         PR backtrace/15582:
11803         * stack.c (backtrace_command): Parse "hide" argument.
11804         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
11805         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
11806         constant.
11807
11808 2018-03-26  Tom Tromey  <tom@tromey.com>
11809
11810         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
11811         add "flags".
11812         (backtrace_command): Remove "fulltrace", add "flags".
11813
11814 2018-03-26  Tom Tromey  <tom@tromey.com>
11815
11816         * stack.c (backtrace_command): Rewrite command line parsing.
11817
11818 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11819
11820         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
11821
11822 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11823
11824         * filename-seen-cache.h: Add include guard.
11825
11826 2018-03-26  Keith Seitz  <keiths@redhat.com>
11827
11828         * symfile.c (place_section): Remove "struct" from section_addr_info
11829         in comment.
11830         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
11831         "struct" keyword from section_addr_info.
11832
11833 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
11834
11835         * regformats/regdef.h (reg): Add constructors.
11836
11837 2018-03-25  Pedro Alves  <palves@redhat.com>
11838
11839         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
11840         if then/else bodies in var_func_name extraction.
11841
11842 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
11843
11844         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
11845         lookup_minimal_symbol() to find symbol entry.
11846         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
11847
11848 2018-03-23  Keith Seitz  <keiths@redhat.com>
11849
11850         PR c++/22968
11851         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
11852         nested type definitions for C++, too.
11853
11854 2018-03-23  Tom Tromey  <tom@tromey.com>
11855
11856         * machoread.c (struct oso_el): Add a constructor.  Don't define as
11857         a typedef.
11858         (macho_register_oso): Remove.
11859         (macho_symtab_read): Take a std::vector.
11860         (oso_el_compare_name): Now a std::sort comparator.
11861         (macho_symfile_read_all_oso): Take a std::vector.
11862         (macho_symfile_read): Use std::vector.  Remove cleanups.
11863
11864 2018-03-22  Tom Tromey  <tom@tromey.com>
11865
11866         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
11867         (record_full_goto_bookmark): Use std::string.
11868
11869 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11870
11871         PR tdep/18295
11872         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
11873         a single mask.
11874
11875 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11876
11877         * rs6000-tdep.c (store_insn_p): New function.
11878         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
11879         and cr_reg to their unshifted values. Use store_insn_p to
11880         match LR saves using either R1 or fdata->alloca_reg. Use
11881         store_insn_p to match CR saves. Set alloca_reg_offset
11882         when alloca_reg and framep are set. Remove lr_reg shift
11883         when assigning to fdata->lr_register.
11884
11885 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11886
11887         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
11888         command line args instead of emitting a warning.
11889
11890 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11891
11892         * tracepoint.h (struct static_tracepoint_marker): Initialize
11893         fields, define default constructor, move constructor and move
11894         assignment, disable the rest.
11895         <str_id, extra>: Make std::string.
11896         (release_static_tracepoint_marker): Remove.
11897         (free_current_marker): Remove.
11898         * tracepoint.c (free_current_marker): Remove.
11899         (parse_static_tracepoint_marker_definition): Adjust to
11900         std::string, use new hex2str overload.
11901         (release_static_tracepoint_marker): Remove.
11902         (print_one_static_tracepoint_marker): Get marker by reference
11903         and adjust to std::string.
11904         (info_static_tracepoint_markers_command): Adjust to std::vector
11905         changes
11906         * target.h (static_tracepoint_marker_p): Remove typedef.
11907         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
11908         (struct target_ops) <to_static_tracepoint_marker_at>: Return
11909         bool.
11910         <to_static_tracepoint_markers_by_strid>: Return std::vector.
11911         * target-debug.h
11912         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
11913         (target_debug_print_std_vector_static_tracepoint_marker): New.
11914         (target_debug_print_struct_static_tracepoint_marker_p): Rename
11915         to...
11916         (target_debug_print_static_tracepoint_marker_p): ... this.
11917         * target-delegates.c: Re-generate.
11918         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
11919         Make std::string.
11920         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
11921         (decode_static_tracepoint_spec): Adjust to std::vector.
11922         (tracepoint_print_one_detail): Adjust to std::string.
11923         (strace_marker_decode_location): Adjust to std::string.
11924         (update_static_tracepoint): Adjust to std::string, remove call
11925         to release_static_tracepoint_marker.
11926         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
11927         Adjust to std::vector.
11928         * remote.c (remote_static_tracepoint_marker_at): Return bool.
11929         (remote_static_tracepoint_markers_by_strid): Adjust to
11930         std::vector.
11931         * common/rsp-low.h (hex2str): New overload with explicit count
11932         of bytes.
11933         * common/rsp-low.c (hex2str): New overload with explicit count
11934         of bytes.
11935         * unittests/rsp-low-selftests.c (test_hex2str): New function.
11936         (_initialize_rsp_low_selftests): Add test_hex2str test.
11937         * unittests/tracepoint-selftests.c
11938         (test_parse_static_tracepoint_marker_definition): Adjust to
11939         std::string.
11940
11941 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11942
11943         * tracepoint.c (parse_static_tracepoint_marker_definition):
11944         Consider case where the definition is followed by more
11945         definitions.
11946         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11947         tracepoint-selftests.c.
11948         * unittests/tracepoint-selftests.c: New.
11949
11950 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11951
11952         * MAINTAINERS (Write After Approval): Add Pedro Franco de
11953         Carvalho.
11954
11955 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11956
11957         * symtab.c (find_pc_sect_line): fixed indentation.
11958
11959 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11960
11961         * symtab.c (find_pc_sect_line): now uses binary search.
11962
11963 2018-03-19  Tom Tromey  <tom@tromey.com>
11964
11965         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
11966         "IDENT" production.
11967
11968 2018-03-19  Pedro Alves  <palves@redhat.com>
11969             Tom Tromey  <tom@tromey.com>
11970
11971         * unittests/observable-selftests.c: New file.
11972         * common/observable.h: New file.
11973         * observable.h: New file.
11974         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
11975         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
11976         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
11977         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
11978         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
11979         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
11980         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
11981         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
11982         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
11983         python/py-breakpoint.c, python/py-finishbreakpoint.c,
11984         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
11985         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
11986         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
11987         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
11988         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
11989         tui/tui-interp.c, valops.c: Update all users.
11990         * tui/tui-hooks.c (tui_bp_created_observer)
11991         (tui_bp_deleted_observer, tui_bp_modified_observer)
11992         (tui_inferior_exit_observer, tui_before_prompt_observer)
11993         (tui_normal_stop_observer, tui_register_changed_observer):
11994         Remove.
11995         (tui_observers_token): New global.
11996         (attach_or_detach, tui_attach_detach_observers): New functions.
11997         (tui_install_hooks, tui_remove_hooks): Use
11998         tui_attach_detach_observers.
11999         * record-btrace.c (record_btrace_thread_observer): Remove.
12000         (record_btrace_thread_observer_token): New global.
12001         * observer.sh: Remove.
12002         * observer.c: Rename to observable.c.
12003         * observable.c (namespace gdb_observers): Define new objects.
12004         (observer_debug): Move into gdb_observers namespace.
12005         (struct observer, struct observer_list, xalloc_observer_list_node)
12006         (xfree_observer_list_node, generic_observer_attach)
12007         (generic_observer_detach, generic_observer_notify): Remove.
12008         (_initialize_observer): Update.
12009         Don't include observer.inc.
12010         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12011         (clean mostlyclean): Likewise.
12012         (observer.h, observer.inc): Remove targets.
12013         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12014         (COMMON_SFILES): Use observable.c, not observer.c.
12015         * .gitignore: Remove observer.h.
12016
12017 2018-03-18  Tom Tromey  <tom@tromey.com>
12018
12019         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12020         gdb::def_vector.
12021         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12022
12023 2018-03-17  Tom Tromey  <tom@tromey.com>
12024
12025         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12026
12027 2018-03-17  Tom Tromey  <tom@tromey.com>
12028
12029         * target.c (class scoped_target_fd): New.
12030         (target_fileio_close_cleanup): Remove.
12031         (target_fileio_read_alloc_1): Use scoped_target_fd.
12032
12033 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12034
12035         * silent-rules.mk: New.
12036         * Makefile.in: Include silent-rules.mk
12037         (srcdir, VPATH, top_srcdir): Move up.
12038         (COMPILE): Add ECHO_CXX.
12039         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12040         (init.c): Add ECHO_INIT_C.
12041         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12042         (version.c): Add ECHO_GEN.
12043         (printcmd.o): Add ECHO_CXX.
12044         (target-float.o): Add ECHO_CXX.
12045         (ada-exp.o): Add ECHO_CXX.
12046         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12047         (insight$(EXEEXT)): Add ECHO_CXXLD.
12048         * gnulib/configure.ac: Add AM_SILENT_RULES.
12049         * gnulib/aclocal.m4: Re-generate.
12050         * gnulib/configure: Re-generate.
12051         * gnulib/import/Makefile.in: Re-generate.
12052
12053 2018-03-16  Tom Tromey  <tom@tromey.com>
12054
12055         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12056         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12057         * utils.c (do_free_section_addr_info)
12058         (make_cleanup_free_section_addr_info): Remove.
12059         * symfile.h (struct other_sections): Add constructor.
12060         (struct section_addr_info): Remove.
12061         (section_addr_info): New typedef.
12062         (struct sym_fns) <sym_offsets>: Change type of parameter.
12063         (build_section_addr_info_from_objfile)
12064         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12065         (default_symfile_offsets, symbol_file_add)
12066         (symbol_file_add_from_bfd)
12067         (build_section_addr_info_from_section_table): Update.
12068         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12069         * symfile.c (alloc_section_addr_info): Remove.
12070         (build_section_addr_info_from_section_table): Change return type.
12071         Update.
12072         (build_section_addr_info_from_bfd)
12073         (build_section_addr_info_from_objfile): Likewise.
12074         (free_section_addr_info): Remove.
12075         (relative_addr_info_to_section_offsets): Change type of "addrs".
12076         (addrs_section_compar): Now a std::sort comparator.
12077         (addrs_section_sort): Change return type.
12078         (addr_info_make_relative): Change type of "addrs".  Update.
12079         (default_symfile_offsets, syms_from_objfile_1)
12080         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12081         (symbol_file_add_separate): Update.
12082         (symbol_file_add): Change type of "addrs".  Update.
12083         (add_symbol_file_command): Update.  Remove cleanups.
12084         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12085         cleanups.
12086         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12087         * solib.c (solib_read_symbols): Update.
12088         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12089         * machoread.c (macho_symfile_offsets): Update.
12090         * jit.c (jit_bfd_try_read_symtab): Update.
12091
12092 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12093
12094         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12095         unittests/utils-selftests.c.
12096         * unittests/utils-selftests.c: New file.
12097
12098 2018-03-14  Tom Tromey  <tom@tromey.com>
12099
12100         PR cli/14977:
12101         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12102         for NULL.
12103
12104 2018-03-14  Tom Tromey  <tom@tromey.com>
12105
12106         PR cli/19918:
12107         * printcmd.c (printf_pointer): Allow "-" in format.
12108
12109 2018-03-14  Tom Tromey  <tom@tromey.com>
12110
12111         * printcmd.c (_initialize_printcmd): Add usage to printf.
12112
12113 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12114
12115         * MAINTAINERS: Update my email address.
12116
12117 2018-03-13  Tom Tromey  <tom@tromey.com>
12118
12119         * machoread.c (macho_check_dsym): Change filenamep to a
12120         std::string*.
12121         (macho_symfile_read): Update.
12122         * symfile.c (load_command): Use std::string.
12123
12124 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12125
12126         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12127         to error message string.
12128         (riscv_register_name): Use xsnprintf instead of sprintf.
12129         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12130         internal_error.
12131         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12132         error.
12133         (riscv_push_dummy_call): Likewise.
12134
12135 2018-03-12  Tom Tromey  <tom@tromey.com>
12136
12137         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12138         Use gdb::byte_vector.
12139         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12140
12141 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12142
12143         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12144         parameter type to readable_regcache.
12145         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12146         the declaration.
12147
12148 2018-03-11  Tom Tromey  <tom@tromey.com>
12149
12150         * dwarf2read.c (struct nextfield): Add initializers.
12151         (struct nextfnfield): Remove.
12152         (struct fnfieldlist): Add initializers.  Remove "length" and
12153         "head", use std::vector.
12154         (struct decl_field_list): Remove.
12155         (struct field_info): Add initializers.
12156         <fields, baseclasses>: Now std::vector.
12157         <nbaseclasses, nfnfields, typedef_field_list_count,
12158         nested_types_list_count>: Remove.
12159         (dwarf2_add_field, dwarf2_add_type_defn)
12160         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12161         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12162         (process_structure_scope): Update.
12163
12164 2018-03-11  Tom Tromey  <tom@tromey.com>
12165
12166         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12167         for use by std::sort.
12168         (build_type_psymtabs_1): Use std::vector.
12169
12170 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12171
12172         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12173         and LIBMPFR in the printed configuration.
12174
12175 2018-03-08  Tom Tromey  <tom@tromey.com>
12176
12177         * source.c (get_filename_and_charpos): Use scoped_fd.
12178         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12179         (procfs_pidlist): Likewise.
12180         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12181         (iterate_over_mappings): Likewise.
12182
12183 2018-03-08  Tom Tromey  <tom@tromey.com>
12184
12185         * infcall.c (struct call_return_meta_info)
12186         <stack_temporaries_enabled>: Remove.
12187         (get_call_return_value, call_function_by_hand_dummy): Update.
12188         * thread.c (disable_thread_stack_temporaries): Remove.
12189         (enable_thread_stack_temporaries): Remove.
12190         (thread_stack_temporaries_enabled_p): Return bool.
12191         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12192         (get_last_thread_stack_temporary): Update.
12193         * eval.c (evaluate_subexp): Update.
12194         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12195         class, not a function.
12196         (value_ptr, value_vec): Remove typedefs.
12197         (class thread_info) <stack_temporaries_enabled>: Now bool.
12198         <stack_temporaries>: Now a std::vector.
12199         (thread_stack_temporaries_enabled_p)
12200         (value_in_thread_stack_temporaries): Return bool.
12201
12202 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12203
12204         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12205         (getpkt_or_notif_sane_1): Likewise.
12206
12207 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12208
12209         * build-id.c (build_id_to_debug_bfd): Use std::string.
12210
12211 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12212
12213         * build-id.c (find_separate_debug_file_by_buildid): Return
12214         std::string.
12215         * build-id.h (find_separate_debug_file_by_buildid): Return
12216         std::string.
12217         * coffread.c (coff_symfile_read): Adjust to std::string.
12218         * elfread.c (elf_symfile_read): Adjust to std::string.
12219         * symfile.c (separate_debug_file_exists): Change parameter to
12220         std::string.
12221         (find_separate_debug_file): Return std::string.
12222         (find_separate_debug_file_by_debuglink): Return std::string.
12223         * symfile.h (find_separate_debug_file_by_debuglink): Return
12224         std::string.
12225
12226 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12227
12228         * common/xml-utils.c (xml_escape_text): Move code to...
12229         (xml_escape_text_append): ... this new function.
12230         * common/xml-utils.h (xml_escape_text_append): New declaration.
12231         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12232         New function.
12233         (_initialize_xml_utils): register test_xml_escape_text_append as
12234         a selftest.
12235
12236 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12237
12238         * defs.h: Remove MAX_REGISTER_SIZE.
12239         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12240         asserts.
12241         * python/py-unwind.c (pyuw_sniffer): Likewise.
12242
12243 2018-03-07  Tom Tromey  <tom@tromey.com>
12244
12245         * linux-tdep.c (linux_info_proc): Update.
12246         * target.h (struct target_ops) <to_fileio_readlink>: Return
12247         optional<string>.
12248         (target_fileio_readlink): Return optional<string>.
12249         * remote.c (remote_hostio_readlink): Return optional<string>.
12250         * inf-child.c (inf_child_fileio_readlink): Return
12251         optional<string>.
12252         * target.c (target_fileio_readlink): Return optional<string>.
12253
12254 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12255
12256         * regcache.c (cooked_read_test): Add riscv to the list of
12257         architectures that have a save_reggroup.
12258
12259 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12260
12261         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12262         value is not a dynamic class object.
12263
12264 2018-03-06  Tom Tromey  <tom@tromey.com>
12265
12266         * rust-exp.y: Formatting fixes.
12267
12268 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12269
12270         * riscv-tdep.c (riscv_register_name): Remove target description
12271         support.
12272         (riscv_gdbarch_init): Remove target description check.
12273
12274 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12275
12276         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12277         comment.
12278         * riscv-tdep.h: Likewise.
12279
12280 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12281
12282         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12283         (riscv_pseudo_register_write): Delete.
12284         (riscv_gdbarch_init): Remove all use of pseudo registers.
12285
12286 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12287
12288         * record-btrace.c (btrace_print_lines): Replace cleanup
12289         parameter with RAII equivalents.
12290         (btrace_insn_history): Replace cleanup with RAII equivalents.
12291         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12292         make_cleanup_ui_out_tuple_begin_end): Remove.
12293         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12294         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12295         make_cleanup_ui_out_list_begin_end): Remove.
12296
12297 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12298
12299         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12300         parameter types to std::vector.  Use bool.
12301         (record_btrace_wait): Replace VEC(tp_t) with
12302         std::vector<thread_info *>.
12303         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12304
12305 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12306
12307         * record-btrace.c (record_btrace_disable_callback): Remove.
12308         (struct scoped_btrace_disable): New.
12309         (record_btrace_open): Use scoped_btrace_disable.
12310
12311 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12312
12313         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12314         reading values from registers.
12315
12316 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12317
12318         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12319         where appropriate.
12320
12321 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12322
12323         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12324         change parameter type.  Use GDB's print functions, and use
12325         core_addr_to_string where appropriate.
12326         (riscv_push_dummy_call): Use core_addr_to_string where
12327         appropriate, update call to riscv_print_arg_location, and reindent
12328         a few lines.
12329         (riscv_return_value): Update call to riscv_print_arg_location.
12330
12331 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12332             Tim Newsome <tim@sifive.com>
12333             Albert Ou <a0u@eecs.berkeley.edu>
12334             Darius Rad <darius@bluespec.com>
12335
12336         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12337         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12338         (ALLDEPFILES): Add riscv-tdep.c
12339         * configure.tgt: Add riscv support.
12340         * riscv-tdep.c: New file.
12341         * riscv-tdep.h: New file.
12342         * NEWS: Mention new target.
12343         * MAINTAINERS: Add entry for riscv.
12344
12345 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12346
12347         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12348         fields within aggregates.
12349
12350 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12351
12352         * record-btrace.c (btrace_print_lines): Change type of flags to
12353         gdb_disassembly_flags.
12354
12355 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12356
12357         * fbsd-nat.c: Include "inf-ptrace.h".
12358         (USE_SIGTRAP_SIGINFO): Conditionally define.
12359         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12360         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12361         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12362         function.
12363         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12364         Likewise.
12365         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12366         Likewise.
12367         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12368         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12369         "supports_stopped_by_hw_breakpoint" target methods.
12370
12371 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12372
12373         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12374         * fbsd-nat.c (debug_fbsd_nat): New variable.
12375         (show_fbsd_nat_debug): New function.
12376         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12377         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12378
12379 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12380
12381         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12382         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12383         prototype.
12384         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12385         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12386         method.
12387
12388 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12389
12390         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12391         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12392
12393 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12394
12395         * charset.c (struct charset_vector): New.
12396         (charsets): Change type to charset_vector.
12397         (find_charset_names): Adjust.
12398         (add_one): Adjust.
12399         (_initialize_charset): Adjust.
12400
12401 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12402
12403         * progspace.h (struct program_space) <deleted_solibs>: Change
12404         type to std::vector<std::string>.
12405         * progspace.c (clear_program_space_solib_cache): Adjust.
12406         * breakpoint.c (print_solib_event): Adjust.
12407         (check_status_catch_solib): Adjust.
12408         * solib.c (update_solib_list): Adjust.
12409         * ui-out.h (class ui_out) <field_string>: New overload.
12410         * ui-out.c (ui_out::field_string): New overload.
12411
12412 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12413
12414         * progspace.h (struct program_space): Add constructor and
12415         destructor, initialize fields.
12416         (add_program_space): Remove.
12417         * progspace.c (add_program_space): Rename to...
12418         (program_space::program_space): ... this.
12419         (release_program_space): Rename to...
12420         (program_space::~program_space): ... this.
12421         (delete_program_space): Use delete to delete program_space.
12422         (initialize_progspace): Use new to allocate program_space.
12423         * inferior.c (add_inferior_with_spaces): Likewise.
12424         (clone_inferior_command): Likewise.
12425         * infrun.c (follow_fork_inferior): Likewise.
12426         (handle_vfork_child_exec_or_exit): Likewise.
12427
12428 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12429
12430         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12431         (delim_string_to_char_ptr_vec): Return std::vector of
12432         gdb::unique_xmalloc_ptr.
12433         (dirnames_to_char_ptr_vec_append): Take std::vector of
12434         gdb::unique_xmalloc_ptr.
12435         (dirnames_to_char_ptr_vec): Return std::vector of
12436         gdb::unique_xmalloc_ptr.
12437         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12438         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12439         (delim_string_to_char_ptr_vec): Return an std::vector of
12440         gdb::unique_xmalloc_ptr, adjust the code.
12441         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12442         gdb::unique_xmalloc_ptr, adjust the code.
12443         (dirnames_to_char_ptr_vec): Return an std::vector of
12444         gdb::unique_xmalloc_ptr, adjust the code.
12445         * auto-load.c (auto_load_safe_path_vec): Change type to
12446         std::vector of gdb::unique_xmalloc_ptr.
12447         (auto_load_expand_dir_vars): Return an std::vector of
12448         gdb::unique_xmalloc_ptr, adjust the code.
12449         (auto_load_safe_path_vec_update): Adjust.
12450         (filename_is_in_auto_load_safe_path_vec): Adjust.
12451         (auto_load_objfile_script_1): Adjust.
12452         * build-id.c (build_id_to_debug_bfd): Adjust.
12453         * linux-thread-db.c (thread_db_load_search): Adjust.
12454         * source.c (add_path): Adjust.
12455         (openp): Adjust.
12456         * symfile.c (find_separate_debug_file): Adjust.
12457         * utils.c (do_free_char_ptr_vec): Remove.
12458         (make_cleanup_free_char_ptr_vec): Remove.
12459
12460 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12461
12462         PR gdb/22907
12463         * common/pathstuff.c: Conditionally include "<windows.h>".
12464
12465 2018-03-01  Georg Sauthoff  <mail@georg.so>
12466
12467         PR gdb/22888
12468         * gcore.in: Quote variables and switch interpreter to bash.
12469
12470 2018-03-01  Tom Tromey  <tom@tromey.com>
12471
12472         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12473         assertion.  Add assertion for discriminant_index.
12474         (quirk_rust_enum): Use correct base type name in univariant case.
12475
12476 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12477
12478         * record.c (get_call_history_modifiers): Return a
12479         record_print_flags.
12480         (cmd_record_call_history): Adjust.
12481         * record-btrace.c (record_btrace_call_history): Adjust.
12482         (record_btrace_call_history_range): Adjust.
12483         (record_btrace_call_history_from): Adjust.
12484         * target-debug.h (target_debug_print_record_print_flags): New.
12485         * target-delegates.c: Re-generate.
12486         * target.c (target_call_history): Change flags type.
12487         (target_call_history_from): Likewise.
12488         (target_call_history_range): Likewise.
12489         * target.h (struct target_ops) <target_call_history>: Likewise.
12490         (target_call_history_from): Likewise.
12491         (target_call_history_range): Likewise.
12492
12493 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12494             Simon Marchi  <simon.marchi@polymtl.ca>
12495
12496         * common/common-utils.c: Include "sys/stat.h".
12497         (is_regular_file): Move here from "source.c"; change return
12498         type to "bool".
12499         * common/common-utils.h (is_regular_file): New prototype.
12500         * common/pathstuff.c (contains_dir_separator): New function.
12501         * common/pathstuff.h (contains_dir_separator): New prototype.
12502         * source.c: Don't include "sys/stat.h".
12503         (is_regular_file): Move to "common/common-utils.c".
12504
12505 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12506
12507         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12508         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12509         * auto-load.c: Include "common/pathstuff.h".
12510         * common/common-def.h (current_directory): Move here.
12511         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12512         function.
12513         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12514         prototype.
12515         * common/pathstuff.c: New file.
12516         * common/pathstuff.h: New file.
12517         * compile/compile.c: Include "common/pathstuff.h".
12518         * defs.h (current_directory): Move to "common/common-defs.h".
12519         * dwarf2read.c: Include "common/pathstuff.h".
12520         * exec.c: Likewise.
12521         * guile/scm-safe-call.c: Likewise.
12522         * linux-thread-db.c: Likewise.
12523         * main.c: Likewise.
12524         * nto-tdep.c: Likewise.
12525         * objfiles.c: Likewise.
12526         * source.c: Likewise.
12527         * symtab.c: Likewise.
12528         * utils.c: Include "common/pathstuff.h".
12529         (gdb_realpath): Move to "common/pathstuff.c".
12530         (gdb_realpath_keepfile): Likewise.
12531         (gdb_abspath): Likewise.
12532         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12533         (gdb_realpath_keepfile): Likewise.
12534         (gdb_abspath): Likewise.
12535
12536 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12537
12538         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12539         wildcard process pid for super_resume for kernels with a
12540         specific bug.
12541
12542 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12543
12544         * compile/compile.c (get_args): Add additional comments
12545         explaining function.
12546
12547 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12548             Tom Tromey  <tom@tromey.com>
12549
12550         * target.h (memory_write_request_s): Remove typedef.  Don't define
12551         VEC.
12552         (target_write_memory_blocks): Change argument to std::vector.
12553         (struct memory_write_request): Add constructor.
12554         * target-memory.c (compare_block_starting_address): Return bool.
12555         Change argument types.
12556         (claim_memory): Change arguments to use std::vector.
12557         (split_regular_and_flash_blocks, blocks_to_erase)
12558         (compute_garbled_blocks): Likewise.
12559         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12560         (target_write_memory_blocks): Change argument to std::vector.
12561         * symfile.c (struct load_section_data): Add constructor and
12562         destructor.  Use std::vector for "requests".
12563         (struct load_progress_data): Add initializers.
12564         (load_section_callback): Update.  Use "new".
12565         (clear_memory_write_data): Remove.
12566         (generic_load): Update.
12567
12568 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12569
12570         * arch/aarch64.h: Use common/tdesc.h.
12571
12572 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12573
12574         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
12575         architecture with a 64-bit ABI.
12576
12577 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12578
12579         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
12580         ahead of target description loading.
12581
12582 2018-02-26  Tom Tromey  <tom@tromey.com>
12583
12584         * stack.c (backtrace_command_1): Update.
12585         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
12586         of "flags".
12587         * python/py-framefilter.c (py_print_frame)
12588         (gdbpy_apply_frame_filter): Change type of "flags".
12589         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
12590         of "flags".
12591         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
12592         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
12593         * extension.h (enum frame_filter_flag): Rename from
12594         frame_filter_flags.
12595         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
12596         (apply_ext_lang_frame_filter): Change type of "flags".
12597         * extension.c (apply_ext_lang_frame_filter): Change type of
12598         "flags".
12599         * extension-priv.h (struct extension_language_ops)
12600         <apply_frame_filter>: Change type of "flags".
12601
12602 2018-02-26  Tom Tromey  <tom@tromey.com>
12603
12604         PR python/16497:
12605         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
12606         off-by-one in py_end computation.
12607         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
12608         PRINT_MORE_FRAMES.
12609         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
12610         constant.
12611
12612 2018-02-26  Tom Tromey  <tom@tromey.com>
12613
12614         * dwarf2read.c (struct variant_field): New.
12615         (struct nextfield) <variant>: New field.
12616         (dwarf2_add_field): Handle DW_TAG_variant_part.
12617         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
12618         discriminated union.
12619         (read_structure_type): Handle DW_TAG_variant_part.
12620         (handle_struct_member_die): New function, extracted from
12621         process_structure_scope.  Handle DW_TAG_variant.
12622         (process_structure_scope): Handle discriminated unions.  Call
12623         handle_struct_member_die.
12624
12625 2018-02-26  Tom Tromey  <tom@tromey.com>
12626
12627         * rust-lang.h (rust_last_path_segment): Declare.
12628         * rust-lang.c (rust_last_path_segment): Now public.  Change
12629         contract.
12630         (struct disr_info): Remove.
12631         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
12632         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
12633         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
12634         (rust_enum_p, rust_enum_variant): New function.
12635         (rust_underscore_fields): Remove "offset" parameter.
12636         (rust_print_enum): New function.
12637         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
12638         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
12639         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
12640         enums.
12641         (rust_internal_print_type): New function, from rust_print_type.
12642         Remove enum code.
12643         (rust_print_type): Call rust_internal_print_type.
12644         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
12645         Update enum handling.
12646         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
12647         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
12648         (rust_union_quirks): New functions.
12649         (process_full_comp_unit, process_full_type_unit): Call
12650         rust_union_quirks.
12651         (process_structure_scope): Update rust_unions if necessary.
12652
12653 2018-02-26  Tom Tromey  <tom@tromey.com>
12654
12655         * value.h (value_union_variant): Declare.
12656         * valops.c (value_union_variant): New function.
12657         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
12658         (struct discriminant_info): New.
12659         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
12660         enumerator.
12661         (struct main_type) <flag_discriminated_union>: New field.
12662
12663 2018-02-26  Tom Tromey  <tom@tromey.com>
12664
12665         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12666         unittests/unpack-selftests.c.
12667         * unittests/unpack-selftests.c: New file.
12668         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
12669
12670 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12671
12672         * dwarf2read.c (struct partial_die_info) <read>: New method.
12673         (read_partial_die): Remove the declaration.
12674         (load_partial_dies): Update.
12675         (partial_die_info::partial_die_info):
12676         (read_partial_die): Change it to partial_die_info::read.
12677
12678 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12679
12680         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
12681         (fixup_partial_die): Remove declaration.
12682         (scan_partial_symbols): Update.
12683         (partial_die_parent_scope): Likewise.
12684         (partial_die_full_name): Likewise.
12685         (fixup_partial_die): Change it to partial_die_info::fixup.
12686
12687 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12688
12689         * dwarf2read.c (read_partial_die): Update the declaration.
12690         (load_partial_dies): Caller update.
12691         (read_partial_die): Remove one argument abbrev_len.
12692
12693 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12694
12695         * dwarf2read.c (struct partial_die_info): Add ctor, delete
12696         assignment operator.
12697         (load_partial_dies): Use ctor and copy ctor.
12698         (read_partial_die): Update.
12699         (dwarf2_cu::find_partial_die): Use ctor.
12700
12701 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12702
12703         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
12704         (find_partial_die_in_comp_unit): Change it to
12705         dwarf2_cu::find_partial_die.
12706         (find_partial_die): Update.
12707
12708 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12709
12710         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
12711         is NULL.
12712
12713 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12714
12715         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
12716
12717 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
12718
12719         * arch/amd64.h: Use common/tdesc.h.
12720         * arch/i386.c: Likewise.
12721         * arch/i386.h: Likewise.
12722         * arch/tic6x.c: Likewise.
12723         * arch/tdesc.h: Move file from here...
12724         * common/tdesc.h: ...to here.
12725         * features/aarch64-core.c: Regenerate.
12726         * features/aarch64-fpu.c: Regenerate.
12727         * features/i386/32bit-avx.c: Regenerate.
12728         * features/i386/32bit-avx512.c: Regenerate.
12729         * features/i386/32bit-core.c: Regenerate.
12730         * features/i386/32bit-linux.c: Regenerate.
12731         * features/i386/32bit-mpx.c: Regenerate.
12732         * features/i386/32bit-pkeys.c: Regenerate.
12733         * features/i386/32bit-sse.c: Regenerate.
12734         * features/i386/64bit-avx.c: Regenerate.
12735         * features/i386/64bit-avx512.c: Regenerate.
12736         * features/i386/64bit-core.c: Regenerate.
12737         * features/i386/64bit-linux.c: Regenerate.
12738         * features/i386/64bit-mpx.c: Regenerate.
12739         * features/i386/64bit-pkeys.c: Regenerate.
12740         * features/i386/64bit-segments.c: Regenerate.
12741         * features/i386/64bit-sse.c: Regenerate.
12742         * features/i386/x32-core.c: Regenerate.
12743         * features/tic6x-c6xp.c: Regenerate.
12744         * features/tic6x-core.c: Regenerate.
12745         * features/tic6x-gp.c: Regenerate.
12746         * target-descriptions.c: Use common/tdesc.h.
12747         * target-descriptions.h: Likewise.
12748
12749 2018-02-24  Tom Tromey  <tom@tromey.com>
12750
12751         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
12752         (try_thread_db_load_from_dir, thread_db_load_search): Use
12753         std::string.
12754         (info_auto_load_libthread_db_compare): Return bool.  Change
12755         argument types.
12756         (info_auto_load_libthread_db): Use std::vector, std::string.
12757         Remove cleanups.
12758
12759 2018-02-24  Tom Tromey  <tom@tromey.com>
12760
12761         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
12762         std::string.
12763         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
12764         std::string*.
12765         * gdbarch.c: Rebuild.
12766         * gdbarch.h: Rebuild.
12767         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
12768         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
12769         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
12770         std::string*.
12771
12772 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
12773
12774         * gdbtypes.h (sect_offset): Change type to uint64_t.
12775         (sect_offset_str): New function.
12776         * dwarf2read.c (create_addrmap_from_aranges): Use
12777         sect_offset_str.
12778         (error_check_comp_unit_head): Likewise.
12779         (create_debug_type_hash_table): Likewise.
12780         (read_cutu_die_from_dwo): Likewise.
12781         (init_cutu_and_read_dies): Likewise.
12782         (init_cutu_and_read_dies_no_follow): Likewise.
12783         (process_psymtab_comp_unit_reader): Likewise.
12784         (partial_die_parent_scope): Likewise.
12785         (peek_die_abbrev): Likewise.
12786         (process_queue): Likewise.
12787         (dwarf2_physname): Likewise.
12788         (read_namespace_alias): Likewise.
12789         (read_import_statement): Likewise.
12790         (create_dwo_cu_reader): Likewise.
12791         (create_cus_hash_table): Likewise.
12792         (lookup_dwo_cutu): Likewise.
12793         (inherit_abstract_dies): Likewise.
12794         (read_func_scope): Likewise.
12795         (read_call_site_scope): Likewise.
12796         (dwarf2_add_member_fn): Likewise.
12797         (read_common_block): Likewise.
12798         (read_module_type): Likewise.
12799         (read_typedef): Likewise.
12800         (read_subrange_type): Likewise.
12801         (load_partial_dies): Likewise.
12802         (read_partial_die): Likewise.
12803         (find_partial_die): Likewise.
12804         (read_str_index): Likewise.
12805         (dwarf2_string_attr): Likewise.
12806         (build_error_marker_type): Likewise.
12807         (lookup_die_type): Likewise.
12808         (dump_die_shallow): Likewise.
12809         (follow_die_ref): Likewise.
12810         (dwarf2_fetch_die_loc_sect_off): Likewise.
12811         (dwarf2_fetch_constant_bytes): Likewise.
12812         (follow_die_sig): Likewise.
12813         (get_signatured_type): Likewise.
12814         (get_DW_AT_signature_type): Likewise.
12815         (dwarf2_find_containing_comp_unit): Likewise.
12816         (set_die_type): Likewise.
12817
12818 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
12819
12820         * arch/aarch64.c: Include "common-defs.h".
12821         * arch/amd64.c: Likewise.
12822         * arch/i386.c: Likewise.
12823
12824 2018-02-21  Tom Tromey  <tom@tromey.com>
12825
12826         * value.h: (extract_field_op): Update.
12827         * eval.c (extract_field_op): Return a const char *.
12828         * expression.h (parse_expression_for_completion): Update.
12829         * completer.c (complete_expression): Update.
12830         (add_struct_fields): Make fieldname const.
12831         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
12832         (mark_completion_tag, parse_exp_in_context_1): Update.
12833         (parse_expression_for_completion): Change "name" to
12834         unique_xmalloc_ptr*.
12835
12836 2018-02-21  Tom Tromey  <tom@tromey.com>
12837
12838         * infcall.c (call_function_by_hand_dummy): Use std::vector.
12839
12840 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12841
12842         * avr-tdep.c (avr_read_pc): Change parameter type to
12843         readable_regcache.
12844         * gdbarch.sh (read_pc): Likewise.
12845         * gdbarch.c: Re-generated.
12846         * gdbarch.h: Re-generated.
12847         * hppa-tdep.c (hppa_read_pc): Change parameter type to
12848         readable_regcache.
12849         * ia64-tdep.c (ia64_read_pc): Likewise.
12850         * mips-tdep.c (mips_read_pc): Likewise.
12851         * spu-tdep.c (spu_read_pc): Likewise.
12852
12853 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12854
12855         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
12856         * regcache-dump.c: New file.
12857         * regcache.c: Move register_dump to regcache-dump.c.
12858         (maintenance_print_registers): Likewise.
12859         (maintenance_print_raw_registers): Likewise.
12860         (maintenance_print_cooked_registers): Likewise.
12861         (maintenance_print_register_groups): Likewise.
12862         (maintenance_print_remote_registers): Likewise.
12863         (_initialize_regcache): Likewise.
12864         * regcache.h (register_dump): Moved from regcache.c.
12865
12866 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12867
12868         * regcache.c (regcache::regcache): Update.
12869         (regcache::invalidate): Move it to detached_regcache::invalidate.
12870         (get_thread_arch_aspace_regcache): Update.
12871         (regcache::raw_update): Update.
12872         (regcache::cooked_read): Remove some code.
12873         (regcache::cooked_read_value): Likewise.
12874         (regcache::raw_write): Remove assert on m_readonly_p.
12875         (regcache::raw_supply_integer): Move it to
12876         detached_regcache::raw_supply_integer.
12877         (regcache::raw_supply_zeroed): Likewise.
12878         * regcache.h (detached_regcache) <raw_supply_integer>: New
12879         declaration.
12880         <raw_supply_zeroed, invalidate>: Likewise.
12881         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
12882         <invalidate>: Likewise.
12883         <m_readonly_p>: Removed.
12884
12885 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12886
12887         * infcmd.c (get_return_value): Let stop_regs point to
12888         get_current_regcache.
12889         * regcache.c (regcache::regcache): Remove.
12890         (register_dump_reg_buffer): New class.
12891         (regcache_print): Adjust.
12892         * regcache.h (regcache): Remove constructors.
12893
12894 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12895
12896         * regcache.c (class register_dump): New class.
12897         (register_dump_regcache, register_dump_none): New class.
12898         (register_dump_remote, register_dump_groups): New class.
12899         (regcache_print): Update.
12900         * regcache.h (regcache_dump_what): Move it to regcache.c.
12901         (regcache) <dump>: Remove.
12902
12903 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12904
12905         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
12906          reg_buffer_rw *.
12907         (jit_unwind_reg_set_impl): Call raw_supply.
12908         (jit_frame_sniffer): Use reg_buffer_rw.
12909         * record-full.c (record_full_core_regbuf): Change its type.
12910         (record_full_core_open_1): Use reg_buffer_rw.
12911         (record_full_close): Likewise.
12912         (record_full_core_fetch_registers): Use regcache->raw_supply.
12913         (record_full_core_store_registers): Likewise.
12914         * regcache.c (regcache::get_register_status): Move it to
12915         reg_buffer.
12916         (regcache_raw_set_cached_value): Remove.
12917         (regcache::raw_set_cached_value): Remove.
12918         (regcache::raw_write): Call raw_supply.
12919         (regcache::raw_supply): Move it to reg_buffer_rw.
12920         * regcache.h (regcache_raw_set_cached_value): Remove.
12921         (reg_buffer_rw): New class.
12922
12923 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12924
12925         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
12926         readonly_detached_regcache.
12927         (dummy_frame_prev_register): Use regcache->cooked_read.
12928         * frame.c (frame_save_as_regcache): Change return type.
12929         (frame_pop): Update.
12930         * frame.h (frame_save_as_regcache): Update declaration.
12931         * inferior.h (get_infcall_suspend_state_regcache): Update
12932         declaration.
12933         * infrun.c (infcall_suspend_state) <registers>: use
12934         readonly_detached_regcache.
12935         (save_infcall_suspend_state): Don't use regcache_dup.
12936         (get_infcall_suspend_state_regcache): Change return type.
12937         * linux-fork.c (struct fork_info) <savedregs>: Change to
12938         readonly_detached_regcache.
12939         <pc>: New field.
12940         (fork_save_infrun_state): Don't use regcache_dup.
12941         (info_checkpoints_command): Adjust.
12942         * mi/mi-main.c (register_changed_p): Update declaration.
12943         (mi_cmd_data_list_changed_registers): Use
12944         readonly_detached_regcache.
12945         (register_changed_p): Change parameter type to
12946         readonly_detached_regcache.
12947         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
12948         readonly_detached_regcache.
12949         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
12950         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
12951         New.
12952         (regcache::save): Move it to reg_buffer.
12953         (regcache::restore): Change parameter type.
12954         (regcache_dup): Remove.
12955         * regcache.h (reg_buffer) <save>: New method.
12956         (readonly_detached_regcache): New class.
12957         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
12958         readonly_detached_regcache.
12959         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
12960
12961 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12962
12963         * frame.c (frame_save_as_regcache): Use regcache method save.
12964         (frame_pop): Use regcache method restore.
12965         * infrun.c (restore_infcall_suspend_state): Likewise.
12966         * linux-fork.c (fork_load_infrun_state): Likewise.
12967         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
12968         save.
12969         * regcache.c (regcache_save): Remove.
12970         (regcache::restore): More asserts.
12971         (regcache_cpy): Remove.
12972         * regcache.h (regcache_save): Remove the declaration.
12973         (regcache::restore): Move from private to public.
12974         Remove the friend declaration of regcache_cpy.
12975         (regcache_cpy): Remove declaration.
12976
12977 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12978
12979         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
12980         parameter type to 'readable_regcache *'.
12981         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12982         * arm-tdep.c (arm_neon_quad_read): Likewise.
12983         (arm_pseudo_read): Likewise.
12984         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12985         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12986         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12987         * gdbarch.c: Re-generated.
12988         * gdbarch.h: Re-generated.
12989         * gdbarch.sh (pseudo_register_read): Change parameter type to
12990         'readable_regcache *'.
12991         (pseudo_register_read_value): Likewise.
12992         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
12993         (h8300_pseudo_register_read): Likewise.
12994         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
12995         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12996         (i386_pseudo_register_read_into_value): Likewise.
12997         (i386_pseudo_register_read_value): Likewise.
12998         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
12999         declaration.
13000         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13001         * m32c-tdep.c (m32c_raw_read): Likewise.
13002         (m32c_read_flg): Likewise.
13003         (m32c_banked_register): Likewise.
13004         (m32c_banked_read): Likewise.
13005         (m32c_sb_read): Likewise.
13006         (m32c_part_read): Likewise.
13007         (m32c_cat_read): Likewise.
13008         (m32c_r3r2r1r0_read): Likewise.
13009         (m32c_pseudo_register_read): Likewise.
13010         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13011         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13012         (mep_pseudo_cr64_read): Likewise.
13013         (mep_pseudo_register_read): Likewise.
13014         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13015         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13016         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13017         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13018         (regcache::cooked_read): Likewise.
13019         (regcache::cooked_read_value): Likewise.
13020         (regcache_cooked_read_signed):
13021         (regcache::cooked_read): Likewise.
13022         * regcache.h (readable_regcache): New class.
13023         (regcache): Inherit readable_regcache.  Move some methods to
13024         readable_regcache.
13025         * rl78-tdep.c (rl78_pseudo_register_read): Change
13026         parameter type to 'readable_regcache *'.
13027         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13028         (e500_pseudo_register_read): Change parameter type to
13029         'readable_regcache *'.
13030         (dfp_pseudo_register_read): Likewise.
13031         (vsx_pseudo_register_read): Likewise.
13032         (efpr_pseudo_register_read): Likewise.
13033         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13034         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13035         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13036         (sh64_pseudo_register_read): Likewise.
13037         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13038         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13039         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13040         (spu_pseudo_register_read): Likewise.
13041         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13042         (xtensa_pseudo_register_read): Likewise.
13043
13044 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13045
13046         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13047         (regcache::arch): Move it to reg_buffer::arch.
13048         (regcache::register_buffer): Likewise.
13049         (regcache::assert_regnum): Likewise.
13050         (regcache::num_raw_registers): Likewise.
13051         * regcache.h (reg_buffer): New class.
13052         (regcache): Inherit reg_buffer.
13053
13054 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13055
13056         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13057         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13058
13059 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13060
13061         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13062
13063 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13064
13065         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13066         (SFILES): Remove common/*.c files.
13067         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13068         * common/common.host: Add common reference.
13069         * configure.ac: Likewise.
13070         * configure: Regenerate.
13071
13072 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13073
13074         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13075         (block_initialize_namespace): Use new.
13076         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13077         (dwarf2_free_objfile): Use delete.
13078         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13079         (copy_type_recursive): Use new.
13080         * gdb_obstack.h (allocate_on_obstack): New.
13081
13082 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13083
13084         PR gdb/22849
13085         * inferior.c (exit_inferior_1): Reset inf->control.
13086
13087 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13088
13089         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13090         declaration.
13091
13092 2018-02-14  Pedro Alves  <palves@redhat.com>
13093
13094         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13095         frame_cleanup_after_sniffer on exception.
13096
13097 2018-02-14  Tom Tromey  <tom@tromey.com>
13098
13099         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13100         const.
13101         (solib_bfd_open): Make pathname const.
13102         * solib.c (solib_bfd_open): Make pathname const.
13103         * solib-spu.c (spu_bfd_fopen): Make name const.
13104         (spu_bfd_open): Make pathname const.
13105         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13106         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13107
13108 2018-02-14  Tom Tromey  <tom@tromey.com>
13109
13110         * symfile.c (symfile_bfd_open): Update.
13111         * source.h (openp, source_full_path_of, find_and_open_source):
13112         Change argument type to unique_xmalloc_ptr.
13113         * source.c (openp): Take a unique_xmalloc_ptr.
13114         (source_full_path_of, find_and_open_source): Likewise.
13115         (open_source_file, symtab_to_fullname): Update.
13116         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13117         unique_xmalloc_ptr.
13118         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13119         (exec_file_find): Update.
13120         * psymtab.c (psymtab_to_fullname): Update.
13121         * nto-tdep.h (nto_find_and_open_solib): Update.
13122         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13123         unique_xmalloc_ptr.
13124         * exec.c (exec_file_attach): Update.
13125         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13126         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13127
13128 2018-02-14  Tom Tromey  <tom@tromey.com>
13129
13130         * solib.c: Include source.h.
13131         * nto-tdep.c: Include source.h.
13132         * mi/mi-cmd-env.c: Include source.h.
13133         * infcmd.c: Include source.h.
13134         * exec.c: Include source.h.
13135         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13136         (add_path, directory_switch, source_path, init_source_path): Move
13137         declarations...
13138         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13139         (add_path, directory_switch, source_path, init_source_path):
13140         ...here.
13141
13142 2018-02-14  Tom Tromey  <tom@tromey.com>
13143
13144         * solist.h (exec_file_find, solib_find): Return
13145         unique_xmalloc_ptr.
13146         (solib_bfd_fopen): Take a const char *.
13147         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13148         (exec_file_find, solib_find): Likewise.
13149         (solib_bfd_fopen): Do not take ownership of "pathname".
13150         (solib_bfd_open): Use unique_xmalloc_ptr.
13151         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13152         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13153         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13154         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13155
13156 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13157
13158         * ada-lang.c (name_match_type_from_name): Remove reference to
13159         ada_name_for_lookup in function's documentation.
13160         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13161
13162 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13163
13164         * defs.h (enum openp_flags): New enum.
13165         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13166         Move to enum openp_flags.
13167         (openp_flags): New enum flags.
13168         (openp): Change parameter type to openp_flags.
13169         * source.c (openp): Change parameter type to openp_flags.
13170         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13171         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13172
13173 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13174
13175         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13176         per-command.
13177
13178 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13179
13180         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13181         into...
13182         (class dwarf2_queue_guard): ...the destructor of this new class.
13183         (dw2_do_instantiate_symtab): Create instance of the new class
13184         dwarf2_queue_guard, remove cleanup.
13185
13186 2018-02-09  Tom Tromey  <tom@tromey.com>
13187
13188         * source.c (find_source_lines): Don't reference past the end of
13189         the vector.
13190
13191 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13192
13193         * remote.c (remote_btrace_maybe_reopen): Change error message.
13194         * btrace.c (btrace_enable): Likewise.
13195         (parse_xml_btrace): Likewise.
13196         (parse_xml_btrace_conf): Likewise.
13197
13198 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13199
13200         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13201         (linux_enable_pt, linux_enable_bts): Call
13202         diagnose_perf_event_open_fail.
13203
13204 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13205
13206         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13207         Remove parameter and change return type.  Update callers.  Move it.
13208         (linux_enable_bts, linux_enable_pt): Improve error message.
13209         (linux_enable_pt): Remove zero buffer size check.
13210         (linux_enable_btrace): Improve error messages.  Remove NULL return
13211         check.
13212
13213 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13214
13215         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13216         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13217         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13218         (linux_supports_pt, linux_supports_btrace): Remove.
13219         (linux_enable_bts): Call cpu_supports_bts.
13220         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13221         * remote.c (remote_supports_btrace): Remove.
13222         (init_remote_ops): Remove remote_supports_btrace.
13223         * target-delegates.c: Regenerated.
13224         * target.c (target_supports_btrace): Remove.
13225         * target.h (target_ops) <to_supports_btrace>: Remove
13226         (target_supports_btrace): Remove.
13227         * x86-linux-nat.c (x86_linux_create_target): Remove
13228         linux_supports_btrace.
13229
13230 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13231
13232         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13233         btrace failed.
13234         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13235         exception and use message in own exception.
13236
13237 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13238
13239         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13240         (perf_event_pt_event_type): Use gdb_file_up.
13241         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13242         scoped_fd, and scoped_mmap.
13243
13244 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13245
13246         * common/scoped_mmap.h: New.
13247         * unittests/scoped_mmap-selftest.c: New.
13248         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13249         unittests/scoped_mmap-selftest.c.
13250
13251 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13252
13253         * common/scoped_fd.h: New.
13254         * unittests/scoped_fd-selftest.c: New.
13255         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13256         unittests/scoped_fd-selftest.c.
13257
13258 2018-02-09  Tom Tromey  <tom@tromey.com>
13259
13260         * auto-load.c (auto_load_section_scripts): Use
13261         gdb::unique_xmalloc_ptr.
13262
13263 2018-02-09  Tom Tromey  <tom@tromey.com>
13264
13265         * auto-load.c (execute_script_contents): Use std::string.
13266
13267 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13268
13269         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13270         Python function, rather than a new command.
13271
13272 2018-02-08  Tom Tromey  <tom@tromey.com>
13273
13274         * solib.c (solib_find_1): Use std::string.
13275         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13276
13277 2018-02-08  Tom Tromey  <tom@tromey.com>
13278
13279         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13280
13281 2018-02-08  Tom Tromey  <tom@tromey.com>
13282
13283         * source.c (find_source_lines): Use gdb::def_vector.
13284
13285 2018-02-08  Tom Tromey  <tom@tromey.com>
13286
13287         * macrocmd.c (struct temporary_macro_definition): New.
13288         (macro_define_command): Use temporary_macro_definition.  Remove
13289         cleanups.
13290         (free_macro_definition_ptr): Remove.
13291
13292 2018-02-08  Tom Tromey  <tom@tromey.com>
13293
13294         * macroexp.c (maybe_expand): Use std::string.
13295
13296 2018-02-08  Tom Tromey  <tom@tromey.com>
13297
13298         * macroexp.c (struct macro_buffer): Add initializers for some
13299         members.
13300         (init_buffer, init_shared_buffer, free_buffer)
13301         (free_buffer_return_text): Remove.
13302         (macro_buffer): New constructors.
13303         (~macro_buffer): New destructor.
13304         (macro_buffer::set_shared): New method.
13305         (macro_buffer::resize_buffer, macro_buffer::appendc)
13306         (macro_buffer::appendmem): Now methods, not free functions.
13307         (set_token, append_tokens_without_splicing, stringify)
13308         (macro_stringify): Update.
13309         (gather_arguments): Change return type.  Remove argc_p argument,
13310         add args_ptr argument.  Use std::vector.
13311         (substitute_args): Remove argc argument.  Accept std::vector.
13312         (expand): Update.  Use std::vector.
13313         (scan, macro_expand, macro_expand_next): Update.
13314
13315 2018-02-08  Tom Tromey  <tom@tromey.com>
13316
13317         * symtab.c (default_collect_symbol_completion_matches_break_on):
13318         Use unique_xmalloc_ptr.
13319         * macroscope.h: (sal_macro_scope, user_macro_scope)
13320         (default_macro_scope): Return unique_xmalloc_ptr.
13321         * macroscope.c (sal_macro_scope, user_macro_scope)
13322         (default_macro_scope): Return unique_xmalloc_ptr.
13323         * macroexp.h (macro_expand, macro_expand_once): Return
13324         unique_xmalloc_ptr.
13325         * macroexp.c (macro_expand, macro_expand_once): Return
13326         unique_xmalloc_ptr.
13327         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13328         (info_macro_command, info_macros_command): Use
13329         unique_xmalloc_ptr.
13330         * compile/compile-c-support.c (write_macro_definitions): Use
13331         unique_xmalloc_ptr.
13332         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13333
13334 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13335
13336         * value.c (value_static_field): Assign field type instead of
13337         containing type when returning an optimized out value.
13338
13339 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13340
13341         * ft32-tdep.c (ft32_read_pc): Remove.
13342         (ft32_write_pc): Remove.
13343         (ft32_gdbarch_init): Update.
13344         * m32r-tdep.c (m32r_read_pc): Remove.
13345         (m32r_gdbarch_init): Update.
13346         * mep-tdep.c (mep_read_pc): Remove.
13347         (mep_gdbarch_init): Update.
13348         * microblaze-tdep.c (microblaze_write_pc): Remove.
13349         (microblaze_gdbarch_init): Update.
13350         * mn10300-tdep.c (mn10300_read_pc): Remove.
13351         (mn10300_write_pc): Remove.
13352         (mn10300_gdbarch_init): Update.
13353         * moxie-tdep.c (moxie_read_pc): Remove.
13354         (moxie_write_pc): Remove.
13355         (moxie_gdbarch_init): Update.
13356
13357 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13358
13359         * expprint.c (print_subexp_standard): Handle
13360         OP_F77_UNDETERMINED_ARGLIST.
13361         (dump_subexp_body_standard): Likewise.
13362
13363 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13364
13365         * target-descriptions.c (tdesc_element_visitor) Add empty
13366         implementations.
13367         (tdesc_type): Move make_gdb_type from here.
13368         (tdesc_type_builtin): Likewise.
13369         (tdesc_type_vector): Likewise.
13370         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13371         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13372         (make_gdb_type_union): Likewise.
13373         (make_gdb_type_flags): Likewise.
13374         (make_gdb_type_enum): Likewise.
13375         (make_gdb_type): New function.
13376         (tdesc_register_type): Use static make_gdb_type.
13377
13378 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13379
13380         * infcmd.c (default_print_one_register_info): Align natural-format
13381         column values consistently one under another.
13382         (pad_to_column): New function.
13383
13384 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13385
13386         * dwarf2read.c (dwarf2_physname): Move commment.
13387
13388 2018-02-01  Leszek Swirski  <leszeks@google.com>
13389
13390         * varobj.c (varobj_formatted_print_options): Allow recursive
13391         pretty printing if pretty printing is enabled.
13392
13393 2018-02-01  Leszek Swirski  <leszeks@google.com>
13394
13395         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13396         names after a structop as a filename.
13397
13398 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13399
13400         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13401         (arm_record_coproc_data_proc): Likewise.
13402
13403 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13404
13405         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13406
13407 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13408
13409         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13410         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13411
13412 2018-01-31  Pedro Alves  <palves@redhat.com>
13413
13414         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13415         * inflow.c (child_terminal_save_inferior): Wrap reference to
13416         tcgetpgrp in HAVE_TERMIOS_H.
13417         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13418         _WIN32.
13419         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13420         always iterate over all inferiors.
13421         (gdbsim_cntrl_c): Adjust.
13422         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13423
13424 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13425
13426         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13427         index type is objfile-owned if the element type is as well.
13428
13429 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13430
13431         GDB 8.1 released.
13432
13433 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13434
13435         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13436         "features/s390x-linux64.c".
13437         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13438         s390_linux32 and s390x_linux64.
13439         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13440         default tdesc.
13441         * s390-tdep.c: Include "features/s390-linux32.c" and
13442         "features/s390x-linux64.c".
13443         (s390_tdesc_valid): Add check for tdesc_has_registers.
13444         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13445         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13446         tdesc_s390x_linux64.
13447         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13448         tdesc_s390x_linux64 to...
13449         * s390-tdep.h: ...here.
13450
13451 2018-01-30  Pedro Alves  <palves@redhat.com>
13452
13453         PR gdb/13211
13454         * config.in, configure: Regenerate.
13455         * configure.ac: Check for getpgid.
13456         * go32-nat.c (go32_pass_ctrlc): New.
13457         (go32_target): Install it.
13458         * inf-child.c (inf_child_target): Install
13459         child_terminal_save_inferior, child_pass_ctrlc and
13460         child_interrupt.
13461         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13462         (inf_ptrace_target): No longer install it.
13463         * infcmd.c (interrupt_target_1): Adjust.
13464         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13465         (child_interrupt): Declare.
13466         (inferior::terminal_state): New.
13467         * inflow.c (struct terminal_info): Update comments.
13468         (inferior_process_group): Delete.
13469         (terminal_is_ours): Delete.
13470         (gdb_tty_state): New.
13471         (child_terminal_init): Adjust.
13472         (is_gdb_terminal, sharing_input_terminal_1)
13473         (sharing_input_terminal): New functions.
13474         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13475         Set the process's actual process group in the foreground if
13476         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13477         mark terminal as the inferior's if not sharing GDB's terminal.
13478         Don't check attach_flag.
13479         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13480         pass down a target_terminal_state.
13481         (child_terminal_save_inferior): New, factored out from ...
13482         (child_terminal_ours_1): ... this.  Handle
13483         target_terminal_state::is_ours_for_output.
13484         (child_interrupt, child_pass_ctrlc): New.
13485         (inflow_inferior_exit): Clear the inferior's terminal_state.
13486         (copy_terminal_info): Copy the inferior's terminal state.
13487         (_initialize_inflow): Remove reference to terminal_is_ours.
13488         * inflow.h (inferior_process_group): Delete.
13489         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13490         * procfs.c (procfs_target): Don't install procfs_interrupt.
13491         (procfs_interrupt): Delete.
13492         * remote.c (remote_serial_quit_handler): Adjust.
13493         (remote_interrupt): Remove ptid parameter.  Adjust.
13494         * target-delegates.c: Regenerate.
13495         * target.c: Include "terminal.h".
13496         (target_terminal::terminal_state): Rename to ...
13497         (target_terminal::m_terminal_state): ... this.
13498         (target_terminal::init): Adjust.
13499         (target_terminal::inferior): Adjust to per-inferior
13500         terminal_state.
13501         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13502         (target_terminal::ours, target_terminal::ours_for_output): Use
13503         target_terminal_is_ours_kind.
13504         (target_interrupt): Remove ptid parameter.  Adjust.
13505         (default_target_pass_ctrlc): Adjust.
13506         * target.h (target_ops::to_terminal_save_inferior): New field.
13507         (target_ops::to_interrupt): Remove ptid_t parameter.
13508         (target_interrupt): Remove ptid_t parameter.  Update comment.
13509         (target_pass_ctrlc): Update comment.
13510         * target/target.h (target_terminal_state): New scoped enum,
13511         factored out of ...
13512         (target_terminal::terminal_state): ... here.
13513         (target_terminal::inferior): Update comments.
13514         (target_terminal::restore_inferior): New.
13515         (target_terminal::is_inferior, target_terminal::is_ours)
13516         (target_terminal::is_ours_for_output): Adjust.
13517         (target_terminal::scoped_restore_terminal_state): Adjust to
13518         rename, and call restore_inferior() instead of inferior().
13519         (target_terminal::scoped_restore_terminal_state::m_state): Change
13520         type.
13521         (target_terminal::terminal_state): Rename to ...
13522         (target_terminal::m_terminal_state): ... this and change type.
13523
13524 2018-01-30  Pedro Alves  <palves@redhat.com>
13525
13526         * linux-nat.c (wait_for_signal): New function.
13527         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13528         directly.
13529         (async_terminal_is_ours)
13530         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13531         (linux_nat_add_target): Don't override
13532         to_terminal_inferior/to_terminal_ours.
13533
13534 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13535
13536         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13537
13538 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13539
13540         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13541         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13542         dwarf2_per_objfile_free here.
13543         (dwarf2_per_objfile_free): Remove.
13544         (_initialize_dwarf2_read): Don't register
13545         dwarf2_per_objfile_free as a registry cleanup.
13546
13547 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13548
13549         Avoid compilation errors in MinGW native builds
13550
13551         The error is triggered by including python-internal.h, and the
13552         error message is:
13553
13554              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13555                       from build-gnulib/import/math.h:27,
13556                       from d:/usr/Python26/include/pyport.h:235,
13557                       from d:/usr/Python26/include/Python.h:58,
13558                       from python/python-internal.h:94,
13559                       from python/py-arch.c:24:
13560              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13561         using ::hypot;
13562                 ^~~~~
13563
13564         This happens because Python headers define 'hypot' to expand t
13565         '_hypot' in the Windows builds.
13566         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13567         'hypoth'.  This avoids a compilation error.
13568
13569 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13570
13571         * MAINTAINERS (Write After Approval): Fix ordering.
13572
13573 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13574
13575         * MAINTAINERS (Write After Approval): Add Alan Hayward.
13576
13577 2018-01-26  Alan Modra  <amodra@gmail.com>
13578
13579         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
13580         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
13581         Remove nop.  Make const.  Comment.
13582         (powerpc32_plt_stub_so_2): New.
13583         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
13584         Correct count.  Update uses.
13585         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
13586         Move common code reading PLT entry word.  Correct
13587         powerpc32_plt_stub PLT address calculation.
13588         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
13589         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
13590         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
13591         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
13592         (ppc64_standard_linkage8): Likewise.
13593         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
13594         Correct insns description.
13595         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
13596
13597 2018-01-24  Pedro Alves  <palves@redhat.com>
13598
13599         GCC PR libstdc++/83906
13600         * gdbtypes.c (operator==(const dynamic_prop &,
13601         const dynamic_prop &)): New.
13602         (operator==(const range_bounds &, const range_bounds &)): New.
13603         (check_types_equal): Use them instead of memcmp.
13604         * gdbtypes.h (operator==(const dynamic_prop &,
13605         const dynamic_prop &)): Declare.
13606         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
13607         (operator==(const range_bounds &, const range_bounds &)): Declare.
13608         (operator!=(const range_bounds &, const range_bounds &)): Declare.
13609
13610 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13611
13612         * s390-linux-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): Move to s390-tdep.c.
13617         (s390_linux_init_abi_any): Adjust.
13618         * s390-tdep.c (s390_record_address_mask)
13619         (s390_record_calc_disp_common, s390_record_calc_disp)
13620         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13621         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13622         (s390_process_record): Moved from s390-linux-tdep.c
13623         (s390_gdbarch_init): Adjust.
13624
13625 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13626
13627         * s390-linux-nat.c (s390-tdep.h): New include.
13628         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
13629         (HFILES_NO_SRCDIR): Add s390-tdep.h.
13630         (ALLDEPFILES): Add s390-tdep.c.
13631         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
13632         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
13633         * s390-tdep.h: ...this.  New file.
13634         * s390-linux-tdep.c (s390-tdep.h): New include.
13635         (_initialize_s390_tdep): Rename to...
13636         (_initialize_s390_linux_tdep): ...this and adjust.
13637         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
13638         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
13639         s390-tdep.h.
13640         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
13641         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
13642         (s390_is_partial_instruction, s390_software_single_step)
13643         (is_non_branch_ril, s390_displaced_step_copy_insn)
13644         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
13645         (s390_prologue_data, s390_addr, s390_store, s390_load)
13646         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
13647         (s390_register_call_saved, s390_guess_tracepoint_registers)
13648         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
13649         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
13650         (s390_pseudo_register_name, s390_pseudo_register_type)
13651         (s390_pseudo_register_read, s390_pseudo_register_write)
13652         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
13653         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
13654         (s390_addr_bits_remove, s390_address_class_type_flags)
13655         (s390_address_class_type_flags_to_name)
13656         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
13657         (s390_function_arg_float, s390_function_arg_vector)
13658         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
13659         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
13660         (s390_frame_align, s390_register_return_value, s390_return_value)
13661         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
13662         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
13663         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
13664         (s390_trad_frame_prev_register, s390_unwind_cache)
13665         (s390_prologue_frame_unwind_cache)
13666         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
13667         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
13668         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
13669         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
13670         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
13671         (s390_frame_base_address, s390_local_base_address)
13672         (s390_frame_base, s390_gcc_target_options)
13673         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
13674         (s390_validate_reg_range, s390_tdesc_valid)
13675         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
13676         * s390-tdep.c: ...this.  New file.
13677
13678 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13679
13680         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
13681         (s390_process_record, s390_gdbarch_tdep_alloc)
13682         (s390_linux_init_abi_any): Use/set new hook.
13683
13684 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13685
13686         * s390-linux-tdep.c (osabi.h): New include.
13687         (s390_linux_init_abi_31, s390_linux_init_abi_64)
13688         (s390_linux_init_abi_any): New functions.
13689         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
13690
13691 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13692
13693         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
13694         tdesc_has_registers check
13695
13696 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13697
13698         * s390-linux-tdep.c (s390_tdesc_valid): New function.
13699         (s390_validate_reg_range): New macro.
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) <tdesc>: New field.
13705         (s390_gdbarch_tdep_alloc): Adjust.
13706         (s390_gdbarch_init): Adjust.
13707
13708 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13709
13710         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
13711         <have_tdb>: Change type to bool.
13712         (s390_gdbarch_tdep_alloc): Adjust.
13713         (s390_gdbarch_init): Adjust.
13714
13715 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13716
13717         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
13718         (gdbarch_tdep) <have_upper, have_vx>: New fields.
13719         (s390_gdbarch_tdep_alloc): New function.
13720         (s390_gdbarch_init): Allocate tdep at start and use its fields
13721         instead of separate variables.
13722
13723 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13724
13725         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
13726         when looking for cached gdbarch and add comment for remaining.
13727
13728 2018-01-22  Pedro Alves  <palves@redhat.com>
13729             Sergio Durigan Junior  <sergiodj@redhat.com>
13730
13731         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
13732         case.
13733
13734 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
13735
13736         * MAINTAINERS: Update my company e-mail address.
13737
13738 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13739
13740         * regcache.c (cooked_write_test): New function.
13741         (_initialize_regcache): Register the test.
13742
13743 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13744
13745         * ia64-tdep.c (ia64_pseudo_register_read): Call
13746         regcache->cooked_read instead of regcache_cooked_read_unsigned.
13747         * m32c-tdep.c (m32c_cat_read): Likewise.
13748         (m32c_r3r2r1r0_read): Likewise.
13749         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13750         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13751
13752 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13753
13754         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
13755         method raw_read instead of regcache_raw_read.
13756         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13757         * arm-tdep.c (arm_neon_quad_read): Likewise.
13758         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13759         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13760         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13761         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
13762         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13763         (i386_pseudo_register_read_into_value): Likewise.
13764         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13765         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13766         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13767         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
13768         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
13769         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
13770         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13771         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
13772         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
13773
13774 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13775
13776         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
13777         * configure.tgt: Remove target mt.
13778         * mt-tdep.c: Remove.
13779         * regcache.c (cooked_read_test): Remove the check for mt.
13780
13781 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13782
13783         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
13784         instead of gdbarch_pseudo_register_read_value.
13785
13786 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13787
13788         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
13789         language is Ada.
13790
13791 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13792
13793         * linespec.c (create_sals_line_offset): Remove code that preserved
13794         the symtab_and_line's line number.
13795
13796 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13797
13798         * varobj.c (varobj_create): Don't set valid_block when creating a
13799         floating varobj.
13800
13801 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13802
13803         * varobj.c (varobj_create): Remove out of date comment.
13804
13805 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13806
13807         PR mi/20395
13808         * ada-exp.y (write_var_from_sym): Pass extra parameter when
13809         updating innermost block.
13810         * parse.c (innermost_block_tracker::update): Take extra type
13811         parameter, and check types match before updating innermost block.
13812         (write_dollar_variable): Update innermost block for registers.
13813         * parser-defs.h (enum innermost_block_tracker_type): New enum.
13814         (innermost_block_tracker::innermost_block_tracker): Initialise
13815         m_types member.
13816         (innermost_block_tracker::reset): Take type parameter.
13817         (innermost_block_tracker::update): Take type parameter, and pass
13818         type through as needed.
13819         (innermost_block_tracker::m_types): New member.
13820         * varobj.c (varobj_create): Pass type when reseting innermost
13821         block.
13822
13823 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13824
13825         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
13826         * ada-lang.c (resolve_subexp): Likewise.
13827         * breakpoint.c (set_breakpoint_condition) Likewise.
13828         (watch_command_1) Likewise.
13829         * c-exp.y (variable): Likewise.
13830         * d-exp.y (PrimaryExpression): Likewise.
13831         * f-exp.y (variable): Likewise.
13832         * go-exp.y (variable): Likewise.
13833         * m2-exp.y (variable): Likewise.
13834         * objfiles.c (objfile::~objfile): Likewise.
13835         * p-exp.y (variable): Likewise.
13836         * parse.c (innermost_block): Change type.
13837         * parser-defs.h (class innermost_block_tracker): New.
13838         (innermost_block): Change to innermost_block_tracker.
13839         * printcmd.c (display_command): Switch to innermost_block API.
13840         (do_one_display): Likewise.
13841         * rust-exp.y (do_one_display): Likewise.
13842         * symfile.c (clear_symtab_users): Likewise.
13843         * varobj.c (varobj_create): Switch to innermost_block API, replace
13844         use of innermost_block with block stored on varobj object.
13845
13846 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13847
13848         * expression.h (innermost_block): Remove declaration.
13849         * varobj.c: Add 'parser-defs.h' include.
13850
13851 2018-01-19  Tom Tromey  <tom@tromey.com>
13852
13853         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
13854         symbols in the static and global blocks.
13855
13856 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
13857
13858         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
13859         gdb_ptrace.h, and move including gdb_wait.h ...
13860         * nat/linux-ptrace.h: ... to here.
13861
13862 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13863
13864         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
13865         inf_ptrace_detach_success.
13866         (inf_ptrace_detach_success): Add inferior parameter, use it
13867         instead of inferior_ptid, pass it to detach_inferior.
13868         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
13869         parameter.
13870         * inferior.c (detach_inferior): Add overload that takes an
13871         inferior object.
13872         * inferior.h (detach_inferior): Likewise.
13873         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
13874         use inferior_ptid, adjust call to inf_ptrace_detach_success.
13875         * linux-thread-db.c (thread_db_detach): Use inf parameter.
13876
13877 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13878
13879         * target.h (struct target_ops) <to_detach>: Add inferior
13880         parameter.
13881         (target_detach): Likewise.
13882         * target.c (dispose_inferior): Pass inferior down.
13883         (target_detach): Pass inferior down.  Assert that it is equal to
13884         the current inferior.
13885         * aix-thread.c (aix_thread_detach): Pass inferior down.
13886         * corefile.c (core_file_command): Pass current_inferior() down.
13887         * corelow.c (core_detach): Add inferior parameter.
13888         * darwin-nat.c (darwin_detach): Likewise.
13889         * gnu-nat.c (gnu_detach): Likewise.
13890         * inf-ptrace.c (inf_ptrace_detach): Likewise.
13891         * infcmd.c (detach_command): Pass current_inferior() down to
13892         target_detach.
13893         * infrun.c (follow_fork_inferior): Pass parent_inf to
13894         target_detach.
13895         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
13896         target_detach.
13897         * linux-nat.c (linux_nat_detach): Add inferior parameter.
13898         * linux-thread-db.c (thread_db_detach): Likewise.
13899         * nto-procfs.c (procfs_detach): Likewise.
13900         * procfs.c (procfs_detach): Likewise.
13901         * record.c (record_detach): Likewise.
13902         * record.h (struct inferior): Forward-declare.
13903         (record_detach): Add inferior parameter.
13904         * remote-sim.c (gdbsim_detach): Likewise.
13905         * remote.c (remote_detach_1): Likewise.
13906         (remote_detach): Likewise.
13907         (extended_remote_detach): Likewise.
13908         * sol-thread.c (sol_thread_detach): Likewise.
13909         * target-debug.h (target_debug_print_inferior_p): New macro.
13910         * target-delegates.c: Re-generate.
13911         * top.c (kill_or_detach): Pass inferior down to target_detach.
13912         * windows-nat.c (windows_detach): Add inferior parameter.
13913
13914 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13915
13916         * target.h (struct target_ops) <to_detach>: Remove args
13917         parameter.
13918         (target_detach): Likewise.
13919         * target.c (dispose_inferior): Adjust.
13920         (target_detach): Remove args parameter, adjust.
13921         * aix-thread.c (aix_thread_detach): Adjust.
13922         * corefile.c (core_file_command): Adjust.
13923         * corelow.c (core_detach): Adjust.
13924         * darwin-nat.c (darwin_detach): Adjust.
13925         * gnu-nat.c (gnu_detach): Adjust.
13926         * inf-ptrace.c (inf_ptrace_detach): Adjust.
13927         * infcmd.c (detach_command): Adjust
13928         * infrun.c (follow_fork_inferior): Adjust.
13929         (handle_vfork_child_exec_or_exit): Adjust.
13930         * linux-fork.c (linux_fork_detach): Remove args parameter.
13931         * linux-fork.h (linux_fork_detach): Likewise.
13932         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
13933         * linux-thread-db.c (thread_db_detach): Likewise.
13934         * nto-procfs.c (procfs_detach): Likewise.
13935         * procfs.c (procfs_detach): Likewise.
13936         (do_detach): Remove signo parameter.
13937         * record.c (record_detach): Remove args parameter.
13938         * record.h (record_detach): Likewise.
13939         * remote-sim.c (gdbsim_detach): Likewise.
13940         * remote.c (remote_detach_1): Likewise.
13941         (remote_detach): Likewise.
13942         (extended_remote_detach): Likewise.
13943         * sol-thread.c (sol_thread_detach): Likewise.
13944         * target-delegates.c: Re-generate.
13945         * top.c (struct qt_args) <args>: Remove field.
13946         (kill_or_detach): Don't pass args.
13947         (quit_force): Don't set args.
13948         * windows-nat.c (windows_detach): Remove args parameter.
13949
13950 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13951
13952         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
13953         (arm_linux_init_abi): Install it.
13954
13955 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13956
13957         * osabi.c (gdb_osabi_names): Extend the regexp for
13958         arm-linux-gnueabihf.
13959
13960 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13961
13962         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
13963         m_abbrevs.
13964         (abbrev_table::add_abbrev): Update.
13965         (abbrev_table::lookup_abbrev): Update.
13966
13967 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13968
13969         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
13970
13971 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
13972
13973         * compile/compile.c (compile_to_object): Convert "triplet_rx"
13974         to "std::string".
13975
13976 2018-01-17  Tom Tromey  <tom@tromey.com>
13977
13978         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
13979
13980 2018-01-17  Tom Tromey  <tom@tromey.com>
13981
13982         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
13983         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
13984         (create_array_type_with_stride): Update.
13985         * dwarf2read.c (set_die_type): Update.
13986
13987 2018-01-17  Tom Tromey  <tom@tromey.com>
13988
13989         * dwarf2read.c (delayed_method_info): Remove typedef.
13990         (dwarf2_cu::method_info): Now a std::vector.
13991         (add_to_method_list): Update.
13992         (free_delayed_list): Remove.
13993         (compute_delayed_physnames): Update.
13994         (process_full_comp_unit, process_full_type_unit): Clear the method
13995         list.  Remove cleanups.
13996         (psymtab_include_file_name): Add name_holder parameter.  Use
13997         unique_xmalloc_ptr.
13998         (dwarf_decode_lines): Update.
13999
14000 2018-01-17  Tom Tromey  <tom@tromey.com>
14001             Simon Marchi  <simon.marchi@ericsson.com>
14002
14003         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14004         (dwarf2_per_objfile::free_cached_comp_units)
14005         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14006         (init_cutu_and_read_dies_no_follow): Update.
14007         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14008         (dwarf2_cu::~dwarf2_cu): New.
14009         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14010         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14011
14012 2018-01-17  Tom Tromey  <tom@tromey.com>
14013             Simon Marchi  <simon.marchi@ericsson.com>
14014
14015         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14016         (struct die_reader_specs) <abbrev_table>: New member.
14017         (struct abbrev_table): Add constructor.
14018         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14019         <abbrev_obstack>: Now an auto_obstack.
14020         (abbrev_table_up): New typedef.
14021         (init_cu_die_reader): Add abbrev_table parameter.
14022         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14023         Add result_dwo_abbrev_table.
14024         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14025         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14026         Update.
14027         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14028         parameter.
14029         (skip_children): Update.
14030         (abbrev_table::alloc_abbrev): Rename from
14031         abbrev_table_alloc_abbrev.
14032         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14033         (abbrev_table::lookup_abbrev): Rename from
14034         abbrev_table_lookup_abbrev.
14035         (abbrev_table_read_table): Return abbrev_table_up.
14036         (abbrev_table_free, abbrev_table_free_cleanup)
14037         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14038         (load_partial_dies): Update.
14039
14040 2018-01-17  Tom Tromey  <tom@tromey.com>
14041
14042         * dwarf2read.c (dwarf2_compute_name): Update comment.
14043         (read_func_scope, read_variable): Update.
14044         (new_symbol): Remove.
14045         (new_symbol_full): Rename to new_symbol.
14046
14047 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14048
14049         PR gdb/16577
14050         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14051         a warning instead of throwing an error, set section size to 0 and return
14052         NULL.
14053         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14054
14055 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14056
14057         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14058         std::string.
14059         (linux_ptrace_attach_fail_reason_string): Likewise.
14060         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14061         Likewise.
14062         (linux_ptrace_attach_fail_reason_string): Likewise.
14063         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14064
14065 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14066
14067         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14068
14069 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14070
14071         PR gdb/21559
14072         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14073         checking for fs_base/gs_base fields in struct user_regs_struct.
14074         * configure: Regenerate.
14075
14076 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14077
14078         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14079         function.
14080         (aarch64_linux_init_abi): Install it to gdbarch hook
14081         gcc_target_options.
14082
14083 2018-01-15  Pedro Alves  <palves@redhat.com>
14084
14085         * common/signals-state-save-restore.c
14086         (save_original_signals_state): Fix typos.
14087
14088 2017-01-12  Tom Tromey  <tom@tromey.com>
14089             Sergio Durigan Junior  <sergiodj@redhat.com>
14090
14091         * Makefile.in (install-only): Install gdb-add-index.
14092
14093 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14094
14095         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14096
14097 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14098
14099         * infrun.c (keep_going_pass_signal): Clear step-over info when
14100         insert_breakpoints fails.
14101
14102 2018-01-11  Pedro Alves  <palves@redhat.com>
14103
14104         PR gdb/22583
14105         * infrun.c (resume): Rename to ...
14106         (resume_1): ... this.
14107         (resume): Reimplement as wrapper around resume_1.
14108
14109 2018-01-11  Pedro Alves  <palves@redhat.com>
14110
14111         PR remote/22597
14112         * remote.c (remote_parse_stop_reply): Default to the last-set
14113         general thread instead of to 'magic_null_ptid'.
14114
14115 2018-01-10  Pedro Alves  <palves@redhat.com>
14116
14117         * language.h (language_get_symbol_name_matcher): Rename ...
14118         (get_symbol_name_matcher): ... this.
14119         * language.c (language_get_symbol_name_matcher): Ditto.
14120         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14121         callers adjusted.
14122
14123 2018-01-10  Pedro Alves  <palves@redhat.com>
14124
14125         PR gdb/22670
14126         * dwarf2read.c
14127         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14128         Adjust to use language_get_symbol_name_matcher instead of
14129         language_defn::la_get_symbol_name_matcher.
14130         * language.c (language_get_symbol_name_matcher): If in Ada mode
14131         and the lookup name is a verbatim match, return Ada's matcher.
14132         * language.h (language_get_symbol_name_matcher): Adjust comment.
14133         (ada_lookup_name_info::verbatim_p):: New method.
14134
14135 2018-01-10  Pedro Alves  <palves@redhat.com>
14136
14137         PR gdb/22670
14138         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14139         minsym's language is language_auto or language_cplus, pass down
14140         language_ada instead.
14141         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14142
14143 2018-01-10  Pedro Alves  <palves@redhat.com>
14144
14145         PR gdb/22670
14146         * minsyms.c (linkage_name_str): New function.
14147         (iterate_over_minimal_symbols): Use it.
14148
14149 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14150
14151         * NEWS: Document that 'info proc' now works on FreeBSD.
14152
14153 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14154
14155         * configure.ac: Check for kinfo_getfile in libutil.
14156         * configure: Regenerate.
14157         * config.in: Regenerate.
14158         * fbsd-nat.c: Include "fbsd-tdep.h".
14159         (fbsd_fetch_cmdline): New.
14160         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14161         rather than calling error.
14162         (fbsd_info_proc): New.
14163         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14164         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14165         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14166
14167 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14168
14169         * fbsd-nat.c (struct free_deleter): Remove.
14170         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14171
14172 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14173
14174         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14175         NULL for an empty pathname.
14176
14177 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14178
14179         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14180         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14181         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14182         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14183         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14184         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14185         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14186         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14187         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14188         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14189         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14190         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14191         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14192         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14193         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14194
14195 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14196
14197         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14198         (gnu_xfer_auxv): New function.
14199         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14200         TARGET_OBJECT_AUXV.
14201
14202 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14203             Simon Marchi  <simon.marchi@ericsson.com>
14204
14205         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14206         common/selftest.c.
14207         (COMMON_OBS): Remove selftest.o.
14208         * configure.ac: Append selftest-arch.c and common/selftest.c to
14209         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14210         * configure: Re-generated.
14211         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14212         GDB_SELF_TEST.
14213         (maintenance_info_selftests): Likewise.
14214
14215 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14216
14217         * ada-valprint.c (val_print_packed_array_elements): Use
14218         proper number of elements when printing an array indexed
14219         by an enumeration type.
14220
14221 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14222
14223         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14224         (dw2_get_file_names_reader): Adjust.
14225         (lookup_dwo_signatured_type): Adjust.
14226         (lookup_dwp_signatured_type): Adjust.
14227         (lookup_signatured_type): Adjust.
14228         (create_type_unit_group): Adjust.
14229         (get_type_unit_group): Adjust.
14230         (process_psymtab_comp_unit_reader): Adjust.
14231         (build_type_psymtabs_reader): Adjust.
14232         (scan_partial_symbols): Adjust.
14233         (add_partial_symbol): Adjust.
14234         (add_partial_subprogram): Adjust.
14235         (peek_die_abbrev): Adjust.
14236         (fixup_go_packaging): Adjust.
14237         (process_imported_unit_die): Adjust.
14238         (dwarf2_compute_name): Adjust.
14239         (dwarf2_physname): Adjust.
14240         (read_import_statement): Adjust.
14241         (handle_DW_AT_stmt_list): Adjust.
14242         (read_file_scope): Adjust.
14243         (read_func_scope): Adjust.
14244         (read_lexical_block_scope): Adjust.
14245         (read_call_site_scope): Adjust.
14246         (read_variable): Adjust.
14247         (dwarf2_rnglists_process): Adjust.
14248         (dwarf2_ranges_process): Adjust.
14249         (dwarf2_ranges_read): Adjust.
14250         (dwarf2_get_pc_bounds): Adjust.
14251         (dwarf2_record_block_ranges): Adjust.
14252         (dwarf2_add_field): Adjust.
14253         (dwarf2_add_member_fn): Adjust.
14254         (read_structure_type): Adjust.
14255         (process_structure_scope): Adjust.
14256         (read_enumeration_type): Adjust.
14257         (read_array_type): Adjust.
14258         (mark_common_block_symbol_computed): Adjust.
14259         (read_common_block): Adjust.
14260         (read_namespace_type): Adjust.
14261         (read_namespace): Adjust.
14262         (read_module_type): Adjust.
14263         (read_tag_pointer_type): Adjust.
14264         (read_tag_ptr_to_member_type): Adjust.
14265         (read_tag_string_type): Adjust.
14266         (read_subroutine_type): Adjust.
14267         (read_typedef): Adjust.
14268         (read_base_type): Adjust.
14269         (attr_to_dynamic_prop): Adjust.
14270         (read_subrange_type): Adjust.
14271         (read_unspecified_type): Adjust.
14272         (dwarf2_read_abbrevs): Adjust.
14273         (load_partial_dies): Adjust.
14274         (read_partial_die): Adjust.
14275         (find_partial_die): Adjust.
14276         (guess_partial_die_structure_name): Adjust.
14277         (fixup_partial_die): Adjust.
14278         (read_attribute_value): Adjust.
14279         (read_addr_index): Adjust.
14280         (read_addr_index_from_leb128): Adjust.
14281         (read_str_index): Adjust.
14282         (dwarf2_string_attr): Adjust.
14283         (get_debug_line_section): Adjust.
14284         (dwarf_decode_line_header): Adjust.
14285         (lnp_state_machine::check_line_address): Adjust.
14286         (dwarf_decode_lines_1): Adjust.
14287         (dwarf_decode_lines): Adjust.
14288         (dwarf2_start_symtab): Adjust.
14289         (var_decode_location): Adjust.
14290         (new_symbol_full): Adjust.
14291         (dwarf2_const_value_data): Adjust.
14292         (dwarf2_const_value_attr): Adjust.
14293         (dwarf2_const_value): Adjust.
14294         (die_type): Adjust.
14295         (die_containing_type): Adjust.
14296         (build_error_marker_type): Adjust.
14297         (lookup_die_type): Adjust.
14298         (guess_full_die_structure_name): Adjust.
14299         (anonymous_struct_prefix): Adjust.
14300         (determine_prefix): Adjust.
14301         (dwarf2_name): Adjust.
14302         (follow_die_ref_or_sig): Adjust.
14303         (follow_die_offset): Adjust.
14304         (follow_die_ref): Adjust.
14305         (follow_die_sig_1): Adjust.
14306         (follow_die_sig): Adjust.
14307         (get_signatured_type): Adjust.
14308         (get_DW_AT_signature_type): Adjust.
14309         (decode_locdesc): Adjust.
14310         (dwarf_decode_macros): Adjust.
14311         (cu_debug_loc_section): Adjust.
14312         (fill_in_loclist_baton): Adjust.
14313         (dwarf2_symbol_mark_computed): Adjust.
14314         (init_one_comp_unit): Don't assign
14315         dwarf2_cu::dwarf2_per_objfile.
14316         (set_die_type): Adjust.
14317
14318 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14319
14320         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14321         <dwarf2_per_objfile>: New field.
14322         (dwarf2_per_objfile): Remove global.
14323         (get_dwarf2_per_objfile): New function.
14324         (set_dwarf2_per_objfile): New function.
14325         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14326         dwarf2_per_objfile.
14327         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14328         (read_abbrev_offset): Likewise.
14329         (read_indirect_string): Likewise.
14330         (read_indirect_line_string): Likewise.
14331         (read_indirect_string_at_offset): Likewise.
14332         (read_indirect_string_from_dwz): Likewise.
14333         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14334         dwarf2_per_objfile.
14335         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14336         (create_all_comp_units): Change objfile parameter to
14337         dwarf2_per_objfile.
14338         (create_all_type_units): Likewise.
14339         (process_queue): Add dwarf2_per_objfile parameter.
14340         (read_and_check_comp_unit_head): Likewise.
14341         (lookup_dwo_unit_in_dwp): Likewise.
14342         (get_dwp_file): Likewise.
14343         (process_cu_includes): Likewise.
14344         (struct free_dwo_file_cleanup_data): New struct.
14345         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14346         set_dwarf2_per_objfile.
14347         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14348         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14349         context, adjust calls.
14350         (dw2_instantiate_symtab): Likewise.
14351         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14352         (dw2_get_cu): Likewise.
14353         (create_cu_from_index_list): Change objfile parameter to
14354         dwarf2_per_objfile.
14355         (create_cus_from_index_list): Get dwarf2_per_objfile from
14356         context, adjust calls.
14357         (create_cus_from_index): Likewise.
14358         (create_signatured_type_table_from_index): Change objfile
14359         parameter to dwarf2_per_objfile.
14360         (create_signatured_type_table_from_debug_names): Change objfile
14361         parameter to dwarf2_per_objfile.
14362         (create_addrmap_from_index): Likewise.
14363         (create_addrmap_from_aranges): Likewise.
14364         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14365         (dw2_setup): Remove.
14366         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14367         context.
14368         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14369         get_dwarf2_per_objfile.
14370         (dw2_forget_cached_source_info): Likewise.
14371         (dw2_map_symtabs_matching_filename): Likewise.
14372         (struct dw2_symtab_iterator) <index>: Remove.
14373         <dwarf2_per_objfile>: New field.
14374         (dw2_symtab_iter_init): Replace index parameter with
14375         dwarf2_per_objfile.
14376         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14377         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14378         (dw2_print_stats): Likewise.
14379         (dw2_dump): Likewise.
14380         (dw2_expand_symtabs_for_function): Likewise.
14381         (dw2_expand_all_symtabs): Likewise.
14382         (dw2_expand_symtabs_with_fullname): Likewise.
14383         (dw2_expand_marked_cus): Replace index and objfile parameters
14384         with dwarf2_per_objfile.
14385         (dw_expand_symtabs_matching_file_matcher): Add
14386         dwarf2_per_objfile parameter and adjust calls.
14387         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14388         adjust calls.
14389         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14390         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14391         adjust calls.
14392         (create_cus_from_debug_names_list): Replace objfile parameter
14393         with dwarf2_per_objfile and adjust calls.
14394         (create_cus_from_debug_names): Likewise.
14395         (dwarf2_read_debug_names): Likewise.
14396         (mapped_debug_names::namei_to_name): Adjust call.
14397         (dw2_debug_names_iterator::next): Likewise.
14398         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14399         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14400         (dw2_debug_names_dump): Likewise.
14401         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14402         (dw2_debug_names_expand_symtabs_matching): Likewise.
14403         (dwarf2_initialize_objfile): Likewise.
14404         (dwarf2_build_psymtabs): Likewise.
14405         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14406         this_cu.
14407         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14408         (read_and_check_comp_unit_head): Likewise.
14409         (read_abbrev_offset): Likewise.
14410         (create_debug_type_hash_table): Likewise.
14411         (create_debug_types_hash_table): Likewise.
14412         (create_all_type_units): Replace objfile parameter with
14413         dwarf2_per_objfile.
14414         (add_type_unit): Add dwarf2_per_objfile parameter.
14415         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14416         with dwarf2_per_objfile.
14417         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14418         (lookup_dwp_signatured_type): Likewise.
14419         (lookup_signatured_type): Likewise.
14420         (read_cutu_die_from_dwo): Likewise.
14421         (init_tu_and_read_dwo_dies): Likewise.
14422         (init_cutu_and_read_dies): Likewise.
14423         (init_cutu_and_read_dies_no_follow): Likewise.
14424         (allocate_type_unit_groups_table): Add objfile parameter.
14425         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14426         (get_type_unit_group): Likewise.
14427         (process_psymtab_comp_unit): Update call.
14428         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14429         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14430         (print_tu_stats): Likewise.
14431         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14432         in void* parameter.
14433         (build_type_psymtabs): Change objfile parameter to
14434         dwarf2_per_objfile.
14435         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14436         passed in void* parameter.
14437         (process_skeletonless_type_units): Change objfile parameter to
14438         dwarf2_per_objfile.
14439         (set_partial_user): Likewise.
14440         (dwarf2_build_psymtabs_hard): Likewise.
14441         (read_comp_units_from_section): Likewise.
14442         (create_all_comp_units): Likewise.
14443         (scan_partial_symbols): Update calls.
14444         (add_partial_symbol): Likewise.
14445         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14446         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14447         (process_queue): Add dwarf2_per_objfile parameter.
14448         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14449         (compute_compunit_symtab_includes): Likewise.
14450         (process_cu_includes): Add dwarf2_per_objfile parameter.
14451         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14452         (process_full_type_unit): Likewise.
14453         (process_imported_unit_die): Update call.
14454         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14455         (read_file_scope): Likewise.
14456         (allocate_dwo_file_hash_table): Add objfile parameter.
14457         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14458         (create_cus_hash_table): Likewise.
14459         (create_dwp_hash_table): Likewise.
14460         (create_dwo_unit_in_dwp_v1): Likewise.
14461         (create_dwp_v2_section): Likewise.
14462         (create_dwo_unit_in_dwp_v2): Likewise.
14463         (lookup_dwo_unit_in_dwp): Likewise.
14464         (try_open_dwop_file): Likewise.
14465         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14466         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14467         cleanup to include a reference to dwarf2_per_objfile.
14468         (open_dwp_file): Add dwarf2_per_objfile parameter.
14469         (open_and_init_dwp_file): Likewise.
14470         (get_dwp_file): Likewise.
14471         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14472         (queue_and_load_all_dwo_tus): Update call.
14473         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14474         data.
14475         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14476         (dwarf2_ranges_process): Likewise.
14477         (dwarf2_get_pc_bounds): Likewise.
14478         (mark_common_block_symbol_computed): Likewise.
14479         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14480         (dwarf2_read_abbrevs): Update call.
14481         (read_partial_die): Use dwarf2_per_objfile from cu.
14482         (find_partial_die): Likewise.
14483         (fixup_partial_die): Likewise.
14484         (read_attribute_value): Likewise.
14485         (read_indirect_string_at_offset_from): Add objfile parameter.
14486         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14487         parameter.
14488         (read_indirect_string_from_dwz): Add objfile parameter.
14489         (read_indirect_string): Add objfile parameter.
14490         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14491         (read_addr_index): Use dwarf2_per_objfile from cu.
14492         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14493         call dw2_setup.
14494         (read_str_index): Use dwarf2_per_objfile from cu.
14495         (get_debug_line_section): Likewise.
14496         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14497         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14498         (new_symbol_full): Use dwarf2_per_objfile from cu.
14499         (build_error_marker_type): Likewise.
14500         (lookup_die_type): Likewise.
14501         (determine_prefix): Likewise.
14502         (follow_die_offset): Likewise.
14503         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14504         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14505         (dwarf2_fetch_die_type_sect_off): Likewise.
14506         (dwarf2_get_die_type): Likewise.
14507         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14508         (get_signatured_type): Likewise.
14509         (get_DW_AT_signature_type): Likewise.
14510         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14511         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14512         (cu_debug_loc_section): Likewise.
14513         (fill_in_loclist_baton): Likewise.
14514         (dwarf2_symbol_mark_computed): Likewise.
14515         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14516         dwarf2_per_objfile.
14517         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14518         parameter.
14519         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14520         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14521         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14522         (set_die_type): Use dwarf2_free_objfile from cu.
14523         (get_die_type_at_offset): Likewise.
14524         (dwarf2_per_objfile_free): Don't assign global variable.
14525         (debug_names) <constructor>: Add dwarf2_per_objfile
14526         parameter, update m_debugstrlookup construction.
14527         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14528         parameter.
14529         <m_dwarf2_per_objfile>: New field.
14530         <lookup>: Use m_dwarf2_per_objfile.
14531         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14532         (psyms_seen_size): Likewise.
14533         (write_gdbindex): Replace objfile parameter with
14534         dwarf2_per_objfile.
14535         (write_debug_names): Likewise.
14536         (write_psymtabs_to_index): Likewise.
14537         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14538         calls.
14539
14540 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14541
14542         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14543         <dwarf2_per_objfile>: New field.
14544         (struct dwarf2_per_cu_data) <objfile>: Remove.
14545         <dwarf2_per_objfile>: New field.
14546         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14547         of objfile.
14548         (create_signatured_type_table_from_index): Likewise.
14549         (create_debug_type_hash_table): Likewise.
14550         (fill_in_sig_entry_from_dwo_entry): Likewise.
14551         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14552         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14553         objfile.
14554         (create_partial_symtab): Access objfile through
14555         dwarf2_per_objfile.
14556         (process_psymtab_comp_unit_reader): Likewise.
14557         (read_comp_units_from_section): Likewise.
14558         (scan_partial_symbols): Likewise.
14559         (add_partial_symbol): Likewise.
14560         (add_partial_subprogram): Likewise.
14561         (peek_die_abbrev): Likewise.
14562         (fixup_go_packaging): Likewise.
14563         (process_full_comp_unit): Likewise.
14564         (process_full_type_unit): Likewise.
14565         (process_imported_unit_die): Likewise.
14566         (dwarf2_compute_name): Likewise.
14567         (dwarf2_physname): Likewise.
14568         (read_import_statement): Likewise.
14569         (create_cus_hash_table): Assign dwarf2_physname instead of
14570         objfile.
14571         (read_func_scope): Access objfile through dwarf2_per_objfile.
14572         (read_lexical_block_scope): Likewise.
14573         (read_call_site_scope): Likewise.
14574         (read_variable): Likewise.
14575         (dwarf2_rnglists_process): Likewise.
14576         (dwarf2_ranges_process): Likewise.
14577         (dwarf2_ranges_read): Likewise.
14578         (dwarf2_record_block_ranges): Likewise.
14579         (dwarf2_add_field): Likewise.
14580         (dwarf2_add_member_fn): Likewise.
14581         (read_structure_type): Likewise.
14582         (process_structure_scope): Likewise.
14583         (read_enumeration_type): Likewise.
14584         (read_array_type): Likewise.
14585         (read_common_block): Likewise.
14586         (read_namespace_type): Likewise.
14587         (read_namespace): Likewise.
14588         (read_module_type): Likewise.
14589         (read_tag_pointer_type): Likewise.
14590         (read_tag_ptr_to_member_type): Likewise.
14591         (read_tag_string_type): Likewise.
14592         (read_subroutine_type): Likewise.
14593         (read_typedef): Likewise.
14594         (read_base_type): Likewise.
14595         (attr_to_dynamic_prop): Likewise.
14596         (read_subrange_type): Likewise.
14597         (read_unspecified_type): Likewise.
14598         (load_partial_dies): Likewise.
14599         (read_partial_die): Likewise.
14600         (find_partial_die): Likewise.
14601         (guess_partial_die_structure_name): Likewise.
14602         (fixup_partial_die): Likewise.
14603         (read_attribute_value): Likewise.
14604         (read_addr_index_from_leb128): Likewise.
14605         (dwarf2_read_addr_index): Likewise.
14606         (dwarf2_string_attr): Likewise.
14607         (lnp_state_machine::check_line_address): Likewise.
14608         (dwarf_decode_lines_1): Likewise.
14609         (dwarf_decode_lines): Likewise.
14610         (dwarf2_start_symtab): Likewise.
14611         (var_decode_location): Likewise.
14612         (new_symbol_full): Likewise.
14613         (dwarf2_const_value_data): Likewise.
14614         (dwarf2_const_value_attr): Likewise.
14615         (dwarf2_const_value): Likewise.
14616         (die_type): Likewise.
14617         (die_containing_type): Likewise.
14618         (lookup_die_type): Likewise.
14619         (guess_full_die_structure_name): Likewise.
14620         (anonymous_struct_prefix): Likewise.
14621         (dwarf2_name): Likewise.
14622         (follow_die_ref_or_sig): Likewise.
14623         (follow_die_offset): Likewise.
14624         (follow_die_ref): Likewise.
14625         (dwarf2_fetch_die_loc_sect_off): Likewise.
14626         (dwarf2_fetch_constant_bytes): Likewise.
14627         (dwarf2_fetch_die_type_sect_off): Likewise.
14628         (dwarf2_get_die_type): Likewise.
14629         (follow_die_sig): Likewise.
14630         (decode_locdesc): Likewise.
14631         (dwarf2_per_cu_objfile): Likewise.
14632         (dwarf2_per_cu_text_offset): Likewise.
14633         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
14634         objfile.
14635         (set_die_type): Access objfile through
14636         dwarf2_per_objfile.
14637
14638 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14639
14640         * valprint.c (converted_character_d): Remove typedef.
14641         (DEF_VEC_O (converted_character_d)): Remove.
14642         (count_next_character): Use std::vector.
14643         (print_converted_chars_to_obstack): Likewise.
14644         (generic_printstr): Likewise.
14645
14646 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14647
14648         * xml-support.h (struct gdb_xml_value): Add constructor.
14649         <value>: Change type to unique_xmalloc_ptr.
14650         (gdb_xml_value_s): Remove typedef.
14651         (DEF_VEC_O (gdb_xml_value_s)): Remove.
14652         (gdb_xml_element_start_handler): Change parameter type to
14653         std::vector.
14654         (xml_find_attribute): Likewise.
14655         * xml-support.c (xml_find_attribute): Change parameter type to
14656         std::vector and adjust.
14657         (gdb_xml_values_cleanup): Remove.
14658         (gdb_xml_parser::start_element): Adjust to std::vector.
14659         (xinclude_start_include): Change paraeter type to std::vector
14660         and adjust.
14661         * btrace.c (check_xml_btrace_version): Likewise.
14662         (parse_xml_btrace_block): Likewise.
14663         (parse_xml_btrace_pt_config_cpu): Likewise.
14664         (parse_xml_btrace_pt): Likewise.
14665         (parse_xml_btrace_conf_bts): Likewise.
14666         (parse_xml_btrace_conf_pt): Likewise.
14667         * memory-map.c (memory_map_start_memory): Likewise.
14668         (memory_map_start_property): Likewise.
14669         * osdata.c (osdata_start_osdata): Likewise.
14670         (osdata_start_item): Likewise.
14671         (osdata_start_column): Likewise.
14672         * remote.c (start_thread): Likewise.
14673         * solib-aix.c (library_list_start_library): Likewise.
14674         (library_list_start_list): Likewise.
14675         * solib-svr4.c (library_list_start_library): Likewise.
14676         (svr4_library_list_start_list): Likewise.
14677         * solib-target.c (library_list_start_segment): Likewise.
14678         (library_list_start_section): Likewise.
14679         (library_list_start_library): Likewise.
14680         (library_list_start_list): Likewise.
14681         * tracepoint.c (traceframe_info_start_memory): Likewise.
14682         (traceframe_info_start_tvar): Likewise.
14683         * xml-syscall.c (syscall_start_syscall): Likewise.
14684         * xml-tdesc.c (tdesc_start_target): Likewise.
14685         (tdesc_start_feature): Likewise.
14686         (tdesc_start_reg): Likewise.
14687         (tdesc_start_union): Likewise.
14688         (tdesc_start_struct): Likewise.
14689         (tdesc_start_flags): Likewise.
14690         (tdesc_start_enum): Likewise.
14691         (tdesc_start_field): Likewise.
14692         (tdesc_start_enum_value): Likewise.
14693         (tdesc_start_vector): Likewise.
14694
14695 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14696
14697         * extension.h (struct xmethod_worker) <clone>: Remove.
14698         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
14699         Remove.
14700         (python_xmethod_worker::clone): Remove.
14701         * valops.c (find_overload_match): Use std::move instead of
14702         clone.
14703
14704 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14705
14706         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
14707         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
14708         <free_xmethod_worker_data>: Remove.
14709         <get_matching_xmethod_workers>: Chance VEC to std::vector.
14710         <get_xmethod_arg_types>: Remove.
14711         <get_xmethod_result_type>: Remove.
14712         <invoke_xmethod>: Remove.
14713         * extension.c (new_xmethod_worker): Remove.
14714         (clone_xmethod_worker): Remove.
14715         (get_matching_xmethod_workers): Return void, pass std::vector by
14716         pointer.
14717         (get_xmethod_arg_types): Rename to...
14718         (xmethod_worker::get_arg_types): ... this, and adjust.
14719         (get_xmethod_result_type): Rename to...
14720         (xmethod_worker::get_result_type): ... this, and adjust.
14721         (invoke_xmethod): Remove.
14722         (free_xmethod_worker): Remove.
14723         (free_xmethod_worker_vec): Remove.
14724         * extension.h (enum ext_lang_rc): Move here from
14725         extension-priv.h.
14726         (struct xmethod_worker): Add constructor and destructor.
14727         <data>: Remove.
14728         <value>: Remove.
14729         <invoke, clone, do_get_result_type, do_get_arg_types>: New
14730         virtual pure methods.
14731         <get_arg_types, get_result_type>: New methods.
14732         (xmethod_worker_ptr): Remove typedef.
14733         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
14734         (xmethod_worker_vec): Remove typedef.
14735         (xmethod_worker_up): New typedef.
14736         (invoke_xmethod): Remove.
14737         (clone_xmethod_worker): Remove.
14738         (free_xmethod_worker): Remove.
14739         (free_xmethod_worker_vec): Remove.
14740         (get_xmethod_arg_types): Remove.
14741         (get_xmethod_result_type): Remove.
14742         * valops.c (find_method_list): Use std::vector, don't use
14743         intermediate vector.
14744         (value_find_oload_method_list): Use std::vector.
14745         (find_overload_match): Use std::vector.
14746         (find_oload_champ): Use std::vector.
14747         * value.c (value_free): Use operator delete.
14748         (value_of_xmethod): Rename to...
14749         (value_from_xmethod): ... this.  Don't assign
14750         xmethod_worker::value, take rvalue-reference.
14751         (result_type_of_xmethod): Adjust.
14752         (call_xmethod): Adjust.
14753         * value.h: Include extension.h.
14754         (struct xmethod_worker): Don't forward-declare.
14755         (value_of_xmethod): Rename to...
14756         (value_from_xmethod): ... this, take rvalue-reference.
14757         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
14758         (struct python_xmethod_worker): ... this, add constructor and
14759         destructor.
14760         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
14761         (gdbpy_free_xmethod_worker_data): Rename to...
14762         (python_xmethod_worker::~python_xmethod_worker): ... this and
14763         adjust.
14764         (gdbpy_clone_xmethod_worker_data): Rename to...
14765         (python_xmethod_worker::clone): ... this and adjust.
14766         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
14767         temporary vector.
14768         (gdbpy_get_xmethod_arg_types): Rename to...
14769         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
14770         (gdbpy_get_xmethod_result_type): Rename to...
14771         (python_xmethod_worker::do_get_result_type): ... this and
14772         adjust.
14773         (gdbpy_invoke_xmethod): Rename to...
14774         (python_xmethod_worker::invoke): ... this and adjust.
14775         (new_python_xmethod_worker): Rename to...
14776         (python_xmethod_worker::python_xmethod_worker): ... this and
14777         adjust.
14778         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
14779         Remove.
14780         (gdbpy_free_xmethod_worker_data): Remove.
14781         (gdbpy_get_matching_xmethod_workers): Use std::vector.
14782         (gdbpy_get_xmethod_arg_types): Remove.
14783         (gdbpy_get_xmethod_result_type): Remove.
14784         (gdbpy_invoke_xmethod): Remove.
14785         * python/python.c (python_extension_ops): Remove obsolete
14786         callbacks.
14787
14788 2018-01-05  Pedro Alves  <palves@redhat.com>
14789
14790         PR gdb/18653
14791         * common/signals-state-save-restore.c
14792         (save_original_signals_state): New parameter 'quiet'.  Warn if we
14793         find a custom handler preinstalled, instead of internal erroring.
14794         But only warn if !quiet.
14795         * common/signals-state-save-restore.h
14796         (save_original_signals_state): New parameter 'quiet'.
14797         * main.c (captured_main_1): Move save_original_signals_state call
14798         after option handling, and pass QUIET.
14799
14800 2018-01-05  Pedro Alves  <palves@redhat.com>
14801
14802         * spu-tdep.c (spu_catch_start): Pass
14803         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
14804
14805 2018-01-05  Pedro Alves  <palves@redhat.com>
14806
14807         PR gdb/22670
14808         * ada-lang.c (literal_symbol_name_matcher): New function.
14809         (ada_get_symbol_name_matcher): Use it for
14810         symbol_name_match_type::SEARCH_NAME.
14811         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
14812         it down instead of assuming symbol_name_match_type::FULL.
14813         * block.h (block_lookup_symbol): New parameter 'match_type'.
14814         * c-valprint.c (print_unpacked_pointer): Use
14815         lookup_symbol_search_name instead of lookup_symbol.
14816         * compile/compile-object-load.c (get_out_value_type): Pass down
14817         symbol_name_match_type::SEARCH_NAME.
14818         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
14819         symbol_name_match_type::FULL.
14820         * cp-support.c (cp_get_symbol_name_matcher): Handle
14821         symbol_name_match_type::SEARCH_NAME.
14822         * infrun.c (insert_exception_resume_breakpoint): Use
14823         lookup_symbol_search_name.
14824         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
14825         * psymtab.c (maintenance_check_psymtabs): Use
14826         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
14827         * stack.c (print_frame_args): Use lookup_symbol_search_name and
14828         SYMBOL_SEARCH_NAME.
14829         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
14830         if symbol_name_match_type::SEARCH_NAME.
14831         (lookup_symbol_in_language): Pass down
14832         symbol_name_match_type::FULL.
14833         (lookup_symbol_search_name): New.
14834         (lookup_language_this): Pass down
14835         symbol_name_match_type::SEARCH_NAME.
14836         (lookup_symbol_aux, lookup_local_symbol): New parameter
14837         'match_type'.  Pass it down.
14838         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
14839         (lookup_symbol_search_name): New declaration.
14840         (lookup_symbol_in_block): New 'match_type' parameter.
14841
14842 2018-01-05  Pedro Alves  <palves@redhat.com>
14843
14844         PR gdb/22670
14845         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
14846         ada_lookup_symbol.
14847         (ada_lookup_symbol): Reimplement in terms of
14848         ada_lookup_symbol_list, bits factored out from
14849         ada_lookup_encoded_symbol.
14850
14851 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14852
14853         * ada-exp.y (write_object_renaming): When subscripting an array
14854         using a symbol as the index, pass the block in call to
14855         ada_lookup_encoded_symbol when looking that symbol up.
14856
14857 2018-01-05  Jerome Guitton  <guitton@adacore.com>
14858
14859         * ada-lang.c (ada_array_length): Use ada_index_type instead of
14860         TYPE_INDEX_TYPE.
14861
14862 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14863
14864         * ada-lang.c (ada_to_fixed_value_create): Add handling of
14865         the case where VALUE_LVAL (val0) is not lval_memory.
14866
14867 2018-01-05  Xavier Roirand  <roirand@adacore.com>
14868
14869         * ada-valprint.c (print_optional_low_bound): Handle
14870         character-indexed array printing like boolean-indexed array
14871         printing.
14872
14873 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14874
14875         * NEWS: Create a new section for the next release branch.
14876         Rename the section of the current branch, now that it has
14877         been cut.
14878
14879 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14880
14881         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
14882         * version.in: Bump version to 8.1.50.DATE-git.
14883
14884 2018-01-03  Xavier Roirand  <roirand@adacore.com>
14885
14886         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
14887         Add field.
14888         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
14889         Add field.
14890         (default_exception_support_info) <catch_handlers_sym>: Add field.
14891         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
14892         (ada_exception_name_addr_1): Add "catch handlers" handling.
14893         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
14894         Update all callers.
14895         (create_excep_cond_exprs) <ex>: Add parameter.
14896         (re_set_exception): Update create_excep_cond_exprs call.
14897         (print_it_exception, print_one_exception, print_mention_exception)
14898         (print_recreate_exception): Add "catch handler" handling.
14899         (allocate_location_catch_handlers, re_set_catch_handlers)
14900         (check_status_catch_handlers, print_it_catch_handlers)
14901         (print_one_catch_handlers, print_mention_catch_handlers)
14902         (print_recreate_catch_handlers): New function.
14903         (catch_handlers_breakpoint_ops): New variable.
14904         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
14905         Add parameter.  Add "catch handler" handling.
14906         (ada_exception_sym_name, ada_exception_breakpoint_ops):
14907         Add "catch handler" handling.
14908         (ada_exception_catchpoint_cond_string): Add "catch handler"
14909         handling.
14910         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
14911         call.
14912         (catch_ada_handlers_command): New function.
14913         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
14914         operations structure.
14915         (_initialize_ada_language): Add "catch handlers" command entry.
14916         * NEWS: Document "catch handlers" feature.
14917
14918 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14919
14920         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
14921         account when creating the array type of the slice.
14922         (ada_value_slice): Likewise.
14923
14924 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14925
14926         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
14927         New enum value.
14928         (create_array_type_with_stride): Add byte_stride_prop parameter.
14929         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
14930         New parameter.  Update all callers in this file.
14931         (array_type_has_dynamic_stride): New function.
14932         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
14933         of arrays with dynamic byte strides.
14934         * dwarf2read.c (read_array_type): Add support for dynamic
14935         DW_AT_byte_stride attributes.
14936
14937 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14938
14939         * dwarf2read.c (read_unspecified_type): Treat
14940         DW_TAG_enumeration_type DIEs from Ada units as stubs.
14941
14942 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14943
14944         Update copyright year range in all GDB files.
14945
14946 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
14947
14948         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
14949         and gdb/testsuite/gdb.base/step-line.c.
14950
14951 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14952
14953         * copyright.py (main): Dump the contents of
14954         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
14955         even if BY_HAND is empty.
14956
14957 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14958
14959         * top.c (print_gdb_version): Update Copyright year in version
14960         message.
14961
14962 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14963
14964         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
14965
14966 For older changes see ChangeLog-2017.
14967 \f
14968 Local Variables:
14969 mode: change-log
14970 left-margin: 8
14971 fill-column: 74
14972 version-control: never
14973 coding: utf-8
14974 End: