ba069462b6f39f2f76521adae7da0bc17b85fd33
[external/binutils.git] / gdb / ChangeLog
1 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2
3         * rs6000-tdep.c: Remove reggroups.h include.
4         (rs6000_pseudo_register_reggroup_p): Remove.
5         (rs6000_gdbarch_init): Remove call to
6         set_tdesc_pseudo_register_reggroup_p.
7
8 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
9
10         * reggroups.c (default_register_reggroup_p): Return true for
11         decfloat registers and float_reggroup.
12
13 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
14
15         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
16         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
17         ppc_linux_collect_vrregset by regcache_collect_regset.
18
19 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
20
21         * linux-tdep.c (linux_collect_regset_section_cb): Use
22         std::vector<gdb_byte> instead of char * and malloc for buf.
23         Remove xfree.
24
25 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
26
27         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
28         symtab_start instead of always using language_unknown.
29
30 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
31
32         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
33         READ_P parameter, catch and ignore register access errors from
34         either the old or new MISA location.
35         (riscv_has_feature): Update call to riscv_read_misa_reg.
36
37 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
38
39         * python/py-function.c (convert_values_to_python): Return
40         gdbpy_ref<>.  Add header comment.
41         (fnpy_call): Adjust.
42
43 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
44
45         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
46         (cmdpy_completer_handle_brkchars): Adjust.
47         (cmdpy_completer): Adjust.
48
49 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
50
51         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
52         Pass correct regnum to raw_supply_zeroed.
53
54 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
55
56         * regcache.c (cooked_read_test): Add CSKY to the list of
57         architectures with a save_reggroup
58
59 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
60
61         PR gdb/23368
62         * infrun.c (follow_exec): In the follow_exec_mode_new case,
63         transfer terminal state from old new new inferior.
64         * terminal.h (swap_terminal_info): New function.
65         * inflow.c (swap_terminal_info): New function.
66
67 2018-10-23  Tom Tromey  <tom@tromey.com>
68
69         * record-btrace.c (get_thread_current_frame_id): Rename from
70         get_thread_current_frame.  Return a frame_id.
71         (record_btrace_start_replaying): Update.
72
73 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
74
75         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
76         for CSRs.
77
78 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
79
80         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
81         have_nonsteppable_watchpoint attribute to 1.
82
83 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
84
85         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
86         register names.
87         (struct register_alias): Rename to...
88         (struct riscv_register_alias): ...this, and update comment.
89         (riscv_register_aliases): Update type, and alias names.  Remove
90         CSR names from this list.
91         (riscv_register_name): Use riscv_gdb_reg_names for int and float
92         register names.  Add an extra assertion.
93         (riscv_is_regnum_a_named_csr): New function.
94         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
95
96 2018-10-22  Jim Wilson  <jimw@sifive.com>
97
98         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
99         FP reg smaller than FP reg size, and fill with -1 instead of 0.
100
101         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
102         (riscv_register_type): Use them.
103         (riscv_print_one_register_info): Handle union of floats same as float.
104         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
105         riscv_fpreg_q_type fields.
106
107 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
108
109         * gdbarch.sh (gdbarch_num_cooked_regs): New.
110         * gdbarch.h: Re-generate.
111         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
112         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
113         * eval.c (evaluate_subexp_standard): Likewise.
114         * findvar.c (value_of_register): Likewise.
115         (value_of_register_lazy): Likewise.
116         (address_from_register): Likewise.
117         * frame.c (get_frame_register_bytes): Likewise.
118         * gdbarch-selftests.c (register_to_value_test): Likewise.
119         * h8300-tdep.c (h8300_register_type): Likewise.
120         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
121         (i386_svr4_reg_to_regnum): Likewise.
122         * infcmd.c (default_print_registers_info): Likewise.
123         (registers_info): Likewise.
124         (print_vector_info): Likewise.
125         (default_print_float_info): Likewise.
126         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
127         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
128         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
129         (mi_cmd_data_list_changed_registers): Likewise.
130         (mi_cmd_data_list_register_values): Likewise.
131         (mi_cmd_data_write_register_values): Likewise.
132         (mi_cmd_trace_frame_collected): Likewise.
133         * mips-tdep.c (print_gp_register_row): Likewise.
134         (mips_print_registers_info): Likewise.
135         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
136         * regcache.c (init_regcache_descr): Likewise.
137         (register_size): Likewise.
138         (register_dump::dump): Likewise.
139         (cooked_read_test): Likewise.
140         (cooked_write_test): Likewise.
141         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
142         (rs6000_gdbarch_init): Likewise.
143         * stabsread.c (stab_reg_to_regnum): Likewise.
144         * stack.c (info_frame_command): Likewise.
145         * target-descriptions.c (tdesc_register_name): Likewise.
146         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
147         * tui/tui-regs.c (tui_show_register_group): Likewise.
148         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
149         (user_reg_map_regnum_to_name): Likewise.
150         (value_of_user_reg): Likewise.
151         (maintenance_print_user_registers): Likewise.
152         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
153         (xtensa_register_name): Likewise.
154         (xtensa_register_type): Likewise.
155         (xtensa_reg_to_regnum): Likewise.
156         (xtensa_pseudo_register_read): Likewise.
157         (xtensa_pseudo_register_write): Likewise.
158
159 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
160
161         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
162         correctly-sized buffer with raw_read.
163         (amd64_pseudo_register_write): Use correctly-sized buffer for
164         raw_read/raw_write.
165
166 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
167
168         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
169         in add_prefix_cmd of set print type.
170
171 2018-10-19  Tom Tromey  <tom@tromey.com>
172
173         PR tui/18388:
174         * NEWS: Mention tabset deprecation.
175         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
176         (update_tab_width): New function.
177         (tui_set_tab_width, tui_show_tab_width): New functions.
178         (tui_set_tab_width_command): Use update_tab_width.
179         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
180         Add new "set tui tab-width" command.
181         * tui/tui-source.c (tui_set_source_content): Update.
182         * tui/tui-disasm.c (tui_set_disassem_content): Update.
183         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
184         Don't declare.
185         (tui_tab_width): Declare.
186         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
187         (tui_set_default_tab_len): Remove.
188
189 2018-10-19  Tom Tromey  <tom@tromey.com>
190
191         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
192         (key_is_backspace, tui_getc): Don't declare.
193         * tui/tui-io.c (key_is_start_sequence): Now static.
194         (key_is_end_sequence, key_is_backspace): Remove.
195         (tui_getc): Now static.
196
197 2018-10-19  Tom Tromey  <tom@tromey.com>
198
199         * symfile.c (reread_symbols): Clear "static_links".
200
201 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
202
203         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
204         define.
205         (aarch64_linux_sigframe_init): Extra boundary checks.
206
207 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
208
209         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
210         the possibly non-existent tdesc type 'vec128', but the type of raw
211         register v16 instead.
212
213 2018-10-19  Gary Benson <gbenson@redhat.com>
214
215         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
216
217 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
218
219         PR cli/23785
220         * cli/cli-dump.c (restore_binary_file): Check if "file" is
221         NULL.
222
223 2018-10-17  Paul Koning  <paul_koning@dell.com>
224
225         * charset.c (convert_between_encodings): Fix unsigned overflow.
226
227 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
228
229         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
230         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
231         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
232         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
233         New functions.
234         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
235         and fbsd_info_proc_mappings_header.
236         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
237         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
238         New.
239
240 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
241
242         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
243         Solaris Maintainer.
244
245 2018-10-15  Tom Tromey  <tom@tromey.com>
246
247         * tui/tui.c (strcat_to_buf): Remove casts.
248         * tui/tui-winsource.c (tui_show_source_line)
249         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
250         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
251         * tui/tui-windata.c (tui_first_data_item_displayed)
252         (tui_delete_data_content_windows, tui_erase_data_content)
253         (tui_display_all_data, tui_display_data_from)
254         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
255         * tui/tui-win.c (tui_set_win_height)
256         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
257         casts.
258         * tui/tui-win.c (tui_resize_all): Remove casts.
259         (tui_scroll_backward_command, tui_set_focus)
260         (tui_set_tab_width_command): Likewise.
261         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
262         * tui/tui-regs.c (tui_show_register_group): Remove cast.
263         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
264         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
265         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
266         Remove casts.
267
268 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
269
270         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
271         AArch64/ARM maintainer.
272
273 2018-10-11  Gary Benson <gbenson@redhat.com>
274
275         * interps.h (interp::m_name): Make private and mutable.
276         * interps.c (interp::~interp): Free m_name.
277
278 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
279             Simon Marchi <simark@simark.ca>
280
281         * README (`configure' options): Add documentation for new
282         "--enable-unit-tests" option.
283         * acinclude.m4: Include "selftest.m4".
284         * configure: Regenerate.
285         * configure.ac: Use "GDB_AC_SELFTEST".
286         * maint.c (maintenance_selftest): Update message informing
287         that selftests have been disabled.
288         (maintenance_info_selftests): Likewise.
289         * selftest.m4: New file.
290
291 2018-10-10  Gary Benson <gbenson@redhat.com>
292
293         * remote.c (remote_target::remote_send_printf): Add
294         missing va_end found by Coverity.
295
296 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
297
298         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
299
300 2018-10-09  Tom Tromey  <tom@tromey.com>
301
302         * configure: Rebuild.
303         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
304         * NEWS: Update --enable-ubsan documentation.
305
306 2018-10-09  Gary Benson <gbenson@redhat.com>
307
308         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
309         found by Coverity.
310
311 2018-10-08  Tom Tromey  <tom@tromey.com>
312
313         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
314         variable.
315         (riscv_fbsd_init_abi): Likewise.
316
317 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
318         * valops.c (value_struct_elt_for_reference): Rename local variable
319         to work around the shadowing a previous local warning.
320
321 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
322
323         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
324         * NEWS: Mention new FreeBSD/riscv native configuration.
325         * configure.host: Add riscv*-*-freebsd*.
326         * configure.nat: Likewise.
327         * riscv-fbsd-nat.c: New file.
328
329 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
330
331         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
332         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
333         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
334         * NEWS: Mention new FreeBSD/riscv target.
335         * configure.tgt: Add riscv*-*-freebsd*.
336         * riscv-fbsd-tdep.c: New file.
337         * riscv-fbsd-tdep.h: New file.
338
339 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
340
341         * regcache.h (struct regcache_map_entry): Note that this type can
342         be used with traditional frame caches.
343         * trad-frame.c (trad_frame_set_reg_regmap): New.
344         * trad-frame.h (trad_frame_set_reg_regmap): New.
345
346 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
347
348         PR c++/16841
349         * valops.c (get_virtual_base_offset): New function.
350         (value_struct_elt_for_reference): Use it to get virtual base offset
351         and add it in calculating class member address.
352
353 2018-10-08   John Darrington <john@darrington.wattle.id.au>
354
355     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
356       (check_producer): Check if the producer is codewarrior.
357       (producer_is_codewarrior): New function.
358       (lnp_state_machine::record_line): Ignore is_stmt flag for records
359        produced by codewarrior.
360       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
361
362 2018-10-06  Tom Tromey  <tom@tromey.com>
363
364         PR python/19399:
365         * python/py-inferior.c: Add "architecture" entry.
366         (infpy_architecture): New function.
367
368 2018-10-06  Tom Tromey  <tom@tromey.com>
369
370         PR python/21765:
371         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
372         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
373         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
374         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
375
376 2018-10-06  Tom Tromey  <tom@tromey.com>
377
378         PR build/17077:
379         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
380         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
381         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
382         #include.
383
384 2018-10-06  Tom Tromey  <tom@tromey.com>
385
386         * python/py-breakpoint.c (bppy_get_location): Handle a
387         bp_breakpoint without a location.
388
389 2018-10-06  Tom Tromey  <tom@tromey.com>
390
391         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
392         (_RegEx): Reformat help text.
393         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
394         (AnyCallerIs, AnyCallerMatches): Reformat help text.
395         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
396         text.
397         * python/lib/gdb/command/xmethods.py (InfoXMethod)
398         (EnableXMethod, DisableXMethod): Remove help indentation.
399         Capitalize meta-syntactic variables.
400         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
401         (EnableUnwinder, DisableUnwinder): Remove help indentation.
402         Capitalize meta-syntactic variables.
403         * python/lib/gdb/command/explore.py (ExploreCommand)
404         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
405         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
406         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
407         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
408         Remove help indentation.
409         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
410         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
411         (DisableFrameFilter, SetFrameFilterPriority)
412         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
413
414 2018-10-06  Tom Tromey  <tom@tromey.com>
415
416         PR tui/28819:
417         * tui/tui-io.c (gdb_wgetch): New function.
418         (tui_mld_getc, tui_getc): Use it.
419
420 2018-10-05  Tom Tromey  <tom@tromey.com>
421
422         * sol-thread.c (sol_thread_target::wait): Rename inner
423         "save_ptid".
424
425 2018-10-04  Tom Tromey  <tom@tromey.com>
426
427         * configure: Rebuild.
428         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
429
430 2018-10-04  Tom Tromey  <tom@tromey.com>
431
432         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
433         declaration of "block".
434
435 2018-10-04  Tom Tromey  <tom@tromey.com>
436
437         * common/filestuff.c (fdwalk): Remove inner declaration of
438         "result".
439
440 2018-10-04  Tom Tromey  <tom@tromey.com>
441
442         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
443         "structs_addr" and hoist declaration.
444
445 2018-10-04  Tom Tromey  <tom@tromey.com>
446
447         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
448         variable "size".
449
450 2018-10-04  Tom Tromey  <tom@tromey.com>
451
452         * mdebugread.c (parse_partial_symbols): Use std::string.
453
454 2018-10-04  Tom Tromey  <tom@tromey.com>
455
456         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
457         * p-valprint.c (pascal_val_print): Split inner "i" variable.
458         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
459         header.
460         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
461         more inner scope.
462         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
463         * varobj.c (varobj_update): Rename inner "newobj",
464         "type_changed".
465         * valprint.c (generic_emit_char): Rename inner "buf".
466         * valops.c (find_overload_match): Rename inner "temp".
467         (value_struct_elt_for_reference): Declare "v" in more inner
468         scope.
469         * v850-tdep.c (v850_push_dummy_call): Rename "len".
470         * unittests/array-view-selftests.c (run_tests): Rename inner
471         "vec".
472         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
473         header.
474         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
475         "tsv" in more inner scope.
476         (print_one_static_tracepoint_marker): Rename inner
477         "tuple_emitter".
478         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
479         (tic6x_push_dummy_call): Don't redeclare "addr".
480         * target-float.c: Declare "dto" lower.
481         * symtab.c (lookup_local_symbol): Rename inner "sym".
482         (find_pc_sect_line): Rename inner "pc".
483         * stack.c (print_frame): Don't redeclare "gdbarch".
484         (return_command): Rename inner "gdbarch".
485         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
486         "sp".
487         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
488         header.
489         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
490         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
491         scope.
492         * remote.c (remote_target::update_thread_list): Don't redeclare
493         "tp".
494         (remote_target::process_initial_stop_replies): Rename inner
495         "thread".
496         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
497         (remote_target::wait_as): Don't redeclare "stop_reply".
498         (remote_target::get_thread_local_address): Rename inner
499         "result".
500         (remote_target::get_tib_address): Likewise.
501
502         * regcache.c (cooked_read_test): Rename "regnum".
503         * record-btrace.c (cmd_record_btrace_start): Rename inner
504         "exception".
505         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
506         loop header.
507         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
508         header.
509         (ppu2spu_sniffer): Rename inner "buf".
510         * parse.c (operator_check_standard): Rename inner "type",
511         "objfile".
512         * p-valprint.c (pascal_val_print): Introduce new scope for
513         "low_bound", "high_bound".
514         * p-exp.y (yylex): Declare "i" in loop header.
515         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
516         Lower declaration of "s".
517         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
518         header.
519         (nios2_push_dummy_call): Rename "len".
520         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
521         "buf".
522         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
523         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
524         (linux_xfer_osdata_modules): Likewise.
525         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
526         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
527         (mips_o64_push_dummy_call): Likewise.
528         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
529         "op".
530         * mi/mi-main.c (list_available_thread_groups): Rename inner
531         "tuple_emitter".
532         (mi_cmd_data_read_memory): Rename inner "opts".
533         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
534         "tuple_emitter".
535         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
536         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
537         more inner scope.
538         (parse_partial_symbols): Rename inner "pst", "p", "name"
539         * main.c (captured_main_1): Rename inner "i"s.
540         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
541         "oso2".
542         * linux-tdep.c (linux_info_proc): Rename inner "filename".
543         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
544         * infrun.c (handle_no_resumed): Don't redeclare "thread".
545         (handle_signal_stop): Rename inner "gdbarch".
546         (handle_command): Declare "signum" in loop header.
547         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
548         "status".
549         (examine_prologue): Rename inner "sol" and "sof".
550         (ia64_extract_return_value): Rename inner "val".  Declare another
551         "val" in a more inner scope.
552         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
553         inner scope.
554         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
555         "except".
556         * findvar.c (default_read_var_value): Don't redeclare "addr".
557         * f-exp.y (yylex): Declare "i" in loop header.
558         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
559         Rename inner "type", "expect_type".
560         (evaluate_subexp_for_sizeof): Rename inner "pc".
561         * elfread.c (elf_symfile_read): Rename inner "abfd".
562         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
563         "bytes_read".
564         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
565         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
566         (dwarf_decode_line_header): Rename inner "lh".
567         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
568         "offset".  Declare "i" in loop header.
569         (disassemble_dwarf_expression): Rename inner "addr_size".
570         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
571         inner "result".
572         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
573         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
574         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
575         "inner_list_emitter".
576         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
577         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
578         declaration in a block.
579         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
580         * cp-valprint.c (cp_print_value_fields): Don't redeclare
581         "obstack_final_size".
582         * cp-support.c (inspect_type): Declare "i" in loop header.
583         * compile/compile.c (compile_instance::insert_symbol_error):
584         Rename inner "e".
585         * common/agent.c (agent_run_command): Remove inner "ret"
586         declaration.
587         * coffread.c (coff_symfile_read): Rename inner "name".
588         (coff_symfile_read): Rename inner "abfd".
589         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
590         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
591         "high".
592         * c-exp.y (lex_one_token): Move "len" declaration lower.
593         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
594         "gdbarch".
595         (create_exception_master_breakpoint): Likewise.  Don't redeclare
596         "b".
597         (watch_command_1): Declare "mark" later.
598         (clear_command): Don't shadow "a" or "b".
599         (delete_command): Rename inner "b".
600         (delete_trace_command): Likewise.
601         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
602         "op".
603         (arm_gdbarch_init): Remove inner "e_flags".
604         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
605         "offset" in inner blocks.
606
607 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
608
609         * dwarf-index-write.c (file_write): Don't write if the vector is
610         empty.
611
612 2018-10-05  Tom de Vries  <tdevries@suse.de>
613
614         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
615         PyArg_ParseTuple call.
616
617 2018-10-05  Tom de Vries  <tdevries@suse.de>
618
619         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
620         PyArg_ParseTuple call.
621
622 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
623
624         * psymtab.c (recursively_search_psymtabs): Reformat parameters
625         to avoid exceeding 80 characters per line limit.
626
627 2018-10-04  Tom Tromey  <tom@tromey.com>
628
629         * symfile.c (syms_from_objfile_1, finish_new_objfile)
630         (reread_symbols): Update.
631         * complaints.h (clear_complaints): Remove argument.
632         * complaints.c (enum complaint_series): Remove.
633         (series): Remove global.
634         (complaint_internal): Update.
635         (clear_complaints): Remove argument.
636
637 2018-10-04  Tom Tromey  <tom@tromey.com>
638
639         * symfile.c (symbol_file_add_with_addrs): Do not print "no
640         debugging symbols" message if there is a separate debug objfile.
641
642 2018-10-04  Tom Tromey  <tom@tromey.com>
643
644         PR cli/19551:
645         * symfile.c (symbol_file_add_with_addrs): Update output.
646         * psymtab.c (require_partial_symbols): Update output.
647
648 2018-10-04  Tom Tromey  <tom@tromey.com>
649
650         PR cli/22234:
651         * complaints.c: Emit \n.
652
653 2018-10-04  Tom Tromey  <tom@tromey.com>
654
655         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
656         (separate_debug_file_exists, find_separate_debug_file)
657         (add_symbol_file_command, reread_symbols, allocate_symtab)
658         (allocate_compunit_symtab): Use filtered printing, not
659         unfiltered.
660         * psymtab.c (require_partial_symbols, dump_psymtab)
661         (allocate_psymtab): Use filtered printing, not unfiltered.
662
663 2018-10-04  Tom Tromey  <tom@tromey.com>
664
665         * complaints.c (complaint_internal): Correctly check complaint
666         count.
667
668 2018-10-04  Tom Tromey  <tom@tromey.com>
669
670         * complaints.h (struct complaints): Remove declaration.
671         * complaints.c (clear_complaints): Remove an unused variable.
672
673 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
674
675         * MAINTAINERS (Write After Approval): Add self.
676
677 2018-10-03  Tom Tromey  <tom@tromey.com>
678
679         * guile/scm-value.c (gdbscm_value_to_string): Initialize
680         "buffer_contents".
681         * coffread.c (coff_symtab_read): Initialize "newobj".
682
683 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
684
685         * dwarf2read.c (read_func_scope): Remove struct keyword in
686         range-based for.
687
688 2018-10-03  Tom Tromey  <tom@tromey.com>
689
690         * README: Mention --enable-ubsan.
691         * NEWS: Mention --enable-ubsan.
692         * acinclude.m4: Include sanitize.m4.
693         * configure: Rebuild.
694         * configure.ac: Call AM_GDB_UBSAN.
695         * sanitize.m4: New file.
696
697 2018-10-03  Tom Tromey  <tom@tromey.com>
698
699         * expression.h (enum exp_opcode): Use uint8_t as base type.
700         * expprint.c (op_name): Handle invalid opcodes.
701
702 2018-10-03  Tom Tromey  <tom@tromey.com>
703
704         * parse.c (prefixify_expression): Add assert.
705         (parse_exp_in_context_1): Throw exception if the expression is
706         empty.
707
708 2018-10-03  Tom Tromey  <tom@tromey.com>
709
710         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
711
712 2018-10-03  Tom Tromey  <tom@tromey.com>
713
714         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
715
716 2018-10-03  Tom Tromey  <tom@tromey.com>
717
718         * dwarf2read.c (read_subrange_type): Make "negative_mask"
719         unsigned.
720
721 2018-10-03  Tom Tromey  <tom@tromey.com>
722
723         * findvar.c (extract_integer): Do work in an unsigned type.
724
725 2018-10-03  Tom Tromey  <tom@tromey.com>
726
727         * common/enum-flags.h (enum_flags::operator~): Add static assert.
728         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
729         base type.
730         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
731         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
732         type.
733         * c-lang.h (enum c_string_type_values): Use unsigned as base
734         type.
735         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
736
737 2018-10-03  Tom Tromey  <tom@tromey.com>
738
739         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
740         <~dwarf2_frame_state_reg_info>: Update.
741         <dwarf2_frame_state_reg_info>: Update.
742         <alloc_regs>: Add assertion.  Update.
743         <reg>: Now a std::vector.
744         <num_regs>: Remove.
745         <swap>: Update.
746         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
747         (execute_cfa_program_test, dwarf2_frame_cache): Update.
748
749 2018-10-03  Tom Tromey  <tom@tromey.com>
750
751         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
752
753 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
754
755         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
756
757 2018-10-02  Tom Tromey  <tom@tromey.com>
758
759         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
760
761 2018-10-02  John Darrington <john@darrington.wattle.id.au>
762
763         * NEWS: Mention changed commands.
764         * ser-uds.c: New file.
765         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
766         * configure: Regenerate.
767         * Makefile.in: Add new file.
768         * serial.c (serial_open): Check if filename is a socket
769           and lookup the appropriate interface accordingly.
770
771 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
772
773         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
774         define.
775         (AARCH64_EXTRA_MAGIC): Likewise.
776         (AARCH64_FPSIMD_MAGIC): Likewise.
777         (AARCH64_SVE_MAGIC): Likewise.
778         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
779         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
780         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
781         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
782         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
783         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
784         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
785         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
786         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
787         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
788         (read_aarch64_ctx): Add function.
789         (aarch64_linux_sigframe_init): Detect FP registers.
790
791 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
792
793         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
794         (AARCH64_D0_REGNUM): Likewise.
795         (AARCH64_S0_REGNUM): Likewise.
796         (AARCH64_H0_REGNUM): Likewise.
797         (AARCH64_B0_REGNUM): Likewise.
798         (AARCH64_SVE_V0_REGNUM): Likewise.
799         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
800         (AARCH64_D0_REGNUM): Likewise.
801         (AARCH64_S0_REGNUM): Likewise.
802         (AARCH64_H0_REGNUM): Likewise.
803         (AARCH64_B0_REGNUM): Likewise.
804         (AARCH64_SVE_V0_REGNUM): Likewise.
805
806 2018-10-01  Gary Benson <gbenson@redhat.com>
807
808         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
809         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
810         prfpregset_t instead of gdb_prfpregset_t.
811         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
812         * configure, config.in: Rebuild.
813
814 2018-10-01  Gary Benson <gbenson@redhat.com>
815
816         * common/gdb_proc_service.h: New file, factored out from...
817         * gdb_proc_service.h: Moved common code to the above file.
818         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
819
820 2018-10-01  Gary Benson <gbenson@redhat.com>
821
822         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
823         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
824
825 2018-10-01  Gary Benson <gbenson@redhat.com>
826
827         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
828         (AC_CHECK_HEADERS): Check for linux/elf.h.
829         * configure, config.in: Rebuild.
830         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
831         doesn't define elf_fpregset_t.
832
833 2018-10-01  Gary Benson <gbenson@redhat.com>
834
835         * gdb_proc_service.h: Whitespace change.
836
837 2018-10-01  Tom Tromey  <tom@tromey.com>
838
839         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
840         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
841         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
842
843 2018-10-01  Tom Tromey  <tom@tromey.com>
844
845         * README: Minor change.
846
847 2018-09-30  Pedro Alves  <palves@redhat.com>
848
849         * darwin-nat-info.c (darwin_debug_regions_recurse)
850         (info_mach_exceptions_command): Remove unused local variables.
851         * darwin-nat.c (darwin_decode_notify_message)
852         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
853         (darwin_stop_inferior, darwin_setup_exceptions)
854         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
855         (darwin_nat_target::attach, darwin_nat_target::detach)
856         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
857         local variables.
858         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
859         variables.
860
861 2018-09-29  Tom Tromey  <tom@tromey.com>
862
863         * README: Remove some leftover text.
864
865 2018-09-29  Tom Tromey  <tom@tromey.com>
866
867         * PROBLEMS: Rewrite.
868         * README: Update.
869
870 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
871
872         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
873         case with explicit breakpoint kind.
874         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
875         'additional_info' and related logic.
876         (riscv_debug_breakpoints): New variable.
877         (riscv_breakpoint_kind_from_pc): Use the length of the existing
878         instruction to determine the breakpoint kind.
879         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
880         flag.  Update description of 'set/show riscv
881         use-compressed-breakpoints' flag.
882
883 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
884
885         (NEWS): Mention changes to frame related commands.
886         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
887         (add_prefix_cmd_suppress_notification): New function.
888         (add_com_suppress_notification): Call
889         add_cmd_suppress_notification.
890         * command.h (add_cmd_suppress_notification): Declare.
891         (add_prefix_cmd_suppress_notification): Declare.
892         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
893         (parse_frame_specification): Moved from stack.c, with
894         simplification to handle a single argument.
895         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
896         switch to the selected frame.  Add a header comment.
897         * stack.c: Remove 'safe-ctype.h' include.
898         (find_frame_for_function): Add declaration.
899         (find_frame_for_address): New function.
900         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
901         (frame_selection_by_function_completer): New function.
902         (info_frame_command): Rename to...
903         (info_frame_command_core): ...this, and update parameter types.
904         (select_frame_command): Rename to...
905         (select_frame_command_core): ...this, and update parameter types.
906         (frame_command): Rename to...
907         (frame_command_core): ...this, and update parameter types.
908         (class frame_command_helper): New class to wrap implementations of
909         frame related sub-commands.
910         (frame_apply_cmd_list): New static global.
911         (frame_cmd_list): Make static.
912         (select_frame_cmd_list): New global for sub-commands.
913         (info_frame_cmd_list): New global for sub-commands.
914         (_initialize_stack): Register sub-commands for 'frame',
915         'select-frame', and 'info frame'.  Update 'frame apply' commands
916         to use frame_apply_cmd_list.  Move function local static
917         frame_apply_list to file static frame_apply_cmd_list for
918         consistency.
919         * stack.h (select_frame_command): Delete declarationn.
920         (select_frame_for_mi): Declare new function.
921
922 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
923
924         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
925         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
926         and NOP.
927
928 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
929
930         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
931
932 2018-09-26  Tom Tromey  <tom@tromey.com>
933
934         * valops.c (auto_abandon): Remove dead code.
935
936 2018-09-26  Tom Tromey  <tom@tromey.com>
937
938         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
939
940 2018-09-24  Tom Tromey  <tom@tromey.com>
941
942         * common/pathstuff.c (get_standard_cache_dir): Make
943         "xdg_cache_home" and "home" const.
944         * top.c (init_history): Make "tmpenv" const.
945         * main.c (get_init_files): Make "homedir" const.
946
947 2018-09-23  Tom Tromey  <tom@tromey.com>
948
949         PR python/18852:
950         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
951
952 2018-09-23  Tom Tromey  <tom@tromey.com>
953
954         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
955         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
956         * python/python-internal.h (gdbpy_handle_exception): Declare.
957         * python/py-utils.c (gdbpy_handle_exception): New function.
958
959 2018-09-23  Tom Tromey  <tom@tromey.com>
960
961         PR python/17284:
962         * python/py-type.c (typy_template_argument): Check for negative
963         argument number.
964
965 2018-09-23  Tom Tromey  <tom@tromey.com>
966
967         PR python/14062:
968         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
969
970 2018-09-23  Tom Tromey  <tom@tromey.com>
971
972         PR python/18170:
973         * python/py-value.c (valpy_int): Allow conversion from pointer
974         type.
975
976 2018-09-23  Tom Tromey  <tom@tromey.com>
977
978         PR python/20126:
979         * python/py-value.c (valpy_int): Respect type sign.
980
981 2018-09-23  Tom Tromey  <tom@tromey.com>
982
983         PR python/18352;
984         * python/py-value.c (valpy_float): Allow conversions from int or
985         char.
986         (valpy_int, valpy_long): Allow conversions from float.
987
988 2018-09-23  Tom Tromey  <tom@tromey.com>
989
990         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
991         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
992
993 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
994
995         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
996         __sighndlr.
997         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
998
999 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1000
1001         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1002         target_terminal::ours().
1003
1004 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1005
1006         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1007         of vl to ULONGEST.
1008
1009 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1010
1011         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1012         redundant condition.
1013
1014 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1015
1016         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1017
1018         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1019         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1020         * sol-thread.c (ps_pdmodel): Don't guard definition.
1021
1022         * procfs.c: Fix formatting.
1023
1024         * procfs.c (sysset_t_alloc): Remove.
1025         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1026         (procfs_debug_inferior): Likewise.
1027         (procfs_set_exec_trap): Likewise.
1028         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1029         (proc_set_traced_sysexit): Likewise.
1030
1031         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1032         (dead_procinfo): Likewise.
1033         (proc_warn): Likewise.
1034         (proc_error): Likewise.
1035         (proc_get_LDT_entry): Likewise.
1036         (do_attach): Likewise.
1037         (procfs_target::pid_to_str): Likewise.
1038         (iterate_over_mappings): Likewise.
1039
1040         * procfs.c (create_procinfo): Fix ARI warning.
1041         (proc_get_status): Likewise.
1042         (proc_stop_process): Likewise.
1043         (proc_run_process): Likewise.
1044         (proc_kill): Likewise.
1045         (proc_get_LDT_entry): Likewise.
1046         (procfs_find_LDT_entry): Likewise.
1047         (proc_update_threads): Likewise.
1048         (proc_iterate_over_threads): Likewise.
1049         (do_attach): Likewise.
1050         (procfs_xfer_memory): Likewise.
1051         (invalidate_cache): Likewise.
1052         (procfs_target::resume): Likewise.
1053         (procfs_init_inferior): Likewise.
1054         (procfs_set_exec_trap): Likewise.
1055         (procfs_target::thread_alive): Likewise.
1056         (procfs_target::pid_to_exec_file): Likewise.
1057         (iterate_over_mappings): Likewise.
1058         (procfs_target::make_corefile_notes): Likewise.
1059         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1060
1061         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1062         (procfs_find_LDT_entry): Likewise.
1063         * sol-thread.c (ps_lgetLDT): Likewise.
1064
1065 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1066
1067         PR tdep/17903
1068         * procfs.c (procfs_target): Declare pid_to_exec_file.
1069         (procfs_target::pid_to_exec_file): New.
1070
1071 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1072
1073         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1074         renaming.
1075         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1076         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1077
1078 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1079
1080         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1081         (supply_fpregset, fill_fpregset): Move ...
1082         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1083         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1084         Remove references to ioctl-based procfs.
1085         Include <sys/reg.h>.
1086         Remove PR_MODEL_NATIVE guards.
1087         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1088         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1089
1090 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1091
1092         PR gdb/20981:
1093         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1094         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1095         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1096
1097 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1098
1099         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1100         (fbsd_print_sockaddr_in6): Likewise.
1101
1102 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1103             Chris January  <chris.january@arm.com>
1104
1105         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1106         (evaluate_subexp_standard): Return a dummy type when
1107         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1108         OP_F77_UNDETERMINED_ARGLIST case.
1109         * expression.h (enum noside): Update comment.
1110
1111 2018-09-19  George Vasick <george.vasick@oracle.com>
1112
1113         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1114
1115 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1116             April Chin <april.chin@oracle.com>
1117             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1118
1119         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1120         uint_t lwpid_t.
1121         (create_procinfo): Print pids in /proc without leading zeros.
1122
1123 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1124
1125         * nios2-tdep.c (nios2_gcc_target_options): New.
1126         (nios2_gdb_arch_init): Install new hook.
1127
1128 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1129
1130         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1131         New file.
1132         * update-gnulib.sh: Apply patch.
1133         * configure: Re-generate.
1134
1135 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1136
1137         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1138         description.  Make "info proc" command descriptions more
1139         consistent.
1140
1141 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1142
1143         * NEWS: Mention 'info proc files' command.
1144
1145 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1146
1147         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1148         descriptors for IP_FILES and IP_ALL.
1149
1150 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1151
1152         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1153         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1154         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1155         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1156         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1157         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1158         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1159         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1160         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1161         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1162         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1163         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1164         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1165         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1166         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1167         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1168         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1169         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1170         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1171         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1172         (struct fbsd_sockaddr_un): New types.
1173         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1174         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1175         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1176         (fbsd_core_info_proc_files): New functions.
1177         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1178         IP_ALL.
1179         * fbsd-tdep.h (fbsd_info_proc_files_header)
1180         (fbsd_info_proc_files_entry): New.
1181
1182 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1183
1184         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1185         * infcmd.c (info_proc_cmd_files): New function.
1186         (_initialize_infcmd): Register 'info proc files' command.
1187
1188 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1189
1190         * gnulib/aclocal-m4-deps.mk: Re-generate.
1191         * gnulib/aclocal.m4: Re-generate.
1192         * gnulib/config.in: Re-generate.
1193         * gnulib/configure: Re-generate.
1194         * gnulib/import/Makefile.am: Re-generate.
1195         * gnulib/import/Makefile.in: Re-generate.
1196         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1197         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1198         * gnulib/import/arpa_inet.in.h: New file.
1199         * gnulib/import/inet_ntop.c: New file.
1200         * gnulib/import/m4/arpa_inet_h.m4: New file.
1201         * gnulib/import/m4/inet_ntop.m4: New file.
1202         * gnulib/import/m4/netinet_in_h.m4: New file.
1203         * gnulib/import/m4/socklen.m4: New file.
1204         * gnulib/import/m4/sockpfaf.m4: New file.
1205         * gnulib/import/m4/stdalign.m4: New file.
1206         * gnulib/import/m4/sys_uio_h.m4: New file.
1207         * gnulib/import/netinet_in.in.h: New file.
1208         * gnulib/import/stdalign.in.h: New file.
1209         * gnulib/import/sys_socket.c: New file.
1210         * gnulib/import/sys_socket.in.h: New file.
1211         * gnulib/import/sys_uio.in.h: New file.
1212         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1213         module.
1214
1215 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1216
1217         * gnulib/aclocal-m4-deps.mk: New file.
1218         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1219         deterministically.
1220
1221 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1222
1223         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1224         KVE_PATH.
1225
1226 2018-09-18  Tom Tromey  <tom@tromey.com>
1227
1228         * compile/compile-object-load.c (struct
1229         link_hash_table_cleanup_data): Add constructor and destructor.
1230         Use DISABLE_COPY_AND_ASSIGN.
1231         (~link_hash_table_cleanup_data): Rename from
1232         link_hash_table_free.  Now a destructor.
1233         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1234
1235 2018-09-18  Tom Tromey  <tom@tromey.com>
1236
1237         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1238         * compile/compile-object-load.c (struct munmap_list): Move to
1239         header file.
1240         (munmap_list::add): Rename from munmap_list_add; rewrite.
1241         (munmap_list::~munmap_list): Rename from munmap_list_free.
1242         (munmap_listp_free_cleanup): Remove.
1243         (compile_object_load): Update.
1244         * compile/compile-object-load.h (struct munmap_list): Move from
1245         compile-object-load.c.  Rewrite.
1246
1247 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1248
1249         * aarch64-tdep.c (pass_in_v): Use register size.
1250         (aarch64_extract_return_value): Likewise.
1251         (aarch64_store_return_value): Likewise.
1252
1253 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1254
1255         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1256         rlim_t.
1257
1258 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1259
1260         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1261         Fix short help line.
1262
1263 2018-09-17  Tom Tromey  <tom@tromey.com>
1264
1265         PR python/20445:
1266         * configure: Rebuild.
1267         * configure.ac: Conditionally use -DNDEBUG for Python.
1268
1269 2018-09-17  Tom Tromey  <tom@tromey.com>
1270
1271         * configure: Rebuild.
1272         * configure.ac: Use gmp as a library dependency when checking for
1273         mpfr.
1274
1275 2018-09-17  Pedro Alves  <palves@redhat.com>
1276
1277         * python/py-inferior.c (find_inferior_object): Delete.
1278
1279 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1280
1281         * compile/compile-cplus-types.c
1282         (compile_cplus_instance::enter_scope): Don't use new_scope after
1283         std::move.
1284
1285 2018-09-17  Tom Tromey  <tom@tromey.com>
1286
1287         * common/pathstuff.c (get_standard_cache_dir): Use
1288         ~/Library/Caches on macOS.
1289         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1290
1291 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1292
1293         PR python/23669
1294         * breakpoint.c (commands_cmd_element): New.
1295         (_initialize_breakpoint): Assign commands_cmd_element.
1296         * breakpoint.h (commands_cmd_element): New.
1297         * cli/cli-script.c (while_cmd_element, if_command,
1298         define_cmd_element): New.
1299         (command_name_equals): Remove.
1300         (process_next_line): Compare commands by pointer, not by name.
1301         (_initialize_cli_script): Assign the various cmd_list_element
1302         variables.
1303         * compile/compile.c (compile_cmd_element): New.
1304         (_initialize_compile): Assign compile_cmd_element.
1305         * compile/compile.h (compile_cmd_element): New.
1306         * guile/guile.c (guile_cmd_element): New.
1307         (install_gdb_commands): Assign guile_cmd_element.
1308         * guile/guile.h (guile_cmd_element): New.
1309         * python/python.c (python_cmd_element): New.
1310         (_initialize_python): Assign python_cmd_element.
1311         * python/python.h (python_cmd_element): New.
1312         * tracepoint.c (while_stepping_cmd_element): New.
1313         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1314         * tracepoint.h (while_stepping_cmd_element): New.
1315
1316 2018-09-17  Tom Tromey  <tom@tromey.com>
1317
1318         * infrun.c (save_infcall_suspend_state): Return
1319         infcall_suspend_state_up.
1320         (save_infcall_control_state): Return infcall_control_state_up.
1321         * inferior.h (save_infcall_suspend_state)
1322         (save_infcall_control_state): Declare later.  Return unique
1323         pointers.
1324
1325 2018-09-17  Tom Tromey  <tom@tromey.com>
1326
1327         * infrun.c (struct stop_context): Declare constructor,
1328         destructor, "changed" method.
1329         (stop_context::stop_context): Rename from save_stop_context.
1330         (stop_context::~stop_context): Rename from
1331         release_stop_context_cleanup.
1332         (normal_stop): Update.
1333         (stop_context::changed): Rename from stop_context_changed.  Return
1334         bool.
1335
1336 2018-09-17  Tom Tromey  <tom@tromey.com>
1337
1338         * inferior.h (struct infcall_suspend_state_deleter): New.
1339         (infcall_suspend_state_up): New typedef.
1340         (struct infcall_control_state_deleter): New.
1341         (infcall_control_state_up): New typedef.
1342         (make_cleanup_restore_infcall_suspend_state)
1343         (make_cleanup_restore_infcall_control_state): Don't declare.
1344         * infcall.c (call_function_by_hand_dummy): Update.
1345         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1346         (make_cleanup_restore_infcall_suspend_state): Remove.
1347         (do_restore_infcall_control_state_cleanup)
1348         (make_cleanup_restore_infcall_control_state): Remove.
1349
1350 2018-09-17  Tom Tromey  <tom@tromey.com>
1351
1352         * gdbthread.h (struct thread_control_state): Add initializer.
1353         (class thread_info) <control>: Remove initializer.
1354         * inferior.h (struct inferior_control_state): Add initializer.
1355         (class inferior) <control>: Remove initializer.
1356         (exit_inferior_1): Update.
1357         * infrun.c (struct infcall_control_state): Add constructors.
1358         (save_infcall_control_state): Use new.
1359         (restore_infcall_control_state, discard_infcall_control_state):
1360         Use delete.
1361
1362 2018-09-17  Tom Tromey  <tom@tromey.com>
1363
1364         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1365         unique_ptr.
1366         <siginfo_data>: Now a unique_xmalloc_ptr.
1367         (save_infcall_suspend_state, restore_infcall_suspend_state)
1368         (discard_infcall_suspend_state)
1369         (get_infcall_suspend_state_regcache): Update.
1370
1371 2018-09-17  Tom Tromey  <tom@tromey.com>
1372
1373         * gdbthread.h (struct thread_suspend_state): Add initializers.
1374         (class thread_info) <suspend>: Remove initializer.
1375         * infrun.c (struct infcall_suspend_state): Add initializers.
1376         (save_infcall_suspend_state): Use new.
1377         (discard_infcall_suspend_state): Use delete.
1378
1379 2018-09-16  Tom Tromey  <tom@tromey.com>
1380
1381         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1382         Remove.
1383         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1384         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1385         (py_varobj_iter_new): Likewise.
1386         (py_varobj_get_iterator): Use gdbpy_ref.
1387
1388 2018-09-16  Tom Tromey  <tom@tromey.com>
1389
1390         * python/py-threadevent.c (py_get_event_thread): Simplify.
1391         * python/py-inferior.c (infpy_thread_from_thread_handle):
1392         Return immediately after calling thread_to_thread_object.  Use
1393         Py_RETURN_NONE.
1394         (thread_to_thread_object): Set the exception on a NULL return.
1395
1396 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1397
1398         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1399
1400 2018-09-16  Tom Tromey  <tom@tromey.com>
1401
1402         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1403         Remove.
1404
1405 2018-09-16  Tom Tromey  <tom@tromey.com>
1406
1407         * python/python-internal.h (thread_to_thread_object): Change
1408         return type.
1409         * python/py-inferior.c (thread_to_thread_object): Return a new
1410         reference.
1411         (infpy_thread_from_thread_handle): Update.
1412         * python/py-infthread.c (gdbpy_selected_thread): Update.
1413         * python/py-stopevent.c (create_stop_event_object): Update.
1414         * python/py-threadevent.c (py_get_event_thread): Return a new
1415         reference.
1416         (py_get_event_thread): Update.
1417         * python/py-event.h (py_get_event_thread): Change return type.
1418         * python/py-continueevent.c (create_continue_event_object):
1419         Update.
1420
1421 2018-09-16  Tom Tromey  <tom@tromey.com>
1422
1423         * python/py-progspace.c (pspy_get_objfiles): Update.
1424         * python/python-internal.h (objfile_to_objfile_object): Change
1425         return type.
1426         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1427         Update.
1428         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1429         Update.
1430         * python/python.c (gdbpy_get_current_objfile): Update.
1431         (gdbpy_objfiles): Update.
1432         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1433         Update.
1434         (objfile_to_objfile_object): Return a new reference.
1435         * python/py-symtab.c (stpy_get_objfile): Update.
1436         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1437         Update.
1438
1439 2018-09-16  Tom Tromey  <tom@tromey.com>
1440
1441         * python/py-inferior.c (infpy_get_progspace): Update.
1442         * python/python-internal.h (pspace_to_pspace_object): Change
1443         return type.
1444         * python/py-newobjfileevent.c
1445         (create_clear_objfiles_event_object): Update.
1446         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1447         Update.
1448         * python/python.c (gdbpy_get_current_progspace): Update.
1449         (gdbpy_progspaces): Update.
1450         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1451         reference.
1452         * python/py-objfile.c (objfpy_get_progspace): Update.
1453         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1454         Update.
1455
1456 2018-09-16  Tom Tromey  <tom@tromey.com>
1457
1458         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1459         (solib_name, block_for_pc, find_pc_line): New functions.
1460         (execute_unwinders): Update.
1461         * python/py-block.c (gdbpy_block_for_pc): Remove.
1462         * python/py-inferior.c (infpy_get_progspace): New function.
1463         (inferior_object_getset) <progspace>: Add.
1464         * python/py-progspace.c (pspy_objfiles): Rewrite.
1465         (pspy_solib_name, pspy_block_for_pc)
1466         (pspy_find_pc_line, pspy_is_valid): New functions.
1467         (progspace_object_methods): Add entries for solib_name,
1468         block_for_pc, find_pc_line, is_valid.
1469         * python/python-internal.h (gdbpy_block_for_pc)
1470         (build_objfiles_list): Don't declare.
1471         * python/python.c: Don't include solib.h.
1472         (gdbpy_solib_name, gdbpy_find_pc_line)
1473         (gdbpy_get_current_progspace, build_objfiles_list)
1474         (gdbpy_objfiles): Remove.
1475         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1476         solib_name, find_pc_line>: Remove entries.
1477
1478 2018-09-16  Tom Tromey  <tom@tromey.com>
1479
1480         * top.c (new_ui_command): Use GNU style for metasyntactic
1481         variables.
1482         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1483         variables.
1484         * maint.c (maintenance_translate_address): Remove "<>" around
1485         text.
1486         * interps.c (interpreter_exec_cmd): Use GNU style for
1487         metasyntactic variables.
1488         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1489         metasyntactic variables.
1490         * tracepoint.c (tfind_range_command): Use GNU style for
1491         metasyntactic variables.
1492         (tfind_outside_command): Likewise.
1493         (_initialize_tracepoint): Likewise.
1494         * remote.c (extended_remote_target::create_inferior): Use GNU
1495         style for metasyntactic variables.
1496         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1497         metasyntactic variables.
1498         (adi_assign_command): Likewise.
1499
1500 2018-09-16  Tom Tromey  <tom@tromey.com>
1501
1502         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1503         metasyntactic variables.  Print message if no disassembler options
1504         are available.
1505
1506 2018-09-15  Tom Tromey  <tom@tromey.com>
1507
1508         * infcmd.c (get_inferior_args): Return const char *.
1509         * inferior.h (get_inferior_args): Return type now const.
1510         * linux-tdep.c (linux_fill_prpsinfo): Update.
1511         * procfs.c (procfs_target::make_corefile_notes): Update.
1512
1513 2018-09-07  Tom Tromey  <tom@tromey.com>
1514
1515         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1516         inside the TRY.
1517
1518 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1519
1520         * nios2-tdep.c (nios2_type_align): New.
1521         (nios2_gdb_arch_init): Install type_align hook.
1522
1523 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1524
1525         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1526         type that is neither object file owned, nor gdbarch owned.
1527         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1528         gdbarch is non-NULL.
1529         (alloc_type_instance): Allocate non-objfile owned types on the
1530         gdbarch obstack.
1531         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1532         using TYPE_ALLOC to ensure memory is allocated on the correct
1533         obstack.
1534         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1535         obstack, or the gdbarch obstack.
1536         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1537
1538 2018-09-14  Tom Tromey  <tom@tromey.com>
1539
1540         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1541         block.
1542
1543 2018-09-14  Tom Tromey  <tom@tromey.com>
1544
1545         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1546
1547 2018-09-13  Tom Tromey  <tom@tromey.com>
1548
1549         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1550         static.
1551
1552 2018-09-13  Tom Tromey  <tom@tromey.com>
1553
1554         * exec.c (try_open_exec_file): Use std::string.
1555
1556 2018-09-13  Tom Tromey  <tom@tromey.com>
1557
1558         * utils.h (gdb_bfd_errmsg): Return std::string.
1559         * exec.c (exec_file_attach): Update.
1560         * compile/compile-object-load.c (compile_object_load): Update.
1561         * utils.c (gdb_bfd_errmsg): Return std::string.
1562
1563 2018-09-13  Tom Tromey  <tom@tromey.com>
1564
1565         * procfs.c (struct procinfo_deleter): New.
1566         (procinfo_up): New typedef.
1567         (do_destroy_procinfo_cleanup): Remove.
1568         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
1569
1570 2018-09-13  Tom Tromey  <tom@tromey.com>
1571
1572         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
1573
1574 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1575 2018-09-13  Tom Tromey  <tom@tromey.com>
1576
1577         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
1578         (pspy_get_objfiles): New function.
1579         (progspace_object_methods): New.
1580         (pspace_object_type): Add tp_methods callback.
1581         * python/python-internal.h (build_objfiles_list): New
1582         declaration.
1583         * python/python.c (build_objfiles_list): New function.
1584         (gdbpy_objfiles): Implement using build_objfiles_list.
1585         * NEWS: Mention the Progspace.objfiles method.
1586
1587 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1588
1589         * python/py-inferior.c (infpy_get_progspace): New function.
1590         (inferior_object_getset): Add progspace property.
1591         * NEWS: Mention the new property.
1592
1593 2018-09-13  Tom Tromey  <tom@tromey.com>
1594
1595         PR rust/23650:
1596         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
1597
1598 2018-09-13  Tom Tromey  <tom@tromey.com>
1599
1600         PR rust/23626:
1601         * rust-lang.c (rust_enum_variant): Now static.
1602         (rust_empty_enum_p): New function.
1603         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
1604         Handle empty enum.
1605
1606 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1607
1608         * python/py-inferior.c (infpy_repr): New.
1609         (inferior_object_type): Register infpy_repr.
1610         * python/py-objfile.c (objfpy_repr): New.
1611         (objfile_object_type): Register objfpy_repr.
1612
1613 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1614
1615         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
1616
1617 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1618
1619         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
1620         typo.
1621
1622 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
1623
1624         * common/common-utils.c: Don't include '<sys/stat.h>'.
1625         (is_regular_file): Move to...
1626         * common/filestuff.c (is_regular_file): ... here.
1627         * common/common-utils.h (is_regular_file): Move to...
1628         * common/filestuff.h (is_regular_file): ... here.
1629
1630 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
1631
1632         * skip.c (debug_skip): New variable.
1633         (skiplist_entry::do_skip_file_p): Add debug output.
1634         (skiplist_entry::do_skip_gfile_p): Likewise.
1635         (skiplist_entry::skip_function_p): Likewise.
1636         (_initialize_step_skip): Create debug command.
1637         * NEWS: Mention set/show debug skip.
1638
1639 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1640
1641         * darwin-nat.c (should_disable_startup_with_shell):
1642         New function.
1643         (darwin_nat_target::create_inferior): Add call.
1644
1645 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1646
1647         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
1648         inf_port, msg_state>: Initialize.
1649         (struct darwin_thread_info) <signaled, single_step>: Change
1650         type and initialize.
1651         (struct darwin_thread_info) <event>: Initialize.
1652
1653 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1654
1655         PR gdb/23555
1656         PR gdb/23558
1657         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
1658         guesses.
1659
1660 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1661
1662         Revert:
1663         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1664
1665         PR gdb/23555
1666         PR gdb/23558
1667         * gnulib/aclocal.m4: Regenerate.
1668         * gnulib/config.in: Regenerate.
1669         * gnulib/configure: Regenerate.
1670         * gnulib/import/Makefile.am: Update.
1671         * gnulib/import/Makefile.in: Update.
1672         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1673         * gnulib/import/_Noreturn.h: ... this.
1674         * gnulib/import/alloca.in.h: Update.
1675         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
1676         * gnulib/import/arg-nonnull.h: ... this.
1677         * gnulib/import/assure.h: Update.
1678         * gnulib/import/at-func.c: Update.
1679         * gnulib/import/basename-lgpl.c: Update.
1680         * gnulib/import/extra/snippet/c++defs.h: Rename to...
1681         * gnulib/import/c++defs.h: ... this.
1682         * gnulib/import/canonicalize-lgpl.c: Update.
1683         * gnulib/import/cdefs.h: Update.
1684         * gnulib/import/chdir-long.c: Update.
1685         * gnulib/import/chdir-long.h: Update.
1686         * gnulib/import/cloexec.c: Update.
1687         * gnulib/import/cloexec.h: Update.
1688         * gnulib/import/close.c: Update.
1689         * gnulib/import/closedir.c: Update.
1690         * gnulib/import/config.charset: Update.
1691         * gnulib/import/dirent-private.h: Update.
1692         * gnulib/import/dirent.in.h: Update.
1693         * gnulib/import/dirfd.c: Update.
1694         * gnulib/import/dirname-lgpl.c: Update.
1695         * gnulib/import/dirname.h: Update.
1696         * gnulib/import/dosname.h: Update.
1697         * gnulib/import/dup-safer-flag.c: Update.
1698         * gnulib/import/dup-safer.c: Update.
1699         * gnulib/import/dup.c: Update.
1700         * gnulib/import/dup2.c: Update.
1701         * gnulib/import/errno.in.h: Update.
1702         * gnulib/import/error.c: Update.
1703         * gnulib/import/error.h: Update.
1704         * gnulib/import/exitfail.c: Update.
1705         * gnulib/import/exitfail.h: Update.
1706         * gnulib/import/extra/update-copyright: Update.
1707         * gnulib/import/fchdir.c: Update.
1708         * gnulib/import/fcntl.c: Update.
1709         * gnulib/import/fcntl.in.h: Update.
1710         * gnulib/import/fd-hook.c: Update.
1711         * gnulib/import/fd-hook.h: Update.
1712         * gnulib/import/fd-safer-flag.c: Update.
1713         * gnulib/import/fd-safer.c: Update.
1714         * gnulib/import/fdopendir.c: Update.
1715         * gnulib/import/filename.h: Update.
1716         * gnulib/import/filenamecat-lgpl.c: Update.
1717         * gnulib/import/filenamecat.h: Update.
1718         * gnulib/import/flexmember.h: Update.
1719         * gnulib/import/float+.h: Update.
1720         * gnulib/import/float.c: Update.
1721         * gnulib/import/float.in.h: Update.
1722         * gnulib/import/fnmatch.c: Update.
1723         * gnulib/import/fnmatch.in.h: Update.
1724         * gnulib/import/fnmatch_loop.c: Update.
1725         * gnulib/import/fpucw.h: Update.
1726         * gnulib/import/frexp.c: Update.
1727         * gnulib/import/frexpl.c: Update.
1728         * gnulib/import/fstat.c: Update.
1729         * gnulib/import/fstatat.c: Update.
1730         * gnulib/import/getcwd-lgpl.c: Update.
1731         * gnulib/import/getcwd.c: Update.
1732         * gnulib/import/getdtablesize.c: Update.
1733         * gnulib/import/getlogin_r.c: Update.
1734         * gnulib/import/getprogname.c: Update.
1735         * gnulib/import/getprogname.h: Update.
1736         * gnulib/import/gettext.h: Update.
1737         * gnulib/import/gettimeofday.c: Update.
1738         * gnulib/import/glob-libc.h: Update.
1739         * gnulib/import/glob.c: Update.
1740         * gnulib/import/glob.in.h: Update.
1741         * gnulib/import/glob_internal.h: Update.
1742         * gnulib/import/glob_pattern_p.c: Update.
1743         * gnulib/import/globfree.c: Update.
1744         * gnulib/import/hard-locale.c: Update.
1745         * gnulib/import/hard-locale.h: Update.
1746         * gnulib/import/intprops.h: Update.
1747         * gnulib/import/inttypes.in.h: Update.
1748         * gnulib/import/isnan.c: Update.
1749         * gnulib/import/isnand-nolibm.h: Update.
1750         * gnulib/import/isnand.c: Update.
1751         * gnulib/import/isnanl-nolibm.h: Update.
1752         * gnulib/import/isnanl.c: Update.
1753         * gnulib/import/itold.c: Update.
1754         * gnulib/import/libc-config.h: Update.
1755         * gnulib/import/limits.in.h: Update.
1756         * gnulib/import/localcharset.c: Update.
1757         * gnulib/import/localcharset.h: Update.
1758         * gnulib/import/localtime-buffer.c: Update.
1759         * gnulib/import/localtime-buffer.h: Update.
1760         * gnulib/import/lstat.c: Update.
1761         * gnulib/import/m4/00gnulib.m4: Update.
1762         * gnulib/import/m4/__inline.m4: Update.
1763         * gnulib/import/m4/absolute-header.m4: Update.
1764         * gnulib/import/m4/alloca.m4: Update.
1765         * gnulib/import/m4/builtin-expect.m4: Update.
1766         * gnulib/import/m4/canonicalize.m4: Update.
1767         * gnulib/import/m4/chdir-long.m4: Update.
1768         * gnulib/import/m4/close.m4: Update.
1769         * gnulib/import/m4/closedir.m4: Update.
1770         * gnulib/import/m4/configmake.m4: Update.
1771         * gnulib/import/m4/d-ino.m4: Update.
1772         * gnulib/import/m4/d-type.m4: Update.
1773         * gnulib/import/m4/dirent_h.m4: Update.
1774         * gnulib/import/m4/dirfd.m4: Update.
1775         * gnulib/import/m4/dirname.m4: Update.
1776         * gnulib/import/m4/double-slash-root.m4: Update.
1777         * gnulib/import/m4/dup.m4: Update.
1778         * gnulib/import/m4/dup2.m4: Update.
1779         * gnulib/import/m4/eealloc.m4: Update.
1780         * gnulib/import/m4/environ.m4: Update.
1781         * gnulib/import/m4/errno_h.m4: Update.
1782         * gnulib/import/m4/error.m4: Update.
1783         * gnulib/import/m4/exponentd.m4: Update.
1784         * gnulib/import/m4/exponentl.m4: Update.
1785         * gnulib/import/m4/extensions.m4: Update.
1786         * gnulib/import/m4/extern-inline.m4: Update.
1787         * gnulib/import/m4/fchdir.m4: Update.
1788         * gnulib/import/m4/fcntl-o.m4: Update.
1789         * gnulib/import/m4/fcntl.m4: Update.
1790         * gnulib/import/m4/fcntl_h.m4: Update.
1791         * gnulib/import/m4/fdopendir.m4: Update.
1792         * gnulib/import/m4/filenamecat.m4: Update.
1793         * gnulib/import/m4/flexmember.m4: Update.
1794         * gnulib/import/m4/float_h.m4: Update.
1795         * gnulib/import/m4/fnmatch.m4: Update.
1796         * gnulib/import/m4/fnmatch_h.m4: Update.
1797         * gnulib/import/m4/fpieee.m4: Update.
1798         * gnulib/import/m4/frexp.m4: Update.
1799         * gnulib/import/m4/frexpl.m4: Update.
1800         * gnulib/import/m4/fstat.m4: Update.
1801         * gnulib/import/m4/fstatat.m4: Update.
1802         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1803         * gnulib/import/m4/getcwd-path-max.m4: Update.
1804         * gnulib/import/m4/getcwd.m4: Update.
1805         * gnulib/import/m4/getdtablesize.m4: Update.
1806         * gnulib/import/m4/getlogin.m4: Update.
1807         * gnulib/import/m4/getlogin_r.m4: Update.
1808         * gnulib/import/m4/getpagesize.m4: Update.
1809         * gnulib/import/m4/getprogname.m4: Update.
1810         * gnulib/import/m4/gettimeofday.m4: Update.
1811         * gnulib/import/m4/glibc21.m4: Update.
1812         * gnulib/import/m4/glob.m4: Update.
1813         * gnulib/import/m4/glob_h.m4: Update.
1814         * gnulib/import/m4/gnulib-cache.m4: Update.
1815         * gnulib/import/m4/gnulib-common.m4: Update.
1816         * gnulib/import/m4/gnulib-comp.m4: Update.
1817         * gnulib/import/m4/gnulib-tool.m4: Update.
1818         * gnulib/import/m4/hard-locale.m4: Update.
1819         * gnulib/import/m4/include_next.m4: Update.
1820         * gnulib/import/m4/inttypes-pri.m4: Update.
1821         * gnulib/import/m4/inttypes.m4: Update.
1822         * gnulib/import/m4/isnand.m4: Update.
1823         * gnulib/import/m4/isnanl.m4: Update.
1824         * gnulib/import/m4/largefile.m4: Update.
1825         * gnulib/import/m4/limits-h.m4: Update.
1826         * gnulib/import/m4/localcharset.m4: Update.
1827         * gnulib/import/m4/locale-fr.m4: Update.
1828         * gnulib/import/m4/locale-ja.m4: Update.
1829         * gnulib/import/m4/locale-zh.m4: Update.
1830         * gnulib/import/m4/localtime-buffer.m4: Update.
1831         * gnulib/import/m4/longlong.m4: Update.
1832         * gnulib/import/m4/lstat.m4: Update.
1833         * gnulib/import/m4/malloc.m4: Update.
1834         * gnulib/import/m4/malloca.m4: Update.
1835         * gnulib/import/m4/math_h.m4: Update.
1836         * gnulib/import/m4/mbrtowc.m4: Update.
1837         * gnulib/import/m4/mbsinit.m4: Update.
1838         * gnulib/import/m4/mbsrtowcs.m4: Update.
1839         * gnulib/import/m4/mbstate_t.m4: Update.
1840         * gnulib/import/m4/memchr.m4: Update.
1841         * gnulib/import/m4/memmem.m4: Update.
1842         * gnulib/import/m4/mempcpy.m4: Update.
1843         * gnulib/import/m4/memrchr.m4: Update.
1844         * gnulib/import/m4/mkdir.m4: Update.
1845         * gnulib/import/m4/mkstemp.m4: Update.
1846         * gnulib/import/m4/mmap-anon.m4: Update.
1847         * gnulib/import/m4/mode_t.m4: Update.
1848         * gnulib/import/m4/msvc-inval.m4: Update.
1849         * gnulib/import/m4/msvc-nothrow.m4: Update.
1850         * gnulib/import/m4/multiarch.m4: Update.
1851         * gnulib/import/m4/nocrash.m4: Update.
1852         * gnulib/import/m4/off_t.m4: Update.
1853         * gnulib/import/m4/onceonly.m4: Update.
1854         * gnulib/import/m4/open-cloexec.m4: Update.
1855         * gnulib/import/m4/open.m4: Update.
1856         * gnulib/import/m4/openat.m4: Update.
1857         * gnulib/import/m4/opendir.m4: Update.
1858         * gnulib/import/m4/pathmax.m4: Update.
1859         * gnulib/import/m4/rawmemchr.m4: Update.
1860         * gnulib/import/m4/readdir.m4: Update.
1861         * gnulib/import/m4/readlink.m4: Update.
1862         * gnulib/import/m4/realloc.m4: Update.
1863         * gnulib/import/m4/rename.m4: Update.
1864         * gnulib/import/m4/rewinddir.m4: Update.
1865         * gnulib/import/m4/rmdir.m4: Update.
1866         * gnulib/import/m4/save-cwd.m4: Update.
1867         * gnulib/import/m4/secure_getenv.m4: Update.
1868         * gnulib/import/m4/setenv.m4: Update.
1869         * gnulib/import/m4/signal_h.m4: Update.
1870         * gnulib/import/m4/ssize_t.m4: Update.
1871         * gnulib/import/m4/stat-time.m4: Update.
1872         * gnulib/import/m4/stat.m4: Update.
1873         * gnulib/import/m4/std-gnu11.m4: Update.
1874         * gnulib/import/m4/stdbool.m4: Update.
1875         * gnulib/import/m4/stddef_h.m4: Update.
1876         * gnulib/import/m4/stdint.m4: Update.
1877         * gnulib/import/m4/stdio_h.m4: Update.
1878         * gnulib/import/m4/stdlib_h.m4: Update.
1879         * gnulib/import/m4/strchrnul.m4: Update.
1880         * gnulib/import/m4/strdup.m4: Update.
1881         * gnulib/import/m4/strerror.m4: Update.
1882         * gnulib/import/m4/string_h.m4: Update.
1883         * gnulib/import/m4/strstr.m4: Update.
1884         * gnulib/import/m4/strtok_r.m4: Update.
1885         * gnulib/import/m4/sys_socket_h.m4: Update.
1886         * gnulib/import/m4/sys_stat_h.m4: Update.
1887         * gnulib/import/m4/sys_time_h.m4: Update.
1888         * gnulib/import/m4/sys_types_h.m4: Update.
1889         * gnulib/import/m4/tempname.m4: Update.
1890         * gnulib/import/m4/time_h.m4: Update.
1891         * gnulib/import/m4/unistd-safer.m4: Update.
1892         * gnulib/import/m4/unistd_h.m4: Update.
1893         * gnulib/import/m4/warn-on-use.m4: Update.
1894         * gnulib/import/m4/wchar_h.m4: Update.
1895         * gnulib/import/m4/wchar_t.m4: Update.
1896         * gnulib/import/m4/wctype_h.m4: Update.
1897         * gnulib/import/m4/wint_t.m4: Update.
1898         * gnulib/import/malloc.c: Update.
1899         * gnulib/import/malloc/scratch_buffer.h: Update.
1900         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1901         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1902         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1903         * gnulib/import/malloca.c: Update.
1904         * gnulib/import/malloca.h: Update.
1905         * gnulib/import/malloca.valgrind: Update.
1906         * gnulib/import/math.in.h: Update.
1907         * gnulib/import/mbrtowc.c: Update.
1908         * gnulib/import/mbsinit.c: Update.
1909         * gnulib/import/mbsrtowcs-impl.h: Update.
1910         * gnulib/import/mbsrtowcs-state.c: Update.
1911         * gnulib/import/mbsrtowcs.c: Update.
1912         * gnulib/import/memchr.c: Update.
1913         * gnulib/import/memmem.c: Update.
1914         * gnulib/import/mempcpy.c: Update.
1915         * gnulib/import/memrchr.c: Update.
1916         * gnulib/import/mkdir.c: Update.
1917         * gnulib/import/mkstemp.c: Update.
1918         * gnulib/import/msvc-inval.c: Update.
1919         * gnulib/import/msvc-inval.h: Update.
1920         * gnulib/import/msvc-nothrow.c: Update.
1921         * gnulib/import/msvc-nothrow.h: Update.
1922         * gnulib/import/open.c: Update.
1923         * gnulib/import/openat-die.c: Update.
1924         * gnulib/import/openat-priv.h: Update.
1925         * gnulib/import/openat-proc.c: Update.
1926         * gnulib/import/openat.c: Update.
1927         * gnulib/import/openat.h: Update.
1928         * gnulib/import/opendir.c: Update.
1929         * gnulib/import/pathmax.h: Update.
1930         * gnulib/import/pipe-safer.c: Update.
1931         * gnulib/import/rawmemchr.c: Update.
1932         * gnulib/import/readdir.c: Update.
1933         * gnulib/import/readlink.c: Update.
1934         * gnulib/import/realloc.c: Update.
1935         * gnulib/import/ref-add.sin: Update.
1936         * gnulib/import/ref-del.sin: Update.
1937         * gnulib/import/rename.c: Update.
1938         * gnulib/import/rewinddir.c: Update.
1939         * gnulib/import/rmdir.c: Update.
1940         * gnulib/import/same-inode.h: Update.
1941         * gnulib/import/save-cwd.c: Update.
1942         * gnulib/import/save-cwd.h: Update.
1943         * gnulib/import/scratch_buffer.h: Update.
1944         * gnulib/import/secure_getenv.c: Update.
1945         * gnulib/import/setenv.c: Update.
1946         * gnulib/import/signal.in.h: Update.
1947         * gnulib/import/stat-time.c: Update.
1948         * gnulib/import/stat-time.h: Update.
1949         * gnulib/import/stat-w32.c: Update.
1950         * gnulib/import/stat-w32.h: Update.
1951         * gnulib/import/stat.c: Update.
1952         * gnulib/import/stdbool.in.h: Update.
1953         * gnulib/import/stddef.in.h: Update.
1954         * gnulib/import/stdint.in.h: Update.
1955         * gnulib/import/stdio.in.h: Update.
1956         * gnulib/import/stdlib.in.h: Update.
1957         * gnulib/import/str-two-way.h: Update.
1958         * gnulib/import/strchrnul.c: Update.
1959         * gnulib/import/strdup.c: Update.
1960         * gnulib/import/streq.h: Update.
1961         * gnulib/import/strerror-override.c: Update.
1962         * gnulib/import/strerror-override.h: Update.
1963         * gnulib/import/strerror.c: Update.
1964         * gnulib/import/string.in.h: Update.
1965         * gnulib/import/stripslash.c: Update.
1966         * gnulib/import/strnlen1.c: Update.
1967         * gnulib/import/strnlen1.h: Update.
1968         * gnulib/import/strstr.c: Update.
1969         * gnulib/import/strtok_r.c: Update.
1970         * gnulib/import/sys_stat.in.h: Update.
1971         * gnulib/import/sys_time.in.h: Update.
1972         * gnulib/import/sys_types.in.h: Update.
1973         * gnulib/import/tempname.c: Update.
1974         * gnulib/import/tempname.h: Update.
1975         * gnulib/import/time.in.h: Update.
1976         * gnulib/import/unistd--.h: Update.
1977         * gnulib/import/unistd-safer.h: Update.
1978         * gnulib/import/unistd.in.h: Update.
1979         * gnulib/import/unsetenv.c: Update.
1980         * gnulib/import/verify.h: Update.
1981         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1982         * gnulib/import/wchar.in.h: Update.
1983         * gnulib/import/wctype.in.h: Update.
1984         * gnulib/import/xalloc-oversized.h: Update.
1985         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1986         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1987
1988 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
1989
1990         * record-btrace.c (get_thread_current_frame): Remove
1991         old_inferior_ptid.
1992
1993 2018-09-10  Jerome Guitton  <guitton@adacore.com>
1994
1995         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
1996         with check_tag to 1 if and only if the type is tagged and the
1997         component being searched cannot been found in the current
1998         view. Otherwise, always call ada_to_fixed_type with
1999         check_tag to 0.
2000
2001 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2002
2003         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2004         declaration.
2005         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2006         * ada-varobj.c (ada_varobj_get_number_of_children,
2007         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2008
2009 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2010
2011         * ada-valprint.c (ada_value_print): Use type instead of
2012         enclosing type.
2013
2014 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2015
2016         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2017         an array of access to unconstrained array.
2018
2019 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2020
2021         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2022         (ada_check_typedef): Use it.
2023
2024 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2025
2026         * ada-varobj.c (ada_varobj_describe_struct_child)
2027         (ada_varobj_describe_child): Handle union case like struct one.
2028
2029 2018-09-10  Tom Tromey  <tom@tromey.com>
2030
2031         PR python/18380:
2032         * python/python.c (_initialize_python): Make example in "python"
2033         help work in Python 3.
2034
2035 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2036
2037         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2038         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2039         $(EXEEXT) to the script, as it is not a program.
2040
2041 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2042
2043         * python/py-prettyprint.c (pretty_print_one_value): Return
2044         gdbpy_ref<>.
2045         (print_string_repr): Adjust.
2046         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2047         * python/python-internal.h (apply_varobj_pretty_printer): Return
2048         gdbpy_ref<>.
2049         * varobj.c (varobj_value_get_print_value): Adjust.
2050
2051 2018-09-08  Tom Tromey  <tom@tromey.com>
2052
2053         PR python/16047:
2054         * python/py-prettyprint.c (pretty_print_one_value): Check for
2055         to_string method.
2056
2057 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2058
2059         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2060         replace_operator_with_call.
2061
2062 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2063
2064         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2065
2066 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2067
2068         * ada-typeprint.c (print_range): Print the bounds using TYPE
2069         rather than its TYPE_TARGET_TYPE.
2070
2071 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2072
2073         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2074         call to ada_to_fixed_value_create.
2075
2076 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2077
2078         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2079
2080 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2081
2082         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2083         by calls to error.
2084
2085 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2086
2087         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2088         Move update of loop variable "fi".
2089
2090 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2091
2092         * ada-lang.c (value_assign_to_component): In the case of
2093         big-endian targets, extract the bits of the given VAL
2094         using an src_offset of zero if container is not a scalar.
2095
2096 2018-09-06  Simon Ser  <contact@emersion.fr>
2097
2098         PR gdb/23105
2099         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2100         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2101         * fbsd-tdep.c (fbsd_make_note_desc): New.
2102         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2103         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2104         * target.h (enum target_object) Add FreeBSD-specific
2105         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2106
2107 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2108
2109         * compile/compile-c.h (generate_c_for_variable_locations):
2110         Change reference to pointer.
2111         * compile/compile-c-support.c (compile_program) <compute>:
2112         Likewise.
2113         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2114         (generate_c_for_for_one_variable): Likewise
2115         (generate_c_for_variable_locations): Likewise
2116         * compile/compile-c-types.c (compile_c_instance::convert_type):
2117         Likewise
2118         * compile/compile-cplus-symbols.c (convert_one_symbol):
2119         std::move the scope passed to enter_scope.
2120         * compile/compile-cplus-types.c
2121         (compile_cplus_instance::enter_scope): Make parameter
2122         rvalue-reference.
2123         (compile_cplus_instance::new_scope): Change reference to
2124         pointer.
2125         (compile_cplus_instance::convert_type): Likewise
2126         (compile_cplus_convert_typedef): std::move the scope passed to
2127         enter_scope.
2128         (compile_cplus_convert_struct_or_union): Likewise.
2129         (compile_cplus_convert_enum): Likewise.
2130         (compile_cplus_convert_namespace): Likewise.
2131         * compile/compile-cplus.h (compile_cplus_instance)
2132         <enter_scope>: Make parameter rvalue-reference.
2133         * compile/compile-internal.h (compile_instance)
2134         <get_cached_type>: Likewise
2135         * compile/compile-loc2c.c (push): Likewise
2136         (pushf): Likewise
2137         (unary): Likewise
2138         (binary): Likewise
2139         (print_label): Likewise
2140         (pushf_register_address): Likewise
2141         (pushf_register): Likewise
2142         (do_compile_dwarf_expr_to_c): Likewise
2143         (compile_dwarf_expr_to_c): Likewise
2144         (compile_dwarf_bounds_to_c): Likewise
2145         * compile/compile.c (compile_instance::get_cached_type):
2146         Likewise
2147         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2148         (compile_dwarf_bounds_to_c): Likewise
2149         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2150         (dwarf2_compile_property_to_c): Likewise
2151         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2152         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2153         Likewise
2154
2155 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2156
2157         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2158         * tui/tui-data.c (init_content_element): Don't initialize it.
2159
2160 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2161
2162         * tui/tui-data.h (struct tui_win_info)
2163         <detail::opaque>: Remove.
2164         * tui/tui-data.c (init_win_info): Remove assignment.
2165
2166 2018-09-05  Tom Tromey  <tom@tromey.com>
2167
2168         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2169         -Wformat-nonliteral.
2170         * target-float.c (host_float_ops<T>::to_string)
2171         (host_float_ops<T>::from_string): Use
2172         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2173         * configure: Rebuild.
2174
2175 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2176
2177         * printcmd.c (printf_c_string): Use
2178         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2179         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2180
2181 2018-09-05  Tom Tromey  <tom@tromey.com>
2182
2183         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2184
2185 2018-09-05  Tom de Vries  <tdevries@suse.de>
2186
2187         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2188         with resolve_abstract_p == true.
2189         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2190         defaulting to false. Propagate resolve_abstract_p to
2191         dwarf2_fetch_die_loc_sect_off.
2192         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2193         parameter, defaulting to false.
2194         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2195         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2196         parameter.
2197         * dwarf2read.h (struct die_info): Forward-declare.
2198         (die_info_ptr): New typedef.
2199         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2200
2201 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2202
2203         GDB 8.2 released.
2204
2205 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2206             Pedro Alves  <palves@redhat.com>
2207
2208         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2209         "aclocal-m4-deps.mk".  Include file here.
2210         $(srcdir)/aclocal.m4: Add "configure.ac".
2211         * gnulib/aclocal-m4-deps.mk: New file.
2212         * gnulib/update-gnulib.sh: Automatically update
2213         "aclocal-m4-deps.mk".
2214
2215 2018-09-04  Tom Tromey  <tom@tromey.com>
2216
2217         * configure: Rebuild.
2218         * configure.ac: Remove multi-ice code.
2219
2220 2018-09-04  Tom Tromey  <tom@tromey.com>
2221
2222         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2223         (ada-exp.o): Update.
2224
2225 2018-09-04  Tom Tromey  <tom@tromey.com>
2226
2227         * Makefile.in (printcmd.o, target-float.o): Remove.
2228         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2229
2230 2018-09-04  Tom Tromey  <tom@tromey.com>
2231
2232         * gnulib/Makefile.in: Remove obsolete comment.
2233         * Makefile.in: Remove obsolete comment.
2234
2235 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2236
2237         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2238         line with '+'.
2239
2240 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2241
2242         * riscv-tdep.c: Add 'prologue-value.h' include.
2243         (struct riscv_unwind_cache): New struct.
2244         (riscv_debug_unwinder): New global.
2245         (riscv_scan_prologue): Update arguments, capture register details
2246         from prologue scan.
2247         (riscv_skip_prologue): Reformat arguments line, move end of
2248         prologue calculation into riscv_scan_prologue.
2249         (riscv_frame_cache): Update return type, create
2250         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2251         details.
2252         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2253         (riscv_frame_prev_register): Use the trad_frame within the
2254         riscv_unwind_cache.
2255         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2256         flag.
2257
2258 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2259
2260         * trad-frame.h (trad_frame_set_realreg): Declare.
2261         (trad_frame_set_addr): Declare.
2262         * trad-frame.c (trad_frame_set_realreg): Define new function.
2263         (trad_frame_set_addr): Define new function.
2264         (trad_frame_set_reg_realreg): Use new function.
2265         (trad_frame_set_reg_addr): Use new function.
2266
2267 2018-09-01  Keith Seitz  <keiths@redhat.com>
2268
2269         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2270         pulongest instead of "%lld".
2271         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2272         ATTRIBUTE_UNUSED.
2273
2274 2018-08-31  Tom Tromey  <tom@tromey.com>
2275
2276         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2277         variant part type.
2278
2279 2018-08-31  Pedro Alves  <palves@redhat.com>
2280
2281         * gdbarch.h: Regenerate.
2282
2283 2018-08-31  Pedro Alves  <palves@redhat.com>
2284
2285         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2286         * target.h (Hardware watchpoint interfaces): Describe
2287         continuable/steppable/non-steppable watchpoints.
2288         * gdbarch.h, gdbarch.c: Regenerate.
2289
2290 2018-08-31  Pedro Alves  <palves@redhat.com>
2291
2292         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2293         Delete.
2294         * s390-linux-nat.c
2295         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2296         * target.h (target_ops::have_continuable_watchpoint): Delete.
2297         (target_have_continuable_watchpoint): Delete.
2298         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2299         * target-delegates.c: Regenerate.
2300
2301 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2302
2303         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2304         the files present in "gnulib/import/m4/".
2305
2306 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2307
2308         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2309         c.sw, c.swsp, and c.sdsp.
2310
2311 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2312
2313         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2314         (riscv_read_misa_reg): Don't cache value read into inferior data.
2315         (riscv_new_inferior_data): Delete.
2316         (riscv_inferior_data_cleanup): Delete.
2317         (riscv_inferior_data): Delete.
2318         (riscv_invalidate_inferior_data): Delete.
2319         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2320
2321 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2322
2323         * compile/compile-cplus-types.c
2324         (compile_cplus_instance::leave_scope): Take the address of scope
2325         object.
2326         (compile_cplus_instance::convert_qualified_base): Compare quals
2327         to 0.
2328
2329 2018-08-30  Keith Seitz  <keiths@redhat.com>
2330
2331         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2332         Use "%s" and host_address_to_string instead of "%p" in printf.
2333
2334 2018-08-29  Keith Seitz  <keiths@redhat.com>
2335
2336         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2337         and compile-cplus-types.c.
2338         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2339         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2340         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2341         Declare.
2342         * compile/compile-c-support.c: Include compile-cplus.h.
2343         (load_libcompile): Templatize.
2344         (get_compile_context): "New" function.
2345         (c_get_compile_context): Use get_compile_context.
2346         (cplus_get_compile_context): New function.
2347         (cplus_push_user_expression, cplus_pop_user_expression)
2348         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2349         (cplus_compute_program): Define new structs/functions.
2350         * compile/compile-cplus-symmbols.c: New file.
2351         * compile/compile-cplus-types.c: New file.
2352         * compile/compile-cplus.h: New file.
2353         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2354         Declare.
2355         * compile/compile-object-load.c (get_out_value_type): Use
2356         strncmp_iw when comparing symbol names.
2357         (compile_object_load): Add mst_bss and mst_data.
2358         * compile/compile.c (_initialize_compile): Remove
2359         -Wno-implicit-function-declaration from `compile_args'.
2360         * compile/gcc-cp-plugin.h: New file.
2361         * NEWS: Mention C++ compile support and new debug options.
2362
2363 2018-08-29  Keith Seitz  <keiths@redhat.com>
2364
2365         * linespec.c (collect_info::add_symbol): Make virtual.
2366         (struct symbol_searcher_collect_info): New struct.
2367         (symbol_searcher::find_all_symbols): New method.
2368         * symtab.h (class symbol_searcher): New class.
2369
2370 2018-08-29  Keith Seitz  <keiths@redhat.com>
2371
2372         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2373         Change to vector of block_symbol.  Update all users.
2374         (struct collect_info) <symbols>: Likewise.
2375         (collect_info::add_symbol): Take block_symbol as argument.
2376         Update all callers.
2377         (decode_compound_collector) <m_symbols>: Change type to vector
2378         of block_symbol.  Update all users.
2379         (decode_compound_collector::operator ()): Change parameter type
2380         to block_symbol.
2381         (find_method, find_function_symbols, find_linespec_symbols)
2382         (find_label_symbols_in_block, find_label_symbols): Change symbol
2383         vectors to block_symbol vectors.
2384         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2385         block_symbol.
2386
2387 2018-08-29  Keith Seitz  <keiths@redhat.com>
2388
2389         * linespec.c (symbolp): Remove typedef and VEC definitions.
2390         (bound_minimal_symbol_d): Likewise.
2391
2392 2018-08-29  Keith Seitz  <keiths@redhat.com>
2393
2394         * linespec.c (decode_compound_collector::decode_compound_collector):
2395         Remove initialization for `m_symtabs'.
2396         (decode_compound_collector::release_symbols): Change return type
2397         to std::vector.  Update all callers.
2398         (class decode_compound_collector) <m_symbols>: Change type to
2399         std::vector.
2400         (lookup_prefix_sym): Change return type to std::vector.  Update all
2401         callers.
2402         (compare_symbols): Remove.
2403         (std_compare_symbols): Rename to `compare_symbols'.
2404         (find_method): Change `sym_classes' parameter to std::vector.
2405         Update all callers.  Use std::sort to sort sym_classes.
2406         (find_linespec_symbols): Remove cleanup.
2407
2408 2018-08-29  Keith Seitz  <keiths@redhat.com>
2409
2410         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2411         std::vector.  Update all users.
2412         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2413         (struct collect_info) <minimal_symbols>: Likewise.
2414         (compare_msymbols): Return bool.  Change parameters to const
2415         bound_minimal_symbol references.
2416         (find_method, find_function_symbols, find_linespec_symbols): Change
2417         `minsyms' parameter to std::vector.  Update all callers.
2418
2419 2018-08-29  Keith Seitz  <keiths@redhat.com>
2420
2421         * linespec.c (struct linespec) <label_symbols>: Change type to
2422         std::vector.  Update all users.
2423         (find_label_symbols_in_block): Change `result' parameter to
2424         std::vector.  Update all callers.
2425         (find_label_symbols): Return std::vector.  Update all callers.
2426
2427 2018-08-29  Keith Seitz  <keiths@redhat.com>
2428
2429         * linespec.c (struct linespec) <function_symbols>: Change type to
2430         std::vector.  Update all users.
2431         (struct collect_info) <function_symbols>: Likewise.
2432         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2433         (std_compare_symbols): New function.
2434         (find_method, find_function_symbols, find_linespec_symbols)
2435         (find_label_symbols_in_block): Change `symbols' parameter to
2436         std::vector.  Update all callers.
2437         (find_label_symbols): Likewise for `function_symbols' and
2438         `label_funcs_ret'.
2439
2440 2018-08-29  Keith Seitz  <keiths@redhat.com>
2441
2442         * linespec.c (symtab_vector_up): Define.
2443         (struct linespec) <file_symtabs>: Change type to std::vector *.
2444         Update all uses.
2445         (struct collect_info) <file_symtabs>: Likewise.
2446         (collect_symtabs_from_filename): Return symtab_vector_up.
2447         Update all callers.
2448         (decode_objc): Remove cleanup.
2449         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2450         (symtab_collector::release_symtabs): Return symtab_vector_up.
2451         Update all callers.
2452         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2453         Update all users.
2454         (collect_symtabs_from_filename, symtabs_from_filename): Return
2455         symtab_vector_up.  Update all callers.
2456
2457 2018-08-29  Tom Tromey  <tom@tromey.com>
2458
2459         * csky-tdep.c (csky_analyze_prologue): Use
2460         core_addr_to_string_nz.
2461
2462 2018-08-29  Tom Tromey  <tom@tromey.com>
2463
2464         * windows-nat.c (struct xlate_exception) <them>: Change type to
2465         DWORD.
2466         (xlate): Fix formatting.  Remove last entry.
2467         (struct xlate_exception, xlate): Comment out.
2468         (windows_nat_target::resume): Use ranged for.
2469
2470 2018-08-29  Jim Wilson  <jimw@sifive.com>
2471
2472         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2473         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2474         of NT_PRFPREG.
2475         (riscv_linux_nat_target::store_registers): Likewise.
2476
2477 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2478
2479         PR gdb/23555
2480         PR gdb/23558
2481         * gnulib/aclocal.m4: Regenerate.
2482         * gnulib/config.in: Regenerate.
2483         * gnulib/configure: Regenerate.
2484         * gnulib/import/Makefile.am: Update.
2485         * gnulib/import/Makefile.in: Update.
2486         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2487         * gnulib/import/_Noreturn.h: ... this.
2488         * gnulib/import/alloca.in.h: Update.
2489         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2490         * gnulib/import/arg-nonnull.h: ... this.
2491         * gnulib/import/assure.h: Update.
2492         * gnulib/import/at-func.c: Update.
2493         * gnulib/import/basename-lgpl.c: Update.
2494         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2495         * gnulib/import/c++defs.h: ... this.
2496         * gnulib/import/canonicalize-lgpl.c: Update.
2497         * gnulib/import/cdefs.h: Update.
2498         * gnulib/import/chdir-long.c: Update.
2499         * gnulib/import/chdir-long.h: Update.
2500         * gnulib/import/cloexec.c: Update.
2501         * gnulib/import/cloexec.h: Update.
2502         * gnulib/import/close.c: Update.
2503         * gnulib/import/closedir.c: Update.
2504         * gnulib/import/config.charset: Update.
2505         * gnulib/import/dirent-private.h: Update.
2506         * gnulib/import/dirent.in.h: Update.
2507         * gnulib/import/dirfd.c: Update.
2508         * gnulib/import/dirname-lgpl.c: Update.
2509         * gnulib/import/dirname.h: Update.
2510         * gnulib/import/dosname.h: Update.
2511         * gnulib/import/dup-safer-flag.c: Update.
2512         * gnulib/import/dup-safer.c: Update.
2513         * gnulib/import/dup.c: Update.
2514         * gnulib/import/dup2.c: Update.
2515         * gnulib/import/errno.in.h: Update.
2516         * gnulib/import/error.c: Update.
2517         * gnulib/import/error.h: Update.
2518         * gnulib/import/exitfail.c: Update.
2519         * gnulib/import/exitfail.h: Update.
2520         * gnulib/import/extra/update-copyright: Update.
2521         * gnulib/import/fchdir.c: Update.
2522         * gnulib/import/fcntl.c: Update.
2523         * gnulib/import/fcntl.in.h: Update.
2524         * gnulib/import/fd-hook.c: Update.
2525         * gnulib/import/fd-hook.h: Update.
2526         * gnulib/import/fd-safer-flag.c: Update.
2527         * gnulib/import/fd-safer.c: Update.
2528         * gnulib/import/fdopendir.c: Update.
2529         * gnulib/import/filename.h: Update.
2530         * gnulib/import/filenamecat-lgpl.c: Update.
2531         * gnulib/import/filenamecat.h: Update.
2532         * gnulib/import/flexmember.h: Update.
2533         * gnulib/import/float+.h: Update.
2534         * gnulib/import/float.c: Update.
2535         * gnulib/import/float.in.h: Update.
2536         * gnulib/import/fnmatch.c: Update.
2537         * gnulib/import/fnmatch.in.h: Update.
2538         * gnulib/import/fnmatch_loop.c: Update.
2539         * gnulib/import/fpucw.h: Update.
2540         * gnulib/import/frexp.c: Update.
2541         * gnulib/import/frexpl.c: Update.
2542         * gnulib/import/fstat.c: Update.
2543         * gnulib/import/fstatat.c: Update.
2544         * gnulib/import/getcwd-lgpl.c: Update.
2545         * gnulib/import/getcwd.c: Update.
2546         * gnulib/import/getdtablesize.c: Update.
2547         * gnulib/import/getlogin_r.c: Update.
2548         * gnulib/import/getprogname.c: Update.
2549         * gnulib/import/getprogname.h: Update.
2550         * gnulib/import/gettext.h: Update.
2551         * gnulib/import/gettimeofday.c: Update.
2552         * gnulib/import/glob-libc.h: Update.
2553         * gnulib/import/glob.c: Update.
2554         * gnulib/import/glob.in.h: Update.
2555         * gnulib/import/glob_internal.h: Update.
2556         * gnulib/import/glob_pattern_p.c: Update.
2557         * gnulib/import/globfree.c: Update.
2558         * gnulib/import/hard-locale.c: Update.
2559         * gnulib/import/hard-locale.h: Update.
2560         * gnulib/import/intprops.h: Update.
2561         * gnulib/import/inttypes.in.h: Update.
2562         * gnulib/import/isnan.c: Update.
2563         * gnulib/import/isnand-nolibm.h: Update.
2564         * gnulib/import/isnand.c: Update.
2565         * gnulib/import/isnanl-nolibm.h: Update.
2566         * gnulib/import/isnanl.c: Update.
2567         * gnulib/import/itold.c: Update.
2568         * gnulib/import/libc-config.h: Update.
2569         * gnulib/import/limits.in.h: Update.
2570         * gnulib/import/localcharset.c: Update.
2571         * gnulib/import/localcharset.h: Update.
2572         * gnulib/import/localtime-buffer.c: Update.
2573         * gnulib/import/localtime-buffer.h: Update.
2574         * gnulib/import/lstat.c: Update.
2575         * gnulib/import/m4/00gnulib.m4: Update.
2576         * gnulib/import/m4/__inline.m4: Update.
2577         * gnulib/import/m4/absolute-header.m4: Update.
2578         * gnulib/import/m4/alloca.m4: Update.
2579         * gnulib/import/m4/builtin-expect.m4: Update.
2580         * gnulib/import/m4/canonicalize.m4: Update.
2581         * gnulib/import/m4/chdir-long.m4: Update.
2582         * gnulib/import/m4/close.m4: Update.
2583         * gnulib/import/m4/closedir.m4: Update.
2584         * gnulib/import/m4/configmake.m4: Update.
2585         * gnulib/import/m4/d-ino.m4: Update.
2586         * gnulib/import/m4/d-type.m4: Update.
2587         * gnulib/import/m4/dirent_h.m4: Update.
2588         * gnulib/import/m4/dirfd.m4: Update.
2589         * gnulib/import/m4/dirname.m4: Update.
2590         * gnulib/import/m4/double-slash-root.m4: Update.
2591         * gnulib/import/m4/dup.m4: Update.
2592         * gnulib/import/m4/dup2.m4: Update.
2593         * gnulib/import/m4/eealloc.m4: Update.
2594         * gnulib/import/m4/environ.m4: Update.
2595         * gnulib/import/m4/errno_h.m4: Update.
2596         * gnulib/import/m4/error.m4: Update.
2597         * gnulib/import/m4/exponentd.m4: Update.
2598         * gnulib/import/m4/exponentl.m4: Update.
2599         * gnulib/import/m4/extensions.m4: Update.
2600         * gnulib/import/m4/extern-inline.m4: Update.
2601         * gnulib/import/m4/fchdir.m4: Update.
2602         * gnulib/import/m4/fcntl-o.m4: Update.
2603         * gnulib/import/m4/fcntl.m4: Update.
2604         * gnulib/import/m4/fcntl_h.m4: Update.
2605         * gnulib/import/m4/fdopendir.m4: Update.
2606         * gnulib/import/m4/filenamecat.m4: Update.
2607         * gnulib/import/m4/flexmember.m4: Update.
2608         * gnulib/import/m4/float_h.m4: Update.
2609         * gnulib/import/m4/fnmatch.m4: Update.
2610         * gnulib/import/m4/fnmatch_h.m4: Update.
2611         * gnulib/import/m4/fpieee.m4: Update.
2612         * gnulib/import/m4/frexp.m4: Update.
2613         * gnulib/import/m4/frexpl.m4: Update.
2614         * gnulib/import/m4/fstat.m4: Update.
2615         * gnulib/import/m4/fstatat.m4: Update.
2616         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2617         * gnulib/import/m4/getcwd-path-max.m4: Update.
2618         * gnulib/import/m4/getcwd.m4: Update.
2619         * gnulib/import/m4/getdtablesize.m4: Update.
2620         * gnulib/import/m4/getlogin.m4: Update.
2621         * gnulib/import/m4/getlogin_r.m4: Update.
2622         * gnulib/import/m4/getpagesize.m4: Update.
2623         * gnulib/import/m4/getprogname.m4: Update.
2624         * gnulib/import/m4/gettimeofday.m4: Update.
2625         * gnulib/import/m4/glibc21.m4: Update.
2626         * gnulib/import/m4/glob.m4: Update.
2627         * gnulib/import/m4/glob_h.m4: Update.
2628         * gnulib/import/m4/gnulib-cache.m4: Update.
2629         * gnulib/import/m4/gnulib-common.m4: Update.
2630         * gnulib/import/m4/gnulib-comp.m4: Update.
2631         * gnulib/import/m4/gnulib-tool.m4: Update.
2632         * gnulib/import/m4/hard-locale.m4: Update.
2633         * gnulib/import/m4/include_next.m4: Update.
2634         * gnulib/import/m4/inttypes-pri.m4: Update.
2635         * gnulib/import/m4/inttypes.m4: Update.
2636         * gnulib/import/m4/isnand.m4: Update.
2637         * gnulib/import/m4/isnanl.m4: Update.
2638         * gnulib/import/m4/largefile.m4: Update.
2639         * gnulib/import/m4/limits-h.m4: Update.
2640         * gnulib/import/m4/localcharset.m4: Update.
2641         * gnulib/import/m4/locale-fr.m4: Update.
2642         * gnulib/import/m4/locale-ja.m4: Update.
2643         * gnulib/import/m4/locale-zh.m4: Update.
2644         * gnulib/import/m4/localtime-buffer.m4: Update.
2645         * gnulib/import/m4/longlong.m4: Update.
2646         * gnulib/import/m4/lstat.m4: Update.
2647         * gnulib/import/m4/malloc.m4: Update.
2648         * gnulib/import/m4/malloca.m4: Update.
2649         * gnulib/import/m4/math_h.m4: Update.
2650         * gnulib/import/m4/mbrtowc.m4: Update.
2651         * gnulib/import/m4/mbsinit.m4: Update.
2652         * gnulib/import/m4/mbsrtowcs.m4: Update.
2653         * gnulib/import/m4/mbstate_t.m4: Update.
2654         * gnulib/import/m4/memchr.m4: Update.
2655         * gnulib/import/m4/memmem.m4: Update.
2656         * gnulib/import/m4/mempcpy.m4: Update.
2657         * gnulib/import/m4/memrchr.m4: Update.
2658         * gnulib/import/m4/mkdir.m4: Update.
2659         * gnulib/import/m4/mkstemp.m4: Update.
2660         * gnulib/import/m4/mmap-anon.m4: Update.
2661         * gnulib/import/m4/mode_t.m4: Update.
2662         * gnulib/import/m4/msvc-inval.m4: Update.
2663         * gnulib/import/m4/msvc-nothrow.m4: Update.
2664         * gnulib/import/m4/multiarch.m4: Update.
2665         * gnulib/import/m4/nocrash.m4: Update.
2666         * gnulib/import/m4/off_t.m4: Update.
2667         * gnulib/import/m4/onceonly.m4: Update.
2668         * gnulib/import/m4/open-cloexec.m4: Update.
2669         * gnulib/import/m4/open.m4: Update.
2670         * gnulib/import/m4/openat.m4: Update.
2671         * gnulib/import/m4/opendir.m4: Update.
2672         * gnulib/import/m4/pathmax.m4: Update.
2673         * gnulib/import/m4/rawmemchr.m4: Update.
2674         * gnulib/import/m4/readdir.m4: Update.
2675         * gnulib/import/m4/readlink.m4: Update.
2676         * gnulib/import/m4/realloc.m4: Update.
2677         * gnulib/import/m4/rename.m4: Update.
2678         * gnulib/import/m4/rewinddir.m4: Update.
2679         * gnulib/import/m4/rmdir.m4: Update.
2680         * gnulib/import/m4/save-cwd.m4: Update.
2681         * gnulib/import/m4/secure_getenv.m4: Update.
2682         * gnulib/import/m4/setenv.m4: Update.
2683         * gnulib/import/m4/signal_h.m4: Update.
2684         * gnulib/import/m4/ssize_t.m4: Update.
2685         * gnulib/import/m4/stat-time.m4: Update.
2686         * gnulib/import/m4/stat.m4: Update.
2687         * gnulib/import/m4/std-gnu11.m4: Update.
2688         * gnulib/import/m4/stdbool.m4: Update.
2689         * gnulib/import/m4/stddef_h.m4: Update.
2690         * gnulib/import/m4/stdint.m4: Update.
2691         * gnulib/import/m4/stdio_h.m4: Update.
2692         * gnulib/import/m4/stdlib_h.m4: Update.
2693         * gnulib/import/m4/strchrnul.m4: Update.
2694         * gnulib/import/m4/strdup.m4: Update.
2695         * gnulib/import/m4/strerror.m4: Update.
2696         * gnulib/import/m4/string_h.m4: Update.
2697         * gnulib/import/m4/strstr.m4: Update.
2698         * gnulib/import/m4/strtok_r.m4: Update.
2699         * gnulib/import/m4/sys_socket_h.m4: Update.
2700         * gnulib/import/m4/sys_stat_h.m4: Update.
2701         * gnulib/import/m4/sys_time_h.m4: Update.
2702         * gnulib/import/m4/sys_types_h.m4: Update.
2703         * gnulib/import/m4/tempname.m4: Update.
2704         * gnulib/import/m4/time_h.m4: Update.
2705         * gnulib/import/m4/unistd-safer.m4: Update.
2706         * gnulib/import/m4/unistd_h.m4: Update.
2707         * gnulib/import/m4/warn-on-use.m4: Update.
2708         * gnulib/import/m4/wchar_h.m4: Update.
2709         * gnulib/import/m4/wchar_t.m4: Update.
2710         * gnulib/import/m4/wctype_h.m4: Update.
2711         * gnulib/import/m4/wint_t.m4: Update.
2712         * gnulib/import/malloc.c: Update.
2713         * gnulib/import/malloc/scratch_buffer.h: Update.
2714         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2715         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2716         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2717         * gnulib/import/malloca.c: Update.
2718         * gnulib/import/malloca.h: Update.
2719         * gnulib/import/malloca.valgrind: Update.
2720         * gnulib/import/math.in.h: Update.
2721         * gnulib/import/mbrtowc.c: Update.
2722         * gnulib/import/mbsinit.c: Update.
2723         * gnulib/import/mbsrtowcs-impl.h: Update.
2724         * gnulib/import/mbsrtowcs-state.c: Update.
2725         * gnulib/import/mbsrtowcs.c: Update.
2726         * gnulib/import/memchr.c: Update.
2727         * gnulib/import/memmem.c: Update.
2728         * gnulib/import/mempcpy.c: Update.
2729         * gnulib/import/memrchr.c: Update.
2730         * gnulib/import/mkdir.c: Update.
2731         * gnulib/import/mkstemp.c: Update.
2732         * gnulib/import/msvc-inval.c: Update.
2733         * gnulib/import/msvc-inval.h: Update.
2734         * gnulib/import/msvc-nothrow.c: Update.
2735         * gnulib/import/msvc-nothrow.h: Update.
2736         * gnulib/import/open.c: Update.
2737         * gnulib/import/openat-die.c: Update.
2738         * gnulib/import/openat-priv.h: Update.
2739         * gnulib/import/openat-proc.c: Update.
2740         * gnulib/import/openat.c: Update.
2741         * gnulib/import/openat.h: Update.
2742         * gnulib/import/opendir.c: Update.
2743         * gnulib/import/pathmax.h: Update.
2744         * gnulib/import/pipe-safer.c: Update.
2745         * gnulib/import/rawmemchr.c: Update.
2746         * gnulib/import/readdir.c: Update.
2747         * gnulib/import/readlink.c: Update.
2748         * gnulib/import/realloc.c: Update.
2749         * gnulib/import/ref-add.sin: Update.
2750         * gnulib/import/ref-del.sin: Update.
2751         * gnulib/import/rename.c: Update.
2752         * gnulib/import/rewinddir.c: Update.
2753         * gnulib/import/rmdir.c: Update.
2754         * gnulib/import/same-inode.h: Update.
2755         * gnulib/import/save-cwd.c: Update.
2756         * gnulib/import/save-cwd.h: Update.
2757         * gnulib/import/scratch_buffer.h: Update.
2758         * gnulib/import/secure_getenv.c: Update.
2759         * gnulib/import/setenv.c: Update.
2760         * gnulib/import/signal.in.h: Update.
2761         * gnulib/import/stat-time.c: Update.
2762         * gnulib/import/stat-time.h: Update.
2763         * gnulib/import/stat-w32.c: Update.
2764         * gnulib/import/stat-w32.h: Update.
2765         * gnulib/import/stat.c: Update.
2766         * gnulib/import/stdbool.in.h: Update.
2767         * gnulib/import/stddef.in.h: Update.
2768         * gnulib/import/stdint.in.h: Update.
2769         * gnulib/import/stdio.in.h: Update.
2770         * gnulib/import/stdlib.in.h: Update.
2771         * gnulib/import/str-two-way.h: Update.
2772         * gnulib/import/strchrnul.c: Update.
2773         * gnulib/import/strdup.c: Update.
2774         * gnulib/import/streq.h: Update.
2775         * gnulib/import/strerror-override.c: Update.
2776         * gnulib/import/strerror-override.h: Update.
2777         * gnulib/import/strerror.c: Update.
2778         * gnulib/import/string.in.h: Update.
2779         * gnulib/import/stripslash.c: Update.
2780         * gnulib/import/strnlen1.c: Update.
2781         * gnulib/import/strnlen1.h: Update.
2782         * gnulib/import/strstr.c: Update.
2783         * gnulib/import/strtok_r.c: Update.
2784         * gnulib/import/sys_stat.in.h: Update.
2785         * gnulib/import/sys_time.in.h: Update.
2786         * gnulib/import/sys_types.in.h: Update.
2787         * gnulib/import/tempname.c: Update.
2788         * gnulib/import/tempname.h: Update.
2789         * gnulib/import/time.in.h: Update.
2790         * gnulib/import/unistd--.h: Update.
2791         * gnulib/import/unistd-safer.h: Update.
2792         * gnulib/import/unistd.in.h: Update.
2793         * gnulib/import/unsetenv.c: Update.
2794         * gnulib/import/verify.h: Update.
2795         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2796         * gnulib/import/wchar.in.h: Update.
2797         * gnulib/import/wctype.in.h: Update.
2798         * gnulib/import/xalloc-oversized.h: Update.
2799         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2800         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2801
2802 2018-08-16  Gary Benson <gbenson@redhat.com>
2803
2804         PR gdb/13000:
2805         * gdb/main.c (captured_main_1): Exit with nonzero status
2806         in batch mode if the last command to be executed failed.
2807         * NEWS: Mention the above.
2808
2809 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
2810
2811         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
2812         end of warning message.
2813
2814 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2815
2816         PR gdb/22943:
2817         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
2818         (aarch64_extract_return_value): Use
2819         aapcs_is_vfp_call_or_return_candidate.
2820         (aarch64_return_in_memory): Likewise.
2821         (aarch64_store_return_value): Likewise.
2822
2823 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2824
2825         * aarch64-tdep.c
2826         (aapcs_is_vfp_call_or_return_candidate): Make static
2827         (pass_in_v_or_stack): Remove function.
2828         (pass_in_v_vfp_candidate): New function.
2829         (aarch64_push_dummy_call): Check for float register candidates.
2830
2831 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2832
2833         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
2834         (aapcs_is_vfp_call_or_return_candidate_1): New function.
2835         (aapcs_is_vfp_call_or_return_candidate): Likewise.
2836
2837 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
2838
2839         PR build/23399
2840         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
2841         (struct ipa_sym_addresses): Rename to...
2842         (struct ipa_sym_addresses_common): ... this.
2843         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
2844
2845 2018-08-28  Tom Tromey  <tom@tromey.com>
2846
2847         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2848         (token_fifo): Now a std::vector.
2849         (yylex, c_parse): Update.
2850         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2851         (token_fifo): Now a std::vector.
2852         (yylex, d_parse): Update.
2853         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2854         (token_fifo): Now a std::vector.
2855         (yylex, go_parse): Update.
2856
2857 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
2858
2859         * parser-defs.h (struct type_stack) <elements>: Change type to
2860         std::vector<union type_stack_elt>.
2861         <depth, size>: Remove.
2862         * parse.c (parse_exp_in_context_1): Adjust.
2863         (type_stack_reserve): Remove.
2864         (check_type_stack_depth): Remove.
2865         (insert_into_type_stack): Adjust to std::vector.
2866         (insert_type): Likewise.
2867         (push_type): Likewise.
2868         (push_type_int): Likewise.
2869         (insert_type_address_space): Likewise.
2870         (pop_type): Likewise.
2871         (pop_type_int): Likewise.
2872         (pop_typelist): Likewise.
2873         (pop_type_stack): Likewise.
2874         (append_type_stack): Likewise.
2875         (push_type_stack): Likewise.
2876         (get_type_stack): Likewise.
2877         (type_stack_cleanup): Likewise.
2878         (push_typelist): Likewise.
2879         (follow_types): Likewise.
2880         (_initialize_parse): Likewise.
2881
2882 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2883
2884         * NEWS: Mention csky target.
2885
2886 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
2887             Hafiz Abid Qadeer  <abidh@codesourcery.com>
2888             Don Breazeal  <donb@codesourcery.com>
2889
2890         * csky-linux-tdep.c: New file.
2891         * csky-tdep.c: Likewise.
2892         * csky-tdep.h: Likewise.
2893         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
2894         csky-tdep.o.
2895         (HFILES_NO_SRCDIR): Add csky-tdep.h.
2896         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
2897         * configure.tgt: Add csky support.
2898
2899 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
2900
2901         * python/py-framefilter.c (py_print_frame): Print frame architecture
2902         when printing on an MI output.
2903
2904 2018-08-27  Tom Tromey  <tom@tromey.com>
2905
2906         PR build/23087:
2907         * configure: Rebuild.
2908         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
2909
2910 2018-08-27  Tom Tromey  <tom@tromey.com>
2911
2912         * aarch64-linux-tdep.c
2913         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
2914         casts to int.
2915
2916 2018-08-27  Tom Tromey  <tom@tromey.com>
2917
2918         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
2919         unsigned.
2920         (ppc64_standard_linkage1, ppc64_standard_linkage2)
2921         (ppc64_standard_linkage3, ppc64_standard_linkage4)
2922         (ppc64_standard_linkage5, ppc64_standard_linkage6)
2923         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
2924         unsigned.
2925
2926 2018-08-27  Tom Tromey  <tom@tromey.com>
2927
2928         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
2929         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
2930
2931 2018-08-27  Tom Tromey  <tom@tromey.com>
2932
2933         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
2934         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
2935         ULONGEST_MAX.
2936         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
2937         ULONGEST_MAX.
2938         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
2939         ULONGEST_MAX.
2940         * sparc-linux-tdep.c (sparc32_linux_sigframe)
2941         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
2942         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
2943         ULONGEST_MAX.
2944         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
2945         (ppc64_linux_sigaction_tramp_frame)
2946         (ppc32_linux_sighandler_tramp_frame)
2947         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2948         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
2949         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
2950         * mn10300-linux-tdep.c (am33_linux_sigframe)
2951         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
2952         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
2953         * mips-linux-tdep.c (mips_linux_o32_sigframe)
2954         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
2955         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
2956         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
2957         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
2958         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
2959         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
2960         * microblaze-linux-tdep.c
2961         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2962         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
2963         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
2964         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
2965         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
2966         * common/common-types.h (ULONGEST_MAX): New define.
2967         (CORE_ADDR_MAX): Fix formatting.
2968         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
2969         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
2970         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
2971         (arm_linux_rt_sigreturn_tramp_frame)
2972         (arm_eabi_linux_sigreturn_tramp_frame)
2973         (arm_eabi_linux_rt_sigreturn_tramp_frame)
2974         (thumb2_eabi_linux_sigreturn_tramp_frame)
2975         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
2976         (arm_linux_restart_syscall_tramp_frame)
2977         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
2978         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
2979         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
2980         ULONGEST_MAX.
2981         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
2982
2983 2018-08-27  Tom Tromey  <tom@tromey.com>
2984
2985         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
2986         CORE_ADDR_MAX.
2987         * mips-tdep.c (mips_deal_with_atomic_sequence)
2988         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
2989         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
2990         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
2991         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
2992         CORE_ADDR_MAX.
2993         * aarch64-tdep.c (aarch64_software_single_step): Use
2994         CORE_ADDR_MAX.
2995
2996 2018-08-27  Tom Tromey  <tom@tromey.com>
2997
2998         * linespec.c (complete_linespec_component): Add cast to "char".
2999         * completer.c (completion_tracker::build_completion_result): Add
3000         cast to "char".
3001
3002 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3003
3004         * solist.h (struct solist, struct target_so_ops): Fix
3005         indentation.
3006
3007 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3008
3009         * ada-tasks.c (ada_task_info_s): Remove typedef.
3010         (DEF_VEC_O(ada_task_info_s)): Remove.
3011         (struct ada_tasks_inferior_data): Initialize fields.
3012         <task_list>: Make an std::vector.
3013         (get_ada_tasks_inferior_data): Allocate with new.
3014         (ada_get_task_number): Adjust.
3015         (get_task_number_from_id): Likewise.
3016         (valid_task_id): Likewise.
3017         (ada_get_task_info_from_ptid): Likewise.
3018         (iterate_over_live_ada_tasks): Likewise.
3019         (add_ada_task): Likewise.
3020         (read_known_tasks): Likewise.
3021         (ada_build_task_list): Likewise.
3022         (print_ada_task_info): Likewise.
3023         (info_task): Likewise.
3024         (task_command_1): Likewise.
3025
3026 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3027
3028         * ada-lang.c (add_angle_brackets): Return std::string.
3029
3030 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3031
3032         * python/py-threadevent.c (py_get_event_thread): Initialize
3033         pythread.
3034
3035 2018-08-24  Pedro Alves  <palves@redhat.com>
3036
3037         * python/py-bpevent.c (create_breakpoint_event_object): Use
3038         copy-initialization.
3039         * python/py-continueevent.c (emit_continue_event): Use
3040         copy-initialization.
3041         * python/py-exitedevent.c (create_exited_event_object): Return a
3042         gdbpy_ref<>.
3043         (emit_exited_event): Use copy-initialization.
3044         * python/py-inferior.c (python_new_inferior)
3045         (python_inferior_deleted, add_thread_object): Use
3046         copy-initialization.
3047         * python/py-infevents.c (create_inferior_call_event_object)
3048         (create_register_changed_event_object)
3049         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3050         (emit_inferior_call_event, emit_memory_changed_event)
3051         (emit_register_changed_event): Use copy-initialization.
3052         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3053         Return a gdbpy_ref<>.
3054         (emit_new_objfile_event): Use copy-initialization.
3055         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3056         (emit_clear_objfiles_event): Use copy-initialization.
3057         * python/py-signalevent.c (create_signal_event_object): Use
3058         copy-initialization.
3059         * python/py-threadevent.c (create_thread_event_object): Use
3060         copy-initialization.
3061
3062 2018-08-24  Pedro Alves  <palves@redhat.com>
3063             Simon Marchi  <simon.marchi@ericsson.com>
3064
3065         PR gdb/23379
3066         * python/py-continueevent.c: Include "gdbthread.h".
3067         (create_continue_event_object): Add intro comment.  Add 'ptid'
3068         parameter.  Use it to find thread to pass to
3069         create_thread_event_object.
3070         (emit_continue_event): Pass PTID down to
3071         create_continue_event_object.
3072         * python/py-event.h (py_get_event_thread): Declare.
3073         (create_thread_event_object): Remove default from 'thread'
3074         parameter.
3075         * python/py-stopevent.c (create_stop_event_object): Use
3076         py_get_event_thread.
3077         * python/py-threadevent.c (get_event_thread): Rename to ...
3078         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3079         and use it to find the thread.
3080         (create_thread_event_object): Assert that THREAD isn't null.
3081         Don't find the event thread here.
3082
3083 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3084
3085         * block.h (blockrange, blockranges): New struct declarations.
3086         (struct block): Add new field named `ranges'.
3087         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3088         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3089         macros for accessing ranges in struct block.
3090         (make_blockranges): New declaration.
3091         block.c (make_blockranges): New function.
3092         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3093         for block.
3094         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3095         * blockframe.c (cache_pc_function_block): New static global.
3096         (clear_pc_function_cache): Clear cache_pc_function_block.
3097         (find_pc_partial_function): Move comment to symtab.h.  Add
3098         support for non-contiguous blocks.
3099         * cli/cli-cmds.c (block.h): Include.
3100         (print_disassembly): Handle printing of non-contiguous blocks.
3101         (disassemble_current_function): Likewise.
3102         (disassemble_command): Likewise.
3103
3104         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3105         BLOCK_START.
3106         * blockframe.c (get_pc_function_start): Likewise.
3107         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3108         (gcc_symbol_address): Likewise.
3109         * compile/compile-object-run.c (compile_object_run): Likewise.
3110         * compile/compile.c (get_expr_block_and_pc): Likewise.
3111         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3112         (func_addr_to_tail_call_list): Likewise.
3113         * findvar.c (default_read_var_value): Likewise.
3114         * inline-frame.c (inline_frame_this_id): Likewise.
3115         (skip-inline_frames): Likewise.
3116         * infcmd.c (until_next_command): Likewise.
3117         * linespec.c (convert_linespec_to_sals): Likewise.
3118         * parse.c (parse_exp_in_context_1): Likewise.
3119         * printcmd.c (build_address_symbolic): likewise.
3120         (info_address_command): Likewise.
3121         symtab.c (find_function_start_sal): Likewise.
3122         (skip_prologue_sal): Likewise.
3123         (find_function_alias_target): Likewise.
3124         (find_gnu_ifunc): Likewise.
3125         * stack.c (find_frame_funname): Likewise.
3126         * symtab.c (fixup_symbol_section): Likewise.
3127         (find_function_start_sal): Likewise.
3128         (skip_prologue_sal): Likewsie.
3129         (find_function_alias_target): Likewise.
3130         (find_gnu_ifunc): Likewise.
3131         * tracepoint.c (info_scope_command): Likewise.
3132         * value.c (value_fn_field): Likewise.
3133
3134         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3135         in place of find_pc_partial_function.
3136         * blockframe.c (find_function_entry_range_from_pc): New function.
3137         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3138         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3139         for each range in a block.
3140
3141
3142 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3143
3144         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3145         incrementation.
3146
3147 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3148
3149         * solib-svr4.c (read_program_headers_from_bfd): Return
3150         gdb::optional<gdb::byte_vector>.
3151         (svr4_exec_displacement): Adjust.
3152
3153 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3154
3155         * solib-svr4.c (read_program_header): Return
3156         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3157         (find_program_interpreter): Return
3158         gdb::optional<gdb::byte_vector>.
3159         (scan_dyntag_auxv): Adjust.
3160         (enable_break): Adjust.
3161         (svr4_exec_displacement): Adjust.
3162
3163 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3164
3165         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3166         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3167
3168 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3169
3170         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3171         string_vprintf.
3172         * guile/scm-utils.c (gdbscm_printf): Likewise.
3173         * serial.c (serial_printf): Likewise.
3174         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3175
3176 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3177
3178         * stack.c (print_frame): Print frame architecture when printing on
3179         an MI output.
3180         * NEWS: Mention new "arch" attribute in frame output.
3181
3182 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3183
3184         * arch/aarch64.h (aarch64_regnum): Update comment.
3185
3186 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3187
3188         * NEWS: Add SVE to 8.2 section.
3189
3190 2018-08-21  Pedro Alves  <palves@redhat.com>
3191
3192         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3193         out from gdbscm_parse_function_args.
3194         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3195         gdbscm_parse_function_args_1.
3196
3197 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3198
3199         PR gdb/17816
3200         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3201         operator.
3202
3203 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3204
3205         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3206
3207 2018-08-19  Michael Spang  <spang@google.com>
3208
3209         PR gdb/11786
3210         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3211         for PT_TLS segments.
3212
3213 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3214
3215         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3216         dwarf_variable_value.
3217         * dwarf2-frame.c (class dwarf_expr_executor):
3218         Add override for dwarf_variable_value.
3219         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3220         (class symbol_needs_eval_context): Likewise.
3221         (indirect_synthetic_pointer): Add forward declaration.
3222         (sect_variable_value): New function.
3223         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3224         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3225         for DW_OP_GNU_variable_value.
3226
3227 2018-08-16  Tom Tromey  <tom@tromey.com>
3228
3229         * top.c (read_command_file): Update.
3230         (command_line_input): Remove "repeat" argument.
3231         * ada-lang.c (get_selections): Update.
3232         * linespec.c (decode_line_2): Update.
3233         * defs.h (command_line_input): Remove argument.
3234         * cli/cli-script.c (read_next_line): Update.
3235         * python/py-gdb-readline.c: Update.
3236
3237 2018-08-17  Tom Tromey  <tom@tromey.com>
3238
3239         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3240         command_line_input.
3241
3242 2018-08-15  Tom Tromey  <tom@tromey.com>
3243
3244         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3245
3246 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3247
3248         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3249         If used, use find_pc_partial_function to find address range
3250         to disassemble.
3251         * mi/mi-main.c (mi_cmd_list_features): Report
3252         "data-disassemble-a-option" feature.
3253         * NEWS: Mention new -data-disassemble option -a.
3254
3255 2018-08-13  Tom Tromey  <tom@tromey.com>
3256
3257         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3258
3259 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3260
3261         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3262         (aarch64_linux_collect_sve_regset): Likewise.
3263         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3264         * regcache.h (regcache_map_entry_size): New function.
3265
3266 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3267
3268         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3269         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3270         (SVE_HEADER_VL_LENGTH): Likewise.
3271         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3272         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3273         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3274         (SVE_HEADER_SIZE_OFFSET): Likewise.
3275         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3276         (SVE_HEADER_VL_OFFSET): Likewise.
3277         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3278         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3279         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3280         (SVE_HEADER_SIZE): Likewise.
3281         (aarch64_linux_core_read_vq): Add function.
3282         (aarch64_linux_core_read_description): Check for SVE section.
3283
3284 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3285
3286         * aarch64-fbsd-tdep.c
3287         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3288         collect_size.
3289         * aarch64-linux-tdep.c
3290         (aarch64_linux_iterate_over_regset_sections): Likewise.
3291         * alpha-linux-tdep.c
3292         (alpha_linux_iterate_over_regset_sections):
3293         * alpha-nbsd-tdep.c
3294         (alphanbsd_iterate_over_regset_sections): Likewise.
3295         * amd64-fbsd-tdep.c
3296         (amd64fbsd_iterate_over_regset_sections): Likewise.
3297         * amd64-linux-tdep.c
3298         (amd64_linux_iterate_over_regset_sections): Likewise.
3299         * arm-bsd-tdep.c
3300         (armbsd_iterate_over_regset_sections): Likewise.
3301         * arm-fbsd-tdep.c
3302         (arm_fbsd_iterate_over_regset_sections): Likewise.
3303         * arm-linux-tdep.c
3304         (arm_linux_iterate_over_regset_sections): Likewise.
3305         * corelow.c (get_core_registers_cb): Likewise.
3306         (core_target::fetch_registers): Likewise.
3307         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3308         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3309         * gdbarch.h (void): Regenerate.
3310         * gdbarch.sh: Add supply_size and collect_size.
3311         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3312         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3313         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3314         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3315         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3316         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3317         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3318         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3319         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3320         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3321         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3322         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3323         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3324         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3325         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3326         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3327         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3328         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3329         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3330         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3331         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3332         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3333         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3334         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3335         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3336         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3337         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3338         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3339         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3340         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3341
3342 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3343
3344         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3345         with string_printf.
3346
3347 2018-08-10  Keith Seitz  <keiths@redhat.com>
3348
3349         * compile/compile-c-support.c (add_code_header, add_code_footer):
3350         Move into policy class.
3351         (c_push_user_expression, pop_user_expression_nop)
3352         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3353         (compile_program): New host class.
3354         (c_compile_program): New typedef.
3355         (c_compute_porgram): Use c_compile_program.
3356
3357 2018-08-10  Keith Seitz  <keiths@redhat.com>
3358
3359         * compile/compile-internal.h (compile_instance::~compile_instance):
3360         Remove calls to htab_delete.
3361         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3362         * compile.c (compile_instance::compile_instance): Initialize
3363         htab unique pointers.
3364         (compile_instance::get_cached_type, compile_instance::insert_type)
3365         (compile_instance::error_symbol_once): Update for unique_ptr.
3366
3367 2018-08-10  Keith Seitz  <keiths@redhat.com>
3368
3369         * compile/compile-c-symbols.c (struct symbol_error)
3370         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3371         (compile_instance::insert_symbol_error)
3372         (compile_instance::error_symbol_once): Move to ...
3373         * compile/compile.c: ... here.
3374
3375 2018-08-10  Keith Seitz  <keiths@redhat.com>
3376
3377         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3378         instead of `new_compile_instance'.
3379         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3380         Update description.
3381         If the symbol error map is not initialized, create it.
3382         (generate_c_for_for_one_symbol): Do not check/initialize
3383         the symbol error map.
3384         * compile/compile-c-types.c (compile_c_instance): Make a class.
3385         Update all callers.
3386         (compile_instance::compile_instance): Initialize the type cache.
3387         (get_cached_type): New function.
3388         (insert_type): Update description.
3389         (compile_c_instance::m_default_cflags): Define.
3390         (convert_type): Update description.  Use get_cached_type.
3391         (delete_instance): Moved to destructor.
3392         (new_compile_instance): Moved to constructor.
3393         * compile/compile-c.h (compile_c_instance): Make class inheriting
3394         from compile_instance.
3395         <base>: Remove field.
3396         <type_map, symbol_err_map>: Move to base class.
3397         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3398         * compile/compile-internal.h (compile_instance): Make class.
3399         <type_map_t, symbol_err_map_t>: Define.
3400         <fe>: Rename to `m_gcc_fe'.
3401         <scope, block, gcc_target_options>: Add `m_' prefix.
3402         <m_type_map, m_symbol_err_map>: New fields, moved from
3403         compile_c_instance.
3404         <destroy>: Remove.
3405         (convert_type, new_compile_instance): Remove.
3406         * compile/compile.c (cleanup_compile_instance): Remove.
3407         (compile_to_object): Use unique_ptr to eliminate cleanups.
3408         (compile_instance::set_print_callback, compile_instance::version)
3409         (compile_instance::set_verbose)
3410         (compile_instance::set_driver_filename)
3411         (compile_instance::set_triplet_regexp)
3412         (compile_instance::set_arguments)
3413         (compile_instance::set_source_file)
3414         (compile_instance::compile): Define.
3415
3416 2018-08-10  Keith Seitz  <keiths@redhat.com>
3417
3418         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3419         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3420         gcc-c-fe.def to define C plugin.
3421         (delete_instance): Delete `c_plugin'.
3422         (new_compile_instance): Initialize `c_plugin'.
3423         * compile/compile-c.h: Include gcc_c_plugin.h.
3424         (struct compile_c_instance) <c_plugin>: New member.
3425         * gcc-c-plugin.h: New file.
3426         Update all callers with API change.
3427
3428 2018-08-10  Keith Seitz  <keiths@redhat.com>
3429
3430         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3431         (HFILES_NO_SRCDIR): ... to here.
3432         Add compile-internal.h and compile-c.h.
3433         * compile/compile-c-support.c: Include compile-c.h.
3434         * compile/compile-c-symbols.c: Include compile-c.h.
3435         (generate_c_for_variable_locations): Update comment.
3436         * compile/compile-c-types.c: Include compile-c.h.
3437         * compile/compile-c.h: New file -- moved C language declarations
3438         from other files here.
3439         * compile/compile-internal.h: Do not include hashtab.h or
3440         common/enum-flags.h.
3441         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3442         (gcc_convert_symbol, gcc_symbol_address)
3443         (generate_c_for_variable_locations, c_get_mode_for_size)
3444         (c_get_range_decl_name): Definitions moved to compile-c.h.
3445         * compile/compile-loc2c.c: Include compile-c.h.
3446
3447 2018-08-10  Keith Seitz  <keiths@redhat.com>
3448
3449         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3450         (c_symbol_substitution_name): ... this.
3451         Update all callers.
3452
3453 2018-08-10  Keith Seitz  <keiths@redhat.com>
3454
3455         * compile/compile-c-support.c (c_compute_program): Use
3456         unique_xmalloc_ptr to eliminate cleanup.
3457         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3458         Return a unique_xmalloc_ptr and eliminate cleanup.
3459         * compile/compile-internal.h (generate_c_for_variable_locations):
3460         Return unique_xmalloc_ptr and update description.
3461
3462 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3463
3464         * corelow.c (core_target::get_core_register_section): Rename
3465         min_size to section_min_size.
3466
3467 2018-08-09  Jim Wilson  <jimw@sifive.com>
3468
3469         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3470         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3471         * NEWS: Mention new GNU/Linux RISC-V target.
3472         * configure.host: Add riscv*-*-linux*.
3473         * configure.nat: Add riscv*.
3474         * configure.tgt: Add riscv*-*-linux*.
3475         * riscv-linux-nat.c: New file.
3476         * riscv-linux-tdep.c: New file.
3477
3478 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3479
3480         * infrun.c (resume): Make static, add forward declaration.
3481         (proceed): Update header comment.
3482         * infrun.h (resume): Delete declaration.
3483
3484 2018-08-09  Tom Tromey  <tom@tromey.com>
3485
3486         * riscv-tdep.h: Minor formatting fixes.
3487
3488 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3489
3490         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3491         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3492         (test_mkdir_recursive): Likewise.
3493         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3494
3495 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3496
3497         * valarith.c (value_subscripted_rvalue): If an array is not in
3498         memory, and we don't know the upper bound, then we can't know that
3499         the requested element exists or not.
3500
3501 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3502
3503         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3504         (target_options_to_string): Add comment.
3505
3506 2018-08-08  Tom Tromey  <tom@tromey.com>
3507
3508         * unittests/scoped_mmap-selftests.c: Check result of "write".
3509
3510 2018-08-08  Jim Wilson  <jimw@sifive.com>
3511
3512         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3513         (decode_register_index_short): New.
3514         (decode_j_type_insn, decode_cj_type_insn): New.
3515         (decode_b_type_insn, decode_cb_type_insn): New.
3516         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3517         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3518         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3519         is_c_sw_insn instead of is_sw_insn.
3520         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3521         (riscv_software_single_step): New.
3522         * riscv-tdep.h (riscv_software_single_step): Declare.
3523
3524         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3525         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3526
3527 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3528
3529         PR gdb/18050:
3530         * target.c (dispose_inferior): Don't dispose of inferiors that are
3531         already killed.
3532
3533 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3534
3535         * remote.c (remote_target::download_tracepoint): Change char* to
3536         const char*.
3537
3538 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3539
3540         * target.h (target_options_to_string): Return an std::string.
3541         * target.c (str_comma_list_concat_elem): Return void, use
3542         std::string.
3543         (do_option): Likewise.
3544         (target_options_to_string): Return an std::string.
3545         * linux-nat.c (linux_nat_target::wait): Adjust.
3546         * target-debug.h (target_debug_print_options): Adjust.
3547
3548 2018-08-07  Tom Tromey  <tom@tromey.com>
3549
3550         * Makefile.in (CPPFLAGS): New variable.
3551         (INTERNAL_CPPFLAGS): Use it.
3552
3553 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3554
3555         * NEWS: Mention the index cache.
3556
3557 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3558
3559         * common/pathstuff.h (get_standard_cache_dir): New.
3560         * common/pathstuff.c (get_standard_cache_dir): New.
3561         * build-id.h (build_id_to_string): New.
3562         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
3563         DEBUG_STR_SUFFIX): Move to here.
3564         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
3565         DEBUG_STR_SUFFIX): Move from there.
3566         (write_psymtabs_to_index): Make non-static, add basename
3567         parameter.  Write to temporary files, rename when done.
3568         (save_gdb_index_command): Adjust call to
3569         write_psymtabs_to_index.
3570         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
3571         field.
3572         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
3573         (get_gdb_index_contents_from_cache): New.
3574         (get_gdb_index_contents_from_cache_dwz): New.
3575         (dwarf2_initialize_objfile): Read index from cache.
3576         (dwarf2_build_psymtabs): Save to index.
3577         * dwarf-index-cache.h: New file.
3578         * dwarf-index-cache.c: New file.
3579         * dwarf-index-write.h: New file.
3580
3581 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3582
3583         * gnulib/aclocal.m4: Re-generate.
3584         * gnulib/config.in: Re-generate.
3585         * gnulib/configure: Re-generate.
3586         * gnulib/import/Makefile.am: Re-generate.
3587         * gnulib/import/Makefile.in: Re-generate.
3588         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3589         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3590         * gnulib/import/m4/mkdir.m4: New file.
3591         * gnulib/import/mkdir.c: New file.
3592         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
3593         module.
3594
3595 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3596
3597         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
3598         * common/scoped_mmap.c: New file.
3599         * common/scoped_mmap.h (destroy): New method.
3600         (~scoped_mmap, reset): Use destroy.
3601         (scoped_mmap): New move constructor.
3602         (mmap_file): New declaration.
3603         * unittests/scoped_mmap-selftests.c (test_normal,
3604         test_invalid_filename, run_tests): New functions.
3605         (_initialize_scoped_mmap_selftests): Register selftest.
3606
3607 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3608
3609         * dwarf2read.c (read_gdb_index_from_section): Rename to...
3610         (read_gdb_index_from_buffer): ... this.  Remove section
3611         parameter, add buffer parameter.
3612         (get_gdb_index_contents_ftype,
3613         get_gdb_index_contents_dwz_ftype): New typedefs.
3614         (dwarf2_read_gdb_index): Add callback parameters to get the
3615         index contents.
3616         (get_gdb_index_contents_from_section): New.
3617         (dwarf2_initialize_objfile): Update call to
3618         dwarf2_read_gdb_index.
3619
3620 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3621
3622         * common/filestuff.h (gdb_fopen_cloexec): New overload.
3623         (gdb_open_cloexec): Likewise.
3624         * nat/linux-osdata.c (command_from_pid): Use string_printf.
3625         (commandline_from_pid): Likewise.
3626         (linux_xfer_osdata_threads): Likewise.
3627         (linux_xfer_osdata_fds): Likewise.
3628         * ada-lang.c (is_package_name): Likewise.
3629         * auxv.c (procfs_xfer_auxv): Likewise.
3630         * breakpoint.c (print_one_breakpoint_location): Use
3631         uiout::field_fmt.
3632         (print_one_catch_solib): Use string_printf.
3633         * coff-pe-read.c (add_pe_exported_sym): Likewise.
3634         (add_pe_forwarded_sym): Likewise.
3635         * dwarf2read.c (create_type_unit_group): Likewise.
3636         (build_error_marker_type): Likewise.
3637         * infcall.c (get_function_name): Likewise.
3638         * valprint.c (print_converted_chars_to_obstack): Likewise.
3639         * xtensa-tdep.c (xtensa_register_type): Likewise.
3640
3641 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
3642
3643         * remote.c (remote_target::download_tracepoint): Fix format
3644         string errors.
3645
3646 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3647
3648         * tracefile.c: Include common/byte-vector.h.
3649         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
3650         with trace_regblock_size if needed.  Update uses of buf.
3651
3652 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3653
3654         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
3655         std::vector<unsigned char>.
3656         * tracepoint.c (collection_list::collection_list): Remove
3657         m_regs_mask initializer from initializer list.  Resize
3658         m_regs_mask using the largest remote register number.
3659         (collection_list::add_remote_register): Remove size check on
3660         m_regs_mask.  Use at to access element.
3661         (collection_list::stringify): Change type of temp_buf to
3662         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
3663         stringify the register mask.  Use pack_hex_byte for the register
3664         mask.
3665
3666 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3667
3668         * tracepoint.h (class collection_list) <add_register>: Remove.
3669         <add_remote_register, add_ax_registers, add_local_register>:
3670         Declare.
3671         <add_memrange>: Add scope parameter.
3672         * tracepoint.c (encode_actions_1): Likewise.
3673         (collection_list::add_register): Rename to ...
3674         (collection_list::add_remote_register): ... this.  Update
3675         comment.
3676         (collection_list::add_ax_registers, add_local_register): New
3677         methods.
3678         (collection_list::add_memrange): Add scope parameter.  Call
3679         add_local_register instead of add_register.
3680         (finalize_tracepoint_aexpr): New function.
3681         (collection_list::collect_symbol): Update calls to add_memrange.
3682         Call add_local_register instead of add_register.  Call
3683         add_ax_registers.  Call finalize_tracepoint_aexpr.
3684         (encode_actions_1): Get remote regnos for $reg action.  Call
3685         add_remote_register, add_ax_registers, and add_local_register.
3686         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
3687         (validate_actionline): Call finalize_tracepoint_aexpr.
3688
3689 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3690
3691         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
3692         Replace array buf with gdb::char_vector buf, of size
3693         get_remote_packet_size ().  Replace references to buf and
3694         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
3695         and xsnprintf with snprintf.  Raise errors if the buffer is too
3696         small.
3697
3698 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3699
3700         * remote.c (remote_target::download_tracepoint): Fix the has_more
3701         predicate in the QTDP action list iteration.
3702
3703 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3704
3705         * remote.c (remote_target::download_tracepoint): Fix indentation
3706         in for block.
3707
3708 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3709
3710         * proc-api.c (_initialize_proc_api): Remove c, unused.
3711         * procfs.c (procfs_init_inferior): Remove signals, unused.
3712         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
3713         unused.
3714
3715 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
3716             Andrew Burgess  <andrew.burgess@embecosm.com>
3717
3718         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
3719         'W_STOPCODE (0)' as this could be ambiguous.
3720
3721 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
3722
3723         * ser-tcp.c (net_open): Fix thinko when deciding whether to
3724         disable TCP's Nagle algorithm (use "ai_protocol" instead of
3725         "ai_socktype").
3726
3727 2018-08-02  Tom Tromey  <tom@tromey.com>
3728
3729         PR symtab/16842.
3730         * dwarf2read.c (read_func_scope): Set symtab on template parameter
3731         symbols.
3732         (process_structure_scope): Likewise.
3733
3734 2018-08-02  Xavier Roirand  <roirand@adacore.com>
3735
3736         PR gdb/22629:
3737         * darwin-nat.c (darwin_kill_inferior): Fix handling of
3738         kill inferior.
3739
3740 2018-08-02  Tom Tromey  <tom@tromey.com>
3741
3742         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
3743         (darwin_suspend_inferior, darwin_resume_inferior)
3744         (darwin_decode_notify_message, darwin_resume_inferior_threads)
3745         (darwin_check_new_threads): Check result of get_darwin_inferior.
3746
3747 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
3748
3749         GDB 8.1.1 released.
3750
3751 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
3752
3753         * varobj.c (varobj_get_path_expr_parent): Report an error if
3754         parent is a dynamic varobj.
3755
3756 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3757
3758         * gnulib/aclocal.m4: Re-generate.
3759         * gnulib/config.in: Re-generate.
3760         * gnulib/configure: Re-generate.
3761         * gnulib/import/Makefile.in: Re-generate.
3762         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3763         * gnulib/import/m4/onceonly.m4: Re-generate.
3764
3765 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3766
3767         * target-descriptions.c (struct xml_test_tdesc): New.
3768         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
3769         (record_xml_tdesc): Update.
3770         (maintenance_check_xml_descriptions): Update.
3771         * target-descriptions.h (record_xml_tdesc): Update comment.
3772
3773 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3774
3775         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
3776         checking array bounds are defined.
3777
3778 2018-07-30  Tom Tromey  <tom@tromey.com>
3779
3780         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
3781         irreflexivity violation.
3782
3783 2018-07-30  Tom Tromey  <tom@tromey.com>
3784
3785         * cli/cli-decode.c (lookup_cmd): Remove lint code.
3786         * value.c (unpack_long): Remove lint code.
3787         * valops.c (value_ind): Remove lint code.
3788         * valarith.c (value_x_binop, value_x_unop, value_equal)
3789         (value_pos): Remove lint code.
3790
3791 2018-07-28  Tom de Vries  <tdevries@suse.de>
3792
3793         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
3794         with undefined upper bound as <optimized out>.
3795
3796 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
3797
3798         * gcore.in: Rename variable "name" to "prefix".  Expand
3799         "usage" text.
3800
3801 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
3802
3803         * windows-nat.c (windows_nat_target::create_inferior): Update to
3804         call close() in global namespace.
3805
3806 2018-07-26  Tom Tromey  <tom@tromey.com>
3807
3808         * dwarf-index-write.c (add_address_entry): Don't add objfile
3809         offsets.
3810         * dbxread.c (find_stab_function): Rename from
3811         find_stab_function_addr.  Return a bound_minimal_symbol.
3812         (read_dbx_symtab): Use raw_text_low, raw_text_high.
3813         Don't add objfile offsets.
3814         (end_psymtab): Use raw_text_low, raw_text_high,
3815         MSYMBOL_VALUE_RAW_ADDRESS.
3816         (read_ofile_symtab): Update.
3817         (process_one_symbol): Update.
3818         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
3819         offsets.
3820         (dw2_relocate): Remove.
3821         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
3822         searching addrmap.
3823         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
3824         Update.
3825         (process_psymtab_comp_unit_reader, add_partial_symbol)
3826         (add_partial_subprogram, dwarf2_ranges_read): Update.
3827         (load_partial_dies): Update.
3828         (add_address_entry): Don't add objfile offsets.
3829         (dwarf2_build_include_psymtabs): Update.
3830         (create_addrmap_from_aranges): Don't add objfile offsets.
3831         (dw2_find_pc_sect_compunit_symtab): Update.
3832         * mdebugread.c (parse_symbol): Don't add objfile offsets.
3833         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
3834         Update.
3835         (parse_partial_symbols): Don't add objfile offsets.  Use
3836         raw_text_low, raw_text_high.  Update.
3837         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
3838         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
3839         or call 'relocate' quick function.  Clear psymbol_map.
3840         * psympriv.h (struct partial_symbol) <address>: Add section
3841         offset.
3842         <set_unrelocated_address>: Rename from set_address.
3843         <raw_text_low, raw_text_high>: New methods.
3844         <text_low, text_high>: Add objfile parameter.
3845         (add_psymbol_to_bcache): Add 'section' parameter.  Call
3846         set_unrelocated_address.
3847         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3848         (find_pc_psymbol): Update.
3849         (fixup_psymbol_section, relocate_psymtabs): Remove.
3850         (dump_psymtab, psym_functions): Update.
3851         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
3852         parameter.
3853         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
3854         (start_psymtab_common): Update.
3855         * symfile-debug.c (debug_qf_relocate): Remove.
3856         (debug_sym_quick_functions): Update.
3857         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
3858         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
3859         Update.
3860
3861 2018-07-26  Tom Tromey  <tromey@redhat.com>
3862
3863         * dbxread.c (end_psymtab): Use text_high_valid and
3864         text_low_valid.
3865         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
3866         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
3867         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3868         Update comment.
3869         <text_low_valid, text_high_valid>: New fields.
3870         <set_text_low, set_text_high>: Update.
3871         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
3872
3873 2018-07-26  Tom Tromey  <tom@tromey.com>
3874
3875         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
3876         Update.
3877         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
3878         textlow and texthigh fields.
3879         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
3880         Update.
3881         * mdebugread.c (parse_lines, parse_partial_symbols)
3882         (psymtab_to_symtab_1): Update.
3883         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3884         Rename fields.  Update comment.  Now private.
3885         <text_low, text_high, set_text_low, set_text_high>: New methods.
3886         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3887         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
3888         (start_psymtab_common, maintenance_info_psymtabs)
3889         (maintenance_check_psymtabs): Update.
3890         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
3891         texthigh fields.
3892         (scan_xcoff_symtab): Update.
3893
3894 2018-07-26  Tom Tromey  <tromey@redhat.com>
3895
3896         * psympriv.h (struct partial_symbol) <unrelocated_address,
3897         address, set_address>: New methods.
3898         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
3899         (fixup_psymbol_section, relocate_psymtabs): Update.
3900         (print_partial_symbols): Add 'objfile' parameter.  Update.
3901         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
3902         Update.
3903
3904 2018-07-26  Tom Tromey  <tom@tromey.com>
3905
3906         * dwarf-index-write.c (write_psymbols, debug_names::insert)
3907         (debug_names::write_psymbols): Update.
3908         * psympriv.h (struct partial_symbol): Derive from
3909         general_symbol_info.
3910         <obj_section>: New method.
3911         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
3912         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3913         (find_pc_sect_psymbol, fixup_psymbol_section)
3914         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
3915         (print_partial_symbols, recursively_search_psymtabs)
3916         (compare_psymbols, psymbol_hash, psymbol_compare)
3917         (add_psymbol_to_bcache, maintenance_check_psymtabs)
3918         (psymbol_name_matches, psym_fill_psymbol_map): Update.
3919
3920 2018-07-26  Tom Tromey  <tromey@redhat.com>
3921
3922         * dbxread.c (end_psymtab): Remove dead code.
3923
3924 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
3925
3926         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
3927         DWARF unwinders are disabled.
3928         * dwarf2-frame.c: Add dwarf2read.h include.
3929         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
3930         disabled.
3931         (dwarf2_frame_unwinders_enabled_p): Define.
3932         (show_dwarf_unwinders_enabled_p): New function.
3933         (_initialize_dwarf2_frame): Register switch to control DWARF
3934         unwinder use.
3935         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
3936         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
3937         (show_dwarf_cmdlist): Remove static keyword.
3938         * dwarf2read.h (set_dwarf_cmdlist): Declare.
3939         (show_dwarf_cmdlist): Declare.
3940         * NEWS: Document new feature.
3941
3942 2018-07-26  Tom de Vries  <tdevries@suse.de>
3943
3944         PR breakpoints/23366
3945         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
3946
3947 2018-07-26  Tom de Vries  <tdevries@suse.de>
3948
3949         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
3950         DW_AT_count can't be translated to a dynamic prop.
3951
3952 2018-07-25  Tom de Vries  <tdevries@suse.de>
3953
3954         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
3955         try/catch.
3956
3957 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
3958
3959         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
3960
3961 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
3962
3963         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
3964
3965 2018-07-24  Keith Seitz  <keiths@redhat.comt
3966
3967         PR symtab/23010
3968         * dwarf2read.c (dw2_add_symbol_to_list): New function.
3969         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
3970         instead of add_symbol_to_list.
3971         (read_file_scope): Call prepare_one_comp_unit before reading
3972         any other DIEs.
3973
3974 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
3975
3976         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
3977
3978 2018-07-24  Tom Tromey  <tom@tromey.com>
3979
3980         * utils.c (malloc, realloc, free): Don't declare.
3981         * configure, config.in: Rebuild.
3982         * configure.ac: Don't check for declarations of free, malloc, or
3983         realloc.
3984
3985 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3986
3987         * aarch64-linux-nat.c
3988         (aarch64_linux_nat_target::stopped_data_address): Remove unused
3989         variable.
3990         * arm-linux-nat.c (fetch_regs): Likewise.
3991         (store_regs): Likewise.
3992         (fetch_vfp_regs): Likewise.
3993         (store_vfp_regs): Likewise.
3994         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
3995         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
3996         (arm_linux_nat_target::insert_watchpoint): Likewise.
3997         (arm_linux_nat_target::remove_watchpoint): Likewise.
3998         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
3999         Likewise.
4000         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4001         Likewise.
4002         * ppc-linux-nat.c (fetch_register): Likewise.
4003         (fetch_all_gp_regs): Likewise.
4004         (fetch_ppc_registers): Likewise.
4005         (store_all_gp_regs): Likewise.
4006         (store_ppc_registers): Likewise.
4007         (hwdebug_insert_point): Likewise.
4008         (can_use_watchpoint_cond_accel): Likewise.
4009         * remote-sim.c (gdb_os_write_stdout): Likewise.
4010
4011 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4012             Tom Tromey  <tom@tromey.com>
4013
4014         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4015         test for it.
4016         * configure: Rebuild.
4017
4018 2018-07-22  Tom Tromey  <tom@tromey.com>
4019
4020         * regformats/regdat.sh: Define xmltarget_${name} inside
4021         #ifndef IN_PROCESS_AGENT.
4022
4023 2018-07-22  Tom Tromey  <tom@tromey.com>
4024
4025         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4026
4027 2018-07-22  Tom Tromey  <tom@tromey.com>
4028
4029         * symfile.c (reread_symbols): Notify iter, not objfile.
4030
4031 2018-07-22  Tom Tromey  <tom@tromey.com>
4032
4033         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4034         Use arch_ops.
4035         (ravenscar_thread_target::prepare_to_store): Likewise.
4036
4037 2018-07-22  Tom Tromey  <tom@tromey.com>
4038
4039         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4040         unused variable.  Call value_fetch_lazy when needed.
4041         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4042         Remove unused variable.  Call value_fetch_lazy when needed.
4043
4044 2018-07-22  Tom Tromey  <tom@tromey.com>
4045
4046         * m32c-tdep.c (mark_dma): Return void.
4047         (make_regs): Remove unused declarations.
4048
4049 2018-07-22  Tom Tromey  <tom@tromey.com>
4050
4051         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4052         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4053         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4054         bkscm_get_valid_block_smob_arg_unsafe for effect.
4055
4056 2018-07-22  Tom Tromey  <tom@tromey.com>
4057
4058         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4059         value_type.
4060
4061 2018-07-22  Tom Tromey  <tom@tromey.com>
4062
4063         * windows-nat.c (saved_context): Conditionally define.
4064         * remote.c (remote_target::remote_btrace_maybe_reopen):
4065         Conditionally declare "warned".
4066         * inflow.c (sigquit_ours): Conditionally define.
4067         (new_tty): Move "tty" declaration inside #if.
4068         * guile/guile.c (guile_datadir): Conditionally define.
4069         * charset.c (set_be_le_names): Move some declarations inside #if.
4070         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4071         #if.
4072         (parse_xml_btrace_conf): Likewise.
4073
4074 2018-07-22  Tom Tromey  <tom@tromey.com>
4075
4076         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4077
4078 2018-07-22  Tom Tromey  <tom@tromey.com>
4079
4080         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4081         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4082         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4083         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4084         * stack.c (frame_apply_level_command): Remove unused variable.
4085         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4086         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4087         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4088         unused variable.
4089         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4090         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4091         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4092         variable.
4093         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4094         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4095         variable.
4096         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4097         Remove unused variable.
4098         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4099         variable.
4100         * common/tdesc.c (print_xml_feature::visit): Remove unused
4101         variable.
4102         * compile/compile-object-load.c (store_regs): Remove unused
4103         variables.
4104         * complaints.c (clear_complaints): Remove unused variable.
4105         * corelow.c (core_target_open): Remove unused variable.
4106         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4107         variable.
4108         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4109         variable.
4110         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4111         variable.
4112         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4113         variable.
4114         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4115         variable.
4116         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4117         variable.
4118         * ia64-tdep.c (examine_prologue): Remove unused variable.
4119         * infcall.c (run_inferior_call): Remove unused variable.
4120         * inferior.c (exit_inferior): Remove unused variable.
4121         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4122         * linespec.c (decode_line_2): Remove unused variable.
4123         * linux-nat.c (super_close): Remove.
4124         * linux-tdep.c (linux_info_proc): Remove unused variable.
4125         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4126         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4127         Remove unused variable.
4128         * parse.c (find_minsym_type_and_address): Remove unused variable.
4129         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4130         variable.
4131         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4132         variable.
4133         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4134         variables.
4135         * record-btrace.c (record_btrace_target::store_registers): Remove
4136         unused variable.
4137         (cmd_show_record_btrace_cpu): Remove unused variable.
4138         * riscv-tdep.c (riscv_register_reggroup_p)
4139         (riscv_push_dummy_call, riscv_return_value): Remove unused
4140         variable.
4141         * rust-exp.y (literal): Remove unused variable.
4142         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4143         unused variable.
4144         <STRUCTOP_ANONYMOUS>: Likewise.
4145         * s390-linux-tdep.c (s390_linux_init_abi_31)
4146         (s390_linux_init_abi_64): Remove unused variable.
4147         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4148         (file_select_thread, net_windows_open, _initialize_ser_windows):
4149         Remove unused variables.
4150         * symtab.c (find_pc_sect_line): Remove unused variable.
4151         * target-memory.c (compute_garbled_blocks): Remove unused
4152         variable.
4153         (target_write_memory_blocks): Remove unused variable.
4154         * target.c (target_stack::unpush): Remove unused variables.
4155         * tracepoint.c (start_tracing, all_tracepoint_actions)
4156         (merge_uploaded_trace_state_variables)
4157         (print_one_static_tracepoint_marker): Remove unused variable.
4158         * unittests/basic_string_view/element_access/char/1.cc (test01):
4159         Remove unused variable.
4160         * windows-nat.c (windows_continue, windows_add_all_dlls)
4161         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4162         Remove unused variables.
4163
4164 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4165
4166         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4167         attr_profile in HAVE_ELF.
4168         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4169         HAVE_ELF.
4170
4171 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4172
4173         * frame.c (frame_register_unwind): Change parameter name.
4174         (frame_unwind_register): Likewise.
4175         (frame_unwind_register_value): Likewise.
4176         (frame_unwind_register_signed): Likewise.
4177         (frame_unwind_register_unsigned): Likewise.
4178         * frame.h (frame_register_unwind): Likewise.
4179         (frame_unwind_register): Likewise.
4180         (frame_unwind_register_value): Likewise.
4181         (frame_unwind_register_signed): Likewise.
4182         (frame_unwind_register_unsigned): Likewise.
4183         (frame_unwind_arch): Likewise.
4184
4185 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4186
4187         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4188         ISA maintenance.
4189
4190 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4191
4192         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4193         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4194         hand.
4195
4196 2018-07-20  Keith Seitz  <keiths@redhat.com>
4197
4198         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4199         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4200         m_compunit_symtab, m_language>: Add "m_" prefix.
4201         Update all uses.
4202         * buildsym.c: Update all uses.
4203
4204 2018-07-20  Tom Tromey  <tom@tromey.com>
4205
4206         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4207         * buildsym.h (record_line_ftype): Remove typedef.
4208
4209 2018-07-20  Tom Tromey  <tom@tromey.com>
4210
4211         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4212         (end_expandable_symtab): Likewise.
4213         (end_symtab_get_static_block): Likewise.
4214         (end_symtab_from_static_block): Likewise.
4215         * buildsym-legacy.c (augment_type_symtab): Remove.
4216         (end_expandable_symtab): Remove.
4217         (end_symtab_get_static_block): Remove.
4218         (end_symtab_from_static_block): Remove.
4219
4220 2018-07-20  Tom Tromey  <tom@tromey.com>
4221
4222         * dwarf2read.c: Include buildsym.h.
4223         (struct dwarf2_cu) <builder>: New method.
4224         (fixup_go_packaging): Update.
4225         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4226         use scoped_free_pendings.
4227         (using_directives): Add "cu" parameter, remove "language".
4228         (read_import_statement, setup_type_unit_groups, )
4229         (read_func_scope, read_lexical_block_scope)
4230         (dwarf2_record_block_ranges, read_namespace): Update.
4231         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4232         (lnp_state_machine::handle_end_sequence): Update.
4233         (class lnp_state_machine) <m_cu>: New member.
4234         <m_record_line_callback>: Remove.
4235         <m_currently_recording_lines>: New member.
4236         (lnp_state_machine::handle_set_file): Update.
4237         (noop_record_line): Remove.
4238         (dwarf_record_line_p): Add cu parameter.
4239         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4240         (lnp_state_machine::record_line)
4241         (lnp_state_machine::lnp_state_machine)
4242         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4243         (dwarf_decode_lines): Update.
4244         (dwarf2_start_subfile): Add cu parameter.
4245         (dwarf2_start_symtab, new_symbol): Update.
4246         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4247         Remove dwarf2_per_objfile parameter.
4248         (dwarf_decode_macros): Update.
4249
4250 2018-07-20  Tom Tromey  <tom@tromey.com>
4251
4252         * stabsread.c (define_symbol): Update.
4253         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4254         * dwarf2read.c (new_symbol): Update.
4255         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4256         * cp-namespace.c: Include buildsym.h.
4257         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4258         * buildsym-legacy.c (get_buildsym_compunit): New function.
4259
4260 2018-07-20  Tom Tromey  <tom@tromey.com>
4261
4262         * xcoffread.c: Include buildsym-legacy.h.
4263         * windows-nat.c: Include buildsym-legacy.h.
4264         * stabsread.c: Include buildsym-legacy.h.
4265         * mdebugread.c: Include buildsym-legacy.h.
4266         * buildsym-legacy.h: New file.
4267         * buildsym-legacy.c: New file, from buildsym.c.
4268         * go32-nat.c: Include buildsym-legacy.h.
4269         * dwarf2read.c: Include buildsym-legacy.h.
4270         * dbxread.c: Include buildsym-legacy.h.
4271         * cp-namespace.c: Include buildsym-legacy.h.
4272         * coffread.c: Include buildsym-legacy.h.
4273         * buildsym.h: Move some contents to buildsym-legacy.h.
4274         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4275         buildsym-legacy.c.
4276         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4277
4278 2018-07-20  Tom Tromey  <tom@tromey.com>
4279
4280         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4281         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4282         (buildsym_compunit::buildsym_compunit)
4283         (buildsym_compunit::~buildsym_compunit)
4284         (buildsym_compunit::get_macro_table): Define.
4285
4286 2018-07-20  Tom Tromey  <tom@tromey.com>
4287
4288         * buildsym.c (reset_symtab_globals): Remove.
4289         (buildsym_compunit::end_symtab_from_static_block): Update.
4290         (buildsym_compunit::augment_type_symtab): Update.
4291         (end_symtab_from_static_block): Call free_buildsym_compunit.
4292         (augment_type_symtab, end_symtab, end_expandable_symtab):
4293         Likewise.
4294
4295 2018-07-20  Tom Tromey  <tom@tromey.com>
4296
4297         * arch-utils.c: Do not include buildsym.h.
4298         * mipsread.c: Do not include buildsym.h.
4299         * machoread.c: Do not include buildsym.h.
4300         * elfread.c: Do not include buildsym.h.
4301
4302 2018-07-20  Tom Tromey  <tom@tromey.com>
4303
4304         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4305         initialization.
4306         (buildsym_compunit): Add new constructor.
4307         (struct buildsym_compunit) <get_last_source_file, finish_block,
4308         record_block_range, start_subfile, patch_subfile_names,
4309         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4310         set_last_source_start_addr, get_last_source_start_addr,
4311         get_local_using_directives, set_local_using_directives,
4312         get_global_using_directives, outermost_context_p,
4313         get_current_context_stack, get_context_stack_depth,
4314         get_current_subfile, get_local_symbols, get_file_symbols,
4315         get_global_symbols, record_debugformat, record_producer,
4316         push_context, pop_context, end_symtab_get_static_block,
4317         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4318         New public methods.
4319         <record_pending_block, finish_block_internal, make_blockvector,
4320         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4321         private methods.
4322         Update all users.
4323
4324 2018-05-22  Tom Tromey  <tom@tromey.com>
4325
4326         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4327         parameter.
4328         (finish_block_internal): Update.
4329
4330 2018-07-20  Tom Tromey  <tom@tromey.com>
4331
4332         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4333         parameter.
4334         (finish_block_internal): Update.
4335
4336 2018-07-20  Tom Tromey  <tom@tromey.com>
4337
4338         * buildsym.h (EXTERN): Don't define or undef.
4339         * buildsym.c (EXTERN): Don't define.
4340
4341 2018-07-20  Tom Tromey  <tom@tromey.com>
4342
4343         * buildsym.c: Remove TODO comment.
4344
4345 2018-07-20  Tom Tromey  <tom@tromey.com>
4346
4347         * coffread.c (coff_symtab_read): Update.
4348         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4349         (xcoff_new_init): Update.
4350         * mipsread.c (mipscoff_new_init): Update.
4351         * mdebugread.c (mdebug_build_psymtabs): Update.
4352         * elfread.c (elf_new_init): Update.
4353         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4354         Update.
4355         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4356         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4357         (stabsect_build_psymtabs): Update.
4358         * buildsym.h (buildsym_init): Don't declare.
4359         * buildsym.c: Update comment.
4360         (prepare_for_building): Remove.
4361         (start_symtab, restart_symtab): Update.
4362         (reset_symtab_globals): Update comment.
4363         (buildsym_init): Remove.
4364
4365 2018-07-20  Tom Tromey  <tom@tromey.com>
4366
4367         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4368         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4369         (read_enum_type, common_block_start, common_block_end)
4370         (cleanup_undefined_types_1, finish_global_stabs): Update.
4371         * mdebugread.c (psymtab_to_symtab_1): Update.
4372         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4373         (read_lexical_block_scope, new_symbol): Update.
4374         * dbxread.c (process_one_symbol): Update.
4375         * coffread.c (coff_symtab_read, process_coff_symbol)
4376         (coff_read_enum_type): Update.
4377         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4378         declare.
4379         (get_local_symbols, get_file_symbols, get_global_symbols): New
4380         functions.
4381         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4382         m_global_symbols.
4383         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4384         (~scoped_free_pendings): Update.
4385         (finish_block, prepare_for_building, reset_symtab_globals)
4386         (end_symtab_get_static_block, end_symtab_with_blockvector)
4387         (augment_type_symtab, push_context): Update.
4388         (get_local_symbols, get_file_symbols, get_global_symbols): New
4389         functions.
4390         (buildsym_init): Update.
4391
4392 2018-07-20  Tom Tromey  <tom@tromey.com>
4393
4394         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4395         (process_full_type_unit): Likewise.
4396         (dwarf2_start_symtab): Set list_in_scope.
4397
4398 2018-07-20  Tom Tromey  <tom@tromey.com>
4399
4400         * dwarf2read.c (process_psymtab_comp_unit_reader)
4401         (build_type_psymtabs_reader): Do not set list_in_scope.
4402
4403 2018-07-20  Tom Tromey  <tom@tromey.com>
4404
4405         * buildsym.c (free_pendings): Remove.
4406         (add_symbol_to_list, scoped_free_pendings)
4407         (finish_block_internal, buildsym_init): Update.
4408
4409 2018-07-20  Tom Tromey  <tom@tromey.com>
4410
4411         * xcoffread.c (read_xcoff_symtab): Update.
4412         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4413         Update.
4414         * dbxread.c (process_one_symbol): Update.
4415         * coffread.c (coff_symtab_read): Update.
4416         * buildsym.h (finish_block): Update.
4417         * buildsym.c (finish_block): Remove "listhead" argument.
4418         (end_symtab_get_static_block): Update.
4419
4420 2018-07-20  Tom Tromey  <tom@tromey.com>
4421
4422         * buildsym.h (class scoped_free_pendings): Remove constructor.
4423         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4424         method.
4425         <m_pending_block_obstack, m_pending_blocks>: New members.
4426         (pending_block_obstack, pending_blocks): Remove.
4427         (scoped_free_pendings::scoped_free_pendings): Default.
4428         (~scoped_free_pendings): Update.
4429         (free_pending_blocks): Remove.
4430         (finish_block_internal, record_pending_block, make_blockvector)
4431         (end_symtab_get_static_block, augment_type_symtab, push_context)
4432         (buildsym_init): Update.
4433
4434 2018-07-20  Tom Tromey  <tom@tromey.com>
4435
4436         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4437         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4438         members.
4439         (pending_addrmap, pending_addrmap_obstack)
4440         (pending_addrmap_interesting): Remove.
4441         (scoped_free_pendings, record_block_range, make_blockvector)
4442         (prepare_for_building, reset_symtab_globals, buildsym_init):
4443         Update.
4444
4445 2018-07-20  Tom Tromey  <tom@tromey.com>
4446
4447         * xcoffread.c (process_linenos): Update.
4448         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4449         * mdebugread.c (psymtab_to_symtab_1): Update.
4450         * dwarf2read.c (setup_type_unit_groups)
4451         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4452         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4453         * dbxread.c (process_one_symbol): Update.
4454         * coffread.c (coff_symtab_read, enter_linenos)
4455         (process_coff_symbol): Update.
4456         * buildsym.h (current_subfile): Don't declare.
4457         (get_current_subfile): Declare.
4458         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4459         member.
4460         (start_subfile, free_buildsym_compunit, push_subfile)
4461         (prepare_for_building, start_symtab): Update.
4462         (get_current_subfile): New function.
4463
4464 2018-07-20  Tom Tromey  <tom@tromey.com>
4465
4466         * coffread.c (coff_symtab_read): Update.
4467         * xcoffread.c (read_xcoff_symtab): Update.
4468         * dwarf2read.c (new_symbol): Update.
4469         (read_func_scope, read_lexical_block_scope): Update.
4470         * dbxread.c (process_one_symbol): Update.
4471         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4472         (outermost_context_p): Remove macro.
4473         (outermost_context_p, get_current_context_stack)
4474         (get_context_stack_depth): Declare.
4475         (pop_context): Return struct context_stack.
4476         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4477         member.
4478         (context_stack_size): Remove.
4479         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4480         (prepare_for_building, end_symtab_get_static_block)
4481         (augment_type_symtab, push_context): Update.
4482         (pop_context): Return struct context_stack.
4483         (outermost_context_p, get_current_context_stack)
4484         (get_context_stack_depth): New functions.
4485         (buildsym_init): Update.
4486
4487 2018-07-20  Tom Tromey  <tom@tromey.com>
4488
4489         * rust-exp.y: Now a pure parser.  Update all rules.
4490         (%union): Move earlier.
4491         (current_parser, work_obstack): Remove globals.
4492         (rust_parser, ~rust_parser): Update.
4493         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4494         lex_character, lex_number, lex_string, lex_identifier,
4495         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4496         convert_name, convert_params_to_expression,
4497         convert_ast_to_expression, ast_basic_type, ast_operation,
4498         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4499         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4500         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4501         ast_array_type, ast_slice_type, ast_reference_type,
4502         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4503         (rust_parse): Update.
4504         (rustyyerror, rustyylex): Add parser parameter.
4505         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4506         (rust_lex_stringish_test, rust_lex_test_sequence)
4507         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4508         (rust_lex_test_push_back, rust_lex_tests): Update.
4509
4510 2018-07-19  Pedro Alves  <palves@redhat.com>
4511
4512         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4513         gdb::unique_xmalloc_ptr.
4514         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4515         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4516         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4517         copy-initialization.
4518         * guile/scm-pretty-print.c (ppscm_print_children): Use
4519         gdb::unique_xmalloc_ptr instead of cleanups.
4520         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4521         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4522         gdb::unique_xmalloc_ptr.
4523         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4524         Adjust to use gdb::unique_xmalloc_ptr.
4525         * guile/scm-utils.c (extract_arg): Adjust.
4526         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4527         gdb::unique_xmalloc_ptr instead of a cleanup.
4528
4529 2018-07-19  Tom Tromey  <tom@tromey.com>
4530
4531         * utils.c (do_value_free_to_mark)
4532         (make_cleanup_value_free_to_mark): Remove.
4533         * utils.h (make_cleanup_value_free_to_mark): Remove.
4534
4535 2018-07-19  Pedro Alves  <palves@redhat.com>
4536
4537         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4538         forwarding reference.
4539
4540 2018-07-18  Pedro Alves  <palves@redhat.com>
4541
4542         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4543         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4544         cleanup.
4545
4546 2018-07-18  Pedro Alves  <palves@redhat.com>
4547
4548         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4549         exceptions.
4550         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4551         (gdbscm_wrap): New.
4552         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4553         directly instead of a cleanup.
4554         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4555         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
4556         (vlscm_binop_gdbthrow): New, factored out from ...
4557         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
4558         (vlscm_rich_compare): Use gdbscm_wrap.
4559         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
4560         instead of a cleanup.
4561         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
4562         cleanup.
4563         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4564         Use xfree directly instead of a cleanup.
4565         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
4566         Adjust to use gdbscm_wrap and scoped_value_mark.
4567         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
4568         (gdbscm_value_address, gdbscm_value_dereference)
4569         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
4570         scoped_value_mark.
4571         (gdbscm_value_dynamic_type): Use scoped_value_mark.
4572         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
4573         scoped_value_mark.
4574         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
4575         gdbscm_wrap and scoped_value_mark.
4576         (gdbscm_value_to_string): Use xfree directly instead of a
4577         cleanup.  Move 'buffer' unique_ptr to TRY scope.
4578         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
4579         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
4580         scoped_value_mark.
4581         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
4582         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
4583         scoped_value_mark.
4584         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
4585         gdbscm_wrap.
4586
4587 2018-07-18  Tom de Vries  <tdevries@suse.de>
4588
4589         * findvar.c (default_read_var_value): Also resolve dynamic type for
4590         LOC_OPTIMIZED_OUT vars.
4591
4592 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
4593
4594         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
4595         decoding.
4596
4597 2018-07-17  Tom Tromey  <tom@tromey.com>
4598
4599         * guile/scm-param.c (pascm_set_func, pascm_show_func)
4600         (compute_enum_list, pascm_set_param_value_x)
4601         (gdbscm_parameter_value): Update.
4602         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
4603         (gdbscm_scm_to_host_string): Update.
4604         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
4605         Update.
4606         * guile/scm-cmd.c (cmdscm_add_completion): Update.
4607         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
4608         * guile/scm-string.c (gdbscm_scm_to_string): Return
4609         unique_xmalloc_ptr.
4610         (gdbscm_scm_to_host_string): Likewise.
4611
4612 2018-07-17  Tom Tromey  <tom@tromey.com>
4613
4614         * guile/guile.c (gdbscm_eval_from_control_command): Update.
4615         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
4616         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
4617         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
4618         unique_xmalloc_ptr.
4619
4620 2018-07-17  Tom Tromey  <tom@tromey.com>
4621
4622         * guile/scm-param.c (pascm_signal_setshow_error): Update.
4623         * guile/guile-internal.h (gdbscm_exception_message_to_string):
4624         Update.
4625         * guile/scm-cmd.c (cmdscm_function): Update.
4626         * guile/scm-pretty-print.c
4627         (ppscm_print_exception_unless_memory_error): Update.
4628         * guile/scm-exception.c (gdbscm_exception_message_to_string):
4629         Return unique_xmalloc_ptr.
4630
4631 2018-07-17  Tom Tromey  <tom@tromey.com>
4632
4633         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
4634         Use string_printf.
4635
4636 2018-07-17  Jim Wilson  <jimw@sifive.com>
4637
4638         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
4639         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
4640         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
4641         unecessary braces after EF_RISCV_RVC test.  Delete call to
4642         set_gdbarch_decr_pc_after_break.
4643
4644         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
4645         RISCV_LAST_FP_REGNUM + 1.
4646         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
4647
4648 2018-07-17  Tom Tromey  <tom@tromey.com>
4649
4650         * configure.ac: Remove --disable-gdbcli.
4651         * configure: Rebuild.
4652         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
4653         (SUBDIR_CLI_CFLAGS): Remove.
4654         (SFILES): Use SUBDIR_CLI_SRCS.
4655         (COMMON_OBS): Use SUBDIR_CLI_OBS.
4656
4657 2018-07-17  Tom Tromey  <tom@tromey.com>
4658
4659         PR gdb/18624:
4660         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
4661
4662 2018-07-16  Jim Wilson  <jimw@sifive.com>
4663
4664         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
4665
4666 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4667
4668         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
4669         variable.
4670         (libunwind_frame_sniffer): Likewise.
4671         (libunwind_frame_prev_register): Likewise.
4672         (libunwind_sigtramp_frame_sniffer): Likewise.
4673         * ia64-tdep.c (ia64_access_reg): Likewise.
4674         (ia64_access_rse_reg): Likewise.
4675         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
4676         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
4677
4678 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4679
4680         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
4681
4682 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4683
4684         * remote-sim.c (gdbsim_target::close,
4685         gdbsim_target::mourn_inferior): Remove unused variables.
4686
4687 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
4688
4689         * ia64-tdep.c (ktab_buf): New global.
4690         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
4691         (get_kernel_table): Adjust.
4692
4693 2018-07-16  Tom Tromey  <tom@tromey.com>
4694
4695         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
4696         * dwarf2read.c (using_directives, new_symbol): Use
4697         outermost_context_p.
4698         * dbxread.c (process_one_symbol): Use outermost_context_p.
4699         * coffread.c (coff_symtab_read): Use outermost_context_p.
4700
4701 2018-07-16  Tom Tromey  <tom@tromey.com>
4702
4703         * dwarf2read.c (using_directives, read_func_scope)
4704         (read_lexical_block_scope): Update.
4705         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
4706         * buildsym.h (local_using_directives, global_using_directives):
4707         Don't declare.
4708         (get_local_using_directives, set_local_using_directives)
4709         (get_global_using_directives): Declare.
4710         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
4711         m_global_using_directives>: New members.
4712         (finish_block_internal, prepare_for_building)
4713         (reset_symtab_globals, end_symtab_get_static_block)
4714         (push_context): Update.
4715         (get_local_using_directives, set_local_using_directives)
4716         (get_global_using_directives): New functions.
4717         (buildsym_init): Update.
4718
4719 2018-07-16  Tom Tromey  <tom@tromey.com>
4720
4721         * xcoffread.c (xcoff_initial_scan): Don't call
4722         free_pending_blocks.
4723         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
4724         * buildsym.h (class scoped_free_pendings): Add constructor.
4725         (free_pending_blocks): Don't declare.
4726         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
4727         (free_pending_blocks): Now static.
4728
4729 2018-07-16  Tom Tromey  <tom@tromey.com>
4730
4731         * buildsym.h (push_subfile, pop_subfile): Update declarations.
4732         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
4733         member.
4734         (struct subfile_stack): Remove.
4735         (subfile_stack): Remove.
4736         (push_subfile, pop_subfile, buildsym_init): Update.
4737
4738 2018-07-16  Tom Tromey  <tom@tromey.com>
4739
4740         * buildsym.c (push_subfile): Use gdb_assert.
4741         (pop_subfile): Use gdb_assert.
4742
4743 2018-07-16  Tom Tromey  <tom@tromey.com>
4744
4745         * buildsym.h (merge_symbol_lists): Remove.
4746         * buildsym.c (merge_symbol_lists): Remove.
4747
4748 2018-07-16  Tom Tromey  <tom@tromey.com>
4749
4750         * stabsread.c (scan_file_globals): Update comment.
4751         * stabsread.h (scan_file_globals): Move from buildsym.h.
4752         * buildsym.h (scan_file_globals): Move to stabsread.h.
4753
4754 2018-07-16  Tom Tromey  <tom@tromey.com>
4755
4756         * xcoffread.c (xcoff_new_init): Update.
4757         * mipsread.c (mipscoff_new_init): Update.
4758         * mdebugread.c (mdebug_build_psymtabs): Update.
4759         * elfread.c (elf_new_init): Update.
4760         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
4761         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
4762         * buildsym.h (buildsym_new_init): Don't declare.
4763         * buildsym.c (buildsym_new_init): Remove.
4764
4765 2018-07-16  Tom Tromey  <tom@tromey.com>
4766
4767         * stabsread.h (within_function): Move from buildsym.h.
4768         * stabsread.c (start_stabs): Clear within_function.
4769         * coffread.c (coff_start_symtab): Clear within_function.
4770         * buildsym.h (within_function): Move to stabsread.h.
4771         * buildsym.c (prepare_for_building): Update.
4772
4773 2018-07-16  Tom Tromey  <tom@tromey.com>
4774
4775         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
4776         * dwarf2read.c (dwarf2_start_symtab): Don't set
4777         processing_gcc_compilation.
4778         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
4779
4780 2018-07-16  Tom Tromey  <tom@tromey.com>
4781
4782         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
4783         (next_symbol_text_func): Move from buildsym.h.
4784         * stabsread.c (hashname): Move from buildsym.c.
4785         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
4786         (next_symbol_text_func, hashname): Move to stabsread.h.
4787         * buildsym.c: Don't include bcache.h
4788         (hashname): Move to stasbread.c.
4789
4790 2018-07-16  Tom Tromey  <tom@tromey.com>
4791
4792         * buildsym.h (context_stack_size): Don't declare.
4793         * buildsym.c (context_stack_size): New global.
4794
4795 2018-07-16  Tom Tromey  <tom@tromey.com>
4796
4797         * dbxread.c (processing_acc_compilation): New global.
4798         * buildsym.h (processing_acc_compilation): Don't declare.
4799
4800 2018-07-16  Tom Tromey  <tom@tromey.com>
4801
4802         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
4803         * dbxread.c (read_ofile_symtab): Update.
4804         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
4805         * buildsym.h (last_source_start_addr): Remove.
4806         (set_last_source_start_addr, get_last_source_start_addr):
4807         Declare.
4808         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
4809         parameter.
4810         (struct buildsym_compunit) <m_last_source_start_addr>: New
4811         member.
4812         (prepare_for_building): Remove start_addr parameter.
4813         (start_symtab, restart_symtab, end_symtab_get_static_block)
4814         (end_symtab_with_blockvector): Update.
4815         (set_last_source_start_addr, get_last_source_start_addr): New
4816         functions.
4817
4818 2018-07-16  Tom Tromey  <tom@tromey.com>
4819
4820         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
4821         member.
4822         (have_line_numbers): Remove.
4823         (record_line, prepare_for_building, end_symtab_get_static_block)
4824         (augment_type_symtab): Update.
4825
4826 2018-07-16  Tom Tromey  <tom@tromey.com>
4827
4828         * buildsym.c (~buildsym_compunit): Free the macro table.
4829         (struct buildsym_compunit) <get_macro_table, release_macros>: New
4830         methods.
4831         <m_pending_macros>: New member.
4832         (pending_macros): Remove.
4833         (~scoped_free_pendings, get_macro_table, prepare_for_building)
4834         (reset_symtab_globals, end_symtab_get_static_block)
4835         (end_symtab_with_blockvector, augment_type_symtab)
4836         (buildsym_init): Update.
4837
4838 2018-07-16  Tom Tromey  <tom@tromey.com>
4839
4840         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
4841         parameter.
4842         (buildsym_compunit::set_last_source_file): New method.
4843         <m_last_source_file>: New member.
4844         (prepare_for_building): Remove "name" parameter.
4845         (start_symtab, restart_symtab, reset_symtab_globals): Update.
4846         (last_source_file): Remove.
4847         (set_last_source_file, get_last_source_file): Update.
4848
4849 2018-07-16  Tom Tromey  <tom@tromey.com>
4850
4851         * buildsym.c (prepare_for_building): Add assert.
4852
4853 2018-07-16  Tom Tromey  <tom@tromey.com>
4854
4855         * buildsym.c (~buildsym_compunit): Update.
4856         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
4857         (start_subfile, patch_subfile_names)
4858         (end_symtab_with_blockvector): Update.
4859
4860 2018-07-16  Tom Tromey  <tom@tromey.com>
4861
4862         * buildsym.c (struct buildsym_compunit): Add constructor,
4863         destructor, initializers.
4864         (start_buildsym_compunit): Remove.
4865         (free_buildsym_compunit): Use "delete".
4866         (start_symtab, restart_symtab): Use "new".
4867
4868 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
4869
4870         * symfile.c (set_objfile_default_section_offset): Remove struct
4871         keyword.
4872
4873 2018-07-14  Stafford Horne  <shorne@gmail.com>
4874
4875         * (Responsible Maintainers): Add myself as or1k maintainer.
4876
4877 2018-07-13  Tom Tromey  <tom@tromey.com>
4878
4879         * symfile.c (set_objfile_default_section_offset): Use extra braces
4880         around initializer.
4881
4882 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
4883
4884         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
4885         non-branching basr.
4886
4887 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4888
4889         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4890         unittests/cli-utils-selftests.c
4891         * unittests/cli-utils-selftests.c: New file.
4892
4893 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4894
4895         * NEWS: Mention new commands. Mention change to 'thread apply'.
4896
4897 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4898
4899         * thread.c (thr_try_catch_cmd): New function.
4900         (thread_apply_all_command): Handle qcs flags.
4901         (thread_apply_command): Handle qcs flags.
4902         (taas_command): New function.
4903         (tfaas_command): New function.
4904         (_initialize_thread): Update to setup the new commands 'taas
4905         and 'tfaas'. Change doc string for 'thread apply'.
4906
4907 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4908
4909         * stack.c: (trailing_outermost_frame): New function, mostly
4910         extracted from backtrace_command_1.
4911         (leading_innermost_frame): New function.
4912         (backtrace_command_1): Update to call trailing_outermost_frame.
4913         (frame_apply_command_count): New function.
4914         (frame_apply_level_command): New function.
4915         (frame_apply_all_command): New function.
4916         (frame_apply_command): New function.
4917         (faas_command): New function.
4918         (frame_cmd_list): New variable.
4919         (_initialize_stack): Update to setup the new commands 'frame apply'
4920         and 'faas'.
4921
4922 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4923
4924         * cli-utils.c (number_or_range_parser::get_number): Only handle
4925         numbers or convenience var as numbers.
4926         (parse_flags): New function.
4927         (parse_flags_qcs): New function.
4928         (number_or_range_parser::finished): Ensure parsing end is detected
4929         before end of string.
4930         * cli-utils.h (parse_flags): New function.
4931         (parse_flags_qcs): New function.
4932         (number_or_range_parser): Remove m_finished bool.
4933         (number_or_range_parser::skip_range): Set m_in_range to false.
4934
4935 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
4936
4937         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
4938         on Windows.
4939
4940 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4941             Jan Kratochvil  <jan.kratochvil@redhat.com>
4942             Paul Fertser  <fercerpav@gmail.com>
4943             Tsutomu Seki  <sekiriki@gmail.com>
4944             Pedro Alves  <palves@redhat.com>
4945
4946         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4947         'unittests/parse-connection-spec-selftests.c'.
4948         (COMMON_SFILES): Add 'common/netstuff.c'.
4949         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
4950         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
4951         * common/netstuff.c: New file.
4952         * common/netstuff.h: New file.
4953         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
4954         (wait_for_connect): Update comment.  New parameter
4955         'gdb::optional<int> sock' instead of 'struct serial *scb'.
4956         Use 'sock' directly instead of 'scb->fd'.
4957         (try_connect): New function, with code from 'net_open'.
4958         (net_open): Rewrite main loop to deal with multiple
4959         sockets/addresses.  Handle IPv6-style hostnames; implement
4960         support for IPv6 connections.
4961         * unittests/parse-connection-spec-selftests.c: New file.
4962
4963 2018-07-11  Pedro Alves  <palves@redhat.com>
4964
4965         PR gdb/23377
4966         * remote.c (remote_target::remote_detach_pid): Call
4967         set_current_process.
4968
4969 2018-07-11  Pedro Alves  <palves@redhat.com>
4970
4971         * h8300-tdep.c (h8300_gdbarch_init): Remove
4972         set_gdbarch_ecoff_reg_to_regnum calls.
4973
4974 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4975
4976         PR c++/23373
4977         * c-typeprint.c (c_type_print_base_struct_union): Don't print
4978         offsets/sizes for static members of a class/struct.
4979
4980 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
4981
4982         * target-descriptions.c (tdesc_register_bitsize): Rename.
4983         * target-descriptions.h (tdesc_register_bitsize): Likewise.
4984         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
4985         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
4986
4987 2018-07-10  Tom Tromey  <tom@tromey.com>
4988
4989         * breakpoint.c (moribund_locations): Now static and a
4990         std::vector.
4991         (breakpoint_init_inferior, moribund_breakpoint_here_p)
4992         (build_bpstat_chain, update_global_location_list)
4993         (breakpoint_retire_moribund): Update.
4994         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
4995         VEC.
4996
4997 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4998
4999         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5000         (riscv_register_reggroup_p): Use new function, remove unneeded
5001         parenthesis.
5002         (riscv_push_dummy_call): Extend assert to compare against xlen or
5003         flen based on register type.
5004
5005 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5006
5007         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5008
5009 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5010
5011         * remote.c (show_hardware_watchpoint_limit): New function.
5012         (show_hardware_watchpoint_length_limit): New function.
5013         (show_hardware_breakpoint_limit): New function.
5014         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5015         where appropriate, update help text.
5016
5017 2018-07-09  Tom Tromey  <tom@tromey.com>
5018
5019         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5020         (CLIBS): Don't mention NAT_CLIBS.
5021
5022 2018-07-09  Tom Tromey  <tom@tromey.com>
5023
5024         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5025         (LIBGDB_OBS, clean mostlyclean): Update.
5026         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5027
5028 2018-07-09  Tom Tromey  <tom@tromey.com>
5029
5030         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5031         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5032         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5033
5034 2018-07-09  Tom Tromey  <tom@tromey.com>
5035
5036         * Makefile.in (ALLDEPFILES): Remove exec.c.
5037         (COMMON_OBS): Remove exec.o.
5038         (COMMON_SFILES): Add exec.c.
5039
5040 2018-07-09  Tom Tromey  <tom@tromey.com>
5041
5042         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5043
5044 2018-07-09  Tom Tromey  <tom@tromey.com>
5045
5046         * Makefile.in (clean mostlyclean): Remove stamp-version.
5047         (version.c): Depend on stamp-version.
5048         (stamp-version): New rule, from version.c rule.
5049
5050 2018-07-09  Tom Tromey  <tom@tromey.com>
5051
5052         * Makefile.in (init.c): Depend on stamp-init.
5053         (stamp-init): New rule, from init.c rule.
5054         (clean mostlyclean): Remove stamp-init.
5055
5056 2018-07-09  Tom Tromey  <tom@tromey.com>
5057
5058         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5059         SUBDIR_GCC_COMPILE_SRCS.
5060
5061 2018-07-09  Tom Tromey  <tom@tromey.com>
5062
5063         * Makefile.in (init.c): Remove some unused sed rules.
5064
5065 2018-07-09  Tom Tromey  <tom@tromey.com>
5066
5067         * Makefile.in (TSOBS): Remove.
5068         (INIT_FILES): Update.
5069         (LIBGDB_OBS): Update.
5070         (COMMON_SFILES): Add inflow.c.
5071         (SFILES): Remove inflow.c.
5072
5073 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5074
5075         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5076
5077 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5078
5079         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5080         get_saveloc_name, is_signal_frame_name, step_name,
5081         init_remote_name, create_addr_space_name,
5082         destroy_addr_space_name, search_unwind_table_name,
5083         find_dyn_list_name): Constify.
5084
5085 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5086
5087         * darwin-nat.c (darwin_pthread_kill): New function.
5088         (darwin_resume_thread): Use darwin_pthread_kill.
5089
5090 2018-07-05  Tom de Vries  <tdevries@suse.de>
5091
5092         * macroexp.c (macro_buffer) <operator=>: New member function.
5093
5094 2018-07-04  Tom Tromey  <tom@tromey.com>
5095
5096         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5097
5098 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5099
5100         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5101         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5102         * maint.c: Likewise.
5103         * top.c: Likewise.
5104
5105 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5106
5107         * NEWS: Create a new section for the next release branch.
5108         Rename the section of the current branch, now that it has
5109         been cut.
5110
5111 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5112
5113         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5114         * version.in: Bump version to 8.2.50.DATE-git.
5115
5116 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5117             Pedro Alves  <palves@redhat.com>
5118
5119         * linux-nat.c (linux_init_ptrace): Rename to ...
5120         (linux_init_ptrace_procfs): ... this.  Call
5121         linux_proc_init_warnings.
5122         (linux_nat_target::post_attach)
5123         (linux_nat_target::post_startup_inferior): Adjust.
5124         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5125         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5126
5127 2018-07-04  Tom de Vries  <tdevries@suse.de>
5128
5129         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5130         check ...
5131         (read_comp_unit_head): ... here.
5132
5133 2018-07-03  Tom Tromey  <tom@tromey.com>
5134
5135         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5136         (stop_tracing, tstatus_command)
5137         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5138         (print_one_static_tracepoint_marker): Update.
5139         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5140         std::vector.
5141         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5142         VEC.
5143         (all_tracepoints, static_tracepoints_here): Return std::vector.
5144
5145 2018-07-03  Tom Tromey  <tom@tromey.com>
5146
5147         * common/ptid.c (ptid_equal): Remove.
5148         * common/ptid.h (ptid_equal): Don't declare.
5149         * ada-tasks.c: Update.
5150         * breakpoint.c: Update.
5151         * common/agent.c: Update.
5152         * corelow.c: Update.
5153         * darwin-nat-info.c: Update.
5154         * darwin-nat.c: Update.
5155         * dcache.c: Update.
5156         * dtrace-probe.c: Update.
5157         * dummy-frame.c: Update.
5158         * fbsd-nat.c: Update.
5159         * frame.c: Update.
5160         * gdbthread.h: Update.
5161         * gnu-nat.c: Update.
5162         * go32-nat.c: Update.
5163         * inf-loop.c: Update.
5164         * inf-ptrace.c: Update.
5165         * infcall.c: Update.
5166         * infcmd.c: Update.
5167         * inflow.c: Update.
5168         * infrun.c: Update.
5169         * linux-fork.c: Update.
5170         * linux-nat.c: Update.
5171         * linux-thread-db.c: Update.
5172         * mi/mi-cmd-var.c: Update.
5173         * mi/mi-interp.c: Update.
5174         * mi/mi-main.c: Update.
5175         * nto-procfs.c: Update.
5176         * ppc-linux-tdep.c: Update.
5177         * procfs.c: Update.
5178         * python/py-inferior.c: Update.
5179         * python/py-record-btrace.c: Update.
5180         * python/py-record.c: Update.
5181         * ravenscar-thread.c: Update.
5182         * regcache.c: Update.
5183         * remote-sim.c: Update.
5184         * remote.c: Update.
5185         * sol-thread.c: Update.
5186         * solib.c: Update.
5187         * target.c: Update.
5188         * tui/tui-stack.c: Update.
5189         * varobj.c: Update.
5190         * windows-nat.c: Update.
5191         * windows-tdep.c: Update.
5192
5193 2018-07-03  Tom Tromey  <tom@tromey.com>
5194
5195         * common/ptid.c (ptid_match): Remove.
5196         * common/ptid.h (ptid_match): Don't declare.
5197         * fbsd-nat.c: Update.
5198         * infcmd.c: Update.
5199         * infrun.c: Update.
5200         * linux-nat.c: Update.
5201         * record-btrace.c: Update.
5202         * regcache.c: Update.
5203         * remote.c: Update.
5204
5205 2018-07-03  Tom Tromey  <tom@tromey.com>
5206
5207         * common/ptid.c (ptid_tid_p): Remove.
5208         * common/ptid.h (ptid_tid_p): Don't declare.
5209         * sol-thread.c: Update.
5210
5211 2018-07-03  Tom Tromey  <tom@tromey.com>
5212
5213         * common/ptid.c (ptid_lwp_p): Remove.
5214         * common/ptid.h (ptid_lwp_p): Don't declare.
5215         * fbsd-nat.c: Update.
5216         * linux-nat.c: Update.
5217         * nat/linux-procfs.c: Update.
5218         * nat/x86-linux-dregs.c: Update.
5219         * sol-thread.c: Update.
5220
5221 2018-07-03  Tom Tromey  <tom@tromey.com>
5222
5223         * common/ptid.c (ptid_is_pid): Remove.
5224         * common/ptid.h (ptid_is_pid): Don't declare.
5225         * infrun.c: Update.
5226         * linux-nat.c: Update.
5227         * mi/mi-interp.c: Update.
5228         * remote.c: Update.
5229         * thread.c: Update.
5230
5231 2018-07-03  Tom Tromey  <tom@tromey.com>
5232
5233         * common/ptid.c (ptid_get_tid): Remove.
5234         * common/ptid.h (ptid_get_tid): Don't declare.
5235         * ada-tasks.c: Update.
5236         * aix-thread.c: Update.
5237         * bsd-uthread.c: Update.
5238         * darwin-nat.c: Update.
5239         * fbsd-nat.c: Update.
5240         * i386-darwin-nat.c: Update.
5241         * infrun.c: Update.
5242         * linux-tdep.c: Update.
5243         * nto-procfs.c: Update.
5244         * ppc-ravenscar-thread.c: Update.
5245         * python/py-infthread.c: Update.
5246         * ravenscar-thread.c: Update.
5247         * sol-thread.c: Update.
5248         * sparc-ravenscar-thread.c: Update.
5249         * windows-nat.c: Update.
5250
5251 2018-07-03  Tom Tromey  <tom@tromey.com>
5252
5253         * common/ptid.c (ptid_get_lwp): Remove.
5254         * common/ptid.h (ptid_get_lwp): Don't declare.
5255         * aarch64-linux-nat.c: Update.
5256         * ada-tasks.c: Update.
5257         * aix-thread.c: Update.
5258         * amd64-linux-nat.c: Update.
5259         * arm-linux-nat.c: Update.
5260         * corelow.c: Update.
5261         * fbsd-nat.c: Update.
5262         * fbsd-tdep.c: Update.
5263         * gnu-nat.c: Update.
5264         * i386-cygwin-tdep.c: Update.
5265         * i386-gnu-nat.c: Update.
5266         * i386-linux-nat.c: Update.
5267         * ia64-linux-nat.c: Update.
5268         * inf-ptrace.c: Update.
5269         * infrun.c: Update.
5270         * linux-fork.c: Update.
5271         * linux-nat.c: Update.
5272         * linux-tdep.c: Update.
5273         * linux-thread-db.c: Update.
5274         * mips-linux-nat.c: Update.
5275         * nat/aarch64-linux-hw-point.c: Update.
5276         * nat/aarch64-linux.c: Update.
5277         * nat/linux-btrace.c: Update.
5278         * nat/linux-osdata.c: Update.
5279         * nat/linux-procfs.c: Update.
5280         * nat/x86-linux-dregs.c: Update.
5281         * obsd-nat.c: Update.
5282         * ppc-fbsd-nat.c: Update.
5283         * ppc-linux-nat.c: Update.
5284         * procfs.c: Update.
5285         * python/py-infthread.c: Update.
5286         * ravenscar-thread.c: Update.
5287         * remote.c: Update.
5288         * s390-linux-nat.c: Update.
5289         * sol-thread.c: Update.
5290         * sol2-tdep.c: Update.
5291         * spu-linux-nat.c: Update.
5292         * x86-linux-nat.c: Update.
5293         * xtensa-linux-nat.c: Update.
5294
5295 2018-07-03  Tom Tromey  <tom@tromey.com>
5296
5297         * common/ptid.c (ptid_get_pid): Remove.
5298         * common/ptid.h (ptid_get_pid): Don't declare.
5299         * aarch64-linux-nat.c: Update.
5300         * ada-lang.c: Update.
5301         * aix-thread.c: Update.
5302         * alpha-bsd-nat.c: Update.
5303         * amd64-fbsd-nat.c: Update.
5304         * amd64-linux-nat.c: Update.
5305         * arm-linux-nat.c: Update.
5306         * arm-nbsd-nat.c: Update.
5307         * auxv.c: Update.
5308         * break-catch-syscall.c: Update.
5309         * breakpoint.c: Update.
5310         * bsd-uthread.c: Update.
5311         * corelow.c: Update.
5312         * ctf.c: Update.
5313         * darwin-nat.c: Update.
5314         * fbsd-nat.c: Update.
5315         * fbsd-tdep.c: Update.
5316         * gcore.c: Update.
5317         * gnu-nat.c: Update.
5318         * hppa-nbsd-nat.c: Update.
5319         * hppa-obsd-nat.c: Update.
5320         * i386-fbsd-nat.c: Update.
5321         * ia64-linux-nat.c: Update.
5322         * inf-ptrace.c: Update.
5323         * infcmd.c: Update.
5324         * inferior.c: Update.
5325         * inferior.h: Update.
5326         * inflow.c: Update.
5327         * infrun.c: Update.
5328         * linux-fork.c: Update.
5329         * linux-nat.c: Update.
5330         * linux-tdep.c: Update.
5331         * linux-thread-db.c: Update.
5332         * m68k-bsd-nat.c: Update.
5333         * mi/mi-interp.c: Update.
5334         * mi/mi-main.c: Update.
5335         * mips-linux-nat.c: Update.
5336         * mips-nbsd-nat.c: Update.
5337         * mips64-obsd-nat.c: Update.
5338         * nat/aarch64-linux-hw-point.c: Update.
5339         * nat/aarch64-linux.c: Update.
5340         * nat/linux-btrace.c: Update.
5341         * nat/linux-osdata.c: Update.
5342         * nat/linux-procfs.c: Update.
5343         * nat/x86-linux-dregs.c: Update.
5344         * nto-procfs.c: Update.
5345         * obsd-nat.c: Update.
5346         * ppc-linux-nat.c: Update.
5347         * ppc-nbsd-nat.c: Update.
5348         * ppc-obsd-nat.c: Update.
5349         * proc-service.c: Update.
5350         * procfs.c: Update.
5351         * python/py-inferior.c: Update.
5352         * python/py-infthread.c: Update.
5353         * ravenscar-thread.c: Update.
5354         * record.c: Update.
5355         * remote-sim.c: Update.
5356         * remote.c: Update.
5357         * rs6000-nat.c: Update.
5358         * s390-linux-nat.c: Update.
5359         * sh-nbsd-nat.c: Update.
5360         * sol-thread.c: Update.
5361         * sparc-nat.c: Update.
5362         * sparc64-tdep.c: Update.
5363         * spu-linux-nat.c: Update.
5364         * spu-tdep.c: Update.
5365         * target-debug.h: Update.
5366         * target.c: Update.
5367         * thread.c: Update.
5368         * tid-parse.c: Update.
5369         * tracefile-tfile.c: Update.
5370         * vax-bsd-nat.c: Update.
5371         * windows-nat.c: Update.
5372         * x86-linux-nat.c: Update.
5373         * x86-nat.c: Update.
5374
5375 2018-07-03  Tom Tromey  <tom@tromey.com>
5376
5377         * common/ptid.c (pid_to_ptid): Remove.
5378         * common/ptid.h (pid_to_ptid): Don't declare.
5379         * aix-thread.c: Update.
5380         * arm-linux-nat.c: Update.
5381         * common/ptid.c: Update.
5382         * common/ptid.h: Update.
5383         * corelow.c: Update.
5384         * ctf.c: Update.
5385         * darwin-nat.c: Update.
5386         * fbsd-nat.c: Update.
5387         * fork-child.c: Update.
5388         * gnu-nat.c: Update.
5389         * go32-nat.c: Update.
5390         * inf-ptrace.c: Update.
5391         * infcmd.c: Update.
5392         * inferior.c: Update.
5393         * infrun.c: Update.
5394         * linux-fork.c: Update.
5395         * linux-nat.c: Update.
5396         * nat/aarch64-linux-hw-point.c: Update.
5397         * nat/fork-inferior.c: Update.
5398         * nat/x86-linux-dregs.c: Update.
5399         * nto-procfs.c: Update.
5400         * obsd-nat.c: Update.
5401         * procfs.c: Update.
5402         * progspace.c: Update.
5403         * remote.c: Update.
5404         * rs6000-nat.c: Update.
5405         * s390-linux-nat.c: Update.
5406         * sol-thread.c: Update.
5407         * spu-linux-nat.c: Update.
5408         * target.c: Update.
5409         * top.c: Update.
5410         * tracefile-tfile.c: Update.
5411         * windows-nat.c: Update.
5412
5413 2018-07-03  Tom Tromey  <tom@tromey.com>
5414
5415         * common/ptid.h (ptid_build): Don't declare.
5416         * common/ptid.c (ptid_build): Remove.
5417         * aix-thread.c: Update.
5418         * bsd-kvm.c: Update.
5419         * bsd-uthread.c: Update.
5420         * common/agent.c: Update.
5421         * common/ptid.c: Update.
5422         * common/ptid.h: Update.
5423         * corelow.c: Update.
5424         * darwin-nat.c: Update.
5425         * fbsd-nat.c: Update.
5426         * gnu-nat.c: Update.
5427         * linux-fork.c: Update.
5428         * linux-nat.c: Update.
5429         * linux-thread-db.c: Update.
5430         * nat/linux-osdata.c: Update.
5431         * nat/linux-procfs.c: Update.
5432         * nto-procfs.c: Update.
5433         * obsd-nat.c: Update.
5434         * proc-service.c: Update.
5435         * procfs.c: Update.
5436         * ravenscar-thread.c: Update.
5437         * remote-sim.c: Update.
5438         * remote.c: Update.
5439         * sol-thread.c: Update.
5440         * target.c: Update.
5441         * windows-nat.c: Update.
5442
5443 2018-07-03  Tom Tromey  <tom@tromey.com>
5444
5445         * infrun.c (follow_exec): Use exit_inferior_silent.
5446         * inferior.c (exit_inferior_num_silent): Remove.
5447         * inferior.h (exit_inferior_num_silent): Don't declare.
5448
5449 2018-07-03  Tom Tromey  <tom@tromey.com>
5450
5451         PR cli/23340:
5452         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5453         inferior_ptid on error.
5454
5455 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5456             Simon Marchi  <simon.marchi@polymtl.ca>
5457
5458         PR tdep/8282
5459         * disasm.h (gdb_disassembler): Add
5460         `m_disassembler_options_holder'. member
5461         * disasm.c (get_all_disassembler_options): New function.
5462         (gdb_disassembler::gdb_disassembler): Use it.
5463         (gdb_buffered_insn_length_init_dis): Likewise.
5464         (gdb_buffered_insn_length): Adjust accordingly.
5465         (set_disassembler_options): Handle options with arguments.
5466         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5467         line if showing options with descriptions.
5468         (disassembler_options_completer): Adapt to using the
5469         `disasm_options_and_args_t' structure.
5470         * mips-tdep.c (mips_disassembler_options): New variable.
5471         (mips_disassembler_options_o32): Likewise.
5472         (mips_disassembler_options_n32): Likewise.
5473         (mips_disassembler_options_n64): Likewise.
5474         (gdb_print_insn_mips): Don't set `disassembler_options'.
5475         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5476         functions.
5477         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5478         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5479         `gdbarch_disassembler_options_implicit' and
5480         `gdbarch_valid_disassembler_options'.
5481         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5482         `disasm_options_and_args_t' structure.
5483         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5484         method.
5485         (valid_disassembler_options): Switch from `disasm_options_t' to
5486         the `disasm_options_and_args_t' structure.
5487         * NEWS: Document `set disassembler-options' support for the MIPS
5488         target.
5489         * gdbarch.h: Regenerate.
5490         * gdbarch.c: Regenerate.
5491
5492 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5493
5494         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5495
5496 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5497
5498         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5499         parameter in call to amd64_target_description.
5500         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5501         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5502         (amd64fbsd_init_abi): Likewise.
5503         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5504         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5505         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5506         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5507
5508 2018-06-29  Pedro Alves  <palves@redhat.com>
5509
5510         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5511         "segments" parameter.
5512         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5513         (_initialize_amd64_tdep): Update call to
5514         amd64_create_target_description.
5515         (amd64_target_description): Add "segments" parameter.  Adjust
5516         the implementation to use it.
5517         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5518         call to amd64_create_target_description.
5519         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5520         * gdb/arch/amd64.h (amd64_create_target_description): Add
5521         "segments" register.
5522         * gdb/arch/amd64.c (amd64_create_target_description): Add
5523         "segments" parameter.  Call create_feature_i386_64bit_segments
5524         only if SEGMENTS is true.
5525         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5526         call to amd64_create_target_description.
5527
5528 2018-06-29  Pedro Alves  <palves@redhat.com>
5529
5530         * thread.c (thread_target_id_str): New, factored out from ...
5531         (print_thread_info_1): ... here.  Use it to compute the max
5532         "Target Id" column width.
5533
5534 2018-06-29  Pedro Alves  <palves@redhat.com>
5535
5536         * remote.c (remote_target::extra_thread_info): Delete
5537         'display_buf' and 'n' locals.  from the cache, regardless of
5538         packet mechanims is in use.  Use cache for qThreadExtra and qP
5539         methods too.
5540
5541 2018-06-29  Pedro Alves  <palves@redhat.com>
5542
5543         * blockframe.c (find_pc_sect_containing_function): New function.
5544         * breakpoint.c (print_breakpoint_location): Don't call
5545         find_pc_sect_function.
5546         * linespec.c (create_sals_line_offset): Record the location's
5547         symbol in the sal.
5548         * linespec.c (convert_address_location_to_sals): Fill in sal's
5549         symbol with find_pc_sect_containing_function.
5550         * symtab.c (find_function_start_sal): Rename to ...
5551         (find_function_start_sal_1): ... this.
5552         (find_function_start_sal): Reimplement as wrapper around
5553         find_function_start_sal_1, and use
5554         find_pc_sect_containing_function to fill in the sal's symbol.
5555         (find_function_start_sal(symbol*, bool)): Adjust.
5556         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
5557         comments.
5558         (find_pc_sect_containing_function): Declare.
5559
5560 2018-06-29  Pedro Alves  <palves@redhat.com>
5561
5562         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
5563         true if the the location has no symbol.
5564
5565 2018-06-28  Tom Tromey  <tom@tromey.com>
5566
5567         * NEWS: Mention --enable-codesign.
5568         * silent-rules.mk (ECHO_SIGN): New variable.
5569         * configure.ac: Add --enable-codesign.
5570         * configure: Rebuild.
5571         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
5572         (gdb$(EXEEXT)): Optionally invoke codesign.
5573
5574 2018-06-28  Pedro Alves  <palves@redhat.com>
5575
5576         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
5577         comments.
5578         (switch_to_thread_no_regs): Adjust comment.
5579         * infcmd.c (stop_pc): Delete.
5580         (post_create_inferior, info_program_command): Replace references
5581         to stop_pc with references to thread_info->suspend.stop_pc.
5582         * inferior.h (stop_pc): Delete declaration.
5583         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
5584         (handle_inferior_event_1, handle_signal_stop)
5585         (process_event_stop_test, keep_going_stepped_thread)
5586         (handle_step_into_function, handle_step_into_function_backward)
5587         (print_stop_location): Replace references to stop_pc with
5588         references to thread_info->suspend.stop_pc.
5589         (struct infcall_suspend_state) <stop_pc>: Delete field.
5590         (save_infcall_suspend_state, restore_infcall_suspend_state):
5591         Remove references to inf_stat->stop_pc.
5592         * linux-fork.c (fork_load_infrun_state): Likewise.
5593         * record-btrace.c (record_btrace_set_replay): Likewise.
5594         * record-full.c (record_full_goto_entry): Likewise.
5595         * remote.c (print_one_stopped_thread): Likewise.
5596         * target.c (target_resume): Extend comment.
5597         * thread.c (set_executing_thread): New.
5598         (set_executing): Use it.
5599         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
5600         Remove references to stop_pc.
5601
5602 2018-06-28  Pedro Alves  <palves@redhat.com>
5603
5604         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
5605         Moving fetching stop_pc until after ecs->event_thread is refreshed.
5606
5607 2018-06-28  Tom Tromey  <tom@tromey.com>
5608
5609         * coffread.c (coff_symfile_finish): Update.
5610         * xcoffread.c (xcoff_symfile_finish): Update.
5611         * elfread.c (elf_symfile_finish): Update.
5612         * symfile.h (dwarf2_free_objfile): Don't declare.
5613         * dwarf2read.c (_initialize_dwarf2_read): Use
5614         register_objfile_data_with_cleanup.
5615         (dwarf2_free_objfile): Now static.  Change signature.
5616
5617 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5618
5619         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
5620         option "-o" to add-symbol-file-load to add an offset to each
5621         section's load address.
5622         * symfile.c (set_objfile_default_section_offset): New function.
5623
5624 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5625
5626         * symfile.c (add_symbol_file_command): Make sure that sections
5627         with the same name are sorted in the same order.
5628
5629 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5630
5631         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
5632         require the second argument.  If omitted, load sections at the
5633         addresses specified in the file.
5634
5635 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5636
5637         * symfile.c (symbol_file_command, symbol_file_add_main_1)
5638         (_initialize_symfile): Add option "-o" to symbol-file to add an
5639         offset to each section of the symbol file.
5640
5641 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5642
5643         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
5644
5645 2018-06-27  Tom Tromey  <tom@tromey.com>
5646
5647         * stack.c (_initialize_stack): Update "func" help text.
5648
5649 2018-06-27  Tom Tromey  <tom@tromey.com>
5650
5651         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
5652         std::vector.
5653         (unwind_infopy_str, pyuw_create_unwind_info)
5654         (unwind_infopy_add_saved_register, pyuw_sniffer)
5655         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
5656         Update.
5657         (struct saved_reg): Add constructor.
5658         <value>: Now a gdbpy_ref<>.
5659
5660 2018-06-27  Tom Tromey  <tom@tromey.com>
5661
5662         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
5663
5664 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5665
5666         * gdb-gdb.py.in: Format using autopep8.
5667
5668 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5669
5670         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
5671         (type_lookup_function): Recognize CORE_ADDR values.
5672
5673 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5674
5675         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
5676         print tag_name.
5677
5678 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5679
5680         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
5681         <__lt__>: Add.
5682
5683 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5684
5685         * gdb-gdb.py: Move to...
5686         * gdb-gdb.py.in: ... here.
5687         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
5688         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
5689         dependencies.
5690         (distclean): Remove gdb-gdb.py when cleaning.
5691         (gdb-gdb.py, gdb-gdb.gdb): New rules.
5692         * configure: Re-generate.
5693
5694 2018-06-27  Pedro Alves  <palves@redhat.com>
5695
5696         * proc-service.c (get_ps_regcache): New.
5697         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
5698         (ps_lsetfpregs): Use it.
5699
5700 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
5701
5702         PR gdb/21695
5703         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
5704         (dwarf_decode_lines_1): Adjust.
5705
5706 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5707
5708         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
5709         override.
5710         <info_proc>: Likewise.
5711
5712 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
5713
5714         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
5715         to windows_fetch_one_register, and only handle the case of
5716         fetching one register.  Move the code that reloads the context
5717         and iterates over all registers if R is negative to...
5718         (windows_nat_target::fetch_registers): ... here.
5719         (do_windows_store_inferior_registers): Rename to
5720         windows_store_one_register, and only handle the case of storing
5721         one register.  Move the code that handles the case where r is
5722         negative to...
5723         (windows_nat_target::store_registers) ... here.
5724
5725 2018-06-26  Tom Tromey  <tom@tromey.com>
5726
5727         PR rust/22574:
5728         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
5729         * rust-lang.c (rust_print_struct_def): Add podata parameter.
5730         Update.
5731         (rust_internal_print_type): Add podata parameter.
5732         (rust_print_type): Update.
5733
5734 2018-06-26  Tom Tromey  <tom@tromey.com>
5735
5736         * typeprint.h (struct print_offset_data) <update, finish,
5737         maybe_print_hole>: New methods.
5738         <indentation>: New constant.
5739         * typeprint.c (print_offset_data::indentation): Define.
5740         (print_offset_data::maybe_print_hole, print_offset_data::update)
5741         (print_offset_data::finish): Move from c-typeprint.c and rename.
5742         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
5743         (print_spaces_filtered_with_print_options): Update.
5744         (c_print_type_union_field_offset, maybe_print_hole)
5745         (c_print_type_struct_field_offset): Move to typeprint.c and
5746         rename.
5747         (c_type_print_base_struct_union): Update.
5748
5749 2018-06-25  Pedro Alves  <palves@redhat.com>
5750
5751         * gdbthread.h (thread_info_ref, delete_thread)
5752         (delete_thread_silent, first_thread_of_inferior)
5753         (any_thread_of_inferior, switch_to_thread)
5754         (enable_thread_stack_temporaries)
5755         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5756         (get_last_thread_stack_temporary)
5757         (value_in_thread_stack_temporaries, can_access_registers_thread):
5758         Spell out "struct thread_info" instead of just "thread_info".
5759         * inferior.h (notice_new_inferior): Likewise.
5760
5761 2018-06-25  Pedro Alves  <palves@redhat.com>
5762
5763         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5764         pass thread_info pointer to delete_thread.
5765         (windows_nat_target::detach): Pass inferior pointer to
5766         detach_inferior.
5767         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
5768         delete_thread.
5769         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
5770         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
5771         and pass a thread_info pointer to delete_thread.
5772         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
5773         pass thread_info pointer to delete_thread.
5774         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
5775         delete_thread_silent call.
5776         * procfs.c (procfs_target::detach): Pass inferior pointer to
5777         detach_inferior.
5778         (procfs_target::wait): Pass thread_info pointer to delete_thread.
5779         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
5780         delete_thread_silent call.
5781         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5782         pass thread_info pointer to delete_thread.
5783         (windows_nat_target::detach): Pass inferior pointer to
5784         delete_inferior.
5785
5786 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5787
5788         * regcache.c (readable_regcache::read_part): Fix asserts.
5789         (reg_buffer::raw_collect_part): New function.
5790         (regcache::write_part): Fix asserts.
5791         (reg_buffer::raw_supply_part): New function.
5792         (regcache::transfer_regset_register): New helper function.
5793         (regcache::transfer_regset): Call new functions.
5794         (regcache_supply_regset): Use gdb_byte*.
5795         (regcache::supply_regset): Likewise.
5796         (regcache_collect_regset): Likewise.
5797         (regcache::collect_regset): Likewise.
5798         * regcache.h (reg_buffer::raw_collect_part): New declaration.
5799         (reg_buffer::raw_supply_part): Likewise.
5800         (regcache::transfer_regset_register): Likewise.
5801         (regcache::transfer_regset): Use gdb_byte*.
5802
5803 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5804
5805         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
5806
5807 2018-06-21  Pedro Alves  <palves@redhat.com>
5808
5809         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
5810         instead of a ptid_t.  All callers adjusted.
5811         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
5812         adjusted.
5813         (print_ada_task_info, display_current_task_id, task_command_1):
5814         Adjust.
5815         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
5816         inferior_thread.
5817         (breakpoint_kind): Adjust.
5818         (remove_breakpoints_pid): Rename to ...
5819         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
5820         pointer.  All callers adjusted.
5821         (bpstat_clear_actions): Use inferior_thread.
5822         (get_bpstat_thread): New.
5823         (bpstat_do_actions): Use it.
5824         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
5825         to take a thread_info pointer.  All callers adjusted.
5826         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
5827         (breakpoint_re_set_thread): Use inferior_thread.
5828         * breakpoint.h (struct inferior): Forward declare.
5829         (bpstat_stop_status): Update.
5830         (remove_breakpoints_pid): Delete.
5831         (remove_breakpoints_inf): New.
5832         * bsd-uthread.c (bsd_uthread_target::wait)
5833         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
5834         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
5835         (maint_btrace_packet_history_cmd)
5836         (maint_btrace_clear_packet_history_cmd): Adjust.
5837         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
5838         inferior_thread.
5839         * cli/cli-interp.c: Include "inferior.h".
5840         * common/refcounted-object.h (struct
5841         refcounted_object_ref_policy): New.
5842         * compile/compile-object-load.c: Include gdbthread.h.
5843         (store_regs): Use inferior_thread.
5844         * corelow.c (core_target::close): Use current_inferior.
5845         (core_target_open): Adjust to use first_thread_of_inferior and use
5846         the current inferior.
5847         * ctf.c (ctf_target::close): Adjust to use current_inferior.
5848         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
5849         <thread>: ... this new field.  All references adjusted.
5850         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
5851         Take a thread_info pointer instead of a ptid_t.
5852         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
5853         (dummy_frame_discard, register_dummy_frame_dtor): Take a
5854         thread_info pointer instead of a ptid_t.
5855         * elfread.c: Include "inferior.h".
5856         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
5857         Use inferior_thread.
5858         * eval.c (evaluate_subexp): Likewise.
5859         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
5860         inferior_thread.
5861         * gdb_proc_service.h (struct thread_info): Forward declare.
5862         (struct ps_prochandle) <ptid>: Delete, replaced by ...
5863         <thread>: ... this new field.  All references adjusted.
5864         * gdbarch.h, gdbarch.c: Regenerate.
5865         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
5866         'thread' parameter.  All implementations and callers adjusted.
5867         * gdbthread.h (thread_info) <set_running>: New method.
5868         (delete_thread, delete_thread_silent): Take a thread_info pointer
5869         instead of a ptid.
5870         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
5871         (first_thread_of_process): Delete, replaced by ...
5872         (first_thread_of_inferior): ... this new function.  All callers
5873         adjusted.
5874         (any_live_thread_of_process): Delete, replaced by ...
5875         (any_live_thread_of_inferior): ... this new function.  All callers
5876         adjusted.
5877         (switch_to_thread, switch_to_no_thread): Declare.
5878         (is_executing): Delete.
5879         (enable_thread_stack_temporaries): Update comment.
5880         <enable_thread_stack_temporaries>: Take a thread_info pointer
5881         instead of a ptid_t.  Incref the thread.
5882         <~enable_thread_stack_temporaries>: Decref the thread.
5883         <m_ptid>: Delete
5884         <m_thr>: New.
5885         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5886         (get_last_thread_stack_temporary)
5887         (value_in_thread_stack_temporaries, can_access_registers_thread):
5888         Take a thread_info pointer instead of a ptid_t.  All callers
5889         adjusted.
5890         * infcall.c (get_call_return_value): Use inferior_thread.
5891         (run_inferior_call): Work with thread pointers instead of ptid_t.
5892         (call_function_by_hand_dummy): Work with thread pointers instead
5893         of ptid_t.  Use thread_info_ref.
5894         * infcmd.c (proceed_thread_callback): Access thread's state
5895         directly.
5896         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
5897         access thread's state directly.
5898         (continue_command): Use inferior_thread.
5899         (info_program_command): Use find_thread_ptid and access thread
5900         state directly.
5901         (proceed_after_attach_callback): Use thread state directly.
5902         (notice_new_inferior): Take a thread_info pointer instead of a
5903         ptid_t.  All callers adjusted.
5904         (exit_inferior): Take an inferior pointer instead of a pid.  All
5905         callers adjusted.
5906         (exit_inferior_silent): New.
5907         (detach_inferior): Delete.
5908         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
5909         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
5910         (detach_inferior_command, kill_inferior_command): Use
5911         find_inferior_id instead of valid_gdb_inferior_id and
5912         gdb_inferior_id_to_pid.
5913         (inferior_command): Use inferior and thread pointers.
5914         * inferior.h (struct thread_info): Forward declare.
5915         (notice_new_inferior): Take a thread_info pointer instead of a
5916         ptid_t.  All callers adjusted.
5917         (detach_inferior): Delete declaration.
5918         (exit_inferior, exit_inferior_silent): Take an inferior pointer
5919         instead of a pid.  All callers adjusted.
5920         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
5921         (valid_gdb_inferior_id): Delete.
5922         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
5923         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
5924         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
5925         ...
5926         <inf>: ... this new field.
5927         <step_ptid>: Delete, replaced by ...
5928         <step_thread>: ... this new field.
5929         (get_displaced_stepping_state): Take an inferior pointer instead
5930         of a pid.  All callers adjusted.
5931         (displaced_step_in_progress_any_inferior): Adjust.
5932         (displaced_step_in_progress_thread): Take a thread pointer instead
5933         of a ptid_t.  All callers adjusted.
5934         (displaced_step_in_progress, add_displaced_stepping_state): Take
5935         an inferior pointer instead of a pid.  All callers adjusted.
5936         (get_displaced_step_closure_by_addr): Adjust.
5937         (remove_displaced_stepping_state): Take an inferior pointer
5938         instead of a pid.  All callers adjusted.
5939         (displaced_step_prepare_throw, displaced_step_prepare)
5940         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
5941         All callers adjusted.
5942         (start_step_over): Adjust.
5943         (infrun_thread_ptid_changed): Remove bit updating ptids in the
5944         displaced step queue.
5945         (do_target_resume): Adjust.
5946         (fetch_inferior_event): Use inferior_thread.
5947         (context_switch, get_inferior_stop_soon): Take an
5948         execution_control_state pointer instead of a ptid_t.  All callers
5949         adjusted.
5950         (switch_to_thread_cleanup): Delete.
5951         (stop_all_threads): Use scoped_restore_current_thread.
5952         * inline-frame.c: Include "gdbthread.h".
5953         (inline_state) <inline_state>: Take a thread pointer instead of a
5954         ptid_t.  All callers adjusted.
5955         <ptid>: Delete, replaced by ...
5956         <thread>: ... this new field.
5957         (find_inline_frame_state): Take a thread pointer instead of a
5958         ptid_t.  All callers adjusted.
5959         (skip_inline_frames, step_into_inline_frame)
5960         (inline_skipped_frames, inline_skipped_symbol): Take a thread
5961         pointer instead of a ptid_t.  All callers adjusted.
5962         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
5963         (inline_skipped_frames, inline_skipped_symbol): Likewise.
5964         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
5965         pointers directly.
5966         * linux-nat.c (get_detach_signal): Likewise.
5967         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
5968         (thread_db_notice_clone): Adjust.
5969         (thread_db_find_new_threads_silently)
5970         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
5971         a thread pointer instead of a ptid_t.  All callers adjusted.
5972         * mi/mi-cmd-var.c: Include "inferior.h".
5973         (mi_cmd_var_update_iter): Update to use thread pointers.
5974         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
5975         inferior directly.
5976         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
5977         out to ...
5978         (mi_output_running): ... this new function.
5979         (mi_on_resume_1): Adjust to use it.
5980         (mi_user_selected_context_changed): Adjust to use inferior_thread.
5981         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
5982         directly.
5983         (interrupt_thread_callback): : Adjust to use thread and inferior
5984         pointers.
5985         * proc-service.c: Include "gdbthread.h".
5986         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
5987         * progspace-and-thread.c: Include "inferior.h".
5988         * progspace.c: Include "inferior.h".
5989         * python/py-exitedevent.c (create_exited_event_object): Adjust to
5990         hold a reference to an inferior_object.
5991         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
5992         inferior_thread.
5993         * python/py-inferior.c (struct inferior_object): Give the type a
5994         tag name instead of a typedef.
5995         (python_on_normal_stop): No need to check if the current thread is
5996         listed.
5997         (inferior_to_inferior_object): Change return type to
5998         inferior_object.  All callers adjusted.
5999         (find_thread_object): Delete, bits factored out to ...
6000         (thread_to_thread_object): ... this new function.
6001         * python/py-infthread.c (create_thread_object): Use
6002         inferior_to_inferior_object.
6003         (thpy_is_stopped): Use thread pointer directly.
6004         (gdbpy_selected_thread): Use inferior_thread.
6005         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6006         field, replaced with ...
6007         <thread>: ... this new field.  All users adjusted.
6008         (btpy_insn_or_gap_new): Drop const.
6009         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6010         callers adjusted.
6011         * python/py-record.c: Include "gdbthread.h".
6012         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6013         a ptid_t.  All callers adjusted.
6014         (gdbpy_current_recording): Use inferior_thread.
6015         * python/py-record.h (recpy_record_object) <ptid>: Delete
6016         field, replaced with ...
6017         <thread>: ... this new field.  All users adjusted.
6018         (recpy_element_object) <ptid>: Delete
6019         field, replaced with ...
6020         <thread>: ... this new field.  All users adjusted.
6021         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6022         a ptid_t.  All callers adjusted.
6023         * python/py-threadevent.c: Include "gdbthread.h".
6024         (get_event_thread): Use thread_to_thread_object.
6025         * python/python-internal.h (struct inferior_object): Forward
6026         declare.
6027         (find_thread_object, find_inferior_object): Delete declarations.
6028         (thread_to_thread_object, inferior_to_inferior_object): New
6029         declarations.
6030         * record-btrace.c: Include "inferior.h".
6031         (require_btrace_thread): Use inferior_thread.
6032         (record_btrace_frame_sniffer)
6033         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6034         (get_thread_current_frame): Use scoped_restore_current_thread and
6035         switch_to_thread.
6036         (get_thread_current_frame): Use thread pointer directly.
6037         (record_btrace_replay_at_breakpoint): Use thread's inferior
6038         pointer directly.
6039         * record-full.c: Include "inferior.h".
6040         * regcache.c: Include "gdbthread.h".
6041         (get_thread_arch_regcache): Use the inferior's address space
6042         directly.
6043         (get_thread_regcache, registers_changed_thread): New.
6044         * regcache.h (get_thread_regcache(thread_info *thread)): New
6045         overload.
6046         (registers_changed_thread): New.
6047         (remote_target) <remote_detach_1>: Swap order of parameters.
6048         (remote_add_thread): <remote_add_thread>: Return the new thread.
6049         (get_remote_thread_info(ptid_t)): New overload.
6050         (remote_target::remote_notice_new_inferior): Use thread pointers
6051         directly.
6052         (remote_target::process_initial_stop_replies): Use
6053         thread_info::set_running.
6054         (remote_target::remote_detach_1, remote_target::detach)
6055         (extended_remote_target::detach): Adjust.
6056         * stack.c (frame_show_address): Use inferior_thread.
6057         * target-debug.h (target_debug_print_thread_info_pp): New.
6058         * target-delegates.c: Regenerate.
6059         * target.c (default_thread_address_space): Delete.
6060         (memory_xfer_partial_1): Use current_inferior.
6061         (target_detach): Use current_inferior.
6062         (target_thread_address_space): Delete.
6063         (generic_mourn_inferior): Use current_inferior.
6064         * target.h (struct target_ops) <thread_address_space>: Delete.
6065         (target_thread_address_space): Delete.
6066         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6067         pointers directly.
6068         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6069         thread pointer instead of a ptid_t.  Adjust all callers.
6070         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6071         (first_thread_of_process): Delete, replaced by ...
6072         (first_thread_of_inferior): ... this new function.  All callers
6073         adjusted.
6074         (any_thread_of_process): Rename to ...
6075         (any_thread_of_inferior): ... this, and take an inferior pointer.
6076         (any_live_thread_of_process): Rename to ...
6077         (any_live_thread_of_inferior): ... this, and take an inferior
6078         pointer.
6079         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6080         (value_in_thread_stack_temporaries)
6081         (get_last_thread_stack_temporary): Take a thread pointer instead
6082         of a ptid_t.  Adjust all callers.
6083         (thread_info::set_running): New.
6084         (validate_registers_access): Use inferior_thread.
6085         (can_access_registers_ptid): Rename to ...
6086         (can_access_registers_thread): ... this, and take a thread
6087         pointer.
6088         (print_thread_info_1): Adjust to compare thread pointers instead
6089         of ptids.
6090         (switch_to_no_thread, switch_to_thread): Make extern.
6091         (scoped_restore_current_thread::~scoped_restore_current_thread):
6092         Use m_thread pointer directly.
6093         (scoped_restore_current_thread::scoped_restore_current_thread):
6094         Use inferior_thread.
6095         (thread_command): Use thread pointer directly.
6096         (thread_num_make_value_helper): Use inferior_thread.
6097         * top.c (execute_command): Use inferior_thread.
6098         * tui/tui-interp.c: Include "inferior.h".
6099         * varobj.c (varobj_create): Use inferior_thread.
6100         (value_of_root_1): Use find_thread_global_id instead of
6101         global_thread_id_to_ptid.
6102
6103 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6104
6105         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6106         possible.
6107         (regcache::write_part): Likewise.
6108         (readable_regcache::cooked_read_part): Update comment.
6109         (readable_regcache::cooked_write_part): Likewise.
6110         * regcache.h: (readable_regcache::read_part): Likewise.
6111         (regcache::write_part): Likewise.
6112
6113 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6114             Dirk Schubert  <dirk.schubert@arm.com>
6115
6116         * aarch64-linux-nat.c (post_attach): New.
6117         (aarch64_linux_nat_target::post_attach): Override post_attach to
6118         record the number of hardware debug registers.
6119
6120 2018-06-20  Tom Tromey  <tom@tromey.com>
6121
6122         * python/py-param.c (add_setshow_generic): Make parameters const.
6123         (parmpy_init): Update.
6124
6125 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6126
6127         * regcache.h (regcache_cooked_read_ftype): Rename to...
6128         (register_read_ftype): ...this, change type to function_view.
6129         (class reg_buffer) <save>: Remove src parameter.
6130         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6131         parameter non-const in first overload.  Remove src parameter in
6132         second overload.
6133         * regcache.c (do_cooked_read): Remove.
6134         (readonly_detached_regcache::readonly_detached_regcache): Make
6135         parameter non-const, adjust call to other constructor.
6136         (reg_buffer::save): Remove src parameter.
6137         * frame.c (do_frame_register_read): Remove.
6138         (frame_save_as_regcache): Use lambda function.
6139         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6140         parameter to ppu2spu_data *.
6141         (ppu2spu_sniffer): Use lambda function.
6142
6143 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6144
6145         * record-full.c (record_full_target::insert_breakpoint): Remove
6146         "struct" keyword, add const.
6147
6148 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6149
6150         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6151         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6152         * configure.ac: Remove AC_PREREQ, add missing quoting.
6153         * gnulib/configure.ac: Modernize usage of
6154         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6155         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6156         (AUTOMAKE_VERSION): Bump to 1.15.1.
6157         * configure: Re-generate.
6158         * config.in: Re-generate.
6159         * aclocal.m4: Re-generate.
6160         * gnulib/aclocal.m4: Re-generate.
6161         * gnulib/config.in: Re-generate.
6162         * gnulib/configure: Re-generate.
6163         * gnulib/import/Makefile.in: Re-generate.
6164
6165 2018-06-19  Pedro Alves  <palves@redhat.com>
6166
6167         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6168         (lookup_minimal_symbol_by_pc_section): ... here with
6169         gdb_assert_not_reached added.
6170
6171 2018-06-19  Pedro Alves  <palves@redhat.com>
6172
6173         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6174         parameter with a block parameter.  Compare location's block symbol
6175         with the frame's block instead of addresses.
6176         (skip_inline_frames): Pass the current block instead of the
6177         frame's address.  Break out as soon as we determine the frame
6178         should not be skipped.
6179
6180 2018-06-18  Tom Tromey  <tom@tromey.com>
6181
6182         * solib-aix.c (solib_aix_get_section_offsets): Return
6183         unique_xmalloc_ptr.
6184         (solib_aix_solib_create_inferior_hook): Update.
6185
6186 2018-06-18  Tom Tromey  <tom@tromey.com>
6187
6188         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6189
6190 2018-06-18  Tom Tromey  <tom@tromey.com>
6191
6192         * solib-frv.c (frv_relocate_main_executable): Use
6193         unique_xmalloc_ptr.
6194         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6195         unique_xmalloc_ptr.
6196
6197 2018-06-18  Tom Tromey  <tom@tromey.com>
6198
6199         * objfiles.h (inhibit_section_map_updates): Update.
6200         (resume_section_map_updates, resume_section_map_updates_cleanup):
6201         Remove.
6202         * solib-svr4.c (svr4_handle_solib_event): Update.
6203         * objfiles.c (inhibit_section_map_updates): Return
6204         scoped_restore_tmpl<int>.
6205         (resume_section_map_updates, resume_section_map_updates_cleanup):
6206         Remove.
6207
6208 2018-06-18  Tom Tromey  <tom@tromey.com>
6209
6210         * valprint.h (read_string): Update.
6211         * valprint.c (read_string): Change type of "buffer".
6212         (val_print_string): Update.
6213         * python/py-value.c (valpy_string): Update.
6214         * language.h (struct language_defn) <la_get_string>: Change
6215         type of "buffer".
6216         (default_get_string, c_get_string): Update.
6217         * language.c (default_get_string): Change type of "buffer".
6218         * guile/scm-value.c (gdbscm_value_to_string): Update.
6219         * c-lang.c (c_get_string): Change type of "buffer".
6220
6221 2018-06-18  Tom Tromey  <tom@tromey.com>
6222
6223         * ser-mingw.c (struct pipe_state_destroyer): New.
6224         (pipe_state_up): New typedef.
6225         (cleanup_pipe_state): Remove.
6226         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6227
6228 2018-06-18  Tom Tromey  <tom@tromey.com>
6229
6230         * rust-lang.h (rust_yyerror): Don't declare.
6231         * rust-lang.c (rust_language_defn): Update.
6232         * rust-exp.y (yyerror): Now static.
6233         * parse.c (parse_exp_in_context_1): Update.
6234         * p-lang.h (p_yyerror): Don't declare.
6235         * p-lang.c (p_language_defn): Update.
6236         * p-exp.y (yyerror): Now static.
6237         * opencl-lang.c (opencl_language_defn): Update.
6238         * objc-lang.c (objc_language_defn): Update.
6239         * m2-lang.h (m2_yyerror): Don't declare.
6240         * m2-lang.c (m2_language_defn): Update.
6241         * m2-exp.y (yyerror): Now static.
6242         * language.h (struct language_defn) <la_error>: Remove.
6243         * language.c (unk_lang_error): Remove.
6244         (unknown_language_defn, auto_language_defn): Remove.
6245         * go-lang.h (go_yyerror): Don't declare.
6246         * go-lang.c (go_language_defn): Update.
6247         * go-exp.y (yyerror): Now static.
6248         * f-lang.h (f_yyerror): Don't declare.
6249         * f-lang.c (f_language_defn): Update.
6250         * f-exp.y (yyerror): Now static.
6251         * d-lang.h (d_yyerror): Don't declare.
6252         * d-lang.c (d_language_defn): Update.
6253         * d-exp.y (yyerror): Now static.
6254         * c-lang.h (c_yyerror): Don't declare.
6255         * c-lang.c (c_language_defn, cplus_language_defn)
6256         (asm_language_defn, minimal_language_defn): Update.
6257         * c-exp.y (yyerror): Now static.
6258         * ada-lang.h (ada_yyerror): Don't declare.
6259         * ada-lang.c (ada_language_defn): Update.
6260         * ada-exp.y (yyerror): Now static.
6261
6262 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6263
6264         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6265         (store_sveregs_to_thread): Likewise.
6266         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6267         (aarch64_linux_store_inferior_registers): Likewise.
6268         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6269         function.
6270         (aarch64_sve_regs_copy_to_regcache): Likewise.
6271         (aarch64_sve_regs_copy_from_regcache): Likewise.
6272         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6273         declaration.
6274         (aarch64_sve_regs_copy_to_regcache): Likewise.
6275         (aarch64_sve_regs_copy_from_regcache): Likewise.
6276         (sve_context): Structure from Linux headers.
6277         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6278         (SVE_SIG_ZREG_SIZE): Likewise.
6279         (SVE_SIG_PREG_SIZE): Likewise.
6280         (SVE_SIG_FFR_SIZE): Likewise.
6281         (SVE_SIG_REGS_OFFSET): Likewise.
6282         (SVE_SIG_ZREGS_OFFSET): Likewise.
6283         (SVE_SIG_ZREG_OFFSET): Likewise.
6284         (SVE_SIG_ZREGS_SIZE): Likewise.
6285         (SVE_SIG_PREGS_OFFSET): Likewise.
6286         (SVE_SIG_PREG_OFFSET): Likewise.
6287         (SVE_SIG_PREGS_SIZE): Likewise.
6288         (SVE_SIG_FFR_OFFSET): Likewise.
6289         (SVE_SIG_REGS_SIZE): Likewise.
6290         (SVE_SIG_CONTEXT_SIZE): Likewise.
6291         (SVE_PT_REGS_MASK): Likewise.
6292         (SVE_PT_REGS_FPSIMD): Likewise.
6293         (SVE_PT_REGS_SVE): Likewise.
6294         (SVE_PT_VL_INHERIT): Likewise.
6295         (SVE_PT_VL_ONEXEC): Likewise.
6296         (SVE_PT_REGS_OFFSET): Likewise.
6297         (SVE_PT_FPSIMD_OFFSET): Likewise.
6298         (SVE_PT_FPSIMD_SIZE): Likewise.
6299         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6300         (SVE_PT_SVE_PREG_SIZE): Likewise.
6301         (SVE_PT_SVE_FFR_SIZE): Likewise.
6302         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6303         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6304         (__SVE_SIG_TO_PT): Likewise.
6305         (SVE_PT_SVE_OFFSET): Likewise.
6306         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6307         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6308         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6309         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6310         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6311         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6312         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6313         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6314         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6315         (SVE_PT_SVE_SIZE): Likewise.
6316         (SVE_PT_SIZE): Likewise.
6317         (HAS_SVE_STATE): New define.
6318
6319 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6320
6321         * nat/aarch64-sve-linux-sigcontext.h: New file.
6322         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6323         new files.
6324         (SVE_VQ_MIN): Likewise.
6325         (SVE_VQ_MAX): Likewise.
6326         (SVE_VL_MIN): Likewise.
6327         (SVE_VL_MAX): Likewise.
6328         (SVE_NUM_ZREGS): Likewise.
6329         (SVE_NUM_PREGS): Likewise.
6330         (sve_vl_valid): Likewise.
6331         (struct user_sve_header): Likewise.
6332
6333 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6334             Richard Bunt <Richard.Bunt@arm.com>
6335
6336         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6337         was requested by GDB.
6338
6339 2018-06-15  Tom de Vries  <tdevries@suse.de>
6340
6341         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6342
6343 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6344
6345         * gnulib/update-gnulib.sh: Print expected versions of
6346         autoconf/aclocal.
6347
6348 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6349
6350         * arch-utils.c (default_type_align): Use type_length_units.
6351         * gdbtypes.c (type_align): Use type_length_units.
6352
6353 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6354
6355         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6356         of 'define' command.
6357
6358 2018-06-14  Tom de Vries  <tdevries@suse.de>
6359
6360         PR cli/22573
6361         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6362         get_no_prettyformat_print_options.
6363
6364 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6365
6366         * sparc-nat.h: Include target.h.
6367         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6368         <fetch_registers>: Remove this argument in function call.
6369         <store_registers>: Remove this argument in function call, remove
6370         extra semicolon.
6371         <low_forget_process>: Call sparc64_forget_process instead of
6372         sparc_forget_process.
6373
6374 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6375
6376         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6377         (procfs_target::make_corefile_notes): Adjust to new
6378         target_read_alloc return type.
6379
6380 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6381             Stephen Roberts  <stephen.roberts@arm.com>
6382
6383         PR gdb/22882
6384         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6385         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6386         Move should_notify_stop local into more inner scope.
6387
6388 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6389             Stephen Roberts  <stephen.roberts@arm.com>
6390
6391         PR gdb/22882
6392         * infrun.c (resume_1): Add call to mark_async_event_handler.
6393
6394 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6395
6396         * infrun.c (do_target_wait): Change old version of $pc printed.
6397
6398 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6399
6400         * dwarf2read.c (read_index_from_section): Rename to...
6401         (read_gdb_index_from_section): ... this, update all callers.
6402         (dwarf2_read_index): Rename to...
6403         (dwarf2_read_gdb_index): ... this, update all callers.
6404
6405 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6406
6407         * gdb/hppa-linux-nat.c
6408         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6409         hppa_linux_nat_target::fetch_registers.
6410
6411 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6412
6413         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6414         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6415         (AARCH64_DWARF_SVE_FFR): Likewise.
6416         (AARCH64_DWARF_SVE_P0): Likewise.
6417         (AARCH64_DWARF_SVE_Z0): Likewise.
6418
6419 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6420
6421         * common/common-regcache.h (raw_compare): New function.
6422         * regcache.c (regcache::raw_compare): Likewise.
6423         * regcache.h (regcache::raw_compare): New declaration.
6424
6425 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6426
6427         * common/common-regcache.h (reg_buffer_common): New structure.
6428         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6429         (reg_buffer::raw_supply): Likewise.
6430         (reg_buffer::raw_supply_integer): Likewise.
6431         (reg_buffer::raw_supply_zeroed): Likewise.
6432         (reg_buffer::raw_collect): Likewise.
6433         (reg_buffer::raw_collect_integer): Likewise.
6434         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6435         (reg_buffer::raw_supply): Likewise.
6436         (reg_buffer::raw_supply_integer): Likewise.
6437         (reg_buffer::raw_supply_zeroed): Likewise.
6438         (reg_buffer::raw_collect): Likewise.
6439         (reg_buffer::raw_collect_integer): Likewise.
6440
6441 2018-06-10  Tom Tromey  <tom@tromey.com>
6442
6443         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6444         (class remote_state) <stop_reply_queue>: Now std::vector.
6445         (remote_state::~remote_state)
6446         (remote_target::stop_reply_queue_length): Update.
6447         (struct queue_iter_param, remove_child_of_pending_fork)
6448         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6449         (check_pending_event_prevents_wildcard_vcont_callback)
6450         (remove_stop_reply_for_inferior)
6451         (remove_stop_reply_of_remote_state)
6452         (remote_notif_remove_once_on_match)
6453         (stop_reply_match_ptid_and_ws)
6454         (remote_kill_child_of_pending_fork): Remove.
6455         (remote_target::remove_new_fork_children)
6456         (remote_target::check_pending_events_prevent_wildcard_vcont)
6457         (remote_target::discard_pending_stop_replies)
6458         (remote_target::discard_pending_stop_replies_in_queue)
6459         (remote_target::remote_notif_remove_queued_reply)
6460         (remote_target::queued_stop_reply)
6461         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6462         (remote_target::wait, remote_target::kill_new_fork_children)
6463         (remote_target::async): Update.
6464
6465 2018-06-10  Tom Tromey  <tom@tromey.com>
6466
6467         * record-full.c (record_full_arch_list_cleanups): Remove.
6468         (record_full_message): Use try/catch.
6469         (record_full_wait_cleanups): Remove.
6470         (record_full_wait_1): Use try/catch.
6471         (record_full_restore): Likewise.
6472
6473 2018-06-10  Tom Tromey  <tom@tromey.com>
6474
6475         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6476         declare VEC.  Add constructor.
6477         <in_target_beneath>: Now bool.
6478         (record_full_breakpoints): Now a std::vector, static.
6479         (record_full_sync_record_breakpoints)
6480         (record_full_init_record_breakpoints)
6481         (record_full_target::insert_breakpoint)
6482         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6483
6484 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6485
6486         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6487         * serial.c (serial_interface_lookup): Remove struct keyword.
6488
6489 2018-06-10  Tom Tromey  <tom@tromey.com>
6490
6491         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6492         method.
6493         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6494         a method.
6495         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6496         method.
6497         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6498         "beneath" as a method.
6499         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6500         Use "beneath" as a method.
6501
6502 2018-06-10  Tom Tromey  <tom@tromey.com>
6503
6504         * tracefile.c (struct trace_file_writer_deleter): New.
6505         <operator()>: Rename from trace_file_writer_xfree.
6506         (trace_file_writer_up): New typedef.
6507         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6508
6509 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6510
6511         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6512         <m_registers, m_register_status>: Change type to
6513         std::unique_ptr.
6514         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6515         XCNEWVEC.
6516
6517 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6518
6519         * common/common-regcache.h (enum register_status): Add
6520         underlying type "signed char".
6521         * regcache.h (reg_buffer) <m_register_status>: Change type to
6522         register_status *.
6523         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6524         register_status instead of signed char.
6525         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6526         (reg_buffer::get_register_status): Remove cast.
6527         (readable_regcache::raw_read): Remove cast.
6528         (readable_regcache::cooked_read): Remove cast.
6529
6530 2018-06-09  Tom Tromey  <tom@tromey.com>
6531
6532         * source.c (reverse_search_command, forward_search_command): Use
6533         scoped_fd.
6534
6535 2018-06-09  Tom Tromey  <tom@tromey.com>
6536
6537         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6538         (serial_ops_list): Now static, std::vector.
6539         (serial_interface_lookup, serial_add_interface): Update.
6540
6541 2018-06-09  Tom Tromey  <tom@tromey.com>
6542
6543         * dwarf2read.c (process_cu_includes): Update.
6544         (process_full_comp_unit): Update.
6545         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6546         std::vector.
6547
6548 2018-06-08  Paul Koning  <paul_koning@dell.com>
6549
6550         PR gdb/23252
6551
6552         * python/python.c (do_start_initialization):
6553         Avoid call to internal Python API.
6554         (init__gdb_module): New function.
6555
6556 2018-06-08  Gary Benson <gbenson@redhat.com>
6557
6558         * linux-thread-db.c (valprint.h): New include.
6559         (struct check_thread_db_info): New structure.
6560         (check_thread_db_on_load, tdb_testinfo): New static globals.
6561         (check_thread_db, check_thread_db_callback): New functions.
6562         (try_thread_db_load_1): Run integrity checks if requested.
6563         (maintenance_check_libthread_db): New function.
6564         (_initialize_thread_db): Register "maint check libthread-db"
6565         and "maint set/show check-libthread-db".
6566         * NEWS: Mention the above new commands.
6567
6568 2018-06-08  Tom Tromey  <tom@tromey.com>
6569
6570         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
6571         now a method.
6572
6573 2018-06-08  Tom Tromey  <tom@tromey.com>
6574
6575         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
6576
6577 2018-06-08  Tom Tromey  <tom@tromey.com>
6578
6579         * common/btrace-common.h (struct btrace_data): Add constructor,
6580         destructor, move assignment operator.
6581         <empty, clear, fini>: New methods.
6582         <format>: Initialize.
6583         (btrace_data_init, btrace_data_fini, btrace_data_clear)
6584         (btrace_data_empty): Don't declare.
6585         * common/btrace-common.c (btrace_data_init): Remove.
6586         (btrace_data::fini): Rename from btrace_data_fini.
6587         (btrace_data::empty): Rename from btrace_data_empty.
6588         (btrace_data::clear): Rename from btrace_data_clear.  Return
6589         bool.
6590         * btrace.h (make_cleanup_btrace_data): Don't declare.
6591         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
6592         (parse_xml_btrace): Update.
6593         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
6594         (maint_btrace_clear_packet_history_cmd): Update.
6595
6596 2018-06-07  Pedro Alves  <palves@redhat.com>
6597
6598         * target.h (target_ops) <beneath>: Now a method.  All references
6599         updated.
6600         (class target_stack): New.
6601         * target.c (g_target_stack): New.
6602         (g_current_top_target): Delete.
6603         (current_top_target): Get the top target out of g_target_stack.
6604         (target_stack::push, target_stack::unpush): New.
6605         (push_target, unpush_target): Reimplement.
6606         (target_is_pushed): Reimplement in terms of g_target_stack.
6607         (target_ops::beneath, target_stack::find_beneath): New.
6608
6609 2018-06-07  Pedro Alves  <palves@redhat.com>
6610
6611         * target.h (find_target_beneath): Delete declaration.
6612         * target.c (find_target_beneath): Delete definition.
6613         * aix-thread.c: All callers of find_target_beneath adjusted to
6614         call target_ops::beneath instead.
6615         * bsd-uthread.c: Likewise.
6616         * linux-thread-db.c: Likewise.
6617         * ravenscar-thread.c: Likewise.
6618         * sol-thread.c: Likewise.
6619         * spu-multiarch.c: Likewise.
6620
6621 2018-06-07  Pedro Alves  <palves@redhat.com>
6622
6623         * target.h (target_ops) <beneath>: Now a method.  All references
6624         updated.
6625         (target_ops) <m_beneath>: New.
6626         * target.c (target_ops::beneath): New.
6627         * corelow.c: Adjust all references to target_ops::beneath.
6628         * linux-thread-db.c: Likewise.
6629         * make-target-delegates: Likewise.
6630         * record-btrace.c: Likewise.
6631         * record-full.c: Likewise.
6632         * remote.c: Likewise.
6633         * target.c: Likewise.
6634         * target-delegates.c: Regenerate.
6635
6636 2018-06-07  Pedro Alves  <palves@redhat.com>
6637
6638         * target.h (target_stack): Delete.
6639         (current_top_target): Declare function.
6640         * target.c (target_stack): Delete.
6641         (g_current_top_target): New.
6642         (current_top_target): New function.
6643         * auxv.c: Use current_top_target instead of target_stack
6644         throughout.
6645         * avr-tdep.c: Likewise.
6646         * breakpoint.c: Likewise.
6647         * corefile.c: Likewise.
6648         * elfread.c: Likewise.
6649         * eval.c: Likewise.
6650         * exceptions.c: Likewise.
6651         * frame.c: Likewise.
6652         * gdbarch-selftests.c: Likewise.
6653         * gnu-v3-abi.c: Likewise.
6654         * ia64-tdep.c: Likewise.
6655         * ia64-vms-tdep.c: Likewise.
6656         * infcall.c: Likewise.
6657         * infcmd.c: Likewise.
6658         * infrun.c: Likewise.
6659         * linespec.c: Likewise.
6660         * linux-tdep.c: Likewise.
6661         * minsyms.c: Likewise.
6662         * ppc-linux-nat.c: Likewise.
6663         * ppc-linux-tdep.c: Likewise.
6664         * procfs.c: Likewise.
6665         * regcache.c: Likewise.
6666         * remote.c: Likewise.
6667         * rs6000-tdep.c: Likewise.
6668         * s390-linux-nat.c: Likewise.
6669         * s390-tdep.c: Likewise.
6670         * solib-aix.c: Likewise.
6671         * solib-darwin.c: Likewise.
6672         * solib-dsbt.c: Likewise.
6673         * solib-spu.c: Likewise.
6674         * solib-svr4.c: Likewise.
6675         * solib-target.c: Likewise.
6676         * sparc-tdep.c: Likewise.
6677         * sparc64-tdep.c: Likewise.
6678         * spu-tdep.c: Likewise.
6679         * symfile.c: Likewise.
6680         * symtab.c: Likewise.
6681         * target-descriptions.c: Likewise.
6682         * target-memory.c: Likewise.
6683         * target.c: Likewise.
6684         * target.h: Likewise.
6685         * tracefile-tfile.c: Likewise.
6686         * tracepoint.c: Likewise.
6687         * valops.c: Likewise.
6688         * valprint.c: Likewise.
6689         * value.c: Likewise.
6690         * windows-tdep.c: Likewise.
6691         * mi/mi-main.c: Likewise.
6692
6693 2018-06-07  Tom Tromey  <tom@tromey.com>
6694
6695         * valprint.h (build_address_symbolic): Declare.
6696         * printcmd.c (print_address_symbolic): Update.
6697         (build_address_symbolic): Change "name" and "filename" to
6698         std::string.
6699         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
6700         Update.
6701         * defs.h (build_address_symbolic): Remove declaration.
6702
6703 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
6704
6705         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
6706         (aarch64_vnv_type): Add function.
6707         (aarch64_pseudo_register_name): Add V regs for SVE.
6708         (aarch64_pseudo_register_type): Likewise.
6709         (aarch64_pseudo_register_reggroup_p): Likewise.
6710         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
6711         (aarch64_pseudo_read_value): Add V regs for SVE.
6712         (aarch64_pseudo_write_2): Use V0 offset for SVE
6713         (aarch64_pseudo_write): Add V regs for SVE.
6714         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
6715
6716 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
6717
6718         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
6719         (sve_vl_from_vq): Likewise.
6720
6721 2018-06-05  Tom Tromey  <tom@tromey.com>
6722
6723         * cli/cli-cmds.c (show_version): Update.
6724         * top.c (print_gdb_version): Add "interactive" parameter.
6725         Update.
6726         * main.c (captured_main_1): Update.
6727         * top.h (print_gdb_version): Add "interactive" parameter and a
6728         comment.
6729
6730 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
6731
6732         * common/enum-flags.h: Add trailing semicolon to example in
6733         comment.
6734
6735 2018-06-05  Tom Tromey  <tom@tromey.com>
6736
6737         PR cli/12326:
6738         * NEWS: Add entry about pager.
6739         * utils.c (pagination_disabled_for_command): New global.
6740         (prompt_for_continue): Allow "c" response to prompt.
6741         (reinitialize_more_filter): Clear
6742         pagination_disabled_for_command.
6743         (fputs_maybe_filtered): Check pagination_disabled_for_command.
6744
6745 2018-06-04  Tom Tromey  <tom@tromey.com>
6746
6747         * ada-lang.h (ada_lookup_symbol_list): Update.
6748         * ada-lang.c (resolve_subexp): Update.
6749         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
6750         parameter.
6751         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
6752         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
6753         results parameter to std::vector.
6754         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
6755         Update.
6756         * ada-exp.y (block_lookup): Update.
6757         (select_possible_type_sym): Change type of syms.  Remove nsyms
6758         parameter.
6759         (write_var_or_type, write_name_assoc): Update.
6760
6761 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
6762
6763         * windows-nat.c (windows_nat_target::xfer_partial): Return
6764         TARGET_XFER_E_IO if we need to delegate to the target beneath
6765         but BENEATH is NULL.
6766
6767 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
6768
6769         * Makefile.in (config.status): Add configure.nat as a
6770         dependency.
6771
6772 2018-06-04  Tom Tromey  <tom@tromey.com>
6773
6774         * cp-name-parser.y (cpname_state): Add method declarations.
6775         (HANDLE_QUAL): Update.
6776         (cpname_state::d_grab, cpname_state::fill_comp)
6777         (cpname_state::make_operator, cpname_state::make_dtor)
6778         (cpname_state::make_builtin_type, cpname_state::make_name)
6779         (cpname_state::d_qualify, cpname_state::d_int_type)
6780         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
6781         (%union): Move earlier.
6782
6783 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6784
6785         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
6786
6787 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6788
6789         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
6790         (aarch64_pseudo_write_1): Likewise.
6791         (aarch64_pseudo_read_value): Use helper.
6792         (aarch64_pseudo_write): Likewise.
6793
6794 2018-06-04  Pedro Alves  <palves@redhat.com>
6795
6796         * darwin-nat.c (darwin_ops): Delete.
6797         (darwin_attach_pid): Use get_native_target.
6798
6799 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6800
6801         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
6802         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
6803
6804 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6805
6806         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
6807         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
6808         (aarch64_gdbarch_init): Check for SVE.
6809         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
6810
6811 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6812
6813         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
6814         * aarch64-tdep.h (aarch64_read_description): Likewise.
6815         * arch/aarch64.c (aarch64_create_target_description): Likewise.
6816         * arch/aarch64.h (aarch64_create_target_description): Likewise.
6817         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
6818         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
6819         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
6820
6821 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
6822
6823         * value.c (value_fetch_lazy_bitfield): New.
6824         (value_fetch_lazy_memory): New.
6825         (value_fetch_lazy_register): New.
6826         (value_fetch_lazy): Factor out to smaller functions.
6827
6828 2018-06-01  Tom Tromey  <tom@tromey.com>
6829
6830         * cp-name-parser.y (backslashable, represented): Now const.
6831
6832 2018-06-01  Tom Tromey  <tom@tromey.com>
6833
6834         * cp-name-parser.y: Include parser-defs.h.
6835         (parser_fprintf): Remove declaration.
6836
6837 2018-06-01  Tom Tromey  <tom@tromey.com>
6838
6839         * cp-name-parser.y: Use %pure-parser, %lex-param, and
6840         %parse-param.
6841         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
6842         (global_result): Remove globals.
6843         (struct cpname_state): New.
6844         (yyparse): Don't declare.
6845         (yylex, yyerror): Move declarations after %union.
6846         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
6847         (make_name): Add state parameter.
6848         Update all callers.
6849         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
6850         parameter.
6851         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
6852         Update.
6853         (yylex): Add lvalp, state parameters.
6854         (yyerror): Add state parameter.
6855         (cp_demangled_name_to_comp): Update.
6856
6857 2018-06-01  Tom Tromey  <tom@tromey.com>
6858
6859         * cp-name-parser.y (parser_fprintf): Declare.
6860         (GDB_YY_REMAP_PREFIX): Define.
6861         Include yy-remap.h.  Don't redefine yy* identifiers.
6862
6863 2018-06-01  Tom Tromey  <tom@tromey.com>
6864
6865         * python/py-type.c (typy_legacy_template_argument): Update.
6866         * cp-support.h (cp_demangled_name_to_comp): Update.
6867         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
6868         parameter to be a "std::string *".
6869         (main): Update.
6870
6871 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
6872
6873         * ada-lex.l: Include "diagnostics.h" instead of
6874         "common/diagnostics.h".
6875         * unittests/environ-selftests.c: Likewise.
6876         * common/diagnostics.h: Moved to ../include.
6877
6878 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
6879
6880         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
6881         to language_mode_manual while calling breakpoint_re_set_one.
6882
6883 2018-06-01  Tom Tromey  <tom@tromey.com>
6884
6885         * valops.c (value_cast_structs, destructor_name_p): Update.
6886         * symtab.c (gdb_mangle_name): Update.
6887         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
6888         Update.
6889         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
6890         (pascal_object_print_value_fields, pascal_object_print_value):
6891         Update.
6892         * p-typeprint.c (pascal_type_print_derivation_info): Update.
6893         * linespec.c (find_methods): Update.
6894         * gdbtypes.h (type_name_no_tag): Remove.
6895         (type_name_or_error): Rename from type_name_no_tag_or_error.
6896         * gdbtypes.c (type_name_no_tag): Remove.
6897         (type_name_or_error): Rename from type_name_no_tag_or_error.
6898         (lookup_struct_elt_type, check_typedef): Update.
6899         * expprint.c (print_subexp_standard): Update.
6900         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
6901         * d-namespace.c (d_lookup_nested_symbol): Update.
6902         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
6903         (cp_print_class_member): Update.
6904         * cp-namespace.c (cp_lookup_nested_symbol): Update.
6905         * completer.c (add_struct_fields): Update.
6906         * c-typeprint.c (cp_type_print_derivation_info)
6907         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
6908         Update.
6909         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
6910         (ada_prefer_type, ada_is_exception_sym): Update.
6911
6912 2018-06-01  Tom Tromey  <tom@tromey.com>
6913
6914         * valops.c (enum_constant_from_type, value_namespace_elt)
6915         (value_maybe_namespace_elt): Update.
6916         * valarith.c (find_size_for_pointer_math): Update.
6917         * target-descriptions.c (make_gdb_type): Update.
6918         * symmisc.c (print_symbol): Update.
6919         * stabsread.c (define_symbol, read_type)
6920         (complain_about_struct_wipeout, add_undefined_type)
6921         (cleanup_undefined_types_1): Update.
6922         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
6923         (rust_range_type_p, val_print_struct, rust_print_struct_def)
6924         (rust_internal_print_type, rust_composite_type)
6925         (rust_evaluate_funcall, rust_evaluate_subexp)
6926         (rust_inclusive_range_type_p): Update.
6927         * python/py-type.c (typy_get_tag): Update.
6928         * p-typeprint.c (pascal_type_print_base): Update.
6929         * mdebugread.c (parse_symbol, parse_type): Update.
6930         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
6931         Update.
6932         * guile/scm-type.c (gdbscm_type_tag): Update.
6933         * go-lang.c (sixg_string_p): Update.
6934         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
6935         Update.
6936         * gdbtypes.h (struct main_type) <tag_name>: Remove.
6937         (TYPE_TAG_NAME): Remove.
6938         * gdbtypes.c (type_name_no_tag): Simplify.
6939         (check_typedef, check_types_equal, recursive_dump_type)
6940         (copy_type_recursive, arch_composite_type): Update.
6941         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
6942         in summary mode when needed.
6943         * eval.c (evaluate_funcall): Update.
6944         * dwarf2read.c (fixup_go_packaging, read_structure_type)
6945         (process_structure_scope, read_enumeration_type)
6946         (read_namespace_type, read_module_type, determine_prefix): Update.
6947         * cp-support.c (inspect_type): Update.
6948         * coffread.c (process_coff_symbol, decode_base_type): Update.
6949         * c-varobj.c (c_is_path_expr_parent): Update.
6950         * c-typeprint.c (c_type_print_base_struct_union): Update.
6951         (c_type_print_base_1): Update.  Print struct/class/union/enum in
6952         summary when using C language.
6953         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
6954         (gen_maybe_namespace_elt): Update.
6955         * ada-lang.c (ada_type_name): Simplify.
6956         (empty_record, ada_template_to_fixed_record_type_1)
6957         (template_to_static_fixed_type)
6958         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
6959
6960 2018-06-01  Tom Tromey  <tom@tromey.com>
6961
6962         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
6963         c_print_type.
6964         * c-typeprint.c (c_print_type_1): Add "language" parameter.
6965         (c_print_type): Update.
6966         (c_print_type): New overload.
6967         (c_type_print_varspec_prefix, c_type_print_args)
6968         (c_type_print_varspec_suffix, c_print_type_no_offsets)
6969         (c_type_print_base_struct_union, c_type_print_base_1)
6970         (cp_type_print_method_args): Add "language" parameter.
6971         (c_type_print_base): Update.
6972         * c-lang.h (c_print_type): Add new overload.
6973
6974 2018-06-01  Tom Tromey  <tom@tromey.com>
6975
6976         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
6977         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
6978
6979 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
6980
6981         * aarch64-tdep.c (aarch64_sve_register_names): New const
6982         var.
6983         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
6984         (AARCH64_SVE_Z_REGS_NUM): New define.
6985         (AARCH64_SVE_P_REGS_NUM): Likewise.
6986         (AARCH64_SVE_NUM_REGS): Likewise.
6987
6988 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
6989
6990         * nat/linux-ptrace.h [__alpha__]
6991         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
6992         definitions.
6993
6994 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
6995
6996         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
6997         the endianness selected.
6998         * NEWS: Document `set endian auto' mode operation update.
6999
7000 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7001
7002         * Makefile.in: Add new header.
7003         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7004         (sve_vl_from_vg): Likewise.
7005         (sve_vq_from_vl): Likewise.
7006         (sve_vl_from_vq): Likewise.
7007         (sve_vq_from_vg): Likewise.
7008         (sve_vg_from_vq): Likewise.
7009         * configure.nat: Add new c file.
7010         * nat/aarch64-sve-linux-ptrace.c: New file.
7011         * nat/aarch64-sve-linux-ptrace.h: New file.
7012
7013 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7014
7015         * aarch64-linux-nat.c (aarch64_linux_read_description):
7016         Add parmeter zero.
7017         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7018         Likewise.
7019         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7020         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7021         (aarch64_gdbarch_init): Add parmeter zero.
7022         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7023         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7024         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7025         parmeter.
7026         * doc/gdb.texinfo: Describe SVE feature
7027         * features/aarch64-sve.c: New file.
7028
7029 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7030
7031         PR gdb/23210
7032         * gdbarch.sh (significant_addr_bit): Default to zero when
7033         not set by target architecture.
7034         * gdbarch.c: Re-generated.
7035         * utils.c (address_significant): Update.
7036
7037 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7038
7039         * stack.c (func_command): Remove trailing newline in call to error.
7040
7041 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7042
7043         * regcache.h (regcache_raw_collect): Remove, update callers to
7044         use regcache::raw_collect.
7045         * regcache.c (regcache_raw_collect): Remove.
7046
7047 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7048
7049         * regcache.h (regcache_raw_supply): Remove, update callers to
7050         use detached_regcache::raw_supply.
7051         * regcache.c (regcache_raw_supply): Remove.
7052
7053 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7054
7055         * regcache.h (regcache_cooked_write_part): Remove, update
7056         callers to use regcache::cooked_write_part.
7057         * regcache.c (regcache_cooked_write_part): Remove.
7058
7059 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7060
7061         * regcache.h (regcache_cooked_read_part): Remove, update callers
7062         to use readable_regcache::cooked_read_part.
7063         * regcache.c (regcache_cooked_read_part): Remove.
7064
7065 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7066
7067         * regcache.h (regcache_cooked_read_value): Remove, update
7068         callers to use readable_regcache::cooked_read_value.
7069         * regcache.c (regcache_cooked_read_value): Remove.
7070
7071 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7072
7073         * regcache.h (regcache_cooked_write): Remove, update callers to
7074         use regcache::cooked_write.
7075         * regcache.c (regcache_cooked_write): Remove.
7076
7077 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7078
7079         * regcache.h (regcache_invalidate): Remove, update callers to
7080         use detached_regcache::invalidate instead.
7081         * regcache.c (regcache_invalidate): Remove.
7082
7083 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7084
7085         * regcache.h (regcache_raw_write_part): Remove, update callers
7086         to use regcache::raw_write_part instead.
7087         * regcache.c (regcache_raw_write_part): Remove.
7088
7089 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7090
7091         * regcache.h (regcache_raw_read_part): Remove, update callers to
7092         use readable_regcache::raw_read_part instead.
7093         * regcache.c (regcache_raw_read_part): Remove.
7094
7095 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7096
7097         * regcache.h (regcache_cooked_read): Remove, update callers to
7098         use readable_regcache::cooked_read instead.
7099         * regcache.c (regcache_cooked_read): Remove.
7100
7101 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7102
7103         * regcache.h (regcache_raw_write): Remove, update callers to use
7104         regcache::raw_write instead.
7105         * regcache.c (regcache_raw_write): Remove.
7106
7107 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7108
7109         * regcache.h (regcache_raw_read): Remove, update callers to use
7110         readable_regcache::raw_read instead.
7111         * regcache.c (regcache_raw_read): Remove.
7112
7113 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7114
7115         * regcache.h (regcache_raw_update): Remove, update callers to
7116         use readable_regcache::raw_update instead.
7117         * regcache.c (regcache_raw_update): Remove.
7118
7119 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7120
7121         * regcache.h (regcache_register_status): Remove, update callers
7122         to use reg_buffer::get_register_status directly instead.
7123         * regcache.c (regcache_register_status): Remove.
7124
7125 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7126
7127         * regcache.h (regcache_get_ptid): Remove, update all callers to
7128         call regcache::ptid instead.
7129         * regcache.c (regcache_get_ptid): Remove.
7130
7131 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7132
7133         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7134
7135 2018-05-30  Pedro Alves  <palves@redhat.com>
7136
7137         * common/common-exceptions.h (exception_rethrow): Use
7138         ATTRIBUTE_NORETURN.
7139
7140 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7141
7142         * breakpoint.c (print_solib_event, check_status_catch_solib):
7143         Remove struct keyword in range-based for loops.
7144         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7145         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7146         Likewise.
7147         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7148         Likewise.
7149         * symfile.c (addr_info_make_relative): Likewise.
7150         * thread.c (value_in_thread_stack_temporaries): Likewise.
7151
7152 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7153
7154         PR gdb/16841
7155         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7156         aggregate type to get its real type before accessing it.
7157
7158 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7159
7160         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7161         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7162         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7163         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7164         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7165         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7166         * printcmd.c (info_address_command): Likewise.
7167
7168 2018-05-29  Tom Tromey  <tom@tromey.com>
7169
7170         * windows-nat.c (handle_exception): Update fall-through comment.
7171
7172 2018-05-29  Tom Tromey  <tom@tromey.com>
7173
7174         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7175         (struct program_space) <added_solibs>: Now a std::vector.
7176         * breakpoint.c (print_solib_event): Update.
7177         (check_status_catch_solib): Update.
7178         * progspace.c (clear_program_space_solib_cache): Update.
7179         * solib.c (update_solib_list): Update.
7180
7181 2018-05-29  Tom Tromey  <tom@tromey.com>
7182
7183         * python/py-type.c (typy_richcompare): Update.
7184         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7185         * gdbtypes.h (types_deeply_equal): Return bool.
7186         (types_equal): Likewise.
7187         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7188         declare VEC.
7189         (check_types_equal): Change worklist to std::vector.  Return
7190         bool.
7191         (struct type_equality_entry): Add constructor.
7192         (compare_maybe_null_strings): Return bool.
7193         (check_types_worklist): Return bool.  Change worklist to
7194         std::vector.
7195         (types_deeply_equal): Use std::vector.
7196         (types_equal): Return bool.
7197         (compare_maybe_null_strings): Simplify.
7198
7199 2018-05-29  Tom Tromey  <tom@tromey.com>
7200
7201         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7202
7203 2018-05-29  Tom Tromey  <tom@tromey.com>
7204
7205         * objc-lang.h: Don't include cp-support.h.
7206         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7207         declare VEC.
7208
7209 2018-05-27  Tom Tromey  <tom@tromey.com>
7210
7211         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7212
7213 2018-05-25  Tom Tromey  <tom@tromey.com>
7214
7215         * value.c (value::location): Initialize.
7216
7217 2018-05-25  Tom Tromey  <tom@tromey.com>
7218
7219         * dbxread.c (init_bincl_list): Remove.
7220         (bincl_list): Now a std::vector.
7221         (bincls_allocated, next_bincl): Remove.
7222         (free_bincl_list, do_free_bincl_list_cleanup)
7223         (make_cleanup_free_bincl_list): Remove.
7224         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7225         unique_xmalloc_ptr.
7226         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7227         (struct header_file_location): Add constructor.
7228         (add_bincl_to_list): Remove.
7229
7230 2018-05-25  Tom Tromey  <tom@tromey.com>
7231
7232         * tui/tui.c (tui_enable): Update.
7233         * mi/mi-interp.c (mi_interp::init): Update.
7234         * interps.h (class interp) <name>: New method.
7235         <m_name>: Rename from name.
7236         (~scoped_restore_interp): Update.
7237         * interps.c (interp::interp): Update.
7238         (interp_add, interp_set, interp_lookup_existing)
7239         (current_interp_named_p): Update.
7240
7241 2018-05-25  Tom Tromey  <tom@tromey.com>
7242
7243         * interps.c (interp_name): Remove.
7244         * mi/mi-interp.c (mi_interp::init): Update.
7245         * interps.h (interp_name): Remove.
7246         (~scoped_restore_interp): Update.
7247         * tui/tui.c (tui_enable): Update.
7248
7249 2018-05-25  Tom Tromey  <tom@tromey.com>
7250
7251         * utils.c (fputs_maybe_filtered): Update.
7252         * linespec.c (decode_line_full): Update.
7253         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7254         (mi_print_breakpoint_for_event, mi_solib_loaded)
7255         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7256         (mi_user_selected_context_changed): Update.
7257         * mi/mi-main.c (mi_execute_command): Update.
7258         * cli/cli-script.c (execute_control_command): Update.
7259         * python/python.c (execute_gdb_command): Update.
7260         * solib.c (info_sharedlibrary_command): Update.
7261         * interps.c (interp_ui_out): Remove.
7262         * interps.h (interp_ui_out): Remove.
7263
7264 2018-05-25  Tom Tromey  <tom@tromey.com>
7265
7266         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7267         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7268         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7269
7270 2018-05-25  Tom Tromey  <tom@tromey.com>
7271
7272         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7273         * interps.c (interp_exec): Use scoped_restore.
7274
7275 2018-05-25  Tom Tromey  <tom@tromey.com>
7276
7277         * remote.c (remote_target::remote_file_get): Use
7278         gdb::byte_vector.
7279         (remote_target::remote_file_put): Likewise.
7280
7281 2018-05-25  Tom Tromey  <tom@tromey.com>
7282
7283         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7284         a std::string.
7285         (get_pe_section_index, add_pe_exported_sym): Update.
7286         (read_pe_exported_syms): Use gdb::def_vector.
7287
7288 2018-05-25  Tom Tromey  <tom@tromey.com>
7289
7290         * frame.c (remove_prev_frame): Remove.
7291         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7292
7293 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7294
7295         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7296         Remove prototypes.
7297         * mips-linux-nat.c (supply_fpregset): Always call
7298         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7299         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7300         `mips_fill_fpregset'.
7301         * mips-linux-tdep.c (mips_supply_fpregset)
7302         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7303         (mips_fill_fpregset_wrapper): Remove functions.
7304         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7305         (mips_linux_fpregset): Remove variable.
7306         (mips_linux_iterate_over_regset_sections): Use
7307         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7308         (mips_linux_o32_sigframe_init): Remove comment.
7309
7310 2018-05-25  Pedro Alves  <palves@redhat.com>
7311
7312         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7313         (struct readahead_cache, struct packet_reg, struct
7314         remote_arch_state, class remote_state): Move higher up in the
7315         file.
7316         (remote_target::m_remote_state): Now an object instead of a pointer.
7317         (remote_target::get_remote_state): Adjust.
7318
7319 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7320
7321         * stack.c (select_and_print_frame): Delete.
7322         (struct function_bounds): Move struct within function.
7323         (func_command): Most content moved into new function
7324         find_frame_for_function, use new function, print result, add
7325         function comment.
7326         (find_frame_for_function): New function, now returns a result.
7327
7328 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7329
7330         * stack.c (iterate_over_block_arg_vars): Fix comment.
7331         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7332
7333 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7334
7335         PR gdb/23203
7336         * frame.c
7337         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7338         Define.
7339         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7340         Define.
7341         * frame.h (class scoped_restore_selected_frame): New class.
7342         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7343         of any exception, use scoped_restore_selected_frame to restore the
7344         frame instead.
7345
7346 2018-05-24  Pedro Alves  <palves@redhat.com>
7347
7348         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7349         override.
7350
7351 2018-05-23  Tom Tromey  <tom@tromey.com>
7352
7353         * complaints.c (struct complaints): Remove.
7354         (symfile_complaint_book): Remove.
7355         (series): New global.
7356         (complaint_internal): Update.
7357         (clear_complaints): Update.
7358
7359 2018-05-23  Tom Tromey  <tom@tromey.com>
7360
7361         * complaints.c (counters): New global.
7362         (struct complain): Remove.
7363         (struct complaints) <root>: Remove.
7364         (complaint_sentinel): Remove.
7365         (symfile_complaint_book): Update.
7366         (find_complaint) Remove.
7367         (complaint_internal, clear_complaints): Update.
7368
7369 2018-05-23  Tom Tromey  <tom@tromey.com>
7370
7371         * complaints.c (struct complain) <file, line>: Remove.
7372         (find_complaint): Remove file, line parameters.
7373         (complaint_internal): Update.
7374
7375 2018-05-23  Tom Tromey  <tom@tromey.com>
7376
7377         * complaints.c (vcomplaint): Remove.
7378         (complaint_internal) Merge in contents of vcomplaint.
7379
7380 2018-05-23  Tom Tromey  <tom@tromey.com>
7381
7382         * complaints.c (struct complaints) <explanation>: Remove.
7383         (symfile_explanations): Remove.
7384         (symfile_complaint_book): Update.
7385         (vcomplaint): Update.
7386         (struct explanation): Remove.
7387
7388 2018-05-23  Tom Tromey  <tom@tromey.com>
7389
7390         * complaints.c (symfile_complaints): Remove.
7391         (complaint_internal): Remove "complaints" parameter.
7392         (clear_complaints, vcomplaint): Remove "c" parameter.
7393         (get_complaints): Remove.
7394         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7395         (dwarf2_debug_line_missing_file_complaint)
7396         (dwarf2_debug_line_missing_end_sequence_complaint)
7397         (dwarf2_complex_location_expr_complaint)
7398         (dwarf2_const_value_length_mismatch_complaint)
7399         (dwarf2_section_buffer_overflow_complaint)
7400         (dwarf2_macro_malformed_definition_complaint)
7401         (dwarf2_invalid_attrib_class_complaint)
7402         (create_addrmap_from_index, dw2_symtab_iter_next)
7403         (dw2_expand_marked_cus)
7404         (dw2_debug_names_iterator::find_vec_in_debug_names)
7405         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7406         (create_debug_type_hash_table, init_cutu_and_read_dies)
7407         (partial_die_parent_scope, add_partial_enumeration)
7408         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7409         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7410         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7411         (create_cus_hash_table, create_dwp_hash_table)
7412         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7413         (dwarf2_rnglists_process, dwarf2_ranges_process)
7414         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7415         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7416         (handle_struct_member_die, process_structure_scope)
7417         (read_array_type, read_common_block, read_module_type)
7418         (read_tag_pointer_type, read_typedef, read_base_type)
7419         (read_subrange_type, load_partial_dies, partial_die_info::read)
7420         (partial_die_info::read, partial_die_info::read)
7421         (partial_die_info::read, read_checked_initial_length_and_offset)
7422         (dwarf2_string_attr, read_formatted_entries)
7423         (dwarf_decode_line_header)
7424         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7425         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7426         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7427         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7428         (get_signatured_type, get_DW_AT_signature_type)
7429         (decode_locdesc, file_file_name, consume_improper_spaces)
7430         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7431         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7432         (dwarf2_symbol_mark_computed, set_die_type)
7433         (read_attribute_value): Update.
7434         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7435         Update.
7436         * dbxread.c (unknown_symtype_complaint)
7437         (lbrac_mismatch_complaint, repeated_header_complaint)
7438         (set_namestring, function_outside_compilation_unit_complaint)
7439         (read_dbx_symtab, process_one_symbol): Update.
7440         * gdbtypes.c (stub_noname_complaint): Update.
7441         * windows-nat.c (handle_unload_dll): Update.
7442         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7443         (decode_base_type): Update.
7444         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7445         (eb_complaint, record_include_begin, record_include_end)
7446         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7447         (process_xcoff_symbol, read_symbol)
7448         (function_outside_compilation_unit_complaint)
7449         (scan_xcoff_symtab): Update.
7450         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7451         * buildsym.c (finish_block_internal, make_blockvector)
7452         (end_symtab_get_static_block, augment_type_symtab): Update.
7453         * dtrace-probe.c (dtrace_process_dof)
7454         (dtrace_static_probe_ops::get_probes): Update.
7455         * complaints.h (struct complaint): Don't declare.
7456         (symfile_complaints): Remove.
7457         (complaint_internal): Remove "complaints" parameter.
7458         (complaint): Likewise.
7459         (clear_complaints): Likewise.
7460         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7461         (reread_symbols): Update.
7462         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7463         (dwarf2_frame_cache, decode_frame_entry): Update.
7464         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7465         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7466         (info_selectors_command): Update.
7467         * macrotab.c (macro_include, check_for_redefinition)
7468         (macro_undef): Update.
7469         * objfiles.c (filter_overlapping_sections): Update.
7470         * stabsread.c (invalid_cpp_abbrev_complaint)
7471         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7472         (define_symbol, error_type, read_type, rs6000_builtin_type)
7473         (stabs_method_name_from_physname, read_member_functions)
7474         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7475         (attach_fields_to_type, complain_about_struct_wipeout)
7476         (read_range_type, read_args, common_block_start)
7477         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7478         Update.
7479         * mdebugread.c (index_complaint, unknown_ext_complaint)
7480         (basic_type_complaint, bad_tag_guess_complaint)
7481         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7482         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7483         (parse_procedure, parse_lines)
7484         (function_outside_compilation_unit_complaint)
7485         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7486         (bad_tag_guess_complaint, reg_value_complaint): Update.
7487         * cp-support.c (demangled_name_complaint): Update.
7488         * macroscope.c (sal_macro_scope): Update.
7489         * dwarf-index-write.c (class debug_names): Update.
7490
7491 2018-05-23  Tom Tromey  <tom@tromey.com>
7492
7493         * complaints.c (clear_complaints): Remove "noisy" parameter.
7494         * complaints.h (clear_complaints): Update.
7495         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7496         (reread_symbols): Update.
7497
7498 2018-05-23  Tom Tromey  <tom@tromey.com>
7499
7500         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7501         SUBSEQUENT_MESSAGE.
7502         (vcomplaint, clear_complaints): Update.
7503         (symfile_explanations): Remove some messages.
7504
7505 2018-05-23  Tom Tromey  <tom@tromey.com>
7506
7507         * complaints.c (internal_complaint): Remove.
7508         * complaints.h (internal_complaint): Remove.
7509
7510 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7511
7512         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7513
7514 2018-05-22  Pedro Alves  <palves@redhat.com>
7515
7516         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7517         (remote_fileio_badfd, remote_fileio_return_errno)
7518         (remote_fileio_return_success, remote_fileio_func_open)
7519         (remote_fileio_func_open, remote_fileio_func_close)
7520         (remote_fileio_func_read, remote_fileio_func_write)
7521         (remote_fileio_func_lseek, remote_fileio_func_rename)
7522         (remote_fileio_func_unlink, remote_fileio_func_stat)
7523         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7524         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7525         remote_target parameter.
7526         (remote_fio_func_map) <func>: Add remote_target parameter.
7527         (do_remote_fileio_request, remote_fileio_request):
7528         * remote-fileio.h (remote_fileio_request):
7529         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7530         remote_target parameter.
7531         (remote_notif_process, handle_notification): Adjust to pass down
7532         the remote.
7533         (remote_notif_state_allocate): Add remote_target parameter.  Save
7534         it.
7535         * remote-notif.h (struct remote_target): Forward declare.
7536         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7537         remote_target parameter.
7538         (struct remote_notif_state) <remote>: New field.
7539         (remote_notif_ack, remote_notif_parse): Add remote_target
7540         parameter.
7541         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7542         remote_target parameter.
7543         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7544         (threads_listing_context, rmt_thread_action, protocol_feature)
7545         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7546         (packet_result, struct threads_listing_context, remote_state):
7547         Move definitions and declarations higher up.
7548         (remote_target) <~remote_target>: Declare.
7549         (remote_download_command_source, remote_file_put, remote_file_get)
7550         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7551         (remote_hostio_pread_vFile, remote_hostio_send_command)
7552         (remote_hostio_set_filesystem, remote_hostio_open)
7553         (remote_hostio_close, remote_hostio_unlink, remote_state)
7554         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7555         (get_memory_write_packet_size, get_memory_read_packet_size)
7556         (append_pending_thread_resumptions, remote_detach_1)
7557         (append_resumption, remote_resume_with_vcont)
7558         (add_current_inferior_and_thread, wait_ns, wait_as)
7559         (process_stop_reply, remote_notice_new_inferior)
7560         (process_initial_stop_replies, remote_add_thread)
7561         (btrace_sync_conf, remote_btrace_maybe_reopen)
7562         (remove_new_fork_children, kill_new_fork_children)
7563         (discard_pending_stop_replies, stop_reply_queue_length)
7564         (check_pending_events_prevent_wildcard_vcont)
7565         (discard_pending_stop_replies_in_queue, stop_reply)
7566         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
7567         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
7568         (remote_interrupt_as, remote_interrupt_ns)
7569         (remote_get_noisy_reply, remote_query_attached)
7570         (remote_add_inferior, remote_current_thread, get_current_thread)
7571         (set_thread, set_general_thread, set_continue_thread)
7572         (set_general_process, write_ptid)
7573         (remote_unpack_thread_info_response, remote_get_threadinfo)
7574         (parse_threadlist_response, remote_get_threadlist)
7575         (remote_threadlist_iterator, remote_get_threads_with_ql)
7576         (remote_get_threads_with_qxfer)
7577         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
7578         (get_offsets, remote_check_symbols, remote_supported_packet)
7579         (remote_query_supported, remote_packet_size)
7580         (remote_serial_quit_handler, remote_detach_pid)
7581         (remote_vcont_probe, remote_resume_with_hc)
7582         (send_interrupt_sequence, interrupt_query)
7583         (remote_notif_get_pending_events, fetch_register_using_p)
7584         (send_g_packet, process_g_packet, fetch_registers_using_g)
7585         (store_register_using_P, store_registers_using_G)
7586         (set_remote_traceframe, check_binary_download)
7587         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
7588         (remote_xfer_live_readonly_partial, remote_read_bytes)
7589         (remote_send_printf, remote_flash_write, readchar)
7590         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
7591         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
7592         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
7593         (extended_remote_disable_randomization, extended_remote_run)
7594         (send_environment_packet, extended_remote_environment_support)
7595         (extended_remote_set_inferior_cwd, remote_write_qxfer)
7596         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
7597         (packet_command): Now methods of ...
7598         (remote_target): ... this class.
7599         (m_remote_state) <remote_target>: New field.
7600         (struct remote_state) <stop_reply_queue,
7601         remote_async_inferior_event_token, wait_forever_enabled_p>: New
7602         fields.
7603         (remote_state::remote_state): Allocate stop_reply_queue.
7604         (remote_state): Delete global.
7605         (get_remote_state_raw): Delete.
7606         (remote_target::get_remote_state): Allocate m_remote_state on
7607         demand.
7608         (get_current_remote_target): New.
7609         (remote_ops, extended_remote_ops): Delete.
7610         (wait_forever_enabled_p, remote_async_inferior_event_token):
7611         Delete, moved to struct remote_state.
7612         (remote_target::close): Delete self.  Destruction bits split to
7613         ...
7614         (remote_target::~remote_target): ... this.
7615         (show_memory_packet_size): Adjust to use
7616         get_current_remote_target.
7617         (struct protocol_feature) <func>: Add remote_target parameter.
7618         All callers adjusted.
7619         (curr_quit_handler_target): New.
7620         (remote_serial_quit_handler): Reimplement.
7621         (remote_target::open_1): Adjust to use get_current_remote_target.
7622         Heap-allocate remote_target/extended_remote_target instances.
7623         (vcont_builder::vcont_builder): Add remote_target parameter, and
7624         save it in m_remote.  All callers adjusted.
7625         (vcont_builder::m_remote): New field.
7626         (vcont_builder::restart, vcont_builder::flush)
7627         (vcont_builder::push_action): Use it.
7628         (remote_target::commit_resume): Use it.
7629         (struct queue_iter_param) <remote>: New field.
7630         (remote_target::remove_new_fork_children): Fill in 'remote' field.
7631         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
7632         (check_pending_event_prevents_wildcard_vcont_callback)
7633         (remote_target::check_pending_events_prevent_wildcard_vcont)
7634         (remote_target::discard_pending_stop_replies)
7635         (remote_target::discard_pending_stop_replies_in_queue)
7636         (remote_target::remote_notif_remove_queued_reply): Fill in
7637         'remote' field.
7638         (remote_notif_get_pending_events): New.
7639         (remote_target::readchar, remote_target::remote_serial_write):
7640         Save/restore curr_quit_handler_target.
7641         (putpkt): New.
7642         (kill_new_fork_children): Fill in 'remote' field.
7643         (packet_command): Use get_current_remote_target, defer to
7644         remote_target method of same name.
7645         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
7646         parameter, and save it in m_remote.  All callers adjusted.
7647         (scoped_remote_fd::release): Use m_remote.
7648         (scoped_remote_fd::m_remote): New field.
7649         (remote_file_put, remote_file_get, remote_file_delete): Use
7650         get_current_remote_target, defer to remote_target method of same
7651         name.
7652         (remote_btrace_reset): Add remote_state paremeter.  Update all
7653         callers.
7654         (remote_async_inferior_event_handler). Pass down 'data'.
7655         (remote_new_objfile): Use get_current_remote_target.
7656         (remote_target::vcont_r_supported): New.
7657         (set_range_stepping): Use get_current_remote_target and
7658         remote_target::vcont_r_supported.
7659         (_initialize_remote): Don't allocate 'remote_state' and
7660         'stop_reply_queue' globals.
7661         * remote.h (struct remote_target): Forward declare.
7662         (getpkt, putpkt, remote_notif_get_pending_events): Add
7663         'remote_target' parameter.
7664
7665 2018-05-22  Pedro Alves  <palves@redhat.com>
7666
7667         * remote.c (vcont_builder): Now a class.  Make all data members
7668         private.
7669         (vcont_builder) <vcont_builder, restart, flush, push_action>:
7670         Declare methods.
7671         (vcont_builder_restart): Rename to ...
7672         (vcont_builder::restart): ... this.
7673         (vcont_builder_flush): Rename to ...
7674         (vcont_builder::flush): ... this.
7675         (vcont_builder_push_action): Rename to ...
7676         (vcont_builder::push_action): ... this.
7677         (remote_target::commit_resume): Adjust.
7678
7679 2018-05-22  Pedro Alves  <palves@redhat.com>
7680
7681         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
7682         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
7683         (get_fixed_memory_packet_size): New.
7684         (get_memory_packet_size): Use it.
7685         (set_memory_packet_size): Don't override the config size with
7686         DEFAULT_MAX_MEMORY_PACKET_SIZE.
7687         (show_memory_packet_size): Use get_fixed_memory_packet_size.
7688         Don't refer to get_memory_packet_size if not connected to a remote
7689         target.  Show "(default)" if configured size is 0.
7690
7691 2018-05-22  Pedro Alves  <palves@redhat.com>
7692
7693         * remote.c (remote_target::mourn_inferior): Move
7694         discard_pending_stop_replies call here from ...
7695         (_initialize_remote): ... here.
7696
7697 2018-05-22  Pedro Alves  <palves@redhat.com>
7698
7699         * remote.c (compare_section_command): Remove set_general_process
7700         call.
7701
7702 2018-05-22  Pedro Alves  <palves@redhat.com>
7703
7704         * remote.c (struct packet_reg, struct remote_arch_state):
7705         Move higher up in the file.
7706         (remote_state) <m_arch_states>: Store remote_arch_state values
7707         instead of remote_arch_state pointers.
7708         (remote_state::get_remote_arch_state): Adjust.
7709
7710 2018-05-22  Pedro Alves  <palves@redhat.com>
7711
7712         * remote.c: Include <unordered_map>.
7713         (remote_state): Now a class.
7714         (remote_state) <get_remote_arch_state>: Declare method.
7715         <get_remote_arch_state>: New field.
7716         (remote_arch_state) <remote_arch_state>: Declare ctor.
7717         <regs>: Now a unique_ptr.
7718         (remote_gdbarch_data_handle): Delete.
7719         (get_remote_arch_state): Delete.
7720         (remote_state::get_remote_arch_state): New.
7721         (get_remote_state): Adjust to call remote_state's
7722         get_remote_arch_state method.
7723         (init_remote_state): Delete, bits factored out to ...
7724         (remote_arch_state::remote_arch_state): ... this new method.
7725         (get_remote_packet_size, get_memory_packet_size)
7726         (process_g_packet, remote_target::fetch_registers)
7727         (remote_target::prepare_to_store, store_registers_using_G)
7728         (remote_target::store_registers, remote_target::get_trace_status):
7729         Adjust to call remote_state's method.
7730         (_initialize_remote): Remove reference to
7731         remote_gdbarch_data_handle.
7732
7733 2018-05-22  Pedro Alves  <palves@redhat.com>
7734
7735         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
7736         pread>: New method declarations.
7737         (remote_target::open_1): Adjust.
7738         (readahead_cache_invalidate): Rename to ...
7739         (readahead_cache::invalidate): ... this, and adjust to be a class
7740         method.
7741         (readahead_cache_invalidate_fd): Rename to ...
7742         (readahead_cache::invalidate_fd): ... this, and adjust to be a
7743         class method.
7744         (remote_hostio_pwrite): Adjust.
7745         (remote_hostio_pread_from_cache): Rename to ...
7746         (readahead_cache::pread): ... this, and adjust to be a class
7747         method.
7748         (remote_hostio_close): Adjust.
7749
7750 2018-05-22  Pedro Alves  <palves@redhat.com>
7751
7752         * remote.c (remote_hostio_close_cleanup): Delete.
7753         (class scoped_remote_fd): New.
7754         (remote_file_put, remote_file_get): Use it.
7755
7756 2018-05-22  Pedro Alves  <palves@redhat.com>
7757
7758         (struct vCont_action_support): Use bool and initialize all fields.
7759         (struct readahead_cache): Initialize all fields.
7760         (remote_state): Use bool and initialize all fields.
7761         (remote_state::remote_state, remote_state::~remote_state): New.
7762         (new_remote_state): Delete.
7763         (_initialize_remote): Use new to allocate remote_state.
7764
7765 2018-05-22  Pedro Alves  <palves@redhat.com>
7766             張俊芝  <zjz@zjz.name>
7767
7768         PR gdb/22973
7769         * c-exp.y: Include "c-support.h".
7770         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
7771         of tolower.  Use c_ident_is_alpha to scan names.
7772         * c-lang.c: Include "c-support.h".
7773         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
7774         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
7775         * c-support.h: New file, with bits factored out from ...
7776         * cp-name-parser.y: ... this file.
7777         Include "c-support.h".
7778         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
7779         c-support.h and renamed.
7780         (symbol_end, yylex): Adjust.
7781
7782 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7783
7784         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
7785         parameter type to CORE_ADDR.
7786         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
7787         parameter type in declaration to CORE_ADDR.
7788         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
7789         target_auxv_search to get AT_HWCAP and use the result to get the
7790         target description.
7791         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
7792         to CORE_ADDR. Remove the cast of the return value to unsigned
7793         long. Fix error predicate of target_auxv_search.
7794         (ppc_linux_nat_target::read_description): Change the type of the
7795         hwcap variable to CORE_ADDR.
7796
7797 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7798
7799         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
7800         if the size of fpscr is larger than 32 bits.
7801
7802 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7803
7804         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
7805         (ppc32_linux_vsxregmap): New global.
7806         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
7807         regcache_supply_regset, and regcache_collect_regset.
7808         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
7809         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
7810         (fetch_vsx_register, store_vsx_register): Remove.
7811         (fetch_vsx_registers): Add regno parameter. Get regset using
7812         ppc_linux_vsxregset. Use regset to supply registers.
7813         (store_vsx_registers): Add regno parameter. Get regset using
7814         ppc_linux_vsxregset. Use regset to collect registers.
7815         (fetch_register): Call fetch_vsx_registers instead of
7816         fetch_vsx_register.
7817         (store_register): Call store_vsx_registers instead of
7818         store_vsx_register.
7819         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
7820         new regno parameter.
7821         (store_ppc_registers): Call store_vsx_registers with -1 for the
7822         new regno parameter.
7823         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
7824         (ppc_collect_vsxregset): Remove.
7825
7826 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7827
7828         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
7829         offset fields.
7830         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
7831         for vector register offset fields.
7832         (ppc64_fbsd_reg_offsets): Likewise.
7833         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7834         to vector register offset fields.
7835         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7836         to vector register offset fields.
7837         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
7838         vector register offset fields.
7839         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
7840         initializers for vector register offset fields.
7841         (rs6000_aix64_reg_offsets): Likewise.
7842         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
7843         (ppc_supply_vrregset): Remove.
7844         (ppc_collect_vrregset): Remove.
7845         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
7846         (ppc_linux_vrregset) : New function.
7847         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
7848         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
7849         (ppc32_linux_vrregset): Remove.
7850         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
7851         and use result instead of ppc32_linux_vrregset.
7852         (ppc32_linux_reg_offsets): Remove initializers for vector register
7853         offset fields.
7854         (ppc64_linux_reg_offsets): Likewise.
7855         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
7856         * ppc-linux-nat.c: Include regset.h.
7857         (gdb_vrregset_t): Adjust comment to account for little-endian
7858         mode.
7859         (supply_vrregset, fill_vrregset): Remove.
7860         (fetch_altivec_register, store_altivec_register): Remove.
7861         (fetch_altivec_registers): Add regno parameter. Get regset using
7862         ppc_linux_vrregset. Use regset to supply registers.
7863         (store_altivec_registers): Add regno parameter. Get regset using
7864         ppc_linux_vrregset. Use regset to collect registers.
7865         (fetch_register): Call fetch_altivec_registers instead of
7866         fetch_altivec_register.
7867         (store_register): Call store_altivec_registers instead of
7868         store_altivec_register.
7869         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
7870         the new regno parameter.
7871         (store_ppc_registers): Call store_altivec_registers with -1 for
7872         the new regno parameter.
7873
7874 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7875
7876         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
7877         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
7878         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
7879         (gdb_vrregset_t): Change array type size to
7880         PPC_LINUX_SIZEOF_VRREGSET.
7881         (gdb_vsxregset_t): Change array type size to
7882         PPC_LINUX_SIZEOF_VSXREGSET.
7883         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
7884         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
7885         PPC_LINUX_SIZEOF_VSXREGSET.
7886
7887 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7888
7889         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
7890         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
7891         nat/ppc-linux.c.
7892         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
7893         ppc_linux_target_wordsize with tid.
7894         (ppc_linux_nat_target::read_description): Call ppc_linux_target
7895         wordsize with tid.
7896         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
7897         (ppc64_64bit_inferior_p): Add static and inline specifiers.
7898         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
7899         tid parameter. Remove static specifier.
7900         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
7901         (ppc_linux_target_wordsize): New declaration.
7902
7903 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7904
7905         * arch/ppc-linux-common.c: New file.
7906         * arch/ppc-linux-common.h: New file.
7907         * arch/ppc-linux-tdesc.h: New file.
7908         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
7909         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
7910         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
7911         arch/ppc-linux-tdesc.h.
7912         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
7913         arch/ppc-linux-tdesc.h.
7914         (ppc_linux_nat_target::read_description): Remove target
7915         description matching code. Fill a ppc_linux_features struct and
7916         call ppc_linux_match_description with it. Move comment about ISA
7917         2.05 to ppc-linux-common.c.
7918         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
7919         arch/ppc-linux-tdesc.h.
7920         (ppc_linux_core_read_description): Remove target description
7921         matching code. Fill a ppc_linux_features struct and call
7922         ppc_linux_match_description with it.
7923         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
7924         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
7925         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
7926         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
7927         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
7928         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
7929         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
7930         (tdesc_powerpc_e500l): Remove.
7931
7932 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
7933
7934         * ada-lang.c (catch_assert_command): Pass empty string instead
7935         of NULL for excep_string argument.
7936
7937 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7938
7939         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
7940         the width of the requested register exceeds the width of the
7941         `ptrace' data type.
7942
7943 2018-05-21  Tom Tromey  <tom@tromey.com>
7944
7945         * printcmd.c (output_command): Remove.
7946         (output_command_const): Rename to output_command.
7947         * valprint.h (output_command): Rename from output_command_const.
7948         * tracepoint.c (trace_dump_actions): Call output_command.
7949
7950 2018-05-21  Tom Tromey  <tom@tromey.com>
7951
7952         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
7953         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
7954         * ada-lang.h (create_ada_exception_catchpoint): Update.
7955         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
7956         std::string.
7957         (create_excep_cond_exprs, ~ada_catchpoint)
7958         (should_stop_exception, print_one_exception)
7959         (print_mention_exception, print_recreate_exception): Update.
7960         (ada_get_next_arg): Remove.
7961         (catch_ada_exception_command_split): Use std::string.  Change type
7962         of "excep_string", "cond_string".
7963         (catch_ada_exception_command): Update.
7964         (create_ada_exception_catchpoint): Change type of excep_string.
7965         (ada_exception_sal): Remove excep_string parameter.
7966         (~ada_catchpoint): Remove.
7967
7968 2018-05-21  Tom Tromey  <tom@tromey.com>
7969
7970         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
7971         cleanup.
7972
7973 2018-05-21  Tom Tromey  <tom@tromey.com>
7974
7975         * ada-lang.c (ada_exception_message_1, ada_exception_message):
7976         Return unique_xmalloc_ptr.
7977         (print_it_exception): Update.
7978
7979 2018-05-21  Tom Tromey  <tom@tromey.com>
7980
7981         * tracepoint.c (trace_dump_actions): Use std::string.
7982
7983 2018-05-21  Tom Tromey  <tom@tromey.com>
7984
7985         * symfile.c (reread_symbols): Use std::string for original_name.
7986
7987 2018-05-21  Tom Tromey  <tom@tromey.com>
7988
7989         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
7990         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
7991         constructor.
7992
7993 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
7994
7995         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
7996         instance to...
7997         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
7998         * objfiles.c (get_objfile_bfd_data): Allocate
7999         objfile_per_bfd_storage with obstack_new when allocating on
8000         obstack.
8001
8002 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8003
8004         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8005         OBSTACK_ZALLOC.
8006         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8007         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8008         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8009         (add_pending): Likewise.
8010         (parse_symbol): Likewise.
8011         (parse_partial_symbols): Likewise.
8012         (psymtab_to_symtab_1): Likewise.
8013         (new_psymtab): Likewise.
8014         (elfmdebug_build_psymtabs): Likewise.
8015         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8016         * objfiles.c (get_objfile_bfd_data): Likewise.
8017         (objfile_register_static_link): Likewise.
8018         * psymtab.c (allocate_psymtab): Likewise.
8019         * stabsread.c (read_member_functions): Likewise.
8020         * xcoffread.c (xcoff_end_psymtab): Likewise.
8021
8022 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8023
8024         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8025         compiler supports std::is_trivially_constructible.
8026         * common/poison.h: Include obstack.h.
8027         (IsMallocable): Define to is_trivially_constructible if the
8028         compiler supports it, define to true_type otherwise.
8029         (xobnew): New.
8030         (XOBNEW): Redefine.
8031         (xobnewvec): New.
8032         (XOBNEWVEC): Redefine.
8033         * gdb_obstack.h (obstack_zalloc): New.
8034         (OBSTACK_ZALLOC): Redefine.
8035         (obstack_calloc): New.
8036         (OBSTACK_CALLOC): Redefine.
8037         (obstack_new): New.
8038         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8039         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8040         gdbarch.c.
8041         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8042         obstack_calloc/obstack_zalloc.
8043         (gdbarch_obstack_zalloc): Remove.
8044         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8045
8046 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8047
8048         * stack.c (backtrace_command_1): Remove useless variable int i.
8049
8050 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8051
8052         * stack.c (print_frame_info): Fix comment.
8053
8054 2018-05-18  Tom Tromey  <tom@tromey.com>
8055
8056         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8057         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8058         (~dwarf2_per_objfile): Update
8059         (dwarf2_get_dwz_file): Use new.
8060         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8061         unique_ptr.
8062
8063 2018-05-18  Tom Tromey  <tom@tromey.com>
8064
8065         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8066         unique_ptr.
8067         * dwarf2read.c (struct dwp_file): Add constructor and
8068         initializers.
8069         (open_and_init_dwp_file): Return a unique_ptr.
8070         (dwarf2_per_objfile, create_dwp_hash_table)
8071         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8072         (lookup_dwo_unit_in_dwp): Update.
8073         (open_and_init_dwp_file, get_dwp_file): Update.
8074
8075 2018-05-18  Tom Tromey  <tom@tromey.com>
8076
8077         * dwarf2read.c (dwarf2_per_objfile): Update.
8078         (struct mapped_index): Add initializers.
8079         (dwarf2_read_index): Use new.
8080         (dw2_symtab_iter_init): Update.
8081         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8082         unique_ptr.
8083
8084 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8085
8086         * dwarf2read.c (mapped_index) <total_size>: Remove.
8087
8088 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8089
8090         * unittests/format_pieces-selftests.c (test_format_specifier):
8091         Add ARI comments.
8092
8093 2018-05-18  Tom Tromey  <tom@tromey.com>
8094
8095         * c-typeprint.c (maybe_print_hole): New function.
8096         (c_print_type_struct_field_offset): Update.
8097         (c_type_print_base_struct_union): Call maybe_print_hole.
8098
8099 2018-05-17  Keith Seitz  <keiths@redhat.com>
8100
8101         * breakpoint.c (build_bpstat_chain): New function, moved from
8102         bpstat_stop_status.
8103         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8104         If no stop chain is passed, call build_bpstat_chain to build it.
8105         * breakpoint.h (build_bpstat_chain): Declare.
8106         (bpstat_stop_status): Move documentation here from breakpoint.c.
8107         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8108         build the stop chain and pass it to skip_inline_frames.
8109         Pass this stop chain to bpstat_stop_status.
8110         * inline-frame.c: Include breakpoint.h.
8111         (stopped_by_user_bp_inline_frame): New function.
8112         (skip_inline_frames): Add parameter `stop_chain'.
8113         Move documention to inline-frame.h.
8114         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8115         whether the frame should be elided.
8116         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8117         Add moved documentation and update for new parameter.
8118
8119 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8120
8121         PR cli/14975
8122         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8123         unittests/format_pieces-selftests.c.
8124         * common/format.h (format_piece) <operator==>: New.
8125         (format_pieces) <operator[]>: Remove.
8126         * common/format.c (format_pieces::format_pieces): Handle \e.
8127         * unittests/format_pieces-selftests.c: New.
8128
8129 2018-05-17  Tom Tromey  <tom@tromey.com>
8130
8131         PR symtab/23010:
8132         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8133         (dw2_instantiate_symtab): Add skip_partial parameter.
8134         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8135         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8136         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8137         (dw2_expand_symtabs_matching_one)
8138         (dw2_find_pc_sect_compunit_symtab)
8139         (dw2_debug_names_lookup_symbol)
8140         (dw2_debug_names_expand_symtabs_for_function): Update.
8141         (init_cutu_and_read_dies): Add skip_partial parameter.
8142         (process_psymtab_comp_unit, build_type_psymtabs_1)
8143         (process_skeletonless_type_unit, load_partial_comp_unit)
8144         (psymtab_to_symtab_1): Update.
8145         (load_full_comp_unit): Add skip_partial parameter.
8146         (process_imported_unit_die, dwarf2_read_addr_index)
8147         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8148         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8149         (read_signatured_type): Update.
8150
8151 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8152
8153         * value.c (release_value): Remove unused variable.
8154         (record_latest_value): Likewise.
8155         (access_value_history): Likewise.
8156         (preserve_values): Likewise.
8157
8158 2018-05-17  Tom Tromey  <tom@tromey.com>
8159
8160         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8161         Initialize.
8162
8163 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8164
8165         PR gdb/22286
8166         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8167         Also handle registers whose width is not a multiple of
8168         PTRACE_TYPE_RET.
8169         (linux_nat_trad_target::store_register): Likewise.
8170
8171 2018-05-16  Tom Tromey  <tom@tromey.com>
8172
8173         * gdbcore.h (core_bfd): Redefine.
8174         * corelow.c (core_target::close): Update.
8175         (core_target_open): Update.
8176         * progspace.h (struct program_space) <cbfd>: Now a
8177         gdb_bfd_ref_ptr.
8178
8179 2018-05-16  Tom Tromey  <tom@tromey.com>
8180
8181         PR cli/19551:
8182         * symfile-add-flags.h (enum symfile_add_flags)
8183         <SYMFILE_NOT_FILENAME>: New constant.
8184         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8185         objfile name from BFD.
8186         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8187         * minidebug.c (find_separate_debug_file_in_section): Put
8188         ".gnu_debugdata" into BFD's file name.
8189
8190 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8191
8192         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8193         Remove.
8194
8195 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8196
8197         PR binutils/21446
8198         * aarch64-tdep.c (aarch64_analyze_prologue,
8199         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8200         Indicate not interested in errors.
8201
8202 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8203
8204         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8205         Supply the MIPS_ZERO_REGNUM register.
8206
8207 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8208
8209         * mips-tdep.c (mask_address_var): Make variable static.
8210
8211 2018-05-14  Tom Tromey  <tom@tromey.com>
8212
8213         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8214
8215 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8216
8217         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8218         FXSAVE_ADDR for the mxcsr register.
8219
8220 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8221
8222         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8223
8224 2018-05-11  Pedro Alves  <palves@redhat.com>
8225
8226         * corelow.c (core_target) <core_target>: No longer inline.
8227         Initialize m_core_gdbarch, m_core_vec and build the section table
8228         here.
8229         <~core_target>: New.
8230         <core_gdbarch, get_core_register_section>: New methods.
8231         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8232         factored out from ...
8233         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8234         (core_ops): Delete.
8235         (sniff_core_bfd): Add gdbarch parameter.
8236         (core_close): Delete, merged into ...
8237         (core_target::close): ... here.  Delete self.
8238         (core_close_cleanup): Delete.
8239         (core_target_open): Allocate a core_target on the heap.  Use a
8240         unique_ptr instead of a cleanup.  Bits moved into the core_target
8241         ctor.  Adjust to use core_target methods instead of globals.
8242         (get_core_register_section): Rename to ...
8243         (core_target::get_core_register_section): ... this and adjust.
8244         (struct get_core_registers_cb_data): New.
8245         (get_core_registers_cb): Use it.  Use bool.
8246         (core_target::fetch_registers, core_target::files_info)
8247         (core_target::xfer_partial, core_target::read_description)
8248         (core_target::pid_to, core_target::thread_name): Adjust to
8249         reference class fields instead of globals.
8250         * target.h (struct target_ops_deleter, target_ops_up): New.
8251
8252 2018-05-11  Pedro Alves  <palves@redhat.com>
8253
8254         * corefile.c (core_file_command): Move to corelow.c.
8255         * corelow.c (the_core_target): Delete.
8256         (core_file_command): Moved from corefile.c.  Check exec_bfd
8257         instead of the_core_target.  Use target_detach instead of calling
8258         into the_core_target directly.
8259         (maybe_say_no_core_file_now): New.
8260         (core_target::detach): Use it.
8261         (_initialize_corelow): Remove references to the_core_target.
8262         * gdbcore.h (the_core_target): Delete.
8263
8264 2018-05-11  Tom Tromey  <tromey@redhat.com>
8265             Pedro Alves  <palves@redhat.com>
8266
8267         * corefile.c (core_bfd): Remove.
8268         * gdbcore.h (core_bfd): Now a macro.
8269         * progspace.h (struct program_space) <cbfd>: New field.
8270
8271 2018-05-11  Tom Tromey  <tom@tromey.com>
8272
8273         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8274         gdb::def_vector.
8275
8276 2018-05-10  Tom Tromey  <tom@tromey.com>
8277
8278         * configure: Rebuild.
8279         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8280
8281 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8282
8283         PR server/23158:
8284         * regformats/regdat.sh: Adjust script, following the addition
8285         of the new expedite_regs parameter to init_target_desc.
8286
8287 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8288     
8289         PR gdb/23127
8290         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8291         set_gdbarch_significant_addr_bit.
8292         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8293         set_gdbarch_significant_addr_bit.
8294         * utils.c (address_significant): Update to sign extend addr.
8295
8296 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8297
8298         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8299         (xtensa_linux_init_abi): Limit tdep->num_regs by
8300         tdep->num_nopriv_regs.
8301         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8302         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8303         not initialized.
8304
8305 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8306
8307         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8308
8309 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8310
8311         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8312         (I387_MXCSR_INIT_VAL): New constant.
8313         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8314         buffer if it was supplied by the inferior.
8315         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8316         (i387_xsave_get_clear_bv): New function.
8317         (i387_supply_xsave): Only read x87 control registers from the
8318         xsave buffer if the feature is enabled, and the state will have
8319         been written, otherwise, provide a suitable default.
8320         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8321         including x87 control registers.  Update control registers if they
8322         have changed from the default value, and mark features as enabled
8323         as required.
8324         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8325
8326 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8327
8328         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8329
8330 2018-05-07  Tom Tromey  <tom@tromey.com>
8331
8332         * configure: Rebuild.
8333         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8334
8335 2018-05-07  Tom Tromey  <tom@tromey.com>
8336
8337         PR tdep/20362:
8338         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8339         bit.  Use correct value for VDIV.
8340
8341 2018-05-04  Tom Tromey  <tom@tromey.com>
8342
8343         * configure: Rebuild.
8344         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8345
8346 2018-05-04  Tom Tromey  <tom@tromey.com>
8347
8348         * linux-record.c (record_linux_system_call) <case
8349         RECORD_SYS_RECVFROM>: Add "break".
8350
8351 2018-05-04  Tom Tromey  <tom@tromey.com>
8352
8353         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8354         Add missing "break".
8355         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8356         Add missing "break".
8357
8358 2018-05-04  Tom Tromey  <tom@tromey.com>
8359
8360         * rs6000-tdep.c (ppc_process_record_op4)
8361         (ppc_process_record_op63): Add fall-through comment.
8362
8363 2018-05-04  Tom Tromey  <tom@tromey.com>
8364
8365         * i386-tdep.c (i386_process_record): Add fall-through comment.
8366
8367 2018-05-04  Tom Tromey  <tom@tromey.com>
8368
8369         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8370         comment.
8371
8372 2018-05-04  Tom Tromey  <tom@tromey.com>
8373
8374         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8375         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8376         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8377         comment.
8378         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8379         comment.
8380         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8381         comment.
8382
8383 2018-05-04  Tom Tromey  <tom@tromey.com>
8384
8385         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8386
8387 2018-05-04  Tom Tromey  <tom@tromey.com>
8388
8389         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8390         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8391         * symfile.c (section_is_mapped): Fix fall-through comment.
8392         * stabsread.c (define_symbol, read_member_functions): Fix
8393         fall-through comment.
8394         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8395         comment.
8396         * remote.c (remote_wait_as): Fix fall-through comment.
8397         * p-exp.y (yylex): Fix fall-through comment.
8398         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8399         comment.
8400         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8401         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8402         * jv-exp.y (yylex): Fix fall-through comment.
8403         * go-exp.y (lex_one_token): Fix fall-through comment.
8404         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8405         fall-through comment.
8406         * f-exp.y (yylex): Fix fall-through comment.
8407         * dwarf2read.c (process_die): Fix fall-through comments.
8408         * dbxread.c (process_one_symbol): Fix fall-through comment.
8409         * d-exp.y (lex_one_token): Fix fall-through comment.
8410         * cp-name-parser.y (yylex): Fix fall-through comment.
8411         * coffread.c (coff_symtab_read): Fix fall-through comment.
8412         * c-exp.y (lex_one_token): Fix fall-through comment.
8413         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8414         comment.
8415         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8416         comment.
8417
8418 2018-05-04  Tom Tromey  <tom@tromey.com>
8419
8420         PR python/22730:
8421         * NEWS: Mention gdb.execute change.
8422         * gdbcmd.h (execute_control_command): Don't declare.
8423         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8424         execute_control_commands, execute_control_commands_to_string.
8425         * cli/cli-script.h (execute_control_commands)
8426         (execute_control_commands_to_string): Declare.
8427         (execute_control_command): Add from_tty parameter.
8428         * cli/cli-script.c (execute_control_commands)
8429         (execute_control_commands_to_string): New functions.
8430         (execute_user_command): Use execute_control_commands.
8431         (execute_control_command_1): Add "from_tty" parameter.  Update.
8432         (execute_control_command): Likewise.
8433
8434 2018-05-04  Tom Tromey  <tom@tromey.com>
8435
8436         PR python/22731:
8437         * NEWS: Mention that breakpoint commands are writable.
8438         * python/py-breakpoint.c (bppy_set_commands): New function.
8439         (breakpoint_object_getset) <"commands">: Use it.
8440
8441 2018-05-04  Tom Tromey  <tom@tromey.com>
8442
8443         * tracepoint.c (actions_command): Update.
8444         * mi/mi-cmd-break.c (mi_command_line_array)
8445         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8446         (mi_read_next_line): Remove.
8447         (mi_cmd_break_commands): Update.
8448         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8449         function_view.
8450         * cli/cli-script.c (get_command_line): Update.
8451         (process_next_line): Use function_view.  Constify.
8452         (recurse_read_control_structure, read_command_lines)
8453         (read_command_lines_1): Change argument types to function_view.
8454         (do_define_command, document_command): Update.
8455         * breakpoint.h (check_tracepoint_command): Don't declare.
8456         * breakpoint.c (check_tracepoint_command): Remove.
8457         (commands_command_1, create_tracepoint_from_upload): Update.
8458
8459 2018-05-04  Tom Tromey  <tom@tromey.com>
8460
8461         PR gdb/11750:
8462         * cli/cli-script.h (enum command_control_type) <define_control>:
8463         New constant.
8464         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8465         (build_command_line, execute_control_command_1)
8466         (process_next_line): Likewise.
8467         (do_define_command): New function, extracted from define_command.
8468         (define_command): Use it.
8469
8470 2018-05-04  Tom Tromey  <tom@tromey.com>
8471
8472         * tracepoint.c (actions_command): Update.
8473         * cli/cli-script.h (read_command_lines): Update.
8474         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8475         (MAX_TMPBUF): Remove define.
8476         (define_command): Use string_printf.
8477         (document_command): Likewise.
8478         * breakpoint.c (commands_command_1): Update.
8479
8480 2018-05-04  Tom Tromey  <tom@tromey.com>
8481
8482         * top.c (execute_command): Update.
8483         * cli/cli-script.h (print_command_lines): Now varargs.
8484         * cli/cli-script.c (print_command_lines): Now varargs.
8485         (execute_control_command_1) <case while_control, case if_control>:
8486         Update.
8487
8488 2018-05-04  Tom Tromey  <tom@tromey.com>
8489
8490         * tracepoint.c (all_tracepoint_actions): Rename from
8491         all_tracepoint_actions_and_cleanup.  Change return type.
8492         (actions_command, encode_actions_1, encode_actions)
8493         (trace_dump_actions, tdump_command): Update.
8494         * remote.c (remote_download_command_source): Update.
8495         * python/python.c (gdbpy_eval_from_control_command)
8496         (python_command, python_interactive_command): Update.
8497         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8498         * guile/guile.c (guile_command)
8499         (gdbscm_eval_from_control_command, guile_command): Update.
8500         * compile/compile.c (compile_code_command)
8501         (compile_print_command, compile_to_object): Update.
8502         * cli/cli-script.h (struct command_lines_deleter): New.
8503         (counted_command_line): New typedef.
8504         (struct command_line): Add constructor, destructor.
8505         <body_list>: Remove.
8506         <body_list_0, body_list_1>: New members.
8507         (command_line_up): Remove typedef.
8508         (read_command_lines, read_command_lines_1, get_command_line):
8509         Update.
8510         (copy_command_lines): Don't declare.
8511         * cli/cli-script.c (build_command_line): Use "new".
8512         (get_command_line): Return counted_command_line.
8513         (print_command_lines, execute_user_command)
8514         (execute_control_command_1, while_command, if_command): Update.
8515         (realloc_body_list): Remove.
8516         (process_next_line, recurse_read_control_structure): Update.
8517         (read_command_lines, read_command_lines_1): Return counted_command_line.
8518         (free_command_lines): Use "delete".
8519         (copy_command_lines): Remove.
8520         (define_command, document_command, show_user_1): Update.
8521         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8522         a counted_command_line.
8523         * breakpoint.h (counted_command_line): Remove typedef.
8524         (breakpoint_set_commands): Update.
8525         * breakpoint.c (check_no_tracepoint_commands)
8526         (validate_commands_for_breakpoint): Update.
8527         (breakpoint_set_commands): Change commands to be a
8528         counted_command_line.
8529         (commands_command_1, update_dprintf_command_list)
8530         (create_tracepoint_from_upload): Update.
8531
8532 2018-05-04  Tom Tromey  <tom@tromey.com>
8533
8534         * cli/cli-decode.h (cmd_list_element): New constructor.
8535         (~cmd_list_element): New destructor.
8536         (struct cmd_list_element): Add initializers.
8537         * cli/cli-decode.c (do_add_cmd): Use "new".
8538         (delete_cmd): Use "delete".
8539
8540 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8541             Pedro Alves <palves@redhat.com>
8542
8543         PR breakpoints/19806 and support for PR external/20207.
8544         * NEWS: Mention Aarch64 watchpoint improvements.
8545         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8546         watchpoints and PR external/20207 watchpoints.
8547         * nat/aarch64-linux-hw-point.c
8548         (kernel_supports_any_contiguous_range): New.
8549         (aarch64_watchpoint_offset): New.
8550         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8551         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8552         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8553         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8554         next_addr_orig_p.  Support PR external/20207 watchpoints.
8555         (aarch64_downgrade_regs): New.
8556         (aarch64_dr_state_insert_one_point): New parameters offset and
8557         addr_orig.
8558         (aarch64_dr_state_remove_one_point): Likewise.
8559         (aarch64_handle_breakpoint): Update caller.
8560         (aarch64_handle_aligned_watchpoint): Likewise.
8561         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
8562         aligned_offset.
8563         (aarch64_linux_set_debug_regs): Remove const from state.  Call
8564         aarch64_downgrade_regs.
8565         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
8566         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
8567         (DR_CONTROL_MASK): ... this.
8568         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
8569         (unsigned int aarch64_watchpoint_offset): New prototype.
8570         (aarch64_linux_set_debug_regs): Remove const from state.
8571         * utils.c (align_up, align_down): Move to ...
8572         * common/common-utils.c (align_up, align_down): ... here.
8573         * utils.h (align_up, align_down): Move to ...
8574         * common/common-utils.h (align_up, align_down): ... here.
8575
8576 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
8577
8578         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
8579         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
8580         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
8581         Re-implement to match the ABI as summarized in GCC's
8582         gcc/config/sparc/sparc.c.  All callers updated.
8583         (sparc32_store_arguments): Remove assertion.
8584
8585 2018-05-04  Tom Tromey  <tom@tromey.com>
8586
8587         * printcmd.c: Don't include tui.h.
8588         (decode_format): Use skip_spaces.
8589
8590 2018-05-04  Tom Tromey  <tom@tromey.com>
8591
8592         PR gdb/22619:
8593         * printcmd.c (last_count): New global.
8594         (x_command): Use saved count when repeating.
8595
8596 2018-05-04  Tom Tromey  <tom@tromey.com>
8597
8598         * nto-procfs.c (do_closedir_cleanup): Remove.
8599         (procfs_pidlist): Use gdb_dir_up.
8600         * procfs.c (do_closedir_cleanup): Remove.
8601         (proc_update_threads): Use gdb_dir_up.
8602         * common/filestuff.h (struct gdb_dir_deleter): New.
8603         (gdb_dir_up): New typedef.
8604
8605 2018-05-04  Tom Tromey  <tom@tromey.com>
8606
8607         * ada-lang.c (print_mention_exception): Use std::string.
8608
8609 2018-05-04  Tom Tromey  <tom@tromey.com>
8610
8611         * ada-lang.c (create_excep_cond_exprs): Update.
8612         (ada_exception_catchpoint_cond_string): Use std::string.
8613
8614 2018-05-04  Tom Tromey  <tom@tromey.com>
8615
8616         * ada-lang.c (xget_renaming_scope): Return std::string.
8617         (old_renaming_is_invisible): Update.
8618
8619 2018-05-04  Tom Tromey  <tom@tromey.com>
8620
8621         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
8622         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
8623
8624 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
8625
8626         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
8627
8628 2018-05-04  Tom Tromey  <tom@tromey.com>
8629
8630         * remote.c (remote_query_supported_append): Change type.
8631         (remote_check_symbols): Update.
8632
8633 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
8634
8635         PR gdb/11420
8636         * configure.ac: Prepend libpython.
8637         * python/python-config.py: Likewise.
8638         * configure: Regenerate.
8639
8640 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
8641
8642         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
8643
8644 2018-05-03  Pedro Alves  <palves@redhat.com>
8645
8646         * s390-linux-nat.c
8647         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
8648         override.  Write 'true' instead of '1'.
8649         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
8650         declaration.
8651
8652 2018-05-02  Pedro Alves  <palves@redhat.com>
8653
8654         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
8655         add_inf_child_target.
8656         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
8657         add_inf_child_target.
8658         * aix-thread.c (aix_thread_target_info): New.
8659         (aix_thread_target) <shortname, longname, doc>: Delete.
8660         <info>: New.
8661         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
8662         add_inf_child_target.
8663         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
8664         add_inf_child_target.
8665         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
8666         add_inf_child_target.
8667         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
8668         add_inf_child_target.
8669         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
8670         add_inf_child_target.
8671         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
8672         add_inf_child_target.
8673         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
8674         add_inf_child_target.
8675         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
8676         add_inf_child_target.
8677         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
8678         add_inf_child_target.
8679         * bfd-target.c (target_bfd_target_info): New.
8680         (target_bfd) <shortname, longname, doc>: Delete.
8681         <info>: New.
8682         * bsd-kvm.c (bsd_kvm_target_info): New.
8683         (bsd_kvm_target) <shortname, longname, doc>: Delete.
8684         <info>: New.
8685         (bsd_kvm_target::open): Rename to ...
8686         (bsd_kvm_target_open): ... this.  Adjust.
8687         * bsd-uthread.c (bsd_uthread_target_info): New.
8688         (bsd_uthread_target) <shortname, longname, doc>: Delete.
8689         <info>: New.
8690         * corefile.c (core_file_command): Adjust.
8691         * corelow.c (core_target_info): New.
8692         (core_target) <shortname, longname, doc>: Delete.
8693         <info>: New.
8694         (core_target::open): Rename to ...
8695         (core_target_open): ... this.  Adjust.
8696         * ctf.c (ctf_target_info): New.
8697         (ctf_target) <shortname, longname, doc>: Delete.
8698         <info>: New.
8699         (ctf_target::open): Rename to ...
8700         (ctf_target_open): ... this.
8701         (_initialize_ctf): Adjust.
8702         * exec.c (exec_target_info): New.
8703         (exec_target) <shortname, longname, doc>: Delete.
8704         <info>: New.
8705         (exec_target::open): Rename to ...
8706         (exec_target_open): ... this.
8707         * gdbcore.h (core_target_open): Declare.
8708         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
8709         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
8710         add_inf_child_target.
8711         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
8712         add_inf_child_target.
8713         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
8714         add_inf_child_target.
8715         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
8716         add_inf_child_target.
8717         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
8718         add_inf_child_target.
8719         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
8720         add_inf_child_target.
8721         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
8722         add_inf_child_target.
8723         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
8724         add_inf_child_target.
8725         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
8726         add_inf_child_target.
8727         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
8728         add_inf_child_target.
8729         * inf-child.c (inf_child_target_info): New.
8730         (inf_child_target::info): New.
8731         (inf_child_open_target): Remove 'target' parameter.  Use
8732         get_native_target instead.
8733         (inf_child_target::open): Delete.
8734         (add_inf_child_target): New.
8735         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
8736         Delete.
8737         <info>: New.
8738         (add_inf_child_target): Declare.
8739         (inf_child_open_target): Declare.
8740         * linux-thread-db.c (thread_db_target_info): New.
8741         (thread_db_target) <shortname, longname, doc>: Delete.
8742         <info>: New.
8743         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
8744         add_inf_child_target.
8745         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
8746         add_inf_child_target.
8747         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
8748         add_inf_child_target.
8749         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
8750         add_inf_child_target.
8751         * make-target-delegates (print_class): Adjust.
8752         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
8753         add_inf_child_target.
8754         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
8755         add_inf_child_target.
8756         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
8757         add_inf_child_target.
8758         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
8759         add_inf_child_target.
8760         * nto-procfs.c (nto_native_target_info): New.
8761         (nto_procfs_target_native) <shortname, longname, doc>:
8762         Delete.
8763         <info>: New.
8764         (nto_procfs_target_info): New.
8765         (nto_procfs_target_procfs) <shortname, longname, doc>:
8766         Delete.
8767         <info>: New.
8768         (init_procfs_targets): Adjust.
8769         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
8770         add_inf_child_target.
8771         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
8772         add_inf_child_target.
8773         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
8774         add_inf_child_target.
8775         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
8776         add_inf_child_target.
8777         * ravenscar-thread.c (ravenscar_target_info): New.
8778         (ravenscar_thread_target) <shortname, longname, doc>:
8779         Delete.
8780         <info>: New.
8781         * record-btrace.c (record_btrace_target_info):
8782         (record_btrace_target) <shortname, longname, doc>: Delete.
8783         <info>: New.
8784         (record_btrace_target::open): Rename to ...
8785         (record_btrace_target_open): ... this.  Adjust.
8786         * record-full.c (record_longname, record_doc): New.
8787         (record_full_base_target) <shortname, longname, doc>: Delete.
8788         <info>: New.
8789         (record_full_target_info): New.
8790         (record_full_target): <shortname>: Delete.
8791         <info>: New.
8792         (record_full_core_open_1, record_full_open_1): Update comments.
8793         (record_full_base_target::open): Rename to ...
8794         (record_full_open): ... this.
8795         (cmd_record_full_restore): Update.
8796         (_initialize_record_full): Update.
8797         * remote-sim.c (remote_sim_target_info): New.
8798         (gdbsim_target) <shortname, longname, doc>: Delete.
8799         <info>: New.
8800         (gdbsim_target::open): Rename to ...
8801         (gdbsim_target_open): ... this.
8802         (_initialize_remote_sim): Adjust.
8803         * remote.c (remote_doc): New.
8804         (remote_target_info): New.
8805         (remote_target) <shortname, longname, doc>: Delete.
8806         <info>: New.
8807         (extended_remote_target_info): New.
8808         (extended_remote_target) <shortname, longname, doc>: Delete.
8809         <info>: New.
8810         (remote_target::open_1): Make static.  Adjust.
8811         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
8812         * s390-linux-nat.c (_initialize_s390_nat): Use
8813         add_inf_child_target.
8814         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
8815         add_inf_child_target.
8816         * sol-thread.c (thread_db_target_info): New.
8817         (sol_thread_target) <shortname, longname, doc>: Delete.
8818         <info>: New.
8819         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
8820         add_inf_child_target.
8821         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
8822         add_inf_child_target.
8823         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
8824         add_inf_child_target.
8825         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
8826         add_inf_child_target.
8827         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
8828         add_inf_child_target.
8829         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
8830         add_inf_child_target.
8831         * spu-linux-nat.c (_initialize_spu_nat): Use
8832         add_inf_child_target.
8833         * spu-multiarch.c (spu_multiarch_target_info): New.
8834         (spu_multiarch_target) <shortname, longname, doc>: Delete.
8835         <info>: New.
8836         * target-delegates.c: Regenerate.
8837         * target.c: Include <unordered_map>.
8838         (target_ops_p): Delete.
8839         (DEF_VEC_P(target_ops_p)): Delete.
8840         (target_factories): New.
8841         (test_target_info): New.
8842         (test_target_ops::info): New.
8843         (open_target): Adjust to use target_factories.
8844         (add_target_with_completer): Rename to ...
8845         (add_target): ... this.  Change prototype.  Register target_info
8846         and open callback in target_factories.  Register target_info in
8847         command context instead of target_ops.
8848         (add_target): Delete old implementation.
8849         (add_deprecated_target_alias): Change prototype.  Adjust.
8850         (the_native_target): New.
8851         (set_native_target, get_native_target): New.
8852         (find_default_run_target): Use the_native_target.
8853         (find_attach_target, find_run_target): Simplify.
8854         (target_ops::open): Delete.
8855         (dummy_target_info): New.
8856         (dummy_target::shortname, dummy_target::longname)
8857         (dummy_target::doc): Delete.
8858         (dummy_target::info): New.
8859         (debug_target::shortname, debug_target::longname)
8860         (debug_target::doc): Delete.
8861         (debug_target::info): New.
8862         * target.h (struct target_info): New.
8863         (target_ops::~target_ops): Add comment.
8864         (target_ops::info): New.
8865         (target_ops::shortname, target_ops::longname, target_ops::doc): No
8866         longer virtual.  Implement in terms of target_info.
8867         (set_native_target, get_native_target): Declare.
8868         (target_open_ftype): New.
8869         (add_target, add_target_with_completer)
8870         (add_deprecated_target_alias): Change prototype.
8871         (test_target) <shortname, longname, doc>: Delete.
8872         <info>: New.
8873         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
8874         add_inf_child_target.
8875         * tracefile-tfile.c (tfile_target_info): New.
8876         (tfile_target) <shortname, longname, doc>: Delete.
8877         <info>: New.
8878         (tfile_target::open): Rename to ...
8879         (tfile_target_open): ... this.
8880         (_initialize_tracefile_tfile): Adjust.
8881         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
8882         add_inf_child_target.
8883         * windows-nat.c (_initialize_windows_nat): Use
8884         add_inf_child_target.
8885         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
8886         add_inf_child_target.
8887
8888 2018-05-02  Pedro Alves  <palves@redhat.com>
8889
8890         * linux-nat.h (linux_nat_target) <low_new_thread,
8891         low_delete_thread, low_new_fork, low_forget_process,
8892         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
8893         New virtual methods.
8894         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8895         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
8896         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
8897         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8898         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
8899         Delete.
8900         * linux-fork.c (delete_fork): Adjust to call low method.
8901         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
8902         (linux_nat_new_fork, linux_nat_forget_process_hook)
8903         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
8904         (linux_nat_status_is_event):
8905         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
8906         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
8907         to call low method.
8908         (sigtrap_is_event): Rename to ...
8909         (linux_nat_target::low_status_is_event): ... this.
8910         (linux_nat_set_status_is_event): Delete.
8911         (save_stop_reason, linux_nat_wait_1)
8912         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
8913         low methods.
8914         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8915         (linux_nat_set_new_fork, linux_nat_set_forget_process)
8916         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8917         (linux_nat_set_prepare_to_resume): Delete.
8918         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
8919         low virtual methods.
8920         * amd64-linux-nat.c: Likewise.
8921         * arm-linux-nat.c: Likewise.
8922         * i386-linux-nat.c: Likewise.
8923         * ia64-linux-nat.c: Likewise.
8924         * mips-linux-nat.c: Likewise.
8925         * ppc-linux-nat.c: Likewise.
8926         * s390-linux-nat.c: Likewise.
8927         * sparc64-linux-nat.c: Likewise.
8928         * x86-linux-nat.c: Likewise.
8929         * x86-linux-nat.h: Include "nat/x86-linux.h".
8930         (x86_linux_nat_target) <low_new_fork, low_forget_process,
8931         low_prepare_to_resume, low_new_thread, low_delete_thread>:
8932         Override methods.
8933
8934 2018-05-02  Pedro Alves  <palves@redhat.com>
8935
8936         * target.h (target_ops)
8937         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
8938         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
8939         stopped_by_watchpoint, have_continuable_watchpoint,
8940         stopped_data_address, watchpoint_addr_within_range,
8941         can_accel_watchpoint_condition, can_run, thread_alive,
8942         has_all_memory, has_memory, has_stack, has_registers,
8943         has_execution, can_async_p, is_async_p, supports_non_stop,
8944         always_non_stop_p, can_execute_reverse, supports_multi_process,
8945         supports_enable_disable_tracepoint,
8946         supports_disable_randomization, supports_string_tracing,
8947         supports_evaluation_of_breakpoint_conditions,
8948         can_run_breakpoint_commands, filesystem_is_local,
8949         can_download_tracepoint, get_trace_state_variable_value,
8950         set_trace_notes, get_tib_address, use_agent, can_use_agent,
8951         record_is_replaying, record_will_replay,
8952         augmented_libraries_svr4_read>: Adjust to return bool.
8953         * aarch64-linux-nat.c: All implementations adjusted.
8954         * aix-thread.c: All implementations adjusted.
8955         * arm-linux-nat.c: All implementations adjusted.
8956         * breakpoint.c: All implementations adjusted.
8957         * bsd-kvm.c: All implementations adjusted.
8958         * bsd-uthread.c: All implementations adjusted.
8959         * corelow.c: All implementations adjusted.
8960         * ctf.c: All implementations adjusted.
8961         * darwin-nat.c: All implementations adjusted.
8962         * darwin-nat.h: All implementations adjusted.
8963         * exec.c: All implementations adjusted.
8964         * fbsd-nat.c: All implementations adjusted.
8965         * fbsd-nat.h: All implementations adjusted.
8966         * gnu-nat.c: All implementations adjusted.
8967         * gnu-nat.h: All implementations adjusted.
8968         * go32-nat.c: All implementations adjusted.
8969         * ia64-linux-nat.c: All implementations adjusted.
8970         * inf-child.c: All implementations adjusted.
8971         * inf-child.h: All implementations adjusted.
8972         * inf-ptrace.c: All implementations adjusted.
8973         * inf-ptrace.h: All implementations adjusted.
8974         * linux-nat.c: All implementations adjusted.
8975         * linux-nat.h: All implementations adjusted.
8976         * mips-linux-nat.c: All implementations adjusted.
8977         * nto-procfs.c: All implementations adjusted.
8978         * ppc-linux-nat.c: All implementations adjusted.
8979         * procfs.c: All implementations adjusted.
8980         * ravenscar-thread.c: All implementations adjusted.
8981         * record-btrace.c: All implementations adjusted.
8982         * record-full.c: All implementations adjusted.
8983         * remote-sim.c: All implementations adjusted.
8984         * remote.c: All implementations adjusted.
8985         * s390-linux-nat.c: All implementations adjusted.
8986         * sol-thread.c: All implementations adjusted.
8987         * spu-multiarch.c: All implementations adjusted.
8988         * target-delegates.c: All implementations adjusted.
8989         * target.c: All implementations adjusted.
8990         * target.h: All implementations adjusted.
8991         * tracefile-tfile.c: All implementations adjusted.
8992         * tracefile.c: All implementations adjusted.
8993         * tracefile.h: All implementations adjusted.
8994         * windows-nat.c: All implementations adjusted.
8995         * x86-linux-nat.h: All implementations adjusted.
8996         * x86-nat.h: All implementations adjusted.
8997
8998 2018-05-02  Pedro Alves  <palves@redhat.com>
8999
9000         * make-target-delegates (scan_target_h): Don't trim lines here.
9001         Replace sequences of tabs and/or whitespace with a single
9002         whitespace.
9003         (top level, parsing methods): Trim each line before processing it
9004         here.
9005
9006 2018-05-02  Pedro Alves  <palves@redhat.com>
9007             John Baldwin  <jhb@freebsd.org>
9008
9009         * target.h (enum strata) <debug_stratum>: New.
9010         (struct target_ops) <all delegation methods>: Replace by C++
9011         virtual methods, and drop "to_" prefix.  All references updated
9012         throughout.
9013         <to_shortname, to_longname, to_doc, to_data,
9014         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9015         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9016         virtual methods.  All references updated throughout.
9017         <can_attach, supports_terminal_ours, can_create_inferior,
9018         get_thread_control_capabilities, attach_no_wait>: New
9019         virtual methods.
9020         <insert_breakpoint, remove_breakpoint>: Now
9021         TARGET_DEFAULT_NORETURN methods.
9022         <info_proc>: Now returns bool.
9023         <to_magic>: Delete.
9024         (OPS_MAGIC): Delete.
9025         (current_target): Delete.  All references replaced by references
9026         to ...
9027         (target_stack): ... this.  New.
9028         (target_shortname, target_longname): Adjust.
9029         (target_can_run): Now a function declaration.
9030         (default_child_has_all_memory, default_child_has_memory)
9031         (default_child_has_stack, default_child_has_registers)
9032         (default_child_has_execution): Remove target_ops parameter.
9033         (complete_target_initialization): Delete.
9034         (memory_breakpoint_target): New template class.
9035         (test_target_ops): Refactor as a C++ class with virtual methods.
9036         * make-target-delegates (NAME_PART): Tighten.
9037         (POINTER_PART, CP_SYMBOL): New.
9038         (SIMPLE_RETURN_PART): Reimplement.
9039         (VEC_RETURN_PART): Expect less.
9040         (RETURN_PART, VIRTUAL_PART): New.
9041         (METHOD): Adjust to C++ virtual methods.
9042         (scan_target_h): Remove reference to C99.
9043         (dname): Output "target_ops::" prefix.
9044         (write_function_header): Adjust to output a C++ class method.
9045         (write_declaration): New.
9046         (write_delegator): Adjust to output a C++ class method.
9047         (tdname): Output "dummy_target::" prefix.
9048         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9049         method.
9050         (tdefault_names, debug_names): Delete.
9051         (return_types, tdefaults, styles, argtypes_array): New.
9052         (top level): All methods are delegators.
9053         (print_class): New.
9054         (top level): Print dummy_target and debug_target classes.
9055         * target-delegates.c: Regenerate.
9056         * target-debug.h (target_debug_print_enum_info_proc_what)
9057         (target_debug_print_thread_control_capabilities)
9058         (target_debug_print_thread_info_p): New.
9059         * target.c (dummy_target): Delete.
9060         (the_dummy_target, the_debug_target): New.
9061         (target_stack): Now extern.
9062         (set_targetdebug): Push/unpush debug target.
9063         (default_child_has_all_memory, default_child_has_memory)
9064         (default_child_has_stack, default_child_has_registers)
9065         (default_child_has_execution): Remove target_ops parameter.
9066         (complete_target_initialization): Delete.
9067         (add_target_with_completer): No longer call
9068         complete_target_initialization.
9069         (target_supports_terminal_ours): Use regular delegation.
9070         (update_current_target): Delete.
9071         (push_target): No longer check magic number.  Don't call
9072         update_current_target.
9073         (unpush_target): Don't call update_current_target.
9074         (target_is_pushed): No longer check magic number.
9075         (target_require_runnable): Skip for all stratums over
9076         process_stratum.
9077         (target_ops::info_proc): New.
9078         (target_info_proc): Use find_target_at and
9079         find_default_run_target.
9080         (target_supports_disable_randomization): Use regular delegation.
9081         (target_get_osdata): Use find_target_at.
9082         (target_ops::open, target_ops::close, target_ops::can_attach)
9083         (target_ops::attach, target_ops::can_create_inferior)
9084         (target_ops::create_inferior, target_ops::can_run)
9085         (target_can_run): New.
9086         (default_fileio_target): Use regular delegation.
9087         (target_ops::fileio_open, target_ops::fileio_pwrite)
9088         (target_ops::fileio_pread, target_ops::fileio_fstat)
9089         (target_ops::fileio_close, target_ops::fileio_unlink)
9090         (target_ops::fileio_readlink): New.
9091         (target_fileio_open_1, target_fileio_unlink)
9092         (target_fileio_readlink): Always call the target method.  Handle
9093         FILEIO_ENOSYS.
9094         (return_zero, return_zero_has_execution): Delete.
9095         (init_dummy_target): Delete.
9096         (dummy_target::dummy_target, dummy_target::shortname)
9097         (dummy_target::longname, dummy_target::doc)
9098         (debug_target::debug_target, debug_target::shortname)
9099         (debug_target::longname, debug_target::doc): New.
9100         (target_supports_delete_record): Use regular delegation.
9101         (setup_target_debug): Delete.
9102         (maintenance_print_target_stack): Skip debug_stratum.
9103         (initialize_targets): Instantiate the_dummy_target and
9104         the_debug_target.
9105         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9106         use target_stack.
9107         (target_auxv_search, fprint_target_auxv): Adjust.
9108         (info_auxv_command): Adjust to use target_stack.
9109         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9110         * exceptions.c (print_flush): Handle a NULL target_stack.
9111         * regcache.c (target_ops_no_register): Refactor as class with
9112         virtual methods.
9113
9114         * exec.c (exec_target): New class.
9115         (exec_ops): Now an exec_target.
9116         (exec_open, exec_close_1, exec_get_section_table)
9117         (exec_xfer_partial, exec_files_info, exec_has_memory)
9118         (exec_make_note_section): Refactor as exec_target methods.
9119         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9120         Delete.
9121         (exec_target::find_memory_regions): New.
9122         (_initialize_exec): Don't call init_exec_ops.
9123         * gdbcore.h (exec_file_clear): Delete.
9124
9125         * corefile.c (core_target): Delete.
9126         (core_file_command): Adjust.
9127         * corelow.c (core_target): New class.
9128         (the_core_target): New.
9129         (core_close): Remove target_ops parameter.
9130         (core_close_cleanup): Adjust.
9131         (core_target::close): New.
9132         (core_open, core_detach, get_core_registers, core_files_info)
9133         (core_xfer_partial, core_thread_alive, core_read_description)
9134         (core_pid_to_str, core_thread_name, core_has_memory)
9135         (core_has_stack, core_has_registers, core_info_proc): Rework as
9136         core_target methods.
9137         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9138         (_initialize_corelow): Initialize the_core_target.
9139         * gdbcore.h (core_target): Delete.
9140         (the_core_target): New.
9141
9142         * ctf.c: (ctf_target): New class.
9143         (ctf_ops): Now a ctf_target.
9144         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9145         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9146         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9147         methods.
9148         (init_ctf_ops): Delete.
9149         (_initialize_ctf): Don't call it.
9150         * tracefile-tfile.c (tfile_target): New class.
9151         (tfile_ops): Now a tfile_target.
9152         (tfile_open, tfile_close, tfile_files_info)
9153         (tfile_get_tracepoint_status, tfile_trace_find)
9154         (tfile_fetch_registers, tfile_xfer_partial)
9155         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9156         Refactor as tfile_target methods.
9157         (tfile_xfer_partial_features): Remove target_ops parameter.
9158         (init_tfile_ops): Delete.
9159         (_initialize_tracefile_tfile): Don't call it.
9160         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9161         (tracefile_has_stack, tracefile_has_registers)
9162         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9163         tracefile_target methods.
9164         (init_tracefile_ops): Delete.
9165         (tracefile_target::tracefile_target): New.
9166         * tracefile.h: Include "target.h".
9167         (tracefile_target): New class.
9168         (init_tracefile_ops): Delete.
9169
9170         * spu-multiarch.c (spu_multiarch_target): New class.
9171         (spu_ops): Now a spu_multiarch_target.
9172         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9173         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9174         (spu_search_memory, spu_mourn_inferior): Refactor as
9175         spu_multiarch_target methods.
9176         (init_spu_ops): Delete.
9177         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9178         complete_target_initialization.
9179
9180         * ravenscar-thread.c (ravenscar_thread_target): New class.
9181         (ravenscar_ops): Now a ravenscar_thread_target.
9182         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9183         (ravenscar_thread_alive, ravenscar_pid_to_str)
9184         (ravenscar_fetch_registers, ravenscar_store_registers)
9185         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9186         (ravenscar_stopped_by_hw_breakpoint)
9187         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9188         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9189         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9190         methods.
9191         (init_ravenscar_thread_ops): Delete.
9192         (_initialize_ravenscar): Remove references to
9193         init_ravenscar_thread_ops and complete_target_initialization.
9194
9195         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9196         (bsd_uthread_target): New class.
9197         (bsd_uthread_ops): Now a bsd_uthread_target.
9198         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9199         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9200         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9201         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9202         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9203         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9204         (bsd_uthread_target): Delete function.
9205         (_initialize_bsd_uthread): Remove reference to
9206         complete_target_initialization.
9207
9208         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9209         (target_bfd): ... this new class.
9210         (target_bfd_xfer_partial, target_bfd_get_section_table)
9211         (target_bfd_close): Refactor as target_bfd methods.
9212         (target_bfd::~target_bfd): New.
9213         (target_bfd_reopen): Adjust.
9214         (target_bfd::close): New.
9215
9216         * record-btrace.c (record_btrace_target): New class.
9217         (record_btrace_ops): Now a record_btrace_target.
9218         (record_btrace_open, record_btrace_stop_recording)
9219         (record_btrace_disconnect, record_btrace_close)
9220         (record_btrace_async, record_btrace_info)
9221         (record_btrace_insn_history, record_btrace_insn_history_range)
9222         (record_btrace_insn_history_from, record_btrace_call_history)
9223         (record_btrace_call_history_range)
9224         (record_btrace_call_history_from, record_btrace_record_method)
9225         (record_btrace_is_replaying, record_btrace_will_replay)
9226         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9227         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9228         (record_btrace_store_registers, record_btrace_prepare_to_store)
9229         (record_btrace_to_get_unwinder)
9230         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9231         (record_btrace_commit_resume, record_btrace_wait)
9232         (record_btrace_stop, record_btrace_can_execute_reverse)
9233         (record_btrace_stopped_by_sw_breakpoint)
9234         (record_btrace_supports_stopped_by_sw_breakpoint)
9235         (record_btrace_stopped_by_hw_breakpoint)
9236         (record_btrace_supports_stopped_by_hw_breakpoint)
9237         (record_btrace_update_thread_list, record_btrace_thread_alive)
9238         (record_btrace_goto_begin, record_btrace_goto_end)
9239         (record_btrace_goto, record_btrace_stop_replaying_all)
9240         (record_btrace_execution_direction)
9241         (record_btrace_prepare_to_generate_core)
9242         (record_btrace_done_generating_core): Refactor as
9243         record_btrace_target methods.
9244         (init_record_btrace_ops): Delete.
9245         (_initialize_record_btrace): Remove reference to
9246         init_record_btrace_ops.
9247         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9248         the execution_direction global.
9249         (record_full_base_target, record_full_target)
9250         (record_full_core_target): New classes.
9251         (record_full_ops): Now a record_full_target.
9252         (record_full_core_ops): Now a record_full_core_target.
9253         (record_full_target::detach, record_full_target::disconnect)
9254         (record_full_core_target::disconnect)
9255         (record_full_target::mourn_inferior, record_full_target::kill):
9256         New.
9257         (record_full_open, record_full_close, record_full_async): Refactor
9258         as methods of the record_full_base_target class.
9259         (record_full_resume, record_full_commit_resume): Refactor
9260         as methods of the record_full_target class.
9261         (record_full_wait, record_full_stopped_by_watchpoint)
9262         (record_full_stopped_data_address)
9263         (record_full_stopped_by_sw_breakpoint)
9264         (record_full_supports_stopped_by_sw_breakpoint)
9265         (record_full_stopped_by_hw_breakpoint)
9266         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9267         methods of the record_full_base_target class.
9268         (record_full_store_registers, record_full_xfer_partial)
9269         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9270         Refactor as methods of the record_full_target class.
9271         (record_full_can_execute_reverse, record_full_get_bookmark)
9272         (record_full_goto_bookmark, record_full_execution_direction)
9273         (record_full_record_method, record_full_info, record_full_delete)
9274         (record_full_is_replaying, record_full_will_replay)
9275         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9276         (record_full_stop_replaying): Refactor as methods of the
9277         record_full_base_target class.
9278         (record_full_core_resume, record_full_core_kill)
9279         (record_full_core_fetch_registers)
9280         (record_full_core_prepare_to_store)
9281         (record_full_core_store_registers, record_full_core_xfer_partial)
9282         (record_full_core_insert_breakpoint)
9283         (record_full_core_remove_breakpoint)
9284         (record_full_core_has_execution): Refactor
9285         as methods of the record_full_core_target class.
9286         (record_full_base_target::supports_delete_record): New.
9287         (init_record_full_ops): Delete.
9288         (init_record_full_core_ops): Delete.
9289         (record_full_save): Refactor as method of the
9290         record_full_base_target class.
9291         (_initialize_record_full): Remove references to
9292         init_record_full_ops and init_record_full_core_ops.
9293
9294         * remote.c (remote_target, extended_remote_target): New classes.
9295         (remote_ops): Now a remote_target.
9296         (extended_remote_ops): Now an extended_remote_target.
9297         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9298         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9299         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9300         (remote_pass_signals, remote_set_syscall_catchpoint)
9301         (remote_program_signals, )
9302         (remote_thread_always_alive): Remove target_ops parameter.
9303         (remote_thread_alive, remote_thread_name)
9304         (remote_update_thread_list, remote_threads_extra_info)
9305         (remote_static_tracepoint_marker_at)
9306         (remote_static_tracepoint_markers_by_strid)
9307         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9308         (remote_open): Refactor as methods of remote_target.
9309         (extended_remote_open, extended_remote_detach)
9310         (extended_remote_attach, extended_remote_post_attach):
9311         (extended_remote_supports_disable_randomization)
9312         (extended_remote_create_inferior): : Refactor as method of
9313         extended_remote_target.
9314         (remote_set_permissions, remote_open_1, remote_detach)
9315         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9316         (remote_resume, remote_commit_resume, remote_stop)
9317         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9318         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9319         (remote_prepare_to_store, remote_store_registers)
9320         (remote_flash_erase, remote_flash_done, remote_files_info)
9321         (remote_kill, remote_mourn, remote_insert_breakpoint)
9322         (remote_remove_breakpoint, remote_insert_watchpoint)
9323         (remote_watchpoint_addr_within_range)
9324         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9325         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9326         (remote_supports_stopped_by_sw_breakpoint)
9327         (remote_stopped_by_hw_breakpoint)
9328         (remote_supports_stopped_by_hw_breakpoint)
9329         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9330         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9331         (remote_verify_memory): Refactor as methods of remote_target.
9332         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9333         parameter.
9334         (remote_xfer_partial, remote_get_memory_xfer_limit)
9335         (remote_search_memory, remote_rcmd, remote_memory_map)
9336         (remote_pid_to_str, remote_get_thread_local_address)
9337         (remote_get_tib_address, remote_read_description): Refactor as
9338         methods of remote_target.
9339         (remote_target::fileio_open, remote_target::fileio_pwrite)
9340         (remote_target::fileio_pread, remote_target::fileio_close): New.
9341         (remote_hostio_readlink, remote_hostio_fstat)
9342         (remote_filesystem_is_local, remote_can_execute_reverse)
9343         (remote_supports_non_stop, remote_supports_disable_randomization)
9344         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9345         (remote_supports_enable_disable_tracepoint)
9346         (remote_supports_string_tracing)
9347         (remote_can_run_breakpoint_commands, remote_trace_init)
9348         (remote_download_tracepoint, remote_can_download_tracepoint)
9349         (remote_download_trace_state_variable, remote_enable_tracepoint)
9350         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9351         (remote_trace_start, remote_get_trace_status)
9352         (remote_get_tracepoint_status, remote_trace_stop)
9353         (remote_trace_find, remote_get_trace_state_variable_value)
9354         (remote_save_trace_data, remote_get_raw_trace_data)
9355         (remote_set_disconnected_tracing, remote_core_of_thread)
9356         (remote_set_circular_trace_buffer, remote_traceframe_info)
9357         (remote_get_min_fast_tracepoint_insn_len)
9358         (remote_set_trace_buffer_size, remote_set_trace_notes)
9359         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9360         (remote_disable_btrace, remote_teardown_btrace)
9361         (remote_read_btrace, remote_btrace_conf)
9362         (remote_augmented_libraries_svr4_read, remote_load)
9363         (remote_pid_to_exec_file, remote_can_do_single_step)
9364         (remote_execution_direction, remote_thread_handle_to_thread_info):
9365         Refactor as methods of remote_target.
9366         (init_remote_ops, init_extended_remote_ops): Delete.
9367         (remote_can_async_p, remote_is_async_p, remote_async)
9368         (remote_thread_events, remote_upload_tracepoints)
9369         (remote_upload_trace_state_variables): Refactor as methods of
9370         remote_target.
9371         (_initialize_remote): Remove references to init_remote_ops and
9372         init_extended_remote_ops.
9373
9374         * remote-sim.c (gdbsim_target): New class.
9375         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9376         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9377         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9378         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9379         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9380         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9381         Refactor as methods of gdbsim_target.
9382         (gdbsim_ops): Now a gdbsim_target.
9383         (init_gdbsim_ops): Delete.
9384         (gdbsim_cntrl_c): Adjust.
9385         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9386
9387         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9388         (the_amd64_linux_nat_target): New.
9389         (amd64_linux_fetch_inferior_registers)
9390         (amd64_linux_store_inferior_registers): Refactor as methods of
9391         amd64_linux_nat_target.
9392         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9393         * i386-linux-nat.c: Don't include "linux-nat.h".
9394         (i386_linux_nat_target): New class.
9395         (the_i386_linux_nat_target): New.
9396         (i386_linux_fetch_inferior_registers)
9397         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9398         as methods of i386_linux_nat_target.
9399         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9400         * inf-child.c (inf_child_ops): Delete.
9401         (inf_child_fetch_inferior_registers)
9402         (inf_child_store_inferior_registers): Delete.
9403         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9404         methods of inf_child_target.
9405         (inf_child_target::supports_terminal_ours)
9406         (inf_child_target::terminal_init)
9407         (inf_child_target::terminal_inferior)
9408         (inf_child_target::terminal_ours_for_output)
9409         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9410         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9411         New.
9412         (inf_child_open, inf_child_disconnect, inf_child_close)
9413         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9414         (inf_child_post_startup_inferior, inf_child_can_run)
9415         (inf_child_pid_to_exec_file): Refactor as methods of
9416         inf_child_target.
9417         (inf_child_follow_fork): Delete.
9418         (inf_child_target::can_create_inferior)
9419         (inf_child_target::can_attach): New.
9420         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9421         (inf_child_target::has_stack, inf_child_target::has_registers)
9422         (inf_child_target::has_execution): New.
9423         (inf_child_fileio_open, inf_child_fileio_pwrite)
9424         (inf_child_fileio_pread, inf_child_fileio_fstat)
9425         (inf_child_fileio_close, inf_child_fileio_unlink)
9426         (inf_child_fileio_readlink, inf_child_use_agent)
9427         (inf_child_can_use_agent): Refactor as methods of
9428         inf_child_target.
9429         (return_zero, inf_child_target): Delete.
9430         (inf_child_target::inf_child_target): New.
9431         * inf-child.h: Include "target.h".
9432         (inf_child_target): Delete function prototype.
9433         (inf_child_target): New class.
9434         (inf_child_open_target, inf_child_mourn_inferior)
9435         (inf_child_maybe_unpush_target): Delete.
9436         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9437         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9438         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9439         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9440         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9441         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9442         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9443         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9444         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9445         methods of inf_ptrace_target.
9446         (inf_ptrace_target): Delete function.
9447         * inf-ptrace.h: Include "inf-child.h".
9448         (inf_ptrace_target): Delete function declaration.
9449         (inf_ptrace_target): New class.
9450         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9451         * linux-nat.c (linux_target): New.
9452         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9453         (linux_nat_target::~linux_nat_target): New.
9454         (linux_child_post_attach, linux_child_post_startup_inferior)
9455         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9456         (linux_child_remove_fork_catchpoint)
9457         (linux_child_insert_vfork_catchpoint)
9458         (linux_child_remove_vfork_catchpoint)
9459         (linux_child_insert_exec_catchpoint)
9460         (linux_child_remove_exec_catchpoint)
9461         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9462         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9463         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9464         (linux_nat_stopped_data_address)
9465         (linux_nat_stopped_by_sw_breakpoint)
9466         (linux_nat_supports_stopped_by_sw_breakpoint)
9467         (linux_nat_stopped_by_hw_breakpoint)
9468         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9469         (linux_nat_kill, linux_nat_mourn_inferior)
9470         (linux_nat_xfer_partial, linux_nat_thread_alive)
9471         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9472         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9473         (linux_child_static_tracepoint_markers_by_strid)
9474         (linux_nat_is_async_p, linux_nat_can_async_p)
9475         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9476         (linux_nat_supports_multi_process)
9477         (linux_nat_supports_disable_randomization, linux_nat_async)
9478         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9479         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9480         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9481         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9482         methods of linux_nat_target.
9483         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9484         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9485         parameter.
9486         (check_stopped_by_watchpoint): Adjust.
9487         (linux_xfer_partial): Delete.
9488         (linux_target_install_ops, linux_target, linux_nat_add_target):
9489         Delete.
9490         (linux_nat_target::linux_nat_target): New.
9491         * linux-nat.h: Include "inf-ptrace.h".
9492         (linux_nat_target): New.
9493         (linux_target, linux_target_install_ops, linux_nat_add_target):
9494         Delete function declarations.
9495         (linux_target): Declare global.
9496         * linux-thread-db.c (thread_db_target): New.
9497         (thread_db_target::thread_db_target): New.
9498         (thread_db_ops): Delete.
9499         (the_thread_db_target): New.
9500         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9501         (thread_db_update_thread_list, thread_db_pid_to_str)
9502         (thread_db_extra_thread_info)
9503         (thread_db_thread_handle_to_thread_info)
9504         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9505         (thread_db_resume): Refactor as methods of thread_db_target.
9506         (init_thread_db_ops): Delete.
9507         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9508         * x86-linux-nat.c: Don't include "linux-nat.h".
9509         (super_post_startup_inferior): Delete.
9510         (x86_linux_nat_target::~x86_linux_nat_target): New.
9511         (x86_linux_child_post_startup_inferior)
9512         (x86_linux_read_description, x86_linux_enable_btrace)
9513         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9514         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9515         methods of x86_linux_nat_target.
9516         (x86_linux_create_target): Delete.  Bits folded ...
9517         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9518         pointer.
9519         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9520         (x86_linux_nat_target): New class.
9521         (x86_linux_create_target): Delete.
9522         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9523         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9524         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9525         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9526         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9527         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9528         make extern.
9529         (x86_use_watchpoints): Delete.
9530         * x86-nat.h: Include "breakpoint.h" and "target.h".
9531         (x86_use_watchpoints): Delete.
9532         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9533         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9534         (x86_insert_watchpoint, x86_remove_watchpoint)
9535         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9536         (x86_stopped_by_hw_breakpoint): New declarations.
9537         (x86_nat_target): New template class.
9538
9539         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9540         (the_ppc_linux_nat_target): New.
9541         (ppc_linux_fetch_inferior_registers)
9542         (ppc_linux_can_use_hw_breakpoint)
9543         (ppc_linux_region_ok_for_hw_watchpoint)
9544         (ppc_linux_ranged_break_num_registers)
9545         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9546         (ppc_linux_insert_mask_watchpoint)
9547         (ppc_linux_remove_mask_watchpoint)
9548         (ppc_linux_can_accel_watchpoint_condition)
9549         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9550         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9551         (ppc_linux_watchpoint_addr_within_range)
9552         (ppc_linux_masked_watch_num_registers)
9553         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9554         (ppc_linux_read_description): Refactor as methods of
9555         ppc_linux_nat_target.
9556         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
9557
9558         * procfs.c (procfs_xfer_partial): Delete forward declaration.
9559         (procfs_target): New class.
9560         (the_procfs_target): New.
9561         (procfs_target): Delete function.
9562         (procfs_auxv_parse, procfs_attach, procfs_detach)
9563         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
9564         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
9565         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
9566         (procfs_create_inferior, procfs_update_thread_list)
9567         (procfs_thread_alive, procfs_pid_to_str)
9568         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
9569         (procfs_stopped_data_address, procfs_insert_watchpoint)
9570         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
9571         (proc_find_memory_regions, procfs_info_proc)
9572         (procfs_make_note_section): Refactor as methods of procfs_target.
9573         (_initialize_procfs): Adjust.
9574         * sol-thread.c (sol_thread_target): New class.
9575         (sol_thread_ops): Now a sol_thread_target.
9576         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
9577         (sol_thread_fetch_registers, sol_thread_store_registers)
9578         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
9579         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
9580         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
9581         (init_sol_thread_ops): Delete.
9582         (_initialize_sol_thread): Adjust.  Remove references to
9583         init_sol_thread_ops and complete_target_initialization.
9584
9585         * windows-nat.c (windows_nat_target): New class.
9586         (windows_fetch_inferior_registers)
9587         (windows_store_inferior_registers, windows_resume, windows_wait)
9588         (windows_attach, windows_detach, windows_pid_to_exec_file)
9589         (windows_files_info, windows_create_inferior)
9590         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
9591         (windows_close, windows_pid_to_str, windows_xfer_partial)
9592         (windows_get_tib_address, windows_get_ada_task_ptid)
9593         (windows_thread_name, windows_thread_alive): Refactor as
9594         windows_nat_target methods.
9595         (do_initial_windows_stuff): Adjust.
9596         (windows_target): Delete function.
9597         (_initialize_windows_nat): Adjust.
9598
9599         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
9600         (darwin_mourn_inferior, darwin_kill_inferior)
9601         (darwin_create_inferior, darwin_attach, darwin_detach)
9602         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
9603         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
9604         (darwin_supports_multi_process): Refactor as darwin_nat_target
9605         methods.
9606         (darwin_resume_to, darwin_files_info): Delete.
9607         (_initialize_darwin_inferior): Rename to ...
9608         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
9609         * darwin-nat.h: Include "inf-child.h".
9610         (darwin_nat_target): New class.
9611         (darwin_complete_target): Delete.
9612         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
9613         (darwin_target): New.
9614         (i386_darwin_fetch_inferior_registers)
9615         (i386_darwin_store_inferior_registers): Refactor as methods of
9616         darwin_nat_target.
9617         (darwin_complete_target): Delete, with ...
9618         (_initialize_i386_darwin_nat): ... bits factored out here.
9619
9620         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
9621         (the_alpha_linux_nat_target): New.
9622         (alpha_linux_register_u_offset): Refactor as
9623         alpha_linux_nat_target method.
9624         (_initialize_alpha_linux_nat): Adjust.
9625         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
9626         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9627         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
9628         methods of linux_nat_trad_target.
9629         (linux_trad_target): Delete.
9630         * linux-nat-trad.h (linux_trad_target): Delete function.
9631         (linux_nat_trad_target): New class.
9632         * mips-linux-nat.c (mips_linux_nat_target): New class.
9633         (super_fetch_registers, super_store_registers, super_close):
9634         Delete.
9635         (the_mips_linux_nat_target): New.
9636         (mips64_linux_regsets_fetch_registers)
9637         (mips64_linux_regsets_store_registers)
9638         (mips64_linux_fetch_registers, mips64_linux_store_registers)
9639         (mips_linux_register_u_offset, mips_linux_read_description)
9640         (mips_linux_can_use_hw_breakpoint)
9641         (mips_linux_stopped_by_watchpoint)
9642         (mips_linux_stopped_data_address)
9643         (mips_linux_region_ok_for_hw_watchpoint)
9644         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
9645         (mips_linux_close): Refactor as methods of mips_linux_nat.
9646         (_initialize_mips_linux_nat): Adjust to C++ification.
9647
9648         * aix-thread.c (aix_thread_target): New class.
9649         (aix_thread_ops): Now an aix_thread_target.
9650         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
9651         (aix_thread_fetch_registers, aix_thread_store_registers)
9652         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
9653         (aix_thread_thread_alive, aix_thread_pid_to_str)
9654         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
9655         Refactor as methods of aix_thread_target.
9656         (init_aix_thread_ops): Delete.
9657         (_initialize_aix_thread): Remove references to init_aix_thread_ops
9658         and complete_target_initialization.
9659         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
9660         (rs6000_nat_target): New class.
9661         (the_rs6000_nat_target): New.
9662         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
9663         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
9664         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
9665         (super_create_inferior): Delete.
9666         (_initialize_rs6000_nat): Adjust to C++ification.
9667
9668         * arm-linux-nat.c (arm_linux_nat_target): New class.
9669         (the_arm_linux_nat_target): New.
9670         (arm_linux_fetch_inferior_registers)
9671         (arm_linux_store_inferior_registers, arm_linux_read_description)
9672         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
9673         (arm_linux_remove_hw_breakpoint)
9674         (arm_linux_region_ok_for_hw_watchpoint)
9675         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
9676         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
9677         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
9678         arm_linux_nat_target.
9679         (_initialize_arm_linux_nat): Adjust to C++ification.
9680
9681         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
9682         (the_aarch64_linux_nat_target): New.
9683         (aarch64_linux_fetch_inferior_registers)
9684         (aarch64_linux_store_inferior_registers)
9685         (aarch64_linux_child_post_startup_inferior)
9686         (aarch64_linux_read_description)
9687         (aarch64_linux_can_use_hw_breakpoint)
9688         (aarch64_linux_insert_hw_breakpoint)
9689         (aarch64_linux_remove_hw_breakpoint)
9690         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
9691         (aarch64_linux_region_ok_for_hw_watchpoint)
9692         (aarch64_linux_stopped_data_address)
9693         (aarch64_linux_stopped_by_watchpoint)
9694         (aarch64_linux_watchpoint_addr_within_range)
9695         (aarch64_linux_can_do_single_step): Refactor as methods of
9696         aarch64_linux_nat_target.
9697         (super_post_startup_inferior): Delete.
9698         (_initialize_aarch64_linux_nat): Adjust to C++ification.
9699
9700         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
9701         (the_hppa_linux_nat_target): New.
9702         (hppa_linux_fetch_inferior_registers)
9703         (hppa_linux_store_inferior_registers): Refactor as methods of
9704         hppa_linux_nat_target.
9705         (_initialize_hppa_linux_nat): Adjust to C++ification.
9706
9707         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
9708         (the_ia64_linux_nat_target): New.
9709         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
9710         (ia64_linux_stopped_data_address)
9711         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
9712         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
9713         ia64_linux_nat_target methods.
9714         (super_xfer_partial): Delete.
9715         (_initialize_ia64_linux_nat): Adjust to C++ification.
9716
9717         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
9718         (the_m32r_linux_nat_target): New.
9719         (m32r_linux_fetch_inferior_registers)
9720         (m32r_linux_store_inferior_registers): Refactor as
9721         m32r_linux_nat_target methods.
9722         (_initialize_m32r_linux_nat): Adjust to C++ification.
9723
9724         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
9725         (the_m68k_linux_nat_target): New.
9726         (m68k_linux_fetch_inferior_registers)
9727         (m68k_linux_store_inferior_registers): Refactor as
9728         m68k_linux_nat_target methods.
9729         (_initialize_m68k_linux_nat): Adjust to C++ification.
9730
9731         * s390-linux-nat.c (s390_linux_nat_target): New class.
9732         (the_s390_linux_nat_target): New.
9733         (s390_linux_fetch_inferior_registers)
9734         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
9735         (s390_insert_watchpoint, s390_remove_watchpoint)
9736         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
9737         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
9738         (s390_auxv_parse, s390_read_description): Refactor as methods of
9739         s390_linux_nat_target.
9740         (_initialize_s390_nat): Adjust to C++ification.
9741
9742         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
9743         (the_sparc_linux_nat_target): New.
9744         (_initialize_sparc_linux_nat): Adjust to C++ification.
9745         * sparc-nat.c (sparc_fetch_inferior_registers)
9746         (sparc_store_inferior_registers): Remove target_ops parameter.
9747         * sparc-nat.h (sparc_fetch_inferior_registers)
9748         (sparc_store_inferior_registers): Remove target_ops parameter.
9749         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
9750         (the_sparc64_linux_nat_target): New.
9751         (_initialize_sparc64_linux_nat): Adjust to C++ification.
9752
9753         * spu-linux-nat.c (spu_linux_nat_target): New class.
9754         (the_spu_linux_nat_target): New.
9755         (spu_child_post_startup_inferior, spu_child_post_attach)
9756         (spu_child_wait, spu_fetch_inferior_registers)
9757         (spu_store_inferior_registers, spu_xfer_partial)
9758         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
9759         methods.
9760         (_initialize_spu_nat): Adjust to C++ification.
9761
9762         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
9763         (the_tilegx_linux_nat_target): New.
9764         (fetch_inferior_registers, store_inferior_registers):
9765         Refactor as methods.
9766         (_initialize_tile_linux_nat): Adjust to C++ification.
9767
9768         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
9769         (the_xtensa_linux_nat_target): New.
9770         (xtensa_linux_fetch_inferior_registers)
9771         (xtensa_linux_store_inferior_registers): Refactor as
9772         xtensa_linux_nat_target methods.
9773         (_initialize_xtensa_linux_nat): Adjust to C++ification.
9774
9775         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
9776         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
9777         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
9778         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
9779         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
9780         (fbsd_stopped_by_sw_breakpoint)
9781         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
9782         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
9783         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
9784         (fbsd_post_startup_inferior, fbsd_post_attach)
9785         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
9786         (fbsd_set_syscall_catchpoint)
9787         (super_xfer_partial, super_resume, super_wait)
9788         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
9789         (fbsd_handle_debug_trap): Remove target_ops parameter.
9790         (fbsd_nat_add_target): Delete.
9791         * fbsd-nat.h: Include "inf-ptrace.h".
9792         (fbsd_nat_add_target): Delete.
9793         (USE_SIGTRAP_SIGINFO): Define.
9794         (fbsd_nat_target): New class.
9795
9796         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
9797         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
9798         (amd64bsd_target): Delete.
9799         * amd64-bsd-nat.h: New file.
9800         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
9801         "x86-bsd-nat.h".
9802         (amd64_fbsd_nat_target): New class.
9803         (the_amd64_fbsd_nat_target): New.
9804         (amd64fbsd_read_description): Refactor as method of
9805         amd64_fbsd_nat_target.
9806         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9807         (_initialize_amd64fbsd_nat): Adjust to C++ification.
9808         * amd64-nat.h (amd64bsd_target): Delete function declaration.
9809         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
9810         (i386bsd_store_inferior_registers): Remove target_ops parameter.
9811         (i386bsd_target): Delete.
9812         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
9813         (i386bsd_fetch_inferior_registers)
9814         (i386bsd_store_inferior_registers): Declare.
9815         (i386_bsd_nat_target): New class.
9816         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
9817         (the_i386_fbsd_nat_target): New.
9818         (i386fbsd_resume, i386fbsd_read_description): Refactor as
9819         i386_fbsd_nat_target methods.
9820         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9821         (_initialize_i386fbsd_nat): Adjust to C++ification.
9822         * x86-bsd-nat.c (super_mourn_inferior): Delete.
9823         (x86bsd_mourn_inferior, x86bsd_target): Delete.
9824         (_initialize_x86_bsd_nat): Adjust to C++ification.
9825         * x86-bsd-nat.h: Include "x86-nat.h".
9826         (x86bsd_target): Delete declaration.
9827         (x86bsd_nat_target): New class.
9828
9829         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
9830         (the_aarch64_fbsd_nat_target): New.
9831         (aarch64_fbsd_fetch_inferior_registers)
9832         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
9833         aarch64_fbsd_nat_target.
9834         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
9835         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
9836         (the_alpha_bsd_nat_target): New.
9837         (alphabsd_fetch_inferior_registers)
9838         (alphabsd_store_inferior_registers): Refactor as
9839         alpha_bsd_nat_target methods.
9840         (_initialize_alphabsd_nat): Refactor as methods of
9841         alpha_bsd_nat_target.
9842         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
9843         (the_amd64_nbsd_nat_target): New.
9844         (_initialize_amd64nbsd_nat): Adjust to C++ification.
9845         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
9846         (the_amd64_obsd_nat_target): New.
9847         (_initialize_amd64obsd_nat): Adjust to C++ification.
9848         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
9849         (the_arm_fbsd_nat_target): New.
9850         (arm_fbsd_fetch_inferior_registers)
9851         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
9852         (_initialize_arm_fbsd_nat): Refactor as methods of
9853         arm_fbsd_nat_target.
9854         (_initialize_arm_fbsd_nat): Adjust to C++ification.
9855         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
9856         (the_arm_netbsd_nat_target): New.
9857         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
9858         arm_netbsd_nat_target.
9859         (_initialize_arm_netbsd_nat): Adjust to C++ification.
9860         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
9861         (the_hppa_nbsd_nat_target): New.
9862         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
9863         hppa_nbsd_nat_target methods.
9864         (_initialize_hppanbsd_nat): Adjust to C++ification.
9865         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
9866         (the_hppa_obsd_nat_target): New.
9867         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
9868         methods of hppa_obsd_nat_target.
9869         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
9870         add_target.
9871         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
9872         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
9873         add_target.
9874         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
9875         (_initialize_i386obsd_nat): Use add_target.
9876         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
9877         (the_m68k_bsd_nat_target): New.
9878         (m68kbsd_fetch_inferior_registers)
9879         (m68kbsd_store_inferior_registers): Refactor as methods of
9880         m68k_bsd_nat_target.
9881         (_initialize_m68kbsd_nat): Adjust to C++ification.
9882         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
9883         (the_mips_fbsd_nat_target): New.
9884         (mips_fbsd_fetch_inferior_registers)
9885         (mips_fbsd_store_inferior_registers): Refactor as methods of
9886         mips_fbsd_nat_target.
9887         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
9888         add_target.
9889         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
9890         (the_mips_nbsd_nat_target): New.
9891         (mipsnbsd_fetch_inferior_registers)
9892         (mipsnbsd_store_inferior_registers): Refactor as methods of
9893         mips_nbsd_nat_target.
9894         (_initialize_mipsnbsd_nat): Adjust to C++ification.
9895         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
9896         (the_mips64_obsd_nat_target): New.
9897         (mips64obsd_fetch_inferior_registers)
9898         (mips64obsd_store_inferior_registers): Refactor as methods of
9899         mips64_obsd_nat_target.
9900         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
9901         add_target.
9902         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
9903         nbsd_nat_target.
9904         * nbsd-nat.h: Include "inf-ptrace.h".
9905         (nbsd_nat_target): New class.
9906         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
9907         (obsd_wait): Refactor as methods of obsd_nat_target.
9908         (obsd_add_target): Delete.
9909         * obsd-nat.h: Include "inf-ptrace.h".
9910         (obsd_nat_target): New class.
9911         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
9912         (the_ppc_fbsd_nat_target): New.
9913         (ppcfbsd_fetch_inferior_registers)
9914         (ppcfbsd_store_inferior_registers): Refactor as methods of
9915         ppc_fbsd_nat_target.
9916         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
9917         add_target.
9918         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
9919         (the_ppc_nbsd_nat_target): New.
9920         (ppcnbsd_fetch_inferior_registers)
9921         (ppcnbsd_store_inferior_registers): Refactor as methods of
9922         ppc_nbsd_nat_target.
9923         (_initialize_ppcnbsd_nat): Adjust to C++ification.
9924         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
9925         (the_ppc_obsd_nat_target): New.
9926         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
9927         methods of ppc_obsd_nat_target.
9928         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
9929         add_target.
9930         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
9931         (the_sh_nbsd_nat_target): New.
9932         (shnbsd_fetch_inferior_registers)
9933         (shnbsd_store_inferior_registers): Refactor as methods of
9934         sh_nbsd_nat_target.
9935         (_initialize_shnbsd_nat): Adjust to C++ification.
9936         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
9937         (inf_ptrace_xfer_partial): Delete.
9938         (sparc_xfer_partial, sparc_target): Delete.
9939         * sparc-nat.h (sparc_fetch_inferior_registers)
9940         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
9941         (sparc_target): Delete function declaration.
9942         (sparc_target): New template class.
9943         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
9944         (_initialize_sparcnbsd_nat): Adjust to C++ification.
9945         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
9946         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
9947         add_target.
9948         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
9949         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
9950         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
9951         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
9952         add_target.
9953         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
9954         (the_vax_bsd_nat_target): New.
9955         (vaxbsd_fetch_inferior_registers)
9956         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
9957         methods.
9958         (_initialize_vaxbsd_nat): Adjust to C++ification.
9959
9960         * bsd-kvm.c (bsd_kvm_target): New class.
9961         (bsd_kvm_ops): Now a bsd_kvm_target.
9962         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
9963         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
9964         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
9965         bsd_kvm_target.
9966         (bsd_kvm_return_one): Delete.
9967         (bsd_kvm_add_target): Adjust to C++ification.
9968
9969         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
9970         (nto_procfs_target_procfs): New classes.
9971         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
9972         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
9973         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
9974         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
9975         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
9976         (procfs_remove_hw_breakpoint, procfs_resume)
9977         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
9978         (procfs_kill_inferior, procfs_store_registers)
9979         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
9980         as methods of nto_procfs_target.
9981         (nto_procfs_ops): Now an nto_procfs_target_procfs.
9982         (nto_native_ops): Delete.
9983         (procfs_open, procfs_native_open): Delete.
9984         (nto_native_ops): Now an nto_procfs_target_native.
9985         (init_procfs_targets): Adjust to C++ification.
9986         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
9987         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
9988         Refactor as methods of nto_procfs_target.
9989
9990         * go32-nat.c (go32_nat_target): New class.
9991         (the_go32_nat_target): New.
9992         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
9993         (go32_store_registers, go32_xfer_partial, go32_files_info)
9994         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
9995         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
9996         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
9997         (go32_pid_to_str): Refactor as methods of go32_nat_target.
9998         (go32_target): Delete.
9999         (_initialize_go32_nat): Adjust to C++ification.
10000
10001         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10002         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10003         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10004         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10005         gnu_nat_target.
10006         (gnu_target): Delete.
10007         * gnu-nat.h (gnu_target): Delete.
10008         (gnu_nat_target): New class.
10009         * i386-gnu-nat.c (gnu_base_target): New.
10010         (i386_gnu_nat_target): New class.
10011         (the_i386_gnu_nat_target): New.
10012         (_initialize_i386gnu_nat): Adjust to C++ification.
10013
10014 2018-05-02  Pedro Alves  <palves@redhat.com>
10015
10016         * bfd-target.c (target_bfd_xclose): Rename to ...
10017         (target_bfd_close): ... this.
10018         (target_bfd_reopen): Adjust.
10019         * target.c (target_close): Remove references to to_xclose.
10020         * target.h (target_ops::to_xclose): Delete.
10021         (target_ops::to_close): Update comments.
10022
10023 2018-05-02  Pedro Alves  <palves@redhat.com>
10024
10025         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10026         "linux-nat.h".
10027         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10028         * inf-ptrace.c (inf_ptrace_register_u_offset)
10029         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10030         (inf_ptrace_store_register, inf_ptrace_store_registers)
10031         (inf_ptrace_trad_target): Move to ...
10032         * linux-nat-trad.c: ... this new file.
10033         * linux-nat-trad.h: New file.
10034         * linux-nat.c (linux_target_install_ops): Make extern.
10035         (linux_trad_target): Delete.
10036         * linux-nat.h (linux_trad_target): Delete declaration.
10037         (linux_target_install_ops): Declare.
10038         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10039         "linux-nat.h".
10040
10041 2018-05-02  Pedro Alves  <palves@redhat.com>
10042
10043         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10044         procfs_target/add_target here.
10045         * procfs.c (procfs_target): Make static.
10046         (_initialize_procfs): Call add_target here.
10047         * procfs.h (struct target_ops): Remove forward declaration.
10048         (procfs_target): Remove declaration.
10049         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10050
10051 2018-05-02  Pedro Alves  <palves@redhat.com>
10052
10053         * procfs.c (procfs_stopped_by_watchpoint)
10054         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10055         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10056         Forward declare.
10057         (procfs_use_watchpoints): Delete, move contents...
10058         (procfs_target): ... here.
10059         * procfs.h (procfs_use_watchpoints): Delete declaration.
10060         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10061         procfs_use_watchpoints.
10062         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10063         procfs_use_watchpoints.
10064
10065 2018-05-02  Tom Tromey  <tom@tromey.com>
10066
10067         PR python/20084:
10068         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10069         and var_zuinteger_unlimited.
10070         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10071         and PARAM_ZUINTEGER_UNLIMITED.
10072         (set_parameter_value): Handle var_zuinteger and
10073         var_zuinteger_unlimited.
10074         (add_setshow_generic): Likewise.
10075         (parmpy_init): Likewise.
10076
10077 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10078
10079         PR rust/23124
10080         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10081         pointer is not null before dereferencing it.
10082
10083 2018-04-30  Tom Tromey  <tom@tromey.com>
10084
10085         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10086         is_mi_like_p.
10087
10088 2018-04-30  Tom Tromey  <tom@tromey.com>
10089
10090         * breakpoint.c (mention): Remove use of is_mi_like_p.
10091         (print_mention_ranged_breakpoint): Likewise.
10092         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10093         of is_mi_like_p.
10094
10095 2018-04-30  Tom Tromey  <tom@tromey.com>
10096
10097         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10098
10099 2018-04-30  Tom Tromey  <tom@tromey.com>
10100
10101         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10102         (info_spu_event_command): Remove some uses of is_mi_like_p.
10103
10104 2018-04-30  Tom Tromey  <tom@tromey.com>
10105
10106         * python/py-framefilter.c (py_print_single_arg)
10107         (enumerate_locals, py_print_args, py_print_frame): Remove some
10108         uses of is_mi_like_p.
10109
10110 2018-04-30  Tom Tromey  <tom@tromey.com>
10111
10112         * ui-out.c: Update.
10113         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10114         * ui-out.h (ui_out::is_mi_like_p): Now const.
10115         (ui_out::do_is_mi_like_p): Now const.
10116         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10117
10118 2018-04-30  Tom Tromey  <tom@tromey.com>
10119
10120         * varobj.c (varobj_set_visualizer): Use new_reference.
10121         * python/python.c (gdbpy_decode_line): Use new_reference.
10122         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10123         new_reference.
10124
10125 2018-04-30  Tom Tromey  <tom@tromey.com>
10126
10127         * varobj.c (install_new_value): Use new_reference.
10128         * value.h (value_incref): Return void.  Swap intro comment with
10129         value_decref.
10130         * value.c (set_value_parent): Use new_reference.
10131         (value_incref): Return void.  Update intro comment.
10132         (release_value): Use new_reference.
10133         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10134
10135 2018-04-30  Tom Tromey  <tom@tromey.com>
10136
10137         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10138         * gdb_bfd.h (new_bfd_ref): Remove.
10139         (gdb_bfd_open): Update comment.
10140         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10141         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10142         (gdb_bfd_fdopenr): Use new_reference.
10143         * exec.c (exec_file_attach): Use new_reference.
10144
10145 2018-04-30  Tom Tromey  <tom@tromey.com>
10146
10147         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10148         method.
10149
10150 2018-04-30  Tom Tromey  <tom@tromey.com>
10151
10152         * jit.c (jit_read_code_entry): Use type_align.
10153         * i386-tdep.c (i386_gdbarch_init): Don't call
10154         set_gdbarch_long_long_align_bit.
10155         * gdbarch.sh: Remove long_long_align_bit.
10156         * gdbarch.c, gdbarch.h: Rebuild.
10157         * arc-tdep.c (arc_type_align): New function.
10158         (arc_gdbarch_init): Use arc_type_align.  Don't call
10159         set_gdbarch_long_long_align_bit.
10160
10161 2018-04-30  Tom Tromey  <tom@tromey.com>
10162
10163         * rust-lang.c (rust_type_alignment): Remove.
10164         (rust_composite_type): Use type_align.
10165
10166 2018-04-30  Tom Tromey  <tom@tromey.com>
10167
10168         * NEWS: Mention Type.align.
10169         * python/py-type.c (typy_get_alignof): New function.
10170         (type_object_getset): Add "alignof".
10171
10172 2018-04-30  Tom Tromey  <tom@tromey.com>
10173
10174         PR exp/17095:
10175         * NEWS: Update.
10176         * std-operator.def (UNOP_ALIGNOF): New operator.
10177         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10178         New.
10179         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10180         * c-lang.c (c_op_print_tab): Add alignof.
10181         * c-exp.y (ALIGNOF): New token.
10182         (exp): Add "ALIGNOF" production.
10183         (ident_tokens): Add _Alignof and alignof.
10184
10185 2018-04-30  Tom Tromey  <tom@tromey.com>
10186
10187         * i386-tdep.c (i386_type_align): New function.
10188         (i386_gdbarch_init): Update.
10189         * gdbarch.sh (type_align): New method.
10190         * gdbarch.c, gdbarch.h: Rebuild.
10191         * arch-utils.h (default_type_align): Declare.
10192         * arch-utils.c (default_type_align): New function.
10193         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10194         (struct type) <align_log2>: New field.
10195         <instance_flags>: Now a bitfield.
10196         (TYPE_RAW_ALIGN): New macro.
10197         (type_align, type_raw_align, set_type_align): Declare.
10198         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10199         functions.
10200         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10201         (get_alignment, maybe_set_alignment): New functions.
10202         (read_structure_type, read_enumeration_type, read_array_type)
10203         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10204         (read_subrange_type, read_base_type): Set type alignment.
10205
10206 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10207
10208         * dwarf2read.c (read_index_from_section): Use bool.
10209
10210 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10211
10212         PR gdb/22950
10213         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10214         with #ifdef.
10215
10216 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10217
10218         PR build/22873
10219         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10220         last step, and do it atomically.
10221
10222 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10223
10224         * compile/compile-c-types.c (convert_int, convert_float):
10225         Update for C FE v1.
10226
10227 2018-04-27  Tom Tromey  <tom@tromey.com>
10228
10229         PR rust/22545:
10230         * rust-lang.c (rust_inclusive_range_type_p): New function.
10231         (rust_range): Handle inclusive ranges.
10232         (rust_compute_range): Likewise.
10233         * rust-exp.y (struct rust_op) <inclusive>: New field.
10234         (DOTDOTEQ): New constant.
10235         (range_expr): Add "..=" productions.
10236         (operator_tokens): Add "..=" token.
10237         (ast_range): Add "inclusive" parameter.
10238         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10239         ranges.
10240         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10241         bounds values.
10242         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10243         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10244         Update comments.
10245         * expprint.c (print_subexp_standard): Handle new bounds values.
10246         (dump_subexp_body_standard): Likewise.
10247
10248 2018-04-27  Tom Tromey  <tom@tromey.com>
10249
10250         * configure: Rebuild.
10251         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10252         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10253         "OVERRIDE".
10254         (class symbol_needs_eval_context): Likewise.
10255         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10256         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10257         "virtual".
10258         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10259         "override".
10260         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10261         * aarch64-tdep.c (instruction_reader::read): Use "override".
10262         (instruction_reader_test::read): Likewise.
10263         * arm-tdep.c (instruction_reader::read): Use "override".
10264         (instruction_reader_thumb::read): Likewise.
10265
10266 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10267
10268         PR remote/9665
10269         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10270         instead of remote_send.
10271         (remote_send): Remove.
10272
10273 2018-04-26  Pedro Alves  <palves@redhat.com>
10274
10275         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10276         find_function_start_sal instead of find_pc_line.
10277
10278 2018-04-26  Pedro Alves  <palves@redhat.com>
10279
10280         * breakpoint.c (set_breakpoint_location_function): Handle
10281         mst_data_gnu_ifunc.
10282         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10283         * elfread.c (elf_symtab_read): Give data symbols with
10284         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10285         (elf_rel_plt_read): Update comment.
10286         * linespec.c (convert_linespec_to_sals): Handle
10287         mst_data_gnu_ifunc.
10288         (minsym_found): Handle mst_data_gnu_ifunc.
10289         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10290         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10291         * parse.c (find_minsym_type_and_address): Handle
10292         mst_data_gnu_ifunc.
10293         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10294         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10295         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10296         comment.
10297         <mst_data_gnu_ifunc>: New enumerator.
10298
10299 2018-04-26  Pedro Alves  <palves@redhat.com>
10300
10301         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10302         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10303         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10304         Handle it.
10305         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10306         (lookup_minimal_symbol_by_pc): Adjust.
10307         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10308         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10309         * minsyms.h (lookup_msym_prefer): New enum.
10310         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10311         parameter by a lookup_msym_prefer parameter.
10312
10313 2018-04-26  Pedro Alves  <palves@redhat.com>
10314
10315         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10316         ends in "@plt" instead of looking at the symbol's section.
10317
10318 2018-04-26  Pedro Alves  <palves@redhat.com>
10319
10320         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10321         all references.
10322         (find_pc_partial_function_gnu_ifunc): Rename to ...
10323         (find_pc_partial_function): ... this, and remove references to
10324         'is_gnu_ifunc_p'.
10325         (find_pc_partial_function): Delete old implementation.
10326         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10327
10328 2018-04-26  Pedro Alves  <palves@redhat.com>
10329
10330         * linespec.c (struct bound_minimal_symbol_search_key): New.
10331         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10332         skip first line if we found a GNU ifunc minimal symbol by name.
10333         (compare_msymbols): Change parameters to work with a destructured
10334         lhs minsym.
10335         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10336         functions.
10337
10338 2018-04-26  Pedro Alves  <palves@redhat.com>
10339
10340         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10341         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10342         address/name.
10343         (add_location_to_breakpoint): Store the minsym and the objfile in
10344         the breakpoint location.
10345         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10346         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10347         Record the minsym in the sal.
10348         * symtab.h (symtab_and_line) <msymbol>: New field.
10349
10350 2018-04-26  Pedro Alves  <palves@redhat.com>
10351
10352         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10353         unless we actually resolved the ifunc.
10354
10355 2018-04-26  Pedro Alves  <palves@redhat.com>
10356
10357         * c-exp.y (variable production): Prefer ifunc minsyms over
10358         regular function symbols.
10359         * symtab.c (find_gnu_ifunc): New function.
10360         * minsyms.h (lookup_msym_prefer): New enum.
10361         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10362         parameter by a lookup_msym_prefer parameter.
10363         * symtab.h (find_gnu_ifunc): New declaration.
10364
10365 2018-04-26  Pedro Alves  <palves@redhat.com>
10366
10367         * blockframe.c (find_gnu_ifunc_target_type): New function.
10368         (find_function_type): New.
10369         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10370         return a value with a memory address.
10371         (eval_call): For calls to GNU ifunc functions, try to find the
10372         type of the target function from the type that the resolver
10373         returns.
10374         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10375         symbols.
10376         * infcall.c (find_function_return_type): Delete.
10377         (find_function_addr): Add 'function_type' parameter.  For calls to
10378         GNU ifunc functions, try to find the type of the target function
10379         from the type that the resolver returns, and return it via
10380         FUNCTION_TYPE.
10381         (call_function_by_hand_dummy): Adjust to use the function type
10382         returned by find_function_addr.
10383         (find_function_addr): Add 'function_type' parameter and move
10384         description here.
10385         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10386         declarations.
10387
10388 2018-04-26  Pedro Alves  <palves@redhat.com>
10389
10390         * c-exp.y (variable production): Skip finding an alias for ifunc
10391         symbols.
10392
10393 2018-04-26  Pedro Alves  <palves@redhat.com>
10394
10395         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10396
10397 2018-04-25  Pedro Alves  <palves@redhat.com>
10398
10399         * infcmd.c (kill_command): Print the pid as string, not the whole
10400         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10401         message.
10402         * remote.c (remote_detach_1): Print the pid as string, not the
10403         whole thread's ptid.
10404
10405 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10406             Sergio Durigan Junior  <sergiodj@redhat.com>
10407             Pedro Alves  <palves@redhat.com>
10408
10409         * infcmd.c (kill_command): Print message when inferior has
10410         been killed.
10411         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10412         '1'.
10413         (add_inferior): Improve message printed when
10414         'print_inferior_events' is on.
10415         (exit_inferior): Remove message printed when
10416         'print_inferior_events' is on.
10417         (detach_inferior): Improve message printed when
10418         'print_inferior_events' is on.
10419         (initialize_inferiors): Use 'add_inferior_silent' to set
10420         'current_inferior_'.
10421         * inferior.h (print_inferior_events): Declare here as
10422         'extern'.
10423         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10424         '[Detaching...]' messages when 'print_inferior_events' is on.
10425         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10426         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10427         'Detaching after fork from child...', replace it by '... from
10428         parent...'.
10429         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10430         prefix/suffix when printing 'Detaching...' messages.  Print
10431         them when 'print_inferior_events' is on.
10432         * remote.c (remote_detach_1): Print message when detaching
10433         from inferior and '!is_fork_parent'.
10434
10435 2018-04-24  Tom Tromey  <tom@tromey.com>
10436
10437         * cli-out.h: Reindent.
10438
10439 2018-04-24  Tom Tromey  <tom@tromey.com>
10440
10441         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10442         (cli_ui_out::do_field_string): Use fputs_filtered.
10443         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10444
10445 2018-04-23  Tom Tromey  <tom@tromey.com>
10446
10447         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10448         gdb::unique_xmalloc_ptr.
10449
10450 2018-04-23  Tom Tromey  <tom@tromey.com>
10451
10452         * configure: Rebuild.
10453
10454 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10455
10456         PR gdb/23095
10457         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10458         prepare_for_testing.  Set normal_bp to r_debug_state if target
10459         is bsd.
10460
10461 2018-04-21  Pedro Alves  <palves@redhat.com>
10462             Rajendra SY  <rajendra.sy@gmail.com>
10463
10464         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10465         * remote.c (extended_remote_attach): In all-stop mode, mark the
10466         thread as executing.
10467
10468 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10469
10470         * thread.c (thread_apply_all_command): Fix comment.
10471         (thread_command): Fix comment.
10472
10473 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10474
10475         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10476         parameter.
10477         * features/aarch64-core.c (create_feature_aarch64_core):
10478         Regenerate.
10479         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10480         Likewise.
10481         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10482         Likewise.
10483         * features/i386/32bit-avx512.c
10484         (create_feature_i386_32bit_avx512): Likewise.
10485         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10486         Likewise.
10487         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10488         Likewise.
10489         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10490         Likewise.
10491         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10492         Likewise.
10493         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10494         Likewise.
10495         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10496         Likewise.
10497         * features/i386/64bit-avx512.c
10498         (create_feature_i386_64bit_avx512): Likewise.
10499         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10500         Likewise.
10501         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10502         Likewise.
10503         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10504         Likewise.
10505         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10506         Likewise.
10507         * features/i386/64bit-segments.c
10508         (create_feature_i386_64bit_segments): Likewise.
10509         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10510         Likewise.
10511         * features/i386/x32-core.c
10512         (create_feature_i386_x32_core): Likewise.
10513         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10514         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10515         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10516         * target-descriptions.c: In generated code, don't pass xml
10517         filename.
10518
10519 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10520
10521         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10522         (print_xml_feature::visit_post): Likewise.
10523         (print_xml_feature::visit): Likewise.
10524         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10525         (print_xml_feature): Add new class.
10526         * regformats/regdat.sh: Null xmltarget on feature targets.
10527         * target-descriptions.c (struct target_desc): Add xmltarget.
10528         (maintenance_check_tdesc_xml_convert): Add unittest function.
10529         (tdesc_get_features_xml): Add function to get xml.
10530         (maintenance_check_xml_descriptions): Test xml generation.
10531         * xml-tdesc.c (string_read_description_xml): Add function.
10532         * xml-tdesc.h (string_read_description_xml): Add declaration.
10533
10534 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10535
10536         * features/Makefile: Add feature marker to targets with new style
10537         target descriptions.
10538         * regformats/aarch64.dat: Regenerate.
10539         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10540         * regformats/i386/amd64-avx-linux.dat: Likewise.
10541         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10542         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10543         * regformats/i386/amd64-linux.dat: Likewise.
10544         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10545         * regformats/i386/amd64.dat: Likewise.
10546         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10547         * regformats/i386/i386-avx-linux.dat: Likewise.
10548         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10549         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10550         * regformats/i386/i386-linux.dat: Likewise.
10551         * regformats/i386/i386-mmx-linux.dat: Likewise.
10552         * regformats/i386/i386-mpx-linux.dat: Likewise.
10553         * regformats/i386/i386.dat: Likewise.
10554         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10555         * regformats/i386/x32-avx-linux.dat: Likewise.
10556         * regformats/i386/x32-linux.dat: Likewise.
10557         * regformats/tic6x-c62x-linux.dat: Likewise.
10558         * regformats/tic6x-c64x-linux.dat: Likewise.
10559         * regformats/tic6x-c64xp-linux.dat: Likewise.
10560         * regformats/regdat.sh: Parse feature marker.
10561
10562 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10563
10564         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
10565         (tdesc_osabi_name): Likewise.
10566         * target-descriptions.c (tdesc_architecture_name): Add new
10567         function.
10568         (tdesc_osabi_name): Likewise.
10569
10570 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10571
10572         * common/tdesc.c (tdesc_predefined_type): Move to here.
10573         (tdesc_named_type): Likewise.
10574         (tdesc_create_vector): Likewise.
10575         (tdesc_create_struct): Likewise.
10576         (tdesc_set_struct_size): Likewise.
10577         (tdesc_create_union): Likewise.
10578         (tdesc_create_flags): Likewise.
10579         (tdesc_create_enum): Likewise.
10580         (tdesc_add_field): Likewise.
10581         (tdesc_add_typed_bitfield): Likewise.
10582         (tdesc_add_bitfield): Likewise.
10583         (tdesc_add_flag): Likewise.
10584         (tdesc_add_enum_value): Likewise.
10585         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
10586         (struct tdesc_type_vector): Likewise.
10587         (struct tdesc_type_field): Likewise.
10588         (struct tdesc_type_with_fields): Likewise.
10589         (tdesc_create_enum): Add declaration.
10590         (tdesc_add_typed_bitfield): Likewise.
10591         (tdesc_add_enum_value): Likewise.
10592         * target-descriptions.c (tdesc_type_field): Move from here.
10593         (tdesc_type_builtin): Likewise.
10594         (tdesc_type_vector): Likewise.
10595         (tdesc_type_with_fields): Likewise.
10596         (tdesc_predefined_types): Likewise.
10597         (tdesc_named_type): Likewise.
10598         (tdesc_create_vector): Likewise.
10599         (tdesc_create_struct): Likewise.
10600         (tdesc_set_struct_size): Likewise.
10601         (tdesc_create_union): Likewise.
10602         (tdesc_create_flags): Likewise.
10603         (tdesc_create_enum): Likewise.
10604         (tdesc_add_field): Likewise.
10605         (tdesc_add_typed_bitfield): Likewise.
10606         (tdesc_add_bitfield): Likewise.
10607         (tdesc_add_flag): Likewise.
10608         (tdesc_add_enum_value): Likewise.
10609         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
10610         (tdesc_add_typed_bitfield): Likewise.
10611         (tdesc_add_enum_value): Likewise.
10612
10613 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10614
10615         * common/tdesc.c (tdesc_feature::accept): Move to here.
10616         (tdesc_feature::operator==): Likewise.
10617         (tdesc_create_reg): Likewise.
10618         * common/tdesc.h (tdesc_type_kind): Likewise.
10619         (struct tdesc_type): Likewise.
10620         (struct tdesc_feature): Likewise.
10621         * regformats/regdat.sh: Create a feature.
10622         * target-descriptions.c (tdesc_type_kind): Move from here.
10623         (tdesc_type): Likewise.
10624         (tdesc_type_up): Likewise.
10625         (tdesc_feature): Likewise.
10626         (tdesc_create_reg): Likewise.
10627
10628 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10629
10630         * Makefile.in: Add arch/tdesc.c
10631         * common/tdesc.c: New file.
10632         * common/tdesc.h (tdesc_element_visitor): Move to here.
10633         (tdesc_element): Likewise.
10634         (tdesc_reg): Likewise.
10635         (tdesc_reg_up): Likewise.
10636         * regformats/regdef.h (reg): Add offset to constructors.
10637         * target-descriptions.c (tdesc_element_visitor): Move from here.
10638         (tdesc_element): Likewise.
10639         (tdesc_reg): Likewise.
10640         (tdesc_reg_up): Likewise.
10641
10642 2018-04-17  Tom Tromey  <tom@tromey.com>
10643
10644         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
10645         discriminant field.
10646
10647 2018-04-17  Tom Tromey  <tom@tromey.com>
10648
10649         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
10650
10651 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10652
10653         * symtab.c (print_symbol_info): Skip printing filename and line
10654         number when `last' is NULL.
10655         (symtab_symbol_info): Use empty string instead of NULL for first
10656         invocation of print_symbol_info.
10657         (rbreak_command): Pass NULL to `last' parameter of
10658         print_symbol_info.
10659
10660 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
10661
10662         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
10663         instead of nullptr.
10664
10665 2018-04-16  Pedro Alves  <palves@redhat.com>
10666
10667         * MAINTAINERS (sh): Remove.
10668         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
10669         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
10670         (ALLDEPFILES): Remove sh64-tdep.c.
10671         * NEWS: Mentions that support for SH-5/SH64 is removed.
10672         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
10673         (sh*-*-openbsd*): Ditto.
10674         (sh64-*-elf*): Remove.
10675         (sh*): Remove.
10676         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
10677         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
10678         * sh-tdep.c: No longer include "sh64-tdep.h".
10679         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
10680         * sh64-tdep.c, sh64-tdep.h: Remove files.
10681
10682 2018-04-16  Pedro Alves  <palves@redhat.com>
10683
10684         * MAINTAINERS: Remove m88k.
10685         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
10686         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
10687         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
10688         * NEWS: Mention that support for m88k was removed.
10689         * configure.host (m88*-*-*): Remove support.
10690         * configure.nat (m88k-*-*): Remove support.
10691         * configure.tgt (m88*-*-openbsd*): Remove.
10692         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
10693
10694 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
10695
10696         * configure.tgt (x86_tobjs): New variable.
10697         (amd64_tobjs, i386_tobjs): Use it.
10698
10699 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10700
10701         * symtab.c (print_symbol_info): Precede the symbol definition by
10702         the line number when available.
10703         * NEWS: Advertise this enhancement.
10704
10705 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10706
10707         * NEWS (New options): announce set/show record btrace cpu.
10708         * btrace.c: Include record-btrace.h.
10709         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
10710         the vendor is unknown.
10711         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
10712         Maybe overwrite the btrace configuration's cpu.
10713         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
10714         (btrace_fetch): Add cpu parameter.  Update callers.
10715         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
10716         Maybe overwrite the btrace configuration's cpu.  Skip enabling
10717         errata workarounds if the vendor is unknown.
10718         * python/py-record-btrace.c: Include record-btrace.h.
10719         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
10720         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
10721         * record-btrace.c (record_btrace_cpu_state_kind): New.
10722         (record_btrace_cpu): New.
10723         (set_record_btrace_cpu_cmdlist): New.
10724         (record_btrace_get_cpu): New.
10725         (require_btrace_thread, record_btrace_info)
10726         (record_btrace_resume_thread): Call record_btrace_get_cpu.
10727         (cmd_set_record_btrace_cpu_none): New.
10728         (cmd_set_record_btrace_cpu_auto): New.
10729         (cmd_set_record_btrace_cpu): New.
10730         (cmd_show_record_btrace_cpu): New.
10731         (_initialize_record_btrace): Initialize set/show record btrace cpu
10732         commands.
10733         * record-btrace.h (record_btrace_get_cpu): New.
10734
10735 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10736
10737         * record.c (set_record_command): Fix typo in message.
10738
10739 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10740
10741         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
10742
10743 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10744
10745         * infrun.c (process_event_stop_test): Call
10746         gdbarch_in_indirect_branch_thunk.
10747         * gdbarch.sh (in_indirect_branch_thunk): New.
10748         * gdbarch.c: Regenerated.
10749         * gdbarch.h: Regenerated.
10750         * x86-tdep.h: New.
10751         * x86-tdep.c: New.
10752         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
10753         (HFILES_NO_SRCDIR): Add x86-tdep.h.
10754         (ALLDEPFILES): Add x86-tdep.c.
10755         * arch-utils.h (default_in_indirect_branch_thunk): New.
10756         * arch-utils.c (default_in_indirect_branch_thunk): New.
10757         * i386-tdep: Include x86-tdep.h.
10758         (i386_in_indirect_branch_thunk): New.
10759         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
10760         function.
10761         * amd64-tdep: Include x86-tdep.h.
10762         (amd64_in_indirect_branch_thunk): New.
10763         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
10764
10765 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
10766
10767         PR gdb/23053
10768         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
10769         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
10770         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
10771         regression.
10772
10773 2018-04-12  Tom Tromey  <tom@tromey.com>
10774
10775         * rust-lang.c (rust_print_struct_def): Remove univariant code.
10776         (rust_evaluate_subexp): Likewise.
10777
10778 2018-04-12  Pedro Alves  <palves@redhat.com>
10779
10780         * procfs.c (procfs_detach): Make forward declaration's prototype
10781         match definition's protototype.
10782         (proc_get_LDT_entry): Remove stale do_cleanups call.
10783
10784 2018-04-12  Pedro Alves  <palves@redhat.com>
10785
10786         * target.h (target_ops::to_has_exited): Delete.
10787         (target_has_exited): Delete.
10788         * target-delegates.c: Regenerate.
10789
10790 2018-04-11  Pedro Alves  <palves@redhat.com>
10791
10792         * target.c (fileio_fh_t::t): Add comment.
10793         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10794         (target_fileio_close): Handle a NULL target.
10795         (invalidate_fileio_fh): New.
10796         (target_close): Call it.
10797         * remote.c (remote_hostio_send_command): No longer check whether
10798         remote_desc is open.
10799
10800 2018-04-11  Pedro Alves  <palves@redhat.com>
10801
10802         * target.c (fileio_fh_t): Make it a named struct instead of a
10803         typedef.
10804         (fileio_fh_t::is_closed): New method.
10805         (DEF_VEC_O (fileio_fh_t)): Remove.
10806         (fileio_fhandles): Now a std::vector.
10807         (is_closed_fileio_fh): Delete.
10808         (acquire_fileio_fd): Adjust.  Rename parameters.
10809         (release_fileio_fd): Adjust.
10810         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
10811         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10812         (target_fileio_close): Adjust.
10813
10814 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
10815
10816         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
10817         index.
10818
10819 2018-04-10  Pedro Alves  <palves@redhat.com>
10820
10821         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
10822         (scoped_finish_thread_state): New class.
10823         * infcmd.c (run_command_1): Use it instead of finish_thread_state
10824         cleanup.
10825         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
10826         (fetch_inferior_event, normal_stop): Likewise.
10827         * thread.c (finish_thread_state_cleanup): Delete.
10828
10829 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10830             Pedro Alves  <palves@redhat.com>
10831
10832         * value.c: Include "selftest.h" and "common/array-view.h".
10833         (struct range) <operator ==>: New.
10834         (test_ranges_contain): New.
10835         (check_ranges_vector): New.
10836         (test_insert_into_bit_range_vector): New.
10837         (_initialize_values): Register selftests.
10838         * common/array-view.h (operator==, operator!=): New.
10839
10840 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10841
10842         * common/gdb_vecs.h (unordered_remove): Add overload that takes
10843         an iterator.
10844         * inline-frame.c: Include <algorithm>.
10845         (struct inline_state): Add constructor.
10846         (inline_state_s): Remove.
10847         (DEF_VEC_O(inline_state_s)): Remove.
10848         (inline_states): Change type to std::vector.
10849         (find_inline_frame_state): Adjust to std::vector.
10850         (allocate_inline_frame_state): Remove.
10851         (clear_inline_frame_state): Adjust to std::vector.
10852         (skip_inline_frames): Adjust to std::vector.
10853
10854 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10855
10856         * tracepoint.h (struct trace_state_variable): Add constructor.
10857         <name>: Change type to std::string.
10858         * tracepoint.c (tsv_s): Remove.
10859         (DEF_VEC_O(tsv_s)): Remove.
10860         (tvariables): Change to std::vector.
10861         (create_trace_state_variable): Adjust to std::vector.
10862         (find_trace_state_variable): Likewise.
10863         (find_trace_state_variable_by_number): Likewise.
10864         (delete_trace_state_variable): Likewise.
10865         (trace_variable_command): Adjust to std::string.
10866         (delete_trace_variable_command): Likewise.
10867         (tvariables_info_1): Adjust to std::vector.
10868         (save_trace_state_variables): Likewise.
10869         (start_tracing): Likewise.
10870         (merge_uploaded_trace_state_variables): Adjust to std::vector
10871         and std::string.
10872         * target.h (struct target_ops)
10873         <to_download_trace_state_variable>: Pass reference to
10874         trace_state_variable.
10875         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
10876         * target-delegates.c: Re-generate.
10877         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
10878         (mi_tsv_deleted): Likewise.
10879         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
10880         * remote.c (remote_download_trace_state_variable): Change
10881         pointer to reference and adjust.
10882         * make-target-delegates (parse_argtypes): Handle references.
10883         (write_function_header): Likewise.
10884         (munge_type): Likewise.
10885
10886 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10887
10888         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10889         string_view-selftests.c.
10890         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
10891         testsuite.
10892         * unittests/basic_string_view/cons/char/1.cc: Likewise.
10893         * unittests/basic_string_view/cons/char/2.cc: Likewise.
10894         * unittests/basic_string_view/cons/char/3.cc: Likewise.
10895         * unittests/basic_string_view/element_access/char/1.cc:
10896         Likewise.
10897         * unittests/basic_string_view/element_access/char/empty.cc:
10898         Likewise.
10899         * unittests/basic_string_view/element_access/char/front_back.cc:
10900         Likewise.
10901         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
10902         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
10903         Likewise.
10904         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
10905         Likewise.
10906         * unittests/basic_string_view/modifiers/swap/char/1.cc:
10907         Likewise.
10908         * unittests/basic_string_view/operations/compare/char/1.cc:
10909         Likewise.
10910         * unittests/basic_string_view/operations/compare/char/13650.cc:
10911         Likewise.
10912         * unittests/basic_string_view/operations/copy/char/1.cc:
10913         Likewise.
10914         * unittests/basic_string_view/operations/data/char/1.cc:
10915         Likewise.
10916         * unittests/basic_string_view/operations/find/char/1.cc:
10917         Likewise.
10918         * unittests/basic_string_view/operations/find/char/2.cc:
10919         Likewise.
10920         * unittests/basic_string_view/operations/find/char/3.cc:
10921         Likewise.
10922         * unittests/basic_string_view/operations/find/char/4.cc:
10923         Likewise.
10924         * unittests/basic_string_view/operations/rfind/char/1.cc:
10925         Likewise.
10926         * unittests/basic_string_view/operations/rfind/char/2.cc:
10927         Likewise.
10928         * unittests/basic_string_view/operations/rfind/char/3.cc:
10929         Likewise.
10930         * unittests/basic_string_view/operations/substr/char/1.cc:
10931         Likewise.
10932         * unittests/basic_string_view/operators/char/2.cc: Likewise.
10933         * unittests/string_view-selftests.c: New file.
10934
10935 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10936
10937         * unittests/basic_string_view/capacity/1.cc: New file.
10938         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
10939         * unittests/basic_string_view/cons/char/1.cc: New file.
10940         * unittests/basic_string_view/cons/char/2.cc: New file.
10941         * unittests/basic_string_view/cons/char/3.cc: New file.
10942         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
10943         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
10944         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
10945         * unittests/basic_string_view/element_access/char/1.cc: New file.
10946         * unittests/basic_string_view/element_access/char/2.cc: New file.
10947         * unittests/basic_string_view/element_access/char/empty.cc: New file.
10948         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
10949         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
10950         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
10951         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
10952         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
10953         * unittests/basic_string_view/include.cc: New file.
10954         * unittests/basic_string_view/inserters/char/1.cc: New file.
10955         * unittests/basic_string_view/inserters/char/2.cc: New file.
10956         * unittests/basic_string_view/inserters/char/3.cc: New file.
10957         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
10958         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
10959         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
10960         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
10961         * unittests/basic_string_view/literals/types.cc: New file.
10962         * unittests/basic_string_view/literals/values.cc: New file.
10963         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
10964         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
10965         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
10966         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
10967         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
10968         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
10969         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
10970         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
10971         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
10972         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
10973         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
10974         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
10975         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
10976         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
10977         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
10978         * unittests/basic_string_view/operations/data/char/1.cc: New file.
10979         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
10980         * unittests/basic_string_view/operations/find/char/1.cc: New file.
10981         * unittests/basic_string_view/operations/find/char/2.cc: New file.
10982         * unittests/basic_string_view/operations/find/char/3.cc: New file.
10983         * unittests/basic_string_view/operations/find/char/4.cc: New file.
10984         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
10985         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
10986         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
10987         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
10988         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
10989         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
10990         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
10991         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
10992         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
10993         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
10994         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
10995         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
10996         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
10997         * unittests/basic_string_view/operators/char/2.cc: New file.
10998         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
10999         * unittests/basic_string_view/range_access/char/1.cc: New file.
11000         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11001         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11002         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11003         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11004         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11005         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11006         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11007         * unittests/basic_string_view/typedefs.cc: New file.
11008         * unittests/basic_string_view/types/1.cc: New file.
11009
11010 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11011
11012         * common/gdb_string_view.h: Remove libstdc++ implementation
11013         details, adjust to gdb reality.
11014         * common/gdb_string_view.tcc: Likewise.
11015         * cli/cli-script.c (struct string_view): Remove.
11016         (user_args) <m_args>: Change element type to gdb::string_view.
11017         (user_args::insert_args): Adjust.
11018
11019 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11020
11021         * common/gdb_string_view.h: New file.
11022         * common/gdb_string_view.tcc: New file.
11023
11024 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11025
11026         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11027         * configure: Re-generate.
11028
11029 2018-04-09  Pedro Alves  <palves@redhat.com>
11030
11031         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11032         (set_target_gdbarch): Call
11033         gdb::observers::architecture_changed.notify instead of
11034         observer_notify_architecture_changed.
11035
11036 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11037
11038         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11039         (do_restore_current_traceframe_cleanup): Remove.
11040         (restore_current_traceframe_cleanup_dtor): Remove.
11041         (make_cleanup_restore_current_traceframe): Remove.
11042         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11043         New.
11044         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11045         * infrun.c (fetch_inferior_event): Use
11046         scoped_restore_current_traceframe.
11047
11048 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11049
11050         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11051         Remove.
11052         <n_allocated_type_units>: Remove.
11053         <all_type_units>: Change to std::vector.
11054         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11055         to std::vector change.
11056         (dwarf2_per_objfile::get_cutu): Likewise.
11057         (dwarf2_per_objfile::get_tu): Likewise.
11058         (create_signatured_type_table_from_index): Likewise.
11059         (create_signatured_type_table_from_debug_names): Likewise.
11060         (dw2_symtab_iter_next): Likewise.
11061         (dw2_print_stats): Likewise.
11062         (dw2_expand_all_symtabs): Likewise.
11063         (dw2_expand_marked_cus): Likewise.
11064         (dw2_debug_names_iterator::next): Likewise.
11065         (dwarf2_initialize_objfile): Likewise.
11066         (add_signatured_type_cu_to_table): Likewise.
11067         (create_all_type_units): Likewise.
11068         (add_type_unit): Likewise.
11069         (struct tu_abbrev_offset): Add constructor.
11070         (build_type_psymtabs_1): Adjust to std::vector change.
11071         (print_tu_stats): Likewise.
11072         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11073         (write_debug_names): Likewise.
11074
11075 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11076
11077         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11078         Make an std::vector.
11079         <n_comp_units>: Remove.
11080         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11081         to std::vector change.
11082         (dwarf2_per_objfile::get_cutu): Likewise.
11083         (dwarf2_per_objfile::get_cu): Likewise.
11084         (create_cus_from_index): Likewise.
11085         (create_addrmap_from_index): Likewise.
11086         (create_addrmap_from_aranges): Likewise.
11087         (dwarf2_read_index): Likewise.
11088         (dw2_find_last_source_symtab): Likewise.
11089         (dw2_map_symtabs_matching_filename): Likewise.
11090         (dw2_symtab_iter_next): Likewise.
11091         (dw2_print_stats): Likewise.
11092         (dw2_expand_all_symtabs): Likewise.
11093         (dw2_expand_symtabs_with_fullname): Likewise.
11094         (dw2_expand_marked_cus): Likewise.
11095         (dw2_map_symbol_filenames): Likewise.
11096         (create_cus_from_debug_names): Likewise.
11097         (dwarf2_read_debug_names): Likewise.
11098         (dw2_debug_names_iterator::next): Likewise.
11099         (dwarf2_initialize_objfile): Likewise.
11100         (set_partial_user): Likewise.
11101         (dwarf2_build_psymtabs_hard): Likewise.
11102         (read_comp_units_from_section): Remove arguments, adjust to
11103         std::vector change.
11104         (create_all_comp_units): Adjust to std::vector and
11105         read_comp_units_from_section changes.
11106         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11107         change.
11108         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11109         (psyms_seen_size): Likewise.
11110         (write_gdbindex): Likewise.
11111         (write_debug_names): Likewise.
11112
11113 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11114
11115         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11116         with dwarf2_per_objfile.
11117         (create_cus_from_index): Likewise.
11118         (create_signatured_type_table_from_index): Likewise.
11119         (dwarf2_read_index): Likewise.
11120         (dwarf2_initialize_objfile): Likewise.
11121         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11122         per_cu rather than get_dwarf2_per_objfile.
11123
11124 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11125
11126         * dwarf2read.h (struct signatured_type): Forward declare.
11127         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11128         New methods.
11129         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11130         (dw2_get_cutu): ...this.
11131         (dwarf2_per_objfile::get_cu): Rename from...
11132         (dw2_get_cu): ...this.
11133         (dwarf2_per_objfile::get_tu): New.
11134         (create_addrmap_from_index): Adjust.
11135         (create_addrmap_from_aranges): Adjust.
11136         (dw2_find_last_source_symtab): Adjust.
11137         (dw2_map_symtabs_matching_filename): Adjust.
11138         (dw2_symtab_iter_next): Adjust.
11139         (dw2_print_stats): Adjust.
11140         (dw2_expand_all_symtabs): Adjust.
11141         (dw2_expand_symtabs_with_fullname): Adjust.
11142         (dw2_expand_marked_cus): Adjust.
11143         (dw_expand_symtabs_matching_file_matcher): Adjust.
11144         (dw2_map_symbol_filenames): Adjust.
11145         (dw2_debug_names_iterator::next): Adjust.
11146         (dwarf2_initialize_objfile): Adjust.
11147         (set_partial_user): Adjust.
11148         (dwarf2_build_psymtabs_hard): Adjust.
11149
11150 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11151
11152         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11153         Remove unused variables.
11154         (dw2_map_symtabs_matching_filename): Likewise.
11155         (dwarf2_record_block_ranges): Likewise.
11156         (dwarf2_read_addr_index): Likewise.
11157         (follow_die_offset): Likewise.
11158
11159 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11160
11161         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11162         to symbol_file_add_main.
11163
11164 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11165
11166         PR mi/22299
11167         * mi/mi-console.c (do_fputc_async_safe): New.
11168         (mi_console_file::write_async_safe): New.
11169         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11170         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11171         New.
11172         * ui-file.c (ui_file::putstrn): Adjust call to
11173         fputstrn_unfiltered.
11174         * utils.c (printchar): Replace do_fputs and do_fprintf
11175         parameters by do_fputc.
11176         (fputstr_filtered): Adjust call to printchar.
11177         (fputstr_unfiltered): Likewise.
11178         (fputstrn_filtered): Likewise.
11179         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11180         printchar.
11181         * utils.h (do_fputc_ftype): New typedef.
11182         (fputstrn_unfiltered): Add do_fputc parameter.
11183
11184 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11185
11186         * regformats/i386/i386-avx.dat: Remove.
11187
11188 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11189
11190         PR gdb/22979
11191         * amd64-tdep.c (amd64_none_init_abi): New function.
11192         (amd64_x32_none_init_abi): New function.
11193         (_initialize_amd64_tdep): Register handlers for x86-64 and
11194         x64_32 with GDB_OSABI_NONE.
11195         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11196         GDB_OSABI_NONE osabi.
11197
11198 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11199
11200         PR gdb/22980
11201         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11202         GDB_OSABI_NONE.
11203         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11204         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11205
11206 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11207
11208         * common/byte-vector.h (char_vector): New type.
11209         * target.h (target_read_alloc): Return
11210         gdb::optional<byte_vector>.
11211         (target_read_stralloc): Return gdb::optional<char_vector>.
11212         (target_get_osdata): Return gdb::optional<char_vector>.
11213         * target.c (target_read_alloc_1): Templatize.  Replacement
11214         manual memory management with vector.
11215         (target_read_alloc): Change return type, adjust.
11216         (target_read_stralloc): Change return type, adjust.
11217         (target_get_osdata): Change return type, adjust.
11218         * auxv.c (struct auxv_info) <length>: Remove.
11219         <data>: Change type to gdb::optional<byte_vector>.
11220         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11221         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11222         (target_auxv_search): Adjust.
11223         (fprint_target_auxv): Adjust.
11224         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11225         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11226         (linux_make_corefile_notes): Adjust.
11227         * osdata.c (get_osdata): Adjust.
11228         * remote.c (remote_get_threads_with_qxfer): Adjust.
11229         (remote_memory_map): Adjust.
11230         (remote_traceframe_info): Adjust.
11231         (btrace_read_config): Adjust.
11232         (remote_read_btrace): Adjust.
11233         (remote_pid_to_exec_file): Adjust.
11234         * solib-aix.c (solib_aix_get_library_list): Adjust.
11235         * solib-dsbt.c (decode_loadmap): Don't free buf.
11236         (dsbt_get_initial_loadmaps): Adjust.
11237         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11238         * solib-target.c (solib_target_current_sos): Adjust.
11239         * tracepoint.c (sdata_make_value): Adjust.
11240         * xml-support.c (xinclude_start_include): Adjust.
11241         (xml_fetch_content_from_file): Adjust.
11242         * xml-support.h (xml_fetch_another): Change return type.
11243         (xml_fetch_content_from_file): Change return type.
11244         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11245         * xml-tdesc.c (file_read_description_xml): Adjust.
11246         (fetch_available_features_from_target): Change return type.
11247         (target_fetch_description_xml): Adjust.
11248         (target_read_description_xml): Adjust.
11249
11250 2018-04-06  Tom Tromey  <tom@tromey.com>
11251
11252         * value.c (~value): Update.
11253         (struct value) <contents>: Now unique_xmalloc_ptr.
11254         (value_contents_bits_eq, allocate_value_contents)
11255         (value_contents_raw, value_contents_all_raw)
11256         (value_contents_for_printing, value_contents_for_printing_const)
11257         (set_value_enclosing_type): Update.
11258
11259 2018-04-06  Tom Tromey  <tom@tromey.com>
11260
11261         * value.c (range_s): Remove typedef, VEC.
11262         (struct range): Add operator<.
11263         (range_lessthan): Remove.
11264         (ranges_contain): Change type.
11265         (~value): Update.
11266         (struct value) <unavailable, optimized_out>: Now std::vector.
11267         (value_entirely_available)
11268         (value_entirely_covered_by_range_vector)
11269         (value_entirely_unavailable, value_entirely_optimized_out):
11270         Update.
11271         (insert_into_bit_range_vector): Change argument type.
11272         (find_first_range_overlap): Likewise.
11273         (struct ranges_and_idx, value_contents_bits_eq)
11274         (require_not_optimized_out, require_available): Update.
11275         (ranges_copy_adjusted): Change argument types.
11276         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11277
11278 2018-04-06  Tom Tromey  <tom@tromey.com>
11279
11280         * value.c (~value): Update.
11281         (struct value) <parent>: Now a value_ref_ptr.
11282         (value_parent, set_value_parent, value_address, value_copy):
11283         Update.
11284
11285 2018-04-06  Tom Tromey  <tom@tromey.com>
11286
11287         * value.c (struct value): Add constructor, destructor, and member
11288         initializers.
11289         (allocate_value_lazy, value_decref): Update.
11290
11291 2018-04-06  Tom Tromey  <tom@tromey.com>
11292
11293         * value.c (struct value) <released, next>: Remove.
11294         (all_values): Now a std::vector.
11295         (allocate_value_lazy): Update.
11296         (value_next): Remove.
11297         (value_mark, value_free_to_mark, release_value)
11298         (value_release_to_mark): Update.
11299
11300 2018-04-06  Tom Tromey  <tom@tromey.com>
11301
11302         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11303         (free_value_chain): Remove.
11304         * value.c (free_value_chain): Remove.
11305         (value_release_to_mark): Return a std::vector.
11306         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11307         std::vector.
11308         (check_condition): Update.
11309         * eval.c (fetch_subexp_value): Change "val_chain" to a
11310         std::vector.
11311         * breakpoint.c (update_watchpoint): Update.
11312         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11313
11314 2018-04-06  Tom Tromey  <tom@tromey.com>
11315
11316         * value.h (free_all_values): Remove.
11317         * value.c (free_all_values): Remove.
11318
11319 2018-04-06  Tom Tromey  <tom@tromey.com>
11320
11321         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11322         (value_history_chain, value_history_count): Remove.
11323         (value_history): New global.
11324         (record_latest_value, access_value_history, show_values)
11325         (preserve_values): Update.
11326
11327 2018-04-06  Tom Tromey  <tom@tromey.com>
11328
11329         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11330         * varobj.c (varobj_set_display_format, varobj_set_value)
11331         (install_default_visualizer, construct_visualizer)
11332         (install_new_value, ~varobj, varobj_get_value_type)
11333         (my_value_of_variable, varobj_editable_p): Update.
11334         * c-varobj.c (c_describe_child, c_value_of_variable)
11335         (cplus_number_of_children, cplus_describe_child): Update.
11336         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11337         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11338         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11339
11340 2018-04-06  Tom Tromey  <tom@tromey.com>
11341
11342         * printcmd.c (last_examine_address): Change type to
11343         value_ref_ptr.
11344         (do_examine, x_command): Update.
11345
11346 2018-04-06  Tom Tromey  <tom@tromey.com>
11347
11348         * value.c (release_value): Update.
11349         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11350         (struct bpstats) <val>: Now a value_ref_ptr.
11351         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11352         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11353         (~watchpoint, print_it_watchpoint, watch_command_1)
11354         (invalidate_bp_value_on_memory_change): Update.
11355
11356 2018-04-06  Tom Tromey  <tom@tromey.com>
11357
11358         * varobj.c (varobj_clear_saved_item)
11359         (update_dynamic_varobj_children, install_new_value, ~varobj):
11360         Update.
11361         * value.h (value_incref): Move declaration earlier.
11362         (value_decref): Rename from value_free.
11363         (struct value_ref_policy): New.
11364         (value_ref_ptr): New typedef.
11365         (struct value_deleter): Remove.
11366         (gdb_value_up): Remove typedef.
11367         (release_value): Change return type.
11368         (release_value_or_incref): Remove.
11369         * value.c (set_value_parent): Update.
11370         (value_incref): Change return type.
11371         (value_decref): Rename from value_free.
11372         (value_free_to_mark, free_all_values, free_value_chain): Update.
11373         (release_value): Return value_ref_ptr.
11374         (release_value_or_incref): Remove.
11375         (record_latest_value, set_internalvar, clear_internalvar):
11376         Update.
11377         * stack.c (info_frame_command): Don't call value_free.
11378         * python/py-value.c (valpy_dealloc, valpy_new)
11379         (value_to_value_object): Update.
11380         * printcmd.c (do_examine): Update.
11381         * opencl-lang.c (lval_func_free_closure): Update.
11382         * mi/mi-main.c (register_changed_p): Don't call value_free.
11383         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11384         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11385         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11386         value_free.
11387         * guile/scm-value.c (vlscm_free_value_smob)
11388         (vlscm_scm_from_value): Update.
11389         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11390         (frame_unwind_register_unsigned, get_frame_register_bytes)
11391         (put_frame_register_bytes): Don't call value_free.
11392         * findvar.c (address_from_register): Don't call value_free.
11393         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11394         * dwarf2loc.c (entry_data_value_free_closure)
11395         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11396         (dwarf2_evaluate_loc_desc_full): Update.
11397         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11398         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11399         (~watchpoint, watch_command_1)
11400         (invalidate_bp_value_on_memory_change): Update.
11401         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11402
11403 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11404
11405         PR gdb/23022
11406         * warning.m4: Add -Wno-error=deprecated-register.
11407         * configure: Re-generate.
11408
11409 2018-04-05  Tom Tromey  <tom@tromey.com>
11410
11411         * linespec.h: Remove include of "vec.h".
11412
11413 2018-04-05  Tom Tromey  <tom@tromey.com>
11414
11415         * linespec.c (typep): Remove typedef.
11416         (find_methods, find_superclass_methods): Take a std::vector.
11417         (find_method): Use std::vector.
11418
11419 2018-04-05  Tom Tromey  <tom@tromey.com>
11420
11421         * utils.c (compare_strings): Remove.
11422         * utils.h (compare_strings): Remove.
11423         * objc-lang.h (find_imps): Update.
11424         * objc-lang.c (find_methods): Take a std::vector.
11425         (uniquify_strings, find_imps): Likewise.
11426         * linespec.c (find_methods): Take a std::vector.
11427         (decode_objc): Use std::vector.
11428         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11429         a std::vector.
11430         (find_method, find_function_symbols): Use std::vector.
11431
11432 2018-04-05  Tom Tromey  <tom@tromey.com>
11433
11434         * completer.c (completion_tracker::completion_tracker): Remove
11435         cast.
11436         (completion_tracker::discard_completions): Likewise.
11437         * breakpoint.c (ambiguous_names_p): Remove cast.
11438         * ada-lang.c (_initialize_ada_language): Remove cast.
11439         * utils.h (streq): Update.
11440         (streq_hash): Add new declaration.
11441         * utils.c (streq): Return bool.
11442         (streq_hash): New function.
11443
11444 2018-04-05  Tom Tromey  <tom@tromey.com>
11445
11446         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11447         Remove a string copy.
11448
11449 2018-04-05  Tom Tromey  <tom@tromey.com>
11450
11451         * linespec.c (filter_results): Use std::vector.
11452         (decode_line_2, decode_line_full): Update.
11453
11454 2018-04-05  Tom Tromey  <tom@tromey.com>
11455
11456         * linespec.c (canonical_to_fullform): Return std::string.
11457         (filter_results): Update.
11458         (struct decode_line_2_item): Add constructor.
11459         <fullform, displayform>: Now std::string.
11460         (decode_line_2_compare_items): Now a std::sort comparator.
11461         (decode_line_2): Update.
11462
11463 2018-04-05  Tom Tromey  <tom@tromey.com>
11464
11465         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11466         (unexpected_linespec_error): Update.
11467         (linespec_parse_basic, parse_linespec): Update.
11468
11469 2018-04-05  Tom Tromey  <tom@tromey.com>
11470
11471         * linespec.c (linespec_parse_basic): Reindent.
11472
11473 2018-04-05  Tom Tromey  <tom@tromey.com>
11474
11475         * minsyms.h (iterate_over_minimal_symbols): Update.
11476         * minsyms.c (iterate_over_minimal_symbols): Take a
11477         gdb::function_view.
11478         * linespec.c (struct collect_minsyms): Remove.
11479         (compare_msyms): Now a std::sort comparator.
11480         (add_minsym): Add parameters.
11481         (search_minsyms_for_name): Update.  Use std::vector.
11482
11483 2018-04-03  Tom Tromey  <tom@tromey.com>
11484
11485         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11486         gdb::byte_vector.
11487
11488 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11489
11490         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11491
11492 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11493
11494         PR gdb/16959
11495         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11496         printing static type.
11497
11498 2018-04-01  Tom Tromey  <tom@tromey.com>
11499
11500         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11501         (rs6000_xfer_shared_libraries): Update.
11502
11503 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11504
11505         * common/gdb_vecs.h (char_ptr): Remove.
11506         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11507
11508 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11509
11510         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11511         with std::vector.
11512         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11513
11514 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11515
11516         * tracepoint.h (struct uploaded_tp): Initialize fields.
11517         <actions, step_actions, cmd_strings>: Change type to
11518         std::vector<char *>.
11519         * tracepoint.c (get_uploaded_tp): Allocate with new.
11520         (free_uploaded_tps): Free with delete.
11521         (parse_tracepoint_definition): Adjust to std::vector change.
11522         * breakpoint.c (read_uploaded_action): Likewise.
11523         (create_tracepoint_from_upload): Likewise.
11524         * ctf.c (ctf_write_uploaded_tp): Likewise.
11525         (SET_ARRAY_FIELD): Likewise.
11526         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11527
11528 2018-03-30  Tom Tromey  <tom@tromey.com>
11529
11530         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11531         std::unique_ptr.
11532         (svr4_keep_data_in_core): Update.
11533         (svr4_read_so_list): Update.
11534
11535 2018-03-30  Tom Tromey  <tom@tromey.com>
11536
11537         * windows-nat.c (handle_output_debug_string, handle_exception):
11538         Update.
11539         * target.h (target_read_string): Update.
11540         * target.c (target_read_string): Change "string" to
11541         unique_xmalloc_ptr.
11542         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11543         Update.
11544         * solib-frv.c (frv_current_sos): Update.
11545         * solib-dsbt.c (dsbt_current_sos): Update.
11546         * solib-darwin.c (darwin_current_sos): Update.
11547         * linux-thread-db.c (inferior_has_bug): Update.
11548         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11549         Update.  Remove alloca.
11550         * ada-lang.c (ada_main_name): Update.
11551
11552 2018-03-30  Tom Tromey  <tom@tromey.com>
11553
11554         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11555         (struct dwo_file_deleter): New.
11556         (dwo_file_up): New typedef.
11557         (open_and_init_dwo_file): Use dwo_file_up.
11558         (free_dwo_file_cleanup): Remove.
11559
11560 2018-03-30  Tom Tromey  <tom@tromey.com>
11561
11562         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
11563         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
11564
11565 2018-03-30  Tom Tromey  <tom@tromey.com>
11566
11567         * dwarf2read.c (class free_cached_comp_units): New class.
11568         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
11569         (free_cached_comp_units): Remove function.
11570
11571 2018-03-30  Tom Tromey  <tom@tromey.com>
11572
11573         * utils.h (make_cleanup_unpush_target): Remove.
11574         * inf-ptrace.c (struct target_unpusher): New.
11575         (target_unpush_up) New typedef.
11576         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
11577         target_unpush_up.
11578         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
11579
11580 2018-03-27  Tom Tromey  <tom@tromey.com>
11581
11582         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
11583
11584 2018-03-27  Pedro Alves  <palves@redhat.com>
11585             Tom Tromey  <tom@tromey.com>
11586
11587         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
11588         destructor.  Now a class.
11589         (gdb_readline_wrapper_cleanup): Remove function.
11590         (gdb_readline_wrapper): Remove cleanups.
11591
11592 2018-03-27  Tom Tromey  <tom@tromey.com>
11593
11594         * typeprint.h (struct type_print_options) <local_typedefs,
11595         global_typedefs>: Remove "struct" keyword.
11596         (class typedef_hash_table): New class.
11597         (recursively_update_typedef_hash, add_template_parameters)
11598         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
11599         (find_typedef_in_hash): Don't declare.
11600         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
11601         (typedef_hash_table::recursively_update): Rename from
11602         recursively_update_typedef_hash.  Now a member.
11603         (typedef_hash_table::add_template_parameters): Rename from
11604         add_template_parameters.  Now a member.
11605         (typedef_hash_table::typedef_hash_table): Now a constructor;
11606         rename from create_typedef_hash.
11607         (typedef_hash_table::~typedef_hash_table): Now a destructor;
11608         rename from free_typedef_hash.
11609         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
11610         (do_free_global_table): Remove.
11611         (typedef_hash_table::typedef_hash_table): New constructor; renamed
11612         from copy_type_recursive.
11613         (create_global_typedef_table): Remove.
11614         (typedef_hash_table::find_global_typedef): Now a member of
11615         typedef_hash_table.
11616         (typedef_hash_table::find_typedef): Rename from
11617         find_typedef_in_hash; now a member.
11618         (whatis_exp): Update.
11619         * extension.h (struct ext_lang_type_printers): Add constructor and
11620         destructor.
11621         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
11622         declare.
11623         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
11624         Now a constructor; rename from start_ext_lang_type_printers.
11625         (ext_lang_type_printers): Now a destructor; rename from
11626         free_ext_lang_type_printers.
11627         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
11628         Update.
11629         (c_type_print_base_struct_union): Update.  Remove cleanups.
11630
11631 2018-03-27  Tom Tromey  <tom@tromey.com>
11632
11633         * dwarf-index-write.c: Include <cmath>.
11634
11635 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11636
11637         * NEWS: Add entry describing new "set|show varsize-limit" command.
11638         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
11639         command.
11640         * printcmd.c (_initialize_printcmd): Add "set var" alias of
11641         "set variable".
11642
11643 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
11644
11645         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
11646         dwarf-index-write.c
11647         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
11648         * dwarf-index-common.c: New file.
11649         * dwarf-index-common.h: New file.
11650         * dwarf-index-write.c: New file.
11651         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
11652         (struct dwarf2_section_info): Move from here.
11653         (dwarf2_section_info_def): Likewise.
11654         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
11655         (offset_type): Likewise.
11656         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
11657         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
11658         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
11659         (byte_swap): Likewise.
11660         (MAYBE_SWAP): Likewise.
11661         (dwarf2_per_cu_ptr): Likewise.
11662         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
11663         (struct tu_stats): Likewise.
11664         (struct dwarf2_per_objfile): Likewise.
11665         (struct dwarf2_per_cu_data): Likewise.
11666         (struct signatured_type): Likewise.
11667         (sig_type_ptr): Likewise.
11668         (DEF_VEC_P (sig_type_ptr)): Likewise.
11669         (INDEX4_SUFFIX): Likewise.
11670         (INDEX5_SUFFIX): Likewise.
11671         (DEBUG_STR_SUFFIX): Likewise.
11672         (dwarf2_read_section): Make non-static.
11673         (mapped_index_string_hash): Move from here.
11674         (dwarf5_djb_hash): Likewise.
11675         (file_write): Likewise.
11676         (class data_buf): Likewise.
11677         (struct symtab_index_entry): Likewise.
11678         (struct mapped_symtab): Likewise.
11679         (find_slot): Likewise.
11680         (hash_expand): Likewise.
11681         (add_index_entry): Likewise.
11682         (uniquify_cu_indices): Likewise.
11683         (class c_str_view): Likewise.
11684         (class c_str_view_hasher): Likewise.
11685         (class vector_hasher): Likewise.
11686         (write_hash_table): Likewise.
11687         (psym_index_map): Likewise.
11688         (struct addrmap_index_data): Likewise.
11689         (add_address_entry): Likewise.
11690         (add_address_entry_worker): Likewise.
11691         (write_address_map): Likewise.
11692         (symbol_kind): Likewise.
11693         (write_psymbols): Likewise.
11694         (struct signatured_type_index_data): Likewise.
11695         (write_one_signatured_type): Likewise.
11696         (recursively_count_psymbols): Likewise.
11697         (recursively_write_psymbols): Likewise.
11698         (class debug_names): Likewise.
11699         (check_dwarf64_offsets): Likewise.
11700         (psyms_seen_size): Likewise.
11701         (write_gdbindex): Likewise.
11702         (write_debug_names): Likewise.
11703         (assert_file_size): Likewise.
11704         (write_psymtabs_to_index): Likewise.
11705         (save_gdb_index_command): Likewise.
11706         (_initialize_dwarf2_read): Don't register the "save gdb-index"
11707         command.
11708         * dwarf2read.h: New file.
11709
11710 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11711
11712         PR gdb/22670
11713         * dwarf2read.c (dwarf2_physname): Do not return the demangled
11714         symbol name if the CU's language stores symbol names in linkage
11715         format.
11716         * language.h (struct language_defn)
11717         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
11718         all instances of this struct.
11719
11720 2018-03-26  Tom Tromey  <tom@tromey.com>
11721
11722         * stack.c (backtrace_command_1): Remove verbose code.
11723
11724 2018-03-26  Tom Tromey  <tom@tromey.com>
11725
11726         * python/py-framefilter.c (py_print_type): Don't catch
11727         exceptions.  Return void.
11728         (py_print_value): Likewise.
11729         (py_print_single_arg): Likewise.
11730         (enumerate_args): Don't catch exceptions.
11731         (py_print_args): Likewise.
11732         (py_print_frame): Likewise.
11733         (gdbpy_apply_frame_filter): Catch exceptions here.
11734
11735 2018-03-26  Tom Tromey  <tom@tromey.com>
11736
11737         * stack.c (_initialize_stack): Remove trailing newlines from help
11738         text.  Add "Usage" line to "backtrace" help.
11739
11740 2018-03-26  Tom Tromey  <tom@tromey.com>
11741
11742         PR python/16486:
11743         * python/py-framefilter.c (py_print_args): Call wrap_hint.
11744
11745 2018-03-26  Tom Tromey  <tom@tromey.com>
11746
11747         * python/py-framefilter.c (py_print_single_arg): Return
11748         EXT_LANG_BT_ERROR from catch.
11749
11750 2018-03-26  Tom Tromey  <tom@tromey.com>
11751
11752         PR backtrace/15584:
11753         * stack.c (backtrace_command_1): Move some code into no-filters
11754         "if".
11755
11756 2018-03-26  Tom Tromey  <tom@tromey.com>
11757
11758         * python/py-framefilter.c (throw_quit_or_print_exception): New
11759         function.
11760         (gdbpy_apply_frame_filter): Use it.
11761
11762 2018-03-26  Tom Tromey  <tom@tromey.com>
11763
11764         PR cli/17716:
11765         * python/py-framefilter.c (py_print_type, py_print_value)
11766         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
11767         RETURN_MASK_ERROR.
11768
11769 2018-03-26  Tom Tromey  <tom@tromey.com>
11770
11771         * python/py-framefilter.c (enumerate_args): Use
11772         gdb::unique_xmalloc_ptr.
11773
11774 2018-03-26  Tom Tromey  <tom@tromey.com>
11775
11776         * python/py-framefilter.c (py_print_frame): Return
11777         EXT_LANG_BT_OK.
11778         (gdbpy_apply_frame_filter): Update comment.
11779         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
11780         Remove.
11781         <EXT_LANG_BT_NO_FILTERS>: Change value.
11782
11783 2018-03-26  Tom Tromey  <tom@tromey.com>
11784
11785         PR backtrace/15582:
11786         * stack.c (backtrace_command): Parse "hide" argument.
11787         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
11788         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
11789         constant.
11790
11791 2018-03-26  Tom Tromey  <tom@tromey.com>
11792
11793         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
11794         add "flags".
11795         (backtrace_command): Remove "fulltrace", add "flags".
11796
11797 2018-03-26  Tom Tromey  <tom@tromey.com>
11798
11799         * stack.c (backtrace_command): Rewrite command line parsing.
11800
11801 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11802
11803         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
11804
11805 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11806
11807         * filename-seen-cache.h: Add include guard.
11808
11809 2018-03-26  Keith Seitz  <keiths@redhat.com>
11810
11811         * symfile.c (place_section): Remove "struct" from section_addr_info
11812         in comment.
11813         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
11814         "struct" keyword from section_addr_info.
11815
11816 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
11817
11818         * regformats/regdef.h (reg): Add constructors.
11819
11820 2018-03-25  Pedro Alves  <palves@redhat.com>
11821
11822         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
11823         if then/else bodies in var_func_name extraction.
11824
11825 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
11826
11827         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
11828         lookup_minimal_symbol() to find symbol entry.
11829         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
11830
11831 2018-03-23  Keith Seitz  <keiths@redhat.com>
11832
11833         PR c++/22968
11834         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
11835         nested type definitions for C++, too.
11836
11837 2018-03-23  Tom Tromey  <tom@tromey.com>
11838
11839         * machoread.c (struct oso_el): Add a constructor.  Don't define as
11840         a typedef.
11841         (macho_register_oso): Remove.
11842         (macho_symtab_read): Take a std::vector.
11843         (oso_el_compare_name): Now a std::sort comparator.
11844         (macho_symfile_read_all_oso): Take a std::vector.
11845         (macho_symfile_read): Use std::vector.  Remove cleanups.
11846
11847 2018-03-22  Tom Tromey  <tom@tromey.com>
11848
11849         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
11850         (record_full_goto_bookmark): Use std::string.
11851
11852 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11853
11854         PR tdep/18295
11855         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
11856         a single mask.
11857
11858 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11859
11860         * rs6000-tdep.c (store_insn_p): New function.
11861         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
11862         and cr_reg to their unshifted values. Use store_insn_p to
11863         match LR saves using either R1 or fdata->alloca_reg. Use
11864         store_insn_p to match CR saves. Set alloca_reg_offset
11865         when alloca_reg and framep are set. Remove lr_reg shift
11866         when assigning to fdata->lr_register.
11867
11868 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11869
11870         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
11871         command line args instead of emitting a warning.
11872
11873 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11874
11875         * tracepoint.h (struct static_tracepoint_marker): Initialize
11876         fields, define default constructor, move constructor and move
11877         assignment, disable the rest.
11878         <str_id, extra>: Make std::string.
11879         (release_static_tracepoint_marker): Remove.
11880         (free_current_marker): Remove.
11881         * tracepoint.c (free_current_marker): Remove.
11882         (parse_static_tracepoint_marker_definition): Adjust to
11883         std::string, use new hex2str overload.
11884         (release_static_tracepoint_marker): Remove.
11885         (print_one_static_tracepoint_marker): Get marker by reference
11886         and adjust to std::string.
11887         (info_static_tracepoint_markers_command): Adjust to std::vector
11888         changes
11889         * target.h (static_tracepoint_marker_p): Remove typedef.
11890         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
11891         (struct target_ops) <to_static_tracepoint_marker_at>: Return
11892         bool.
11893         <to_static_tracepoint_markers_by_strid>: Return std::vector.
11894         * target-debug.h
11895         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
11896         (target_debug_print_std_vector_static_tracepoint_marker): New.
11897         (target_debug_print_struct_static_tracepoint_marker_p): Rename
11898         to...
11899         (target_debug_print_static_tracepoint_marker_p): ... this.
11900         * target-delegates.c: Re-generate.
11901         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
11902         Make std::string.
11903         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
11904         (decode_static_tracepoint_spec): Adjust to std::vector.
11905         (tracepoint_print_one_detail): Adjust to std::string.
11906         (strace_marker_decode_location): Adjust to std::string.
11907         (update_static_tracepoint): Adjust to std::string, remove call
11908         to release_static_tracepoint_marker.
11909         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
11910         Adjust to std::vector.
11911         * remote.c (remote_static_tracepoint_marker_at): Return bool.
11912         (remote_static_tracepoint_markers_by_strid): Adjust to
11913         std::vector.
11914         * common/rsp-low.h (hex2str): New overload with explicit count
11915         of bytes.
11916         * common/rsp-low.c (hex2str): New overload with explicit count
11917         of bytes.
11918         * unittests/rsp-low-selftests.c (test_hex2str): New function.
11919         (_initialize_rsp_low_selftests): Add test_hex2str test.
11920         * unittests/tracepoint-selftests.c
11921         (test_parse_static_tracepoint_marker_definition): Adjust to
11922         std::string.
11923
11924 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11925
11926         * tracepoint.c (parse_static_tracepoint_marker_definition):
11927         Consider case where the definition is followed by more
11928         definitions.
11929         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11930         tracepoint-selftests.c.
11931         * unittests/tracepoint-selftests.c: New.
11932
11933 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11934
11935         * MAINTAINERS (Write After Approval): Add Pedro Franco de
11936         Carvalho.
11937
11938 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11939
11940         * symtab.c (find_pc_sect_line): fixed indentation.
11941
11942 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11943
11944         * symtab.c (find_pc_sect_line): now uses binary search.
11945
11946 2018-03-19  Tom Tromey  <tom@tromey.com>
11947
11948         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
11949         "IDENT" production.
11950
11951 2018-03-19  Pedro Alves  <palves@redhat.com>
11952             Tom Tromey  <tom@tromey.com>
11953
11954         * unittests/observable-selftests.c: New file.
11955         * common/observable.h: New file.
11956         * observable.h: New file.
11957         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
11958         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
11959         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
11960         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
11961         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
11962         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
11963         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
11964         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
11965         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
11966         python/py-breakpoint.c, python/py-finishbreakpoint.c,
11967         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
11968         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
11969         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
11970         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
11971         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
11972         tui/tui-interp.c, valops.c: Update all users.
11973         * tui/tui-hooks.c (tui_bp_created_observer)
11974         (tui_bp_deleted_observer, tui_bp_modified_observer)
11975         (tui_inferior_exit_observer, tui_before_prompt_observer)
11976         (tui_normal_stop_observer, tui_register_changed_observer):
11977         Remove.
11978         (tui_observers_token): New global.
11979         (attach_or_detach, tui_attach_detach_observers): New functions.
11980         (tui_install_hooks, tui_remove_hooks): Use
11981         tui_attach_detach_observers.
11982         * record-btrace.c (record_btrace_thread_observer): Remove.
11983         (record_btrace_thread_observer_token): New global.
11984         * observer.sh: Remove.
11985         * observer.c: Rename to observable.c.
11986         * observable.c (namespace gdb_observers): Define new objects.
11987         (observer_debug): Move into gdb_observers namespace.
11988         (struct observer, struct observer_list, xalloc_observer_list_node)
11989         (xfree_observer_list_node, generic_observer_attach)
11990         (generic_observer_detach, generic_observer_notify): Remove.
11991         (_initialize_observer): Update.
11992         Don't include observer.inc.
11993         * Makefile.in (generated_files): Remove observer.h, observer.inc.
11994         (clean mostlyclean): Likewise.
11995         (observer.h, observer.inc): Remove targets.
11996         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
11997         (COMMON_SFILES): Use observable.c, not observer.c.
11998         * .gitignore: Remove observer.h.
11999
12000 2018-03-18  Tom Tromey  <tom@tromey.com>
12001
12002         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12003         gdb::def_vector.
12004         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12005
12006 2018-03-17  Tom Tromey  <tom@tromey.com>
12007
12008         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12009
12010 2018-03-17  Tom Tromey  <tom@tromey.com>
12011
12012         * target.c (class scoped_target_fd): New.
12013         (target_fileio_close_cleanup): Remove.
12014         (target_fileio_read_alloc_1): Use scoped_target_fd.
12015
12016 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12017
12018         * silent-rules.mk: New.
12019         * Makefile.in: Include silent-rules.mk
12020         (srcdir, VPATH, top_srcdir): Move up.
12021         (COMPILE): Add ECHO_CXX.
12022         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12023         (init.c): Add ECHO_INIT_C.
12024         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12025         (version.c): Add ECHO_GEN.
12026         (printcmd.o): Add ECHO_CXX.
12027         (target-float.o): Add ECHO_CXX.
12028         (ada-exp.o): Add ECHO_CXX.
12029         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12030         (insight$(EXEEXT)): Add ECHO_CXXLD.
12031         * gnulib/configure.ac: Add AM_SILENT_RULES.
12032         * gnulib/aclocal.m4: Re-generate.
12033         * gnulib/configure: Re-generate.
12034         * gnulib/import/Makefile.in: Re-generate.
12035
12036 2018-03-16  Tom Tromey  <tom@tromey.com>
12037
12038         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12039         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12040         * utils.c (do_free_section_addr_info)
12041         (make_cleanup_free_section_addr_info): Remove.
12042         * symfile.h (struct other_sections): Add constructor.
12043         (struct section_addr_info): Remove.
12044         (section_addr_info): New typedef.
12045         (struct sym_fns) <sym_offsets>: Change type of parameter.
12046         (build_section_addr_info_from_objfile)
12047         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12048         (default_symfile_offsets, symbol_file_add)
12049         (symbol_file_add_from_bfd)
12050         (build_section_addr_info_from_section_table): Update.
12051         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12052         * symfile.c (alloc_section_addr_info): Remove.
12053         (build_section_addr_info_from_section_table): Change return type.
12054         Update.
12055         (build_section_addr_info_from_bfd)
12056         (build_section_addr_info_from_objfile): Likewise.
12057         (free_section_addr_info): Remove.
12058         (relative_addr_info_to_section_offsets): Change type of "addrs".
12059         (addrs_section_compar): Now a std::sort comparator.
12060         (addrs_section_sort): Change return type.
12061         (addr_info_make_relative): Change type of "addrs".  Update.
12062         (default_symfile_offsets, syms_from_objfile_1)
12063         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12064         (symbol_file_add_separate): Update.
12065         (symbol_file_add): Change type of "addrs".  Update.
12066         (add_symbol_file_command): Update.  Remove cleanups.
12067         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12068         cleanups.
12069         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12070         * solib.c (solib_read_symbols): Update.
12071         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12072         * machoread.c (macho_symfile_offsets): Update.
12073         * jit.c (jit_bfd_try_read_symtab): Update.
12074
12075 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12076
12077         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12078         unittests/utils-selftests.c.
12079         * unittests/utils-selftests.c: New file.
12080
12081 2018-03-14  Tom Tromey  <tom@tromey.com>
12082
12083         PR cli/14977:
12084         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12085         for NULL.
12086
12087 2018-03-14  Tom Tromey  <tom@tromey.com>
12088
12089         PR cli/19918:
12090         * printcmd.c (printf_pointer): Allow "-" in format.
12091
12092 2018-03-14  Tom Tromey  <tom@tromey.com>
12093
12094         * printcmd.c (_initialize_printcmd): Add usage to printf.
12095
12096 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12097
12098         * MAINTAINERS: Update my email address.
12099
12100 2018-03-13  Tom Tromey  <tom@tromey.com>
12101
12102         * machoread.c (macho_check_dsym): Change filenamep to a
12103         std::string*.
12104         (macho_symfile_read): Update.
12105         * symfile.c (load_command): Use std::string.
12106
12107 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12108
12109         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12110         to error message string.
12111         (riscv_register_name): Use xsnprintf instead of sprintf.
12112         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12113         internal_error.
12114         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12115         error.
12116         (riscv_push_dummy_call): Likewise.
12117
12118 2018-03-12  Tom Tromey  <tom@tromey.com>
12119
12120         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12121         Use gdb::byte_vector.
12122         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12123
12124 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12125
12126         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12127         parameter type to readable_regcache.
12128         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12129         the declaration.
12130
12131 2018-03-11  Tom Tromey  <tom@tromey.com>
12132
12133         * dwarf2read.c (struct nextfield): Add initializers.
12134         (struct nextfnfield): Remove.
12135         (struct fnfieldlist): Add initializers.  Remove "length" and
12136         "head", use std::vector.
12137         (struct decl_field_list): Remove.
12138         (struct field_info): Add initializers.
12139         <fields, baseclasses>: Now std::vector.
12140         <nbaseclasses, nfnfields, typedef_field_list_count,
12141         nested_types_list_count>: Remove.
12142         (dwarf2_add_field, dwarf2_add_type_defn)
12143         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12144         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12145         (process_structure_scope): Update.
12146
12147 2018-03-11  Tom Tromey  <tom@tromey.com>
12148
12149         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12150         for use by std::sort.
12151         (build_type_psymtabs_1): Use std::vector.
12152
12153 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12154
12155         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12156         and LIBMPFR in the printed configuration.
12157
12158 2018-03-08  Tom Tromey  <tom@tromey.com>
12159
12160         * source.c (get_filename_and_charpos): Use scoped_fd.
12161         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12162         (procfs_pidlist): Likewise.
12163         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12164         (iterate_over_mappings): Likewise.
12165
12166 2018-03-08  Tom Tromey  <tom@tromey.com>
12167
12168         * infcall.c (struct call_return_meta_info)
12169         <stack_temporaries_enabled>: Remove.
12170         (get_call_return_value, call_function_by_hand_dummy): Update.
12171         * thread.c (disable_thread_stack_temporaries): Remove.
12172         (enable_thread_stack_temporaries): Remove.
12173         (thread_stack_temporaries_enabled_p): Return bool.
12174         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12175         (get_last_thread_stack_temporary): Update.
12176         * eval.c (evaluate_subexp): Update.
12177         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12178         class, not a function.
12179         (value_ptr, value_vec): Remove typedefs.
12180         (class thread_info) <stack_temporaries_enabled>: Now bool.
12181         <stack_temporaries>: Now a std::vector.
12182         (thread_stack_temporaries_enabled_p)
12183         (value_in_thread_stack_temporaries): Return bool.
12184
12185 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12186
12187         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12188         (getpkt_or_notif_sane_1): Likewise.
12189
12190 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12191
12192         * build-id.c (build_id_to_debug_bfd): Use std::string.
12193
12194 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12195
12196         * build-id.c (find_separate_debug_file_by_buildid): Return
12197         std::string.
12198         * build-id.h (find_separate_debug_file_by_buildid): Return
12199         std::string.
12200         * coffread.c (coff_symfile_read): Adjust to std::string.
12201         * elfread.c (elf_symfile_read): Adjust to std::string.
12202         * symfile.c (separate_debug_file_exists): Change parameter to
12203         std::string.
12204         (find_separate_debug_file): Return std::string.
12205         (find_separate_debug_file_by_debuglink): Return std::string.
12206         * symfile.h (find_separate_debug_file_by_debuglink): Return
12207         std::string.
12208
12209 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12210
12211         * common/xml-utils.c (xml_escape_text): Move code to...
12212         (xml_escape_text_append): ... this new function.
12213         * common/xml-utils.h (xml_escape_text_append): New declaration.
12214         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12215         New function.
12216         (_initialize_xml_utils): register test_xml_escape_text_append as
12217         a selftest.
12218
12219 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12220
12221         * defs.h: Remove MAX_REGISTER_SIZE.
12222         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12223         asserts.
12224         * python/py-unwind.c (pyuw_sniffer): Likewise.
12225
12226 2018-03-07  Tom Tromey  <tom@tromey.com>
12227
12228         * linux-tdep.c (linux_info_proc): Update.
12229         * target.h (struct target_ops) <to_fileio_readlink>: Return
12230         optional<string>.
12231         (target_fileio_readlink): Return optional<string>.
12232         * remote.c (remote_hostio_readlink): Return optional<string>.
12233         * inf-child.c (inf_child_fileio_readlink): Return
12234         optional<string>.
12235         * target.c (target_fileio_readlink): Return optional<string>.
12236
12237 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12238
12239         * regcache.c (cooked_read_test): Add riscv to the list of
12240         architectures that have a save_reggroup.
12241
12242 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12243
12244         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12245         value is not a dynamic class object.
12246
12247 2018-03-06  Tom Tromey  <tom@tromey.com>
12248
12249         * rust-exp.y: Formatting fixes.
12250
12251 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12252
12253         * riscv-tdep.c (riscv_register_name): Remove target description
12254         support.
12255         (riscv_gdbarch_init): Remove target description check.
12256
12257 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12258
12259         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12260         comment.
12261         * riscv-tdep.h: Likewise.
12262
12263 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12264
12265         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12266         (riscv_pseudo_register_write): Delete.
12267         (riscv_gdbarch_init): Remove all use of pseudo registers.
12268
12269 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12270
12271         * record-btrace.c (btrace_print_lines): Replace cleanup
12272         parameter with RAII equivalents.
12273         (btrace_insn_history): Replace cleanup with RAII equivalents.
12274         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12275         make_cleanup_ui_out_tuple_begin_end): Remove.
12276         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12277         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12278         make_cleanup_ui_out_list_begin_end): Remove.
12279
12280 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12281
12282         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12283         parameter types to std::vector.  Use bool.
12284         (record_btrace_wait): Replace VEC(tp_t) with
12285         std::vector<thread_info *>.
12286         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12287
12288 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12289
12290         * record-btrace.c (record_btrace_disable_callback): Remove.
12291         (struct scoped_btrace_disable): New.
12292         (record_btrace_open): Use scoped_btrace_disable.
12293
12294 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12295
12296         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12297         reading values from registers.
12298
12299 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12300
12301         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12302         where appropriate.
12303
12304 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12305
12306         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12307         change parameter type.  Use GDB's print functions, and use
12308         core_addr_to_string where appropriate.
12309         (riscv_push_dummy_call): Use core_addr_to_string where
12310         appropriate, update call to riscv_print_arg_location, and reindent
12311         a few lines.
12312         (riscv_return_value): Update call to riscv_print_arg_location.
12313
12314 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12315             Tim Newsome <tim@sifive.com>
12316             Albert Ou <a0u@eecs.berkeley.edu>
12317             Darius Rad <darius@bluespec.com>
12318
12319         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12320         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12321         (ALLDEPFILES): Add riscv-tdep.c
12322         * configure.tgt: Add riscv support.
12323         * riscv-tdep.c: New file.
12324         * riscv-tdep.h: New file.
12325         * NEWS: Mention new target.
12326         * MAINTAINERS: Add entry for riscv.
12327
12328 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12329
12330         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12331         fields within aggregates.
12332
12333 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12334
12335         * record-btrace.c (btrace_print_lines): Change type of flags to
12336         gdb_disassembly_flags.
12337
12338 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12339
12340         * fbsd-nat.c: Include "inf-ptrace.h".
12341         (USE_SIGTRAP_SIGINFO): Conditionally define.
12342         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12343         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12344         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12345         function.
12346         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12347         Likewise.
12348         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12349         Likewise.
12350         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12351         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12352         "supports_stopped_by_hw_breakpoint" target methods.
12353
12354 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12355
12356         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12357         * fbsd-nat.c (debug_fbsd_nat): New variable.
12358         (show_fbsd_nat_debug): New function.
12359         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12360         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12361
12362 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12363
12364         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12365         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12366         prototype.
12367         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12368         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12369         method.
12370
12371 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12372
12373         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12374         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12375
12376 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12377
12378         * charset.c (struct charset_vector): New.
12379         (charsets): Change type to charset_vector.
12380         (find_charset_names): Adjust.
12381         (add_one): Adjust.
12382         (_initialize_charset): Adjust.
12383
12384 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12385
12386         * progspace.h (struct program_space) <deleted_solibs>: Change
12387         type to std::vector<std::string>.
12388         * progspace.c (clear_program_space_solib_cache): Adjust.
12389         * breakpoint.c (print_solib_event): Adjust.
12390         (check_status_catch_solib): Adjust.
12391         * solib.c (update_solib_list): Adjust.
12392         * ui-out.h (class ui_out) <field_string>: New overload.
12393         * ui-out.c (ui_out::field_string): New overload.
12394
12395 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12396
12397         * progspace.h (struct program_space): Add constructor and
12398         destructor, initialize fields.
12399         (add_program_space): Remove.
12400         * progspace.c (add_program_space): Rename to...
12401         (program_space::program_space): ... this.
12402         (release_program_space): Rename to...
12403         (program_space::~program_space): ... this.
12404         (delete_program_space): Use delete to delete program_space.
12405         (initialize_progspace): Use new to allocate program_space.
12406         * inferior.c (add_inferior_with_spaces): Likewise.
12407         (clone_inferior_command): Likewise.
12408         * infrun.c (follow_fork_inferior): Likewise.
12409         (handle_vfork_child_exec_or_exit): Likewise.
12410
12411 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12412
12413         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12414         (delim_string_to_char_ptr_vec): Return std::vector of
12415         gdb::unique_xmalloc_ptr.
12416         (dirnames_to_char_ptr_vec_append): Take std::vector of
12417         gdb::unique_xmalloc_ptr.
12418         (dirnames_to_char_ptr_vec): Return std::vector of
12419         gdb::unique_xmalloc_ptr.
12420         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12421         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12422         (delim_string_to_char_ptr_vec): Return an std::vector of
12423         gdb::unique_xmalloc_ptr, adjust the code.
12424         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12425         gdb::unique_xmalloc_ptr, adjust the code.
12426         (dirnames_to_char_ptr_vec): Return an std::vector of
12427         gdb::unique_xmalloc_ptr, adjust the code.
12428         * auto-load.c (auto_load_safe_path_vec): Change type to
12429         std::vector of gdb::unique_xmalloc_ptr.
12430         (auto_load_expand_dir_vars): Return an std::vector of
12431         gdb::unique_xmalloc_ptr, adjust the code.
12432         (auto_load_safe_path_vec_update): Adjust.
12433         (filename_is_in_auto_load_safe_path_vec): Adjust.
12434         (auto_load_objfile_script_1): Adjust.
12435         * build-id.c (build_id_to_debug_bfd): Adjust.
12436         * linux-thread-db.c (thread_db_load_search): Adjust.
12437         * source.c (add_path): Adjust.
12438         (openp): Adjust.
12439         * symfile.c (find_separate_debug_file): Adjust.
12440         * utils.c (do_free_char_ptr_vec): Remove.
12441         (make_cleanup_free_char_ptr_vec): Remove.
12442
12443 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12444
12445         PR gdb/22907
12446         * common/pathstuff.c: Conditionally include "<windows.h>".
12447
12448 2018-03-01  Georg Sauthoff  <mail@georg.so>
12449
12450         PR gdb/22888
12451         * gcore.in: Quote variables and switch interpreter to bash.
12452
12453 2018-03-01  Tom Tromey  <tom@tromey.com>
12454
12455         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12456         assertion.  Add assertion for discriminant_index.
12457         (quirk_rust_enum): Use correct base type name in univariant case.
12458
12459 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12460
12461         * record.c (get_call_history_modifiers): Return a
12462         record_print_flags.
12463         (cmd_record_call_history): Adjust.
12464         * record-btrace.c (record_btrace_call_history): Adjust.
12465         (record_btrace_call_history_range): Adjust.
12466         (record_btrace_call_history_from): Adjust.
12467         * target-debug.h (target_debug_print_record_print_flags): New.
12468         * target-delegates.c: Re-generate.
12469         * target.c (target_call_history): Change flags type.
12470         (target_call_history_from): Likewise.
12471         (target_call_history_range): Likewise.
12472         * target.h (struct target_ops) <target_call_history>: Likewise.
12473         (target_call_history_from): Likewise.
12474         (target_call_history_range): Likewise.
12475
12476 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12477             Simon Marchi  <simon.marchi@polymtl.ca>
12478
12479         * common/common-utils.c: Include "sys/stat.h".
12480         (is_regular_file): Move here from "source.c"; change return
12481         type to "bool".
12482         * common/common-utils.h (is_regular_file): New prototype.
12483         * common/pathstuff.c (contains_dir_separator): New function.
12484         * common/pathstuff.h (contains_dir_separator): New prototype.
12485         * source.c: Don't include "sys/stat.h".
12486         (is_regular_file): Move to "common/common-utils.c".
12487
12488 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12489
12490         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12491         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12492         * auto-load.c: Include "common/pathstuff.h".
12493         * common/common-def.h (current_directory): Move here.
12494         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12495         function.
12496         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12497         prototype.
12498         * common/pathstuff.c: New file.
12499         * common/pathstuff.h: New file.
12500         * compile/compile.c: Include "common/pathstuff.h".
12501         * defs.h (current_directory): Move to "common/common-defs.h".
12502         * dwarf2read.c: Include "common/pathstuff.h".
12503         * exec.c: Likewise.
12504         * guile/scm-safe-call.c: Likewise.
12505         * linux-thread-db.c: Likewise.
12506         * main.c: Likewise.
12507         * nto-tdep.c: Likewise.
12508         * objfiles.c: Likewise.
12509         * source.c: Likewise.
12510         * symtab.c: Likewise.
12511         * utils.c: Include "common/pathstuff.h".
12512         (gdb_realpath): Move to "common/pathstuff.c".
12513         (gdb_realpath_keepfile): Likewise.
12514         (gdb_abspath): Likewise.
12515         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12516         (gdb_realpath_keepfile): Likewise.
12517         (gdb_abspath): Likewise.
12518
12519 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12520
12521         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12522         wildcard process pid for super_resume for kernels with a
12523         specific bug.
12524
12525 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12526
12527         * compile/compile.c (get_args): Add additional comments
12528         explaining function.
12529
12530 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12531             Tom Tromey  <tom@tromey.com>
12532
12533         * target.h (memory_write_request_s): Remove typedef.  Don't define
12534         VEC.
12535         (target_write_memory_blocks): Change argument to std::vector.
12536         (struct memory_write_request): Add constructor.
12537         * target-memory.c (compare_block_starting_address): Return bool.
12538         Change argument types.
12539         (claim_memory): Change arguments to use std::vector.
12540         (split_regular_and_flash_blocks, blocks_to_erase)
12541         (compute_garbled_blocks): Likewise.
12542         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12543         (target_write_memory_blocks): Change argument to std::vector.
12544         * symfile.c (struct load_section_data): Add constructor and
12545         destructor.  Use std::vector for "requests".
12546         (struct load_progress_data): Add initializers.
12547         (load_section_callback): Update.  Use "new".
12548         (clear_memory_write_data): Remove.
12549         (generic_load): Update.
12550
12551 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12552
12553         * arch/aarch64.h: Use common/tdesc.h.
12554
12555 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12556
12557         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
12558         architecture with a 64-bit ABI.
12559
12560 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12561
12562         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
12563         ahead of target description loading.
12564
12565 2018-02-26  Tom Tromey  <tom@tromey.com>
12566
12567         * stack.c (backtrace_command_1): Update.
12568         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
12569         of "flags".
12570         * python/py-framefilter.c (py_print_frame)
12571         (gdbpy_apply_frame_filter): Change type of "flags".
12572         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
12573         of "flags".
12574         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
12575         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
12576         * extension.h (enum frame_filter_flag): Rename from
12577         frame_filter_flags.
12578         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
12579         (apply_ext_lang_frame_filter): Change type of "flags".
12580         * extension.c (apply_ext_lang_frame_filter): Change type of
12581         "flags".
12582         * extension-priv.h (struct extension_language_ops)
12583         <apply_frame_filter>: Change type of "flags".
12584
12585 2018-02-26  Tom Tromey  <tom@tromey.com>
12586
12587         PR python/16497:
12588         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
12589         off-by-one in py_end computation.
12590         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
12591         PRINT_MORE_FRAMES.
12592         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
12593         constant.
12594
12595 2018-02-26  Tom Tromey  <tom@tromey.com>
12596
12597         * dwarf2read.c (struct variant_field): New.
12598         (struct nextfield) <variant>: New field.
12599         (dwarf2_add_field): Handle DW_TAG_variant_part.
12600         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
12601         discriminated union.
12602         (read_structure_type): Handle DW_TAG_variant_part.
12603         (handle_struct_member_die): New function, extracted from
12604         process_structure_scope.  Handle DW_TAG_variant.
12605         (process_structure_scope): Handle discriminated unions.  Call
12606         handle_struct_member_die.
12607
12608 2018-02-26  Tom Tromey  <tom@tromey.com>
12609
12610         * rust-lang.h (rust_last_path_segment): Declare.
12611         * rust-lang.c (rust_last_path_segment): Now public.  Change
12612         contract.
12613         (struct disr_info): Remove.
12614         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
12615         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
12616         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
12617         (rust_enum_p, rust_enum_variant): New function.
12618         (rust_underscore_fields): Remove "offset" parameter.
12619         (rust_print_enum): New function.
12620         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
12621         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
12622         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
12623         enums.
12624         (rust_internal_print_type): New function, from rust_print_type.
12625         Remove enum code.
12626         (rust_print_type): Call rust_internal_print_type.
12627         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
12628         Update enum handling.
12629         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
12630         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
12631         (rust_union_quirks): New functions.
12632         (process_full_comp_unit, process_full_type_unit): Call
12633         rust_union_quirks.
12634         (process_structure_scope): Update rust_unions if necessary.
12635
12636 2018-02-26  Tom Tromey  <tom@tromey.com>
12637
12638         * value.h (value_union_variant): Declare.
12639         * valops.c (value_union_variant): New function.
12640         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
12641         (struct discriminant_info): New.
12642         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
12643         enumerator.
12644         (struct main_type) <flag_discriminated_union>: New field.
12645
12646 2018-02-26  Tom Tromey  <tom@tromey.com>
12647
12648         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12649         unittests/unpack-selftests.c.
12650         * unittests/unpack-selftests.c: New file.
12651         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
12652
12653 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12654
12655         * dwarf2read.c (struct partial_die_info) <read>: New method.
12656         (read_partial_die): Remove the declaration.
12657         (load_partial_dies): Update.
12658         (partial_die_info::partial_die_info):
12659         (read_partial_die): Change it to partial_die_info::read.
12660
12661 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12662
12663         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
12664         (fixup_partial_die): Remove declaration.
12665         (scan_partial_symbols): Update.
12666         (partial_die_parent_scope): Likewise.
12667         (partial_die_full_name): Likewise.
12668         (fixup_partial_die): Change it to partial_die_info::fixup.
12669
12670 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12671
12672         * dwarf2read.c (read_partial_die): Update the declaration.
12673         (load_partial_dies): Caller update.
12674         (read_partial_die): Remove one argument abbrev_len.
12675
12676 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12677
12678         * dwarf2read.c (struct partial_die_info): Add ctor, delete
12679         assignment operator.
12680         (load_partial_dies): Use ctor and copy ctor.
12681         (read_partial_die): Update.
12682         (dwarf2_cu::find_partial_die): Use ctor.
12683
12684 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12685
12686         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
12687         (find_partial_die_in_comp_unit): Change it to
12688         dwarf2_cu::find_partial_die.
12689         (find_partial_die): Update.
12690
12691 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12692
12693         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
12694         is NULL.
12695
12696 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12697
12698         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
12699
12700 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
12701
12702         * arch/amd64.h: Use common/tdesc.h.
12703         * arch/i386.c: Likewise.
12704         * arch/i386.h: Likewise.
12705         * arch/tic6x.c: Likewise.
12706         * arch/tdesc.h: Move file from here...
12707         * common/tdesc.h: ...to here.
12708         * features/aarch64-core.c: Regenerate.
12709         * features/aarch64-fpu.c: Regenerate.
12710         * features/i386/32bit-avx.c: Regenerate.
12711         * features/i386/32bit-avx512.c: Regenerate.
12712         * features/i386/32bit-core.c: Regenerate.
12713         * features/i386/32bit-linux.c: Regenerate.
12714         * features/i386/32bit-mpx.c: Regenerate.
12715         * features/i386/32bit-pkeys.c: Regenerate.
12716         * features/i386/32bit-sse.c: Regenerate.
12717         * features/i386/64bit-avx.c: Regenerate.
12718         * features/i386/64bit-avx512.c: Regenerate.
12719         * features/i386/64bit-core.c: Regenerate.
12720         * features/i386/64bit-linux.c: Regenerate.
12721         * features/i386/64bit-mpx.c: Regenerate.
12722         * features/i386/64bit-pkeys.c: Regenerate.
12723         * features/i386/64bit-segments.c: Regenerate.
12724         * features/i386/64bit-sse.c: Regenerate.
12725         * features/i386/x32-core.c: Regenerate.
12726         * features/tic6x-c6xp.c: Regenerate.
12727         * features/tic6x-core.c: Regenerate.
12728         * features/tic6x-gp.c: Regenerate.
12729         * target-descriptions.c: Use common/tdesc.h.
12730         * target-descriptions.h: Likewise.
12731
12732 2018-02-24  Tom Tromey  <tom@tromey.com>
12733
12734         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
12735         (try_thread_db_load_from_dir, thread_db_load_search): Use
12736         std::string.
12737         (info_auto_load_libthread_db_compare): Return bool.  Change
12738         argument types.
12739         (info_auto_load_libthread_db): Use std::vector, std::string.
12740         Remove cleanups.
12741
12742 2018-02-24  Tom Tromey  <tom@tromey.com>
12743
12744         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
12745         std::string.
12746         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
12747         std::string*.
12748         * gdbarch.c: Rebuild.
12749         * gdbarch.h: Rebuild.
12750         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
12751         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
12752         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
12753         std::string*.
12754
12755 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
12756
12757         * gdbtypes.h (sect_offset): Change type to uint64_t.
12758         (sect_offset_str): New function.
12759         * dwarf2read.c (create_addrmap_from_aranges): Use
12760         sect_offset_str.
12761         (error_check_comp_unit_head): Likewise.
12762         (create_debug_type_hash_table): Likewise.
12763         (read_cutu_die_from_dwo): Likewise.
12764         (init_cutu_and_read_dies): Likewise.
12765         (init_cutu_and_read_dies_no_follow): Likewise.
12766         (process_psymtab_comp_unit_reader): Likewise.
12767         (partial_die_parent_scope): Likewise.
12768         (peek_die_abbrev): Likewise.
12769         (process_queue): Likewise.
12770         (dwarf2_physname): Likewise.
12771         (read_namespace_alias): Likewise.
12772         (read_import_statement): Likewise.
12773         (create_dwo_cu_reader): Likewise.
12774         (create_cus_hash_table): Likewise.
12775         (lookup_dwo_cutu): Likewise.
12776         (inherit_abstract_dies): Likewise.
12777         (read_func_scope): Likewise.
12778         (read_call_site_scope): Likewise.
12779         (dwarf2_add_member_fn): Likewise.
12780         (read_common_block): Likewise.
12781         (read_module_type): Likewise.
12782         (read_typedef): Likewise.
12783         (read_subrange_type): Likewise.
12784         (load_partial_dies): Likewise.
12785         (read_partial_die): Likewise.
12786         (find_partial_die): Likewise.
12787         (read_str_index): Likewise.
12788         (dwarf2_string_attr): Likewise.
12789         (build_error_marker_type): Likewise.
12790         (lookup_die_type): Likewise.
12791         (dump_die_shallow): Likewise.
12792         (follow_die_ref): Likewise.
12793         (dwarf2_fetch_die_loc_sect_off): Likewise.
12794         (dwarf2_fetch_constant_bytes): Likewise.
12795         (follow_die_sig): Likewise.
12796         (get_signatured_type): Likewise.
12797         (get_DW_AT_signature_type): Likewise.
12798         (dwarf2_find_containing_comp_unit): Likewise.
12799         (set_die_type): Likewise.
12800
12801 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
12802
12803         * arch/aarch64.c: Include "common-defs.h".
12804         * arch/amd64.c: Likewise.
12805         * arch/i386.c: Likewise.
12806
12807 2018-02-21  Tom Tromey  <tom@tromey.com>
12808
12809         * value.h: (extract_field_op): Update.
12810         * eval.c (extract_field_op): Return a const char *.
12811         * expression.h (parse_expression_for_completion): Update.
12812         * completer.c (complete_expression): Update.
12813         (add_struct_fields): Make fieldname const.
12814         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
12815         (mark_completion_tag, parse_exp_in_context_1): Update.
12816         (parse_expression_for_completion): Change "name" to
12817         unique_xmalloc_ptr*.
12818
12819 2018-02-21  Tom Tromey  <tom@tromey.com>
12820
12821         * infcall.c (call_function_by_hand_dummy): Use std::vector.
12822
12823 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12824
12825         * avr-tdep.c (avr_read_pc): Change parameter type to
12826         readable_regcache.
12827         * gdbarch.sh (read_pc): Likewise.
12828         * gdbarch.c: Re-generated.
12829         * gdbarch.h: Re-generated.
12830         * hppa-tdep.c (hppa_read_pc): Change parameter type to
12831         readable_regcache.
12832         * ia64-tdep.c (ia64_read_pc): Likewise.
12833         * mips-tdep.c (mips_read_pc): Likewise.
12834         * spu-tdep.c (spu_read_pc): Likewise.
12835
12836 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12837
12838         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
12839         * regcache-dump.c: New file.
12840         * regcache.c: Move register_dump to regcache-dump.c.
12841         (maintenance_print_registers): Likewise.
12842         (maintenance_print_raw_registers): Likewise.
12843         (maintenance_print_cooked_registers): Likewise.
12844         (maintenance_print_register_groups): Likewise.
12845         (maintenance_print_remote_registers): Likewise.
12846         (_initialize_regcache): Likewise.
12847         * regcache.h (register_dump): Moved from regcache.c.
12848
12849 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12850
12851         * regcache.c (regcache::regcache): Update.
12852         (regcache::invalidate): Move it to detached_regcache::invalidate.
12853         (get_thread_arch_aspace_regcache): Update.
12854         (regcache::raw_update): Update.
12855         (regcache::cooked_read): Remove some code.
12856         (regcache::cooked_read_value): Likewise.
12857         (regcache::raw_write): Remove assert on m_readonly_p.
12858         (regcache::raw_supply_integer): Move it to
12859         detached_regcache::raw_supply_integer.
12860         (regcache::raw_supply_zeroed): Likewise.
12861         * regcache.h (detached_regcache) <raw_supply_integer>: New
12862         declaration.
12863         <raw_supply_zeroed, invalidate>: Likewise.
12864         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
12865         <invalidate>: Likewise.
12866         <m_readonly_p>: Removed.
12867
12868 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12869
12870         * infcmd.c (get_return_value): Let stop_regs point to
12871         get_current_regcache.
12872         * regcache.c (regcache::regcache): Remove.
12873         (register_dump_reg_buffer): New class.
12874         (regcache_print): Adjust.
12875         * regcache.h (regcache): Remove constructors.
12876
12877 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12878
12879         * regcache.c (class register_dump): New class.
12880         (register_dump_regcache, register_dump_none): New class.
12881         (register_dump_remote, register_dump_groups): New class.
12882         (regcache_print): Update.
12883         * regcache.h (regcache_dump_what): Move it to regcache.c.
12884         (regcache) <dump>: Remove.
12885
12886 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12887
12888         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
12889          reg_buffer_rw *.
12890         (jit_unwind_reg_set_impl): Call raw_supply.
12891         (jit_frame_sniffer): Use reg_buffer_rw.
12892         * record-full.c (record_full_core_regbuf): Change its type.
12893         (record_full_core_open_1): Use reg_buffer_rw.
12894         (record_full_close): Likewise.
12895         (record_full_core_fetch_registers): Use regcache->raw_supply.
12896         (record_full_core_store_registers): Likewise.
12897         * regcache.c (regcache::get_register_status): Move it to
12898         reg_buffer.
12899         (regcache_raw_set_cached_value): Remove.
12900         (regcache::raw_set_cached_value): Remove.
12901         (regcache::raw_write): Call raw_supply.
12902         (regcache::raw_supply): Move it to reg_buffer_rw.
12903         * regcache.h (regcache_raw_set_cached_value): Remove.
12904         (reg_buffer_rw): New class.
12905
12906 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12907
12908         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
12909         readonly_detached_regcache.
12910         (dummy_frame_prev_register): Use regcache->cooked_read.
12911         * frame.c (frame_save_as_regcache): Change return type.
12912         (frame_pop): Update.
12913         * frame.h (frame_save_as_regcache): Update declaration.
12914         * inferior.h (get_infcall_suspend_state_regcache): Update
12915         declaration.
12916         * infrun.c (infcall_suspend_state) <registers>: use
12917         readonly_detached_regcache.
12918         (save_infcall_suspend_state): Don't use regcache_dup.
12919         (get_infcall_suspend_state_regcache): Change return type.
12920         * linux-fork.c (struct fork_info) <savedregs>: Change to
12921         readonly_detached_regcache.
12922         <pc>: New field.
12923         (fork_save_infrun_state): Don't use regcache_dup.
12924         (info_checkpoints_command): Adjust.
12925         * mi/mi-main.c (register_changed_p): Update declaration.
12926         (mi_cmd_data_list_changed_registers): Use
12927         readonly_detached_regcache.
12928         (register_changed_p): Change parameter type to
12929         readonly_detached_regcache.
12930         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
12931         readonly_detached_regcache.
12932         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
12933         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
12934         New.
12935         (regcache::save): Move it to reg_buffer.
12936         (regcache::restore): Change parameter type.
12937         (regcache_dup): Remove.
12938         * regcache.h (reg_buffer) <save>: New method.
12939         (readonly_detached_regcache): New class.
12940         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
12941         readonly_detached_regcache.
12942         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
12943
12944 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12945
12946         * frame.c (frame_save_as_regcache): Use regcache method save.
12947         (frame_pop): Use regcache method restore.
12948         * infrun.c (restore_infcall_suspend_state): Likewise.
12949         * linux-fork.c (fork_load_infrun_state): Likewise.
12950         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
12951         save.
12952         * regcache.c (regcache_save): Remove.
12953         (regcache::restore): More asserts.
12954         (regcache_cpy): Remove.
12955         * regcache.h (regcache_save): Remove the declaration.
12956         (regcache::restore): Move from private to public.
12957         Remove the friend declaration of regcache_cpy.
12958         (regcache_cpy): Remove declaration.
12959
12960 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12961
12962         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
12963         parameter type to 'readable_regcache *'.
12964         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12965         * arm-tdep.c (arm_neon_quad_read): Likewise.
12966         (arm_pseudo_read): Likewise.
12967         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12968         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12969         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12970         * gdbarch.c: Re-generated.
12971         * gdbarch.h: Re-generated.
12972         * gdbarch.sh (pseudo_register_read): Change parameter type to
12973         'readable_regcache *'.
12974         (pseudo_register_read_value): Likewise.
12975         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
12976         (h8300_pseudo_register_read): Likewise.
12977         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
12978         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12979         (i386_pseudo_register_read_into_value): Likewise.
12980         (i386_pseudo_register_read_value): Likewise.
12981         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
12982         declaration.
12983         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
12984         * m32c-tdep.c (m32c_raw_read): Likewise.
12985         (m32c_read_flg): Likewise.
12986         (m32c_banked_register): Likewise.
12987         (m32c_banked_read): Likewise.
12988         (m32c_sb_read): Likewise.
12989         (m32c_part_read): Likewise.
12990         (m32c_cat_read): Likewise.
12991         (m32c_r3r2r1r0_read): Likewise.
12992         (m32c_pseudo_register_read): Likewise.
12993         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12994         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12995         (mep_pseudo_cr64_read): Likewise.
12996         (mep_pseudo_register_read): Likewise.
12997         * mips-tdep.c (mips_pseudo_register_read): Likewise.
12998         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12999         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13000         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13001         (regcache::cooked_read): Likewise.
13002         (regcache::cooked_read_value): Likewise.
13003         (regcache_cooked_read_signed):
13004         (regcache::cooked_read): Likewise.
13005         * regcache.h (readable_regcache): New class.
13006         (regcache): Inherit readable_regcache.  Move some methods to
13007         readable_regcache.
13008         * rl78-tdep.c (rl78_pseudo_register_read): Change
13009         parameter type to 'readable_regcache *'.
13010         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13011         (e500_pseudo_register_read): Change parameter type to
13012         'readable_regcache *'.
13013         (dfp_pseudo_register_read): Likewise.
13014         (vsx_pseudo_register_read): Likewise.
13015         (efpr_pseudo_register_read): Likewise.
13016         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13017         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13018         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13019         (sh64_pseudo_register_read): Likewise.
13020         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13021         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13022         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13023         (spu_pseudo_register_read): Likewise.
13024         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13025         (xtensa_pseudo_register_read): Likewise.
13026
13027 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13028
13029         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13030         (regcache::arch): Move it to reg_buffer::arch.
13031         (regcache::register_buffer): Likewise.
13032         (regcache::assert_regnum): Likewise.
13033         (regcache::num_raw_registers): Likewise.
13034         * regcache.h (reg_buffer): New class.
13035         (regcache): Inherit reg_buffer.
13036
13037 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13038
13039         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13040         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13041
13042 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13043
13044         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13045
13046 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13047
13048         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13049         (SFILES): Remove common/*.c files.
13050         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13051         * common/common.host: Add common reference.
13052         * configure.ac: Likewise.
13053         * configure: Regenerate.
13054
13055 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13056
13057         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13058         (block_initialize_namespace): Use new.
13059         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13060         (dwarf2_free_objfile): Use delete.
13061         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13062         (copy_type_recursive): Use new.
13063         * gdb_obstack.h (allocate_on_obstack): New.
13064
13065 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13066
13067         PR gdb/22849
13068         * inferior.c (exit_inferior_1): Reset inf->control.
13069
13070 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13071
13072         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13073         declaration.
13074
13075 2018-02-14  Pedro Alves  <palves@redhat.com>
13076
13077         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13078         frame_cleanup_after_sniffer on exception.
13079
13080 2018-02-14  Tom Tromey  <tom@tromey.com>
13081
13082         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13083         const.
13084         (solib_bfd_open): Make pathname const.
13085         * solib.c (solib_bfd_open): Make pathname const.
13086         * solib-spu.c (spu_bfd_fopen): Make name const.
13087         (spu_bfd_open): Make pathname const.
13088         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13089         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13090
13091 2018-02-14  Tom Tromey  <tom@tromey.com>
13092
13093         * symfile.c (symfile_bfd_open): Update.
13094         * source.h (openp, source_full_path_of, find_and_open_source):
13095         Change argument type to unique_xmalloc_ptr.
13096         * source.c (openp): Take a unique_xmalloc_ptr.
13097         (source_full_path_of, find_and_open_source): Likewise.
13098         (open_source_file, symtab_to_fullname): Update.
13099         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13100         unique_xmalloc_ptr.
13101         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13102         (exec_file_find): Update.
13103         * psymtab.c (psymtab_to_fullname): Update.
13104         * nto-tdep.h (nto_find_and_open_solib): Update.
13105         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13106         unique_xmalloc_ptr.
13107         * exec.c (exec_file_attach): Update.
13108         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13109         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13110
13111 2018-02-14  Tom Tromey  <tom@tromey.com>
13112
13113         * solib.c: Include source.h.
13114         * nto-tdep.c: Include source.h.
13115         * mi/mi-cmd-env.c: Include source.h.
13116         * infcmd.c: Include source.h.
13117         * exec.c: Include source.h.
13118         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13119         (add_path, directory_switch, source_path, init_source_path): Move
13120         declarations...
13121         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13122         (add_path, directory_switch, source_path, init_source_path):
13123         ...here.
13124
13125 2018-02-14  Tom Tromey  <tom@tromey.com>
13126
13127         * solist.h (exec_file_find, solib_find): Return
13128         unique_xmalloc_ptr.
13129         (solib_bfd_fopen): Take a const char *.
13130         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13131         (exec_file_find, solib_find): Likewise.
13132         (solib_bfd_fopen): Do not take ownership of "pathname".
13133         (solib_bfd_open): Use unique_xmalloc_ptr.
13134         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13135         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13136         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13137         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13138
13139 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13140
13141         * ada-lang.c (name_match_type_from_name): Remove reference to
13142         ada_name_for_lookup in function's documentation.
13143         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13144
13145 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13146
13147         * defs.h (enum openp_flags): New enum.
13148         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13149         Move to enum openp_flags.
13150         (openp_flags): New enum flags.
13151         (openp): Change parameter type to openp_flags.
13152         * source.c (openp): Change parameter type to openp_flags.
13153         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13154         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13155
13156 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13157
13158         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13159         per-command.
13160
13161 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13162
13163         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13164         into...
13165         (class dwarf2_queue_guard): ...the destructor of this new class.
13166         (dw2_do_instantiate_symtab): Create instance of the new class
13167         dwarf2_queue_guard, remove cleanup.
13168
13169 2018-02-09  Tom Tromey  <tom@tromey.com>
13170
13171         * source.c (find_source_lines): Don't reference past the end of
13172         the vector.
13173
13174 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13175
13176         * remote.c (remote_btrace_maybe_reopen): Change error message.
13177         * btrace.c (btrace_enable): Likewise.
13178         (parse_xml_btrace): Likewise.
13179         (parse_xml_btrace_conf): Likewise.
13180
13181 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13182
13183         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13184         (linux_enable_pt, linux_enable_bts): Call
13185         diagnose_perf_event_open_fail.
13186
13187 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13188
13189         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13190         Remove parameter and change return type.  Update callers.  Move it.
13191         (linux_enable_bts, linux_enable_pt): Improve error message.
13192         (linux_enable_pt): Remove zero buffer size check.
13193         (linux_enable_btrace): Improve error messages.  Remove NULL return
13194         check.
13195
13196 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13197
13198         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13199         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13200         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13201         (linux_supports_pt, linux_supports_btrace): Remove.
13202         (linux_enable_bts): Call cpu_supports_bts.
13203         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13204         * remote.c (remote_supports_btrace): Remove.
13205         (init_remote_ops): Remove remote_supports_btrace.
13206         * target-delegates.c: Regenerated.
13207         * target.c (target_supports_btrace): Remove.
13208         * target.h (target_ops) <to_supports_btrace>: Remove
13209         (target_supports_btrace): Remove.
13210         * x86-linux-nat.c (x86_linux_create_target): Remove
13211         linux_supports_btrace.
13212
13213 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13214
13215         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13216         btrace failed.
13217         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13218         exception and use message in own exception.
13219
13220 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13221
13222         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13223         (perf_event_pt_event_type): Use gdb_file_up.
13224         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13225         scoped_fd, and scoped_mmap.
13226
13227 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13228
13229         * common/scoped_mmap.h: New.
13230         * unittests/scoped_mmap-selftest.c: New.
13231         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13232         unittests/scoped_mmap-selftest.c.
13233
13234 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13235
13236         * common/scoped_fd.h: New.
13237         * unittests/scoped_fd-selftest.c: New.
13238         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13239         unittests/scoped_fd-selftest.c.
13240
13241 2018-02-09  Tom Tromey  <tom@tromey.com>
13242
13243         * auto-load.c (auto_load_section_scripts): Use
13244         gdb::unique_xmalloc_ptr.
13245
13246 2018-02-09  Tom Tromey  <tom@tromey.com>
13247
13248         * auto-load.c (execute_script_contents): Use std::string.
13249
13250 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13251
13252         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13253         Python function, rather than a new command.
13254
13255 2018-02-08  Tom Tromey  <tom@tromey.com>
13256
13257         * solib.c (solib_find_1): Use std::string.
13258         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13259
13260 2018-02-08  Tom Tromey  <tom@tromey.com>
13261
13262         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13263
13264 2018-02-08  Tom Tromey  <tom@tromey.com>
13265
13266         * source.c (find_source_lines): Use gdb::def_vector.
13267
13268 2018-02-08  Tom Tromey  <tom@tromey.com>
13269
13270         * macrocmd.c (struct temporary_macro_definition): New.
13271         (macro_define_command): Use temporary_macro_definition.  Remove
13272         cleanups.
13273         (free_macro_definition_ptr): Remove.
13274
13275 2018-02-08  Tom Tromey  <tom@tromey.com>
13276
13277         * macroexp.c (maybe_expand): Use std::string.
13278
13279 2018-02-08  Tom Tromey  <tom@tromey.com>
13280
13281         * macroexp.c (struct macro_buffer): Add initializers for some
13282         members.
13283         (init_buffer, init_shared_buffer, free_buffer)
13284         (free_buffer_return_text): Remove.
13285         (macro_buffer): New constructors.
13286         (~macro_buffer): New destructor.
13287         (macro_buffer::set_shared): New method.
13288         (macro_buffer::resize_buffer, macro_buffer::appendc)
13289         (macro_buffer::appendmem): Now methods, not free functions.
13290         (set_token, append_tokens_without_splicing, stringify)
13291         (macro_stringify): Update.
13292         (gather_arguments): Change return type.  Remove argc_p argument,
13293         add args_ptr argument.  Use std::vector.
13294         (substitute_args): Remove argc argument.  Accept std::vector.
13295         (expand): Update.  Use std::vector.
13296         (scan, macro_expand, macro_expand_next): Update.
13297
13298 2018-02-08  Tom Tromey  <tom@tromey.com>
13299
13300         * symtab.c (default_collect_symbol_completion_matches_break_on):
13301         Use unique_xmalloc_ptr.
13302         * macroscope.h: (sal_macro_scope, user_macro_scope)
13303         (default_macro_scope): Return unique_xmalloc_ptr.
13304         * macroscope.c (sal_macro_scope, user_macro_scope)
13305         (default_macro_scope): Return unique_xmalloc_ptr.
13306         * macroexp.h (macro_expand, macro_expand_once): Return
13307         unique_xmalloc_ptr.
13308         * macroexp.c (macro_expand, macro_expand_once): Return
13309         unique_xmalloc_ptr.
13310         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13311         (info_macro_command, info_macros_command): Use
13312         unique_xmalloc_ptr.
13313         * compile/compile-c-support.c (write_macro_definitions): Use
13314         unique_xmalloc_ptr.
13315         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13316
13317 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13318
13319         * value.c (value_static_field): Assign field type instead of
13320         containing type when returning an optimized out value.
13321
13322 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13323
13324         * ft32-tdep.c (ft32_read_pc): Remove.
13325         (ft32_write_pc): Remove.
13326         (ft32_gdbarch_init): Update.
13327         * m32r-tdep.c (m32r_read_pc): Remove.
13328         (m32r_gdbarch_init): Update.
13329         * mep-tdep.c (mep_read_pc): Remove.
13330         (mep_gdbarch_init): Update.
13331         * microblaze-tdep.c (microblaze_write_pc): Remove.
13332         (microblaze_gdbarch_init): Update.
13333         * mn10300-tdep.c (mn10300_read_pc): Remove.
13334         (mn10300_write_pc): Remove.
13335         (mn10300_gdbarch_init): Update.
13336         * moxie-tdep.c (moxie_read_pc): Remove.
13337         (moxie_write_pc): Remove.
13338         (moxie_gdbarch_init): Update.
13339
13340 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13341
13342         * expprint.c (print_subexp_standard): Handle
13343         OP_F77_UNDETERMINED_ARGLIST.
13344         (dump_subexp_body_standard): Likewise.
13345
13346 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13347
13348         * target-descriptions.c (tdesc_element_visitor) Add empty
13349         implementations.
13350         (tdesc_type): Move make_gdb_type from here.
13351         (tdesc_type_builtin): Likewise.
13352         (tdesc_type_vector): Likewise.
13353         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13354         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13355         (make_gdb_type_union): Likewise.
13356         (make_gdb_type_flags): Likewise.
13357         (make_gdb_type_enum): Likewise.
13358         (make_gdb_type): New function.
13359         (tdesc_register_type): Use static make_gdb_type.
13360
13361 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13362
13363         * infcmd.c (default_print_one_register_info): Align natural-format
13364         column values consistently one under another.
13365         (pad_to_column): New function.
13366
13367 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13368
13369         * dwarf2read.c (dwarf2_physname): Move commment.
13370
13371 2018-02-01  Leszek Swirski  <leszeks@google.com>
13372
13373         * varobj.c (varobj_formatted_print_options): Allow recursive
13374         pretty printing if pretty printing is enabled.
13375
13376 2018-02-01  Leszek Swirski  <leszeks@google.com>
13377
13378         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13379         names after a structop as a filename.
13380
13381 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13382
13383         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13384         (arm_record_coproc_data_proc): Likewise.
13385
13386 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13387
13388         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13389
13390 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13391
13392         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13393         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13394
13395 2018-01-31  Pedro Alves  <palves@redhat.com>
13396
13397         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13398         * inflow.c (child_terminal_save_inferior): Wrap reference to
13399         tcgetpgrp in HAVE_TERMIOS_H.
13400         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13401         _WIN32.
13402         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13403         always iterate over all inferiors.
13404         (gdbsim_cntrl_c): Adjust.
13405         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13406
13407 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13408
13409         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13410         index type is objfile-owned if the element type is as well.
13411
13412 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13413
13414         GDB 8.1 released.
13415
13416 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13417
13418         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13419         "features/s390x-linux64.c".
13420         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13421         s390_linux32 and s390x_linux64.
13422         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13423         default tdesc.
13424         * s390-tdep.c: Include "features/s390-linux32.c" and
13425         "features/s390x-linux64.c".
13426         (s390_tdesc_valid): Add check for tdesc_has_registers.
13427         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13428         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13429         tdesc_s390x_linux64.
13430         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13431         tdesc_s390x_linux64 to...
13432         * s390-tdep.h: ...here.
13433
13434 2018-01-30  Pedro Alves  <palves@redhat.com>
13435
13436         PR gdb/13211
13437         * config.in, configure: Regenerate.
13438         * configure.ac: Check for getpgid.
13439         * go32-nat.c (go32_pass_ctrlc): New.
13440         (go32_target): Install it.
13441         * inf-child.c (inf_child_target): Install
13442         child_terminal_save_inferior, child_pass_ctrlc and
13443         child_interrupt.
13444         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13445         (inf_ptrace_target): No longer install it.
13446         * infcmd.c (interrupt_target_1): Adjust.
13447         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13448         (child_interrupt): Declare.
13449         (inferior::terminal_state): New.
13450         * inflow.c (struct terminal_info): Update comments.
13451         (inferior_process_group): Delete.
13452         (terminal_is_ours): Delete.
13453         (gdb_tty_state): New.
13454         (child_terminal_init): Adjust.
13455         (is_gdb_terminal, sharing_input_terminal_1)
13456         (sharing_input_terminal): New functions.
13457         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13458         Set the process's actual process group in the foreground if
13459         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13460         mark terminal as the inferior's if not sharing GDB's terminal.
13461         Don't check attach_flag.
13462         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13463         pass down a target_terminal_state.
13464         (child_terminal_save_inferior): New, factored out from ...
13465         (child_terminal_ours_1): ... this.  Handle
13466         target_terminal_state::is_ours_for_output.
13467         (child_interrupt, child_pass_ctrlc): New.
13468         (inflow_inferior_exit): Clear the inferior's terminal_state.
13469         (copy_terminal_info): Copy the inferior's terminal state.
13470         (_initialize_inflow): Remove reference to terminal_is_ours.
13471         * inflow.h (inferior_process_group): Delete.
13472         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13473         * procfs.c (procfs_target): Don't install procfs_interrupt.
13474         (procfs_interrupt): Delete.
13475         * remote.c (remote_serial_quit_handler): Adjust.
13476         (remote_interrupt): Remove ptid parameter.  Adjust.
13477         * target-delegates.c: Regenerate.
13478         * target.c: Include "terminal.h".
13479         (target_terminal::terminal_state): Rename to ...
13480         (target_terminal::m_terminal_state): ... this.
13481         (target_terminal::init): Adjust.
13482         (target_terminal::inferior): Adjust to per-inferior
13483         terminal_state.
13484         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13485         (target_terminal::ours, target_terminal::ours_for_output): Use
13486         target_terminal_is_ours_kind.
13487         (target_interrupt): Remove ptid parameter.  Adjust.
13488         (default_target_pass_ctrlc): Adjust.
13489         * target.h (target_ops::to_terminal_save_inferior): New field.
13490         (target_ops::to_interrupt): Remove ptid_t parameter.
13491         (target_interrupt): Remove ptid_t parameter.  Update comment.
13492         (target_pass_ctrlc): Update comment.
13493         * target/target.h (target_terminal_state): New scoped enum,
13494         factored out of ...
13495         (target_terminal::terminal_state): ... here.
13496         (target_terminal::inferior): Update comments.
13497         (target_terminal::restore_inferior): New.
13498         (target_terminal::is_inferior, target_terminal::is_ours)
13499         (target_terminal::is_ours_for_output): Adjust.
13500         (target_terminal::scoped_restore_terminal_state): Adjust to
13501         rename, and call restore_inferior() instead of inferior().
13502         (target_terminal::scoped_restore_terminal_state::m_state): Change
13503         type.
13504         (target_terminal::terminal_state): Rename to ...
13505         (target_terminal::m_terminal_state): ... this and change type.
13506
13507 2018-01-30  Pedro Alves  <palves@redhat.com>
13508
13509         * linux-nat.c (wait_for_signal): New function.
13510         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13511         directly.
13512         (async_terminal_is_ours)
13513         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13514         (linux_nat_add_target): Don't override
13515         to_terminal_inferior/to_terminal_ours.
13516
13517 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13518
13519         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13520
13521 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13522
13523         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13524         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13525         dwarf2_per_objfile_free here.
13526         (dwarf2_per_objfile_free): Remove.
13527         (_initialize_dwarf2_read): Don't register
13528         dwarf2_per_objfile_free as a registry cleanup.
13529
13530 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13531
13532         Avoid compilation errors in MinGW native builds
13533
13534         The error is triggered by including python-internal.h, and the
13535         error message is:
13536
13537              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13538                       from build-gnulib/import/math.h:27,
13539                       from d:/usr/Python26/include/pyport.h:235,
13540                       from d:/usr/Python26/include/Python.h:58,
13541                       from python/python-internal.h:94,
13542                       from python/py-arch.c:24:
13543              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13544         using ::hypot;
13545                 ^~~~~
13546
13547         This happens because Python headers define 'hypot' to expand t
13548         '_hypot' in the Windows builds.
13549         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13550         'hypoth'.  This avoids a compilation error.
13551
13552 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13553
13554         * MAINTAINERS (Write After Approval): Fix ordering.
13555
13556 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13557
13558         * MAINTAINERS (Write After Approval): Add Alan Hayward.
13559
13560 2018-01-26  Alan Modra  <amodra@gmail.com>
13561
13562         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
13563         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
13564         Remove nop.  Make const.  Comment.
13565         (powerpc32_plt_stub_so_2): New.
13566         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
13567         Correct count.  Update uses.
13568         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
13569         Move common code reading PLT entry word.  Correct
13570         powerpc32_plt_stub PLT address calculation.
13571         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
13572         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
13573         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
13574         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
13575         (ppc64_standard_linkage8): Likewise.
13576         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
13577         Correct insns description.
13578         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
13579
13580 2018-01-24  Pedro Alves  <palves@redhat.com>
13581
13582         GCC PR libstdc++/83906
13583         * gdbtypes.c (operator==(const dynamic_prop &,
13584         const dynamic_prop &)): New.
13585         (operator==(const range_bounds &, const range_bounds &)): New.
13586         (check_types_equal): Use them instead of memcmp.
13587         * gdbtypes.h (operator==(const dynamic_prop &,
13588         const dynamic_prop &)): Declare.
13589         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
13590         (operator==(const range_bounds &, const range_bounds &)): Declare.
13591         (operator!=(const range_bounds &, const range_bounds &)): Declare.
13592
13593 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13594
13595         * s390-linux-tdep.c (s390_record_address_mask)
13596         (s390_record_calc_disp_common, s390_record_calc_disp)
13597         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13598         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13599         (s390_process_record): Move to s390-tdep.c.
13600         (s390_linux_init_abi_any): Adjust.
13601         * s390-tdep.c (s390_record_address_mask)
13602         (s390_record_calc_disp_common, s390_record_calc_disp)
13603         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13604         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13605         (s390_process_record): Moved from s390-linux-tdep.c
13606         (s390_gdbarch_init): Adjust.
13607
13608 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13609
13610         * s390-linux-nat.c (s390-tdep.h): New include.
13611         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
13612         (HFILES_NO_SRCDIR): Add s390-tdep.h.
13613         (ALLDEPFILES): Add s390-tdep.c.
13614         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
13615         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
13616         * s390-tdep.h: ...this.  New file.
13617         * s390-linux-tdep.c (s390-tdep.h): New include.
13618         (_initialize_s390_tdep): Rename to...
13619         (_initialize_s390_linux_tdep): ...this and adjust.
13620         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
13621         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
13622         s390-tdep.h.
13623         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
13624         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
13625         (s390_is_partial_instruction, s390_software_single_step)
13626         (is_non_branch_ril, s390_displaced_step_copy_insn)
13627         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
13628         (s390_prologue_data, s390_addr, s390_store, s390_load)
13629         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
13630         (s390_register_call_saved, s390_guess_tracepoint_registers)
13631         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
13632         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
13633         (s390_pseudo_register_name, s390_pseudo_register_type)
13634         (s390_pseudo_register_read, s390_pseudo_register_write)
13635         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
13636         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
13637         (s390_addr_bits_remove, s390_address_class_type_flags)
13638         (s390_address_class_type_flags_to_name)
13639         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
13640         (s390_function_arg_float, s390_function_arg_vector)
13641         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
13642         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
13643         (s390_frame_align, s390_register_return_value, s390_return_value)
13644         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
13645         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
13646         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
13647         (s390_trad_frame_prev_register, s390_unwind_cache)
13648         (s390_prologue_frame_unwind_cache)
13649         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
13650         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
13651         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
13652         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
13653         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
13654         (s390_frame_base_address, s390_local_base_address)
13655         (s390_frame_base, s390_gcc_target_options)
13656         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
13657         (s390_validate_reg_range, s390_tdesc_valid)
13658         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
13659         * s390-tdep.c: ...this.  New file.
13660
13661 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13662
13663         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
13664         (s390_process_record, s390_gdbarch_tdep_alloc)
13665         (s390_linux_init_abi_any): Use/set new hook.
13666
13667 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13668
13669         * s390-linux-tdep.c (osabi.h): New include.
13670         (s390_linux_init_abi_31, s390_linux_init_abi_64)
13671         (s390_linux_init_abi_any): New functions.
13672         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
13673
13674 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13675
13676         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
13677         tdesc_has_registers check
13678
13679 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13680
13681         * s390-linux-tdep.c (s390_tdesc_valid): New function.
13682         (s390_validate_reg_range): New macro.
13683         (s390_gdbarch_init): Adjust.
13684
13685 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13686
13687         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
13688         (s390_gdbarch_tdep_alloc): Adjust.
13689         (s390_gdbarch_init): Adjust.
13690
13691 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13692
13693         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
13694         <have_tdb>: Change type to bool.
13695         (s390_gdbarch_tdep_alloc): Adjust.
13696         (s390_gdbarch_init): Adjust.
13697
13698 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13699
13700         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
13701         (gdbarch_tdep) <have_upper, have_vx>: New fields.
13702         (s390_gdbarch_tdep_alloc): New function.
13703         (s390_gdbarch_init): Allocate tdep at start and use its fields
13704         instead of separate variables.
13705
13706 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13707
13708         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
13709         when looking for cached gdbarch and add comment for remaining.
13710
13711 2018-01-22  Pedro Alves  <palves@redhat.com>
13712             Sergio Durigan Junior  <sergiodj@redhat.com>
13713
13714         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
13715         case.
13716
13717 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
13718
13719         * MAINTAINERS: Update my company e-mail address.
13720
13721 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13722
13723         * regcache.c (cooked_write_test): New function.
13724         (_initialize_regcache): Register the test.
13725
13726 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13727
13728         * ia64-tdep.c (ia64_pseudo_register_read): Call
13729         regcache->cooked_read instead of regcache_cooked_read_unsigned.
13730         * m32c-tdep.c (m32c_cat_read): Likewise.
13731         (m32c_r3r2r1r0_read): Likewise.
13732         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13733         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13734
13735 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13736
13737         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
13738         method raw_read instead of regcache_raw_read.
13739         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13740         * arm-tdep.c (arm_neon_quad_read): Likewise.
13741         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13742         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13743         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13744         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
13745         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13746         (i386_pseudo_register_read_into_value): Likewise.
13747         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13748         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13749         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13750         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
13751         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
13752         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
13753         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13754         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
13755         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
13756
13757 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13758
13759         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
13760         * configure.tgt: Remove target mt.
13761         * mt-tdep.c: Remove.
13762         * regcache.c (cooked_read_test): Remove the check for mt.
13763
13764 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13765
13766         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
13767         instead of gdbarch_pseudo_register_read_value.
13768
13769 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13770
13771         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
13772         language is Ada.
13773
13774 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13775
13776         * linespec.c (create_sals_line_offset): Remove code that preserved
13777         the symtab_and_line's line number.
13778
13779 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13780
13781         * varobj.c (varobj_create): Don't set valid_block when creating a
13782         floating varobj.
13783
13784 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13785
13786         * varobj.c (varobj_create): Remove out of date comment.
13787
13788 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13789
13790         PR mi/20395
13791         * ada-exp.y (write_var_from_sym): Pass extra parameter when
13792         updating innermost block.
13793         * parse.c (innermost_block_tracker::update): Take extra type
13794         parameter, and check types match before updating innermost block.
13795         (write_dollar_variable): Update innermost block for registers.
13796         * parser-defs.h (enum innermost_block_tracker_type): New enum.
13797         (innermost_block_tracker::innermost_block_tracker): Initialise
13798         m_types member.
13799         (innermost_block_tracker::reset): Take type parameter.
13800         (innermost_block_tracker::update): Take type parameter, and pass
13801         type through as needed.
13802         (innermost_block_tracker::m_types): New member.
13803         * varobj.c (varobj_create): Pass type when reseting innermost
13804         block.
13805
13806 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13807
13808         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
13809         * ada-lang.c (resolve_subexp): Likewise.
13810         * breakpoint.c (set_breakpoint_condition) Likewise.
13811         (watch_command_1) Likewise.
13812         * c-exp.y (variable): Likewise.
13813         * d-exp.y (PrimaryExpression): Likewise.
13814         * f-exp.y (variable): Likewise.
13815         * go-exp.y (variable): Likewise.
13816         * m2-exp.y (variable): Likewise.
13817         * objfiles.c (objfile::~objfile): Likewise.
13818         * p-exp.y (variable): Likewise.
13819         * parse.c (innermost_block): Change type.
13820         * parser-defs.h (class innermost_block_tracker): New.
13821         (innermost_block): Change to innermost_block_tracker.
13822         * printcmd.c (display_command): Switch to innermost_block API.
13823         (do_one_display): Likewise.
13824         * rust-exp.y (do_one_display): Likewise.
13825         * symfile.c (clear_symtab_users): Likewise.
13826         * varobj.c (varobj_create): Switch to innermost_block API, replace
13827         use of innermost_block with block stored on varobj object.
13828
13829 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13830
13831         * expression.h (innermost_block): Remove declaration.
13832         * varobj.c: Add 'parser-defs.h' include.
13833
13834 2018-01-19  Tom Tromey  <tom@tromey.com>
13835
13836         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
13837         symbols in the static and global blocks.
13838
13839 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
13840
13841         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
13842         gdb_ptrace.h, and move including gdb_wait.h ...
13843         * nat/linux-ptrace.h: ... to here.
13844
13845 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13846
13847         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
13848         inf_ptrace_detach_success.
13849         (inf_ptrace_detach_success): Add inferior parameter, use it
13850         instead of inferior_ptid, pass it to detach_inferior.
13851         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
13852         parameter.
13853         * inferior.c (detach_inferior): Add overload that takes an
13854         inferior object.
13855         * inferior.h (detach_inferior): Likewise.
13856         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
13857         use inferior_ptid, adjust call to inf_ptrace_detach_success.
13858         * linux-thread-db.c (thread_db_detach): Use inf parameter.
13859
13860 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13861
13862         * target.h (struct target_ops) <to_detach>: Add inferior
13863         parameter.
13864         (target_detach): Likewise.
13865         * target.c (dispose_inferior): Pass inferior down.
13866         (target_detach): Pass inferior down.  Assert that it is equal to
13867         the current inferior.
13868         * aix-thread.c (aix_thread_detach): Pass inferior down.
13869         * corefile.c (core_file_command): Pass current_inferior() down.
13870         * corelow.c (core_detach): Add inferior parameter.
13871         * darwin-nat.c (darwin_detach): Likewise.
13872         * gnu-nat.c (gnu_detach): Likewise.
13873         * inf-ptrace.c (inf_ptrace_detach): Likewise.
13874         * infcmd.c (detach_command): Pass current_inferior() down to
13875         target_detach.
13876         * infrun.c (follow_fork_inferior): Pass parent_inf to
13877         target_detach.
13878         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
13879         target_detach.
13880         * linux-nat.c (linux_nat_detach): Add inferior parameter.
13881         * linux-thread-db.c (thread_db_detach): Likewise.
13882         * nto-procfs.c (procfs_detach): Likewise.
13883         * procfs.c (procfs_detach): Likewise.
13884         * record.c (record_detach): Likewise.
13885         * record.h (struct inferior): Forward-declare.
13886         (record_detach): Add inferior parameter.
13887         * remote-sim.c (gdbsim_detach): Likewise.
13888         * remote.c (remote_detach_1): Likewise.
13889         (remote_detach): Likewise.
13890         (extended_remote_detach): Likewise.
13891         * sol-thread.c (sol_thread_detach): Likewise.
13892         * target-debug.h (target_debug_print_inferior_p): New macro.
13893         * target-delegates.c: Re-generate.
13894         * top.c (kill_or_detach): Pass inferior down to target_detach.
13895         * windows-nat.c (windows_detach): Add inferior parameter.
13896
13897 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13898
13899         * target.h (struct target_ops) <to_detach>: Remove args
13900         parameter.
13901         (target_detach): Likewise.
13902         * target.c (dispose_inferior): Adjust.
13903         (target_detach): Remove args parameter, adjust.
13904         * aix-thread.c (aix_thread_detach): Adjust.
13905         * corefile.c (core_file_command): Adjust.
13906         * corelow.c (core_detach): Adjust.
13907         * darwin-nat.c (darwin_detach): Adjust.
13908         * gnu-nat.c (gnu_detach): Adjust.
13909         * inf-ptrace.c (inf_ptrace_detach): Adjust.
13910         * infcmd.c (detach_command): Adjust
13911         * infrun.c (follow_fork_inferior): Adjust.
13912         (handle_vfork_child_exec_or_exit): Adjust.
13913         * linux-fork.c (linux_fork_detach): Remove args parameter.
13914         * linux-fork.h (linux_fork_detach): Likewise.
13915         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
13916         * linux-thread-db.c (thread_db_detach): Likewise.
13917         * nto-procfs.c (procfs_detach): Likewise.
13918         * procfs.c (procfs_detach): Likewise.
13919         (do_detach): Remove signo parameter.
13920         * record.c (record_detach): Remove args parameter.
13921         * record.h (record_detach): Likewise.
13922         * remote-sim.c (gdbsim_detach): Likewise.
13923         * remote.c (remote_detach_1): Likewise.
13924         (remote_detach): Likewise.
13925         (extended_remote_detach): Likewise.
13926         * sol-thread.c (sol_thread_detach): Likewise.
13927         * target-delegates.c: Re-generate.
13928         * top.c (struct qt_args) <args>: Remove field.
13929         (kill_or_detach): Don't pass args.
13930         (quit_force): Don't set args.
13931         * windows-nat.c (windows_detach): Remove args parameter.
13932
13933 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13934
13935         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
13936         (arm_linux_init_abi): Install it.
13937
13938 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13939
13940         * osabi.c (gdb_osabi_names): Extend the regexp for
13941         arm-linux-gnueabihf.
13942
13943 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13944
13945         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
13946         m_abbrevs.
13947         (abbrev_table::add_abbrev): Update.
13948         (abbrev_table::lookup_abbrev): Update.
13949
13950 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13951
13952         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
13953
13954 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
13955
13956         * compile/compile.c (compile_to_object): Convert "triplet_rx"
13957         to "std::string".
13958
13959 2018-01-17  Tom Tromey  <tom@tromey.com>
13960
13961         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
13962
13963 2018-01-17  Tom Tromey  <tom@tromey.com>
13964
13965         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
13966         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
13967         (create_array_type_with_stride): Update.
13968         * dwarf2read.c (set_die_type): Update.
13969
13970 2018-01-17  Tom Tromey  <tom@tromey.com>
13971
13972         * dwarf2read.c (delayed_method_info): Remove typedef.
13973         (dwarf2_cu::method_info): Now a std::vector.
13974         (add_to_method_list): Update.
13975         (free_delayed_list): Remove.
13976         (compute_delayed_physnames): Update.
13977         (process_full_comp_unit, process_full_type_unit): Clear the method
13978         list.  Remove cleanups.
13979         (psymtab_include_file_name): Add name_holder parameter.  Use
13980         unique_xmalloc_ptr.
13981         (dwarf_decode_lines): Update.
13982
13983 2018-01-17  Tom Tromey  <tom@tromey.com>
13984             Simon Marchi  <simon.marchi@ericsson.com>
13985
13986         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
13987         (dwarf2_per_objfile::free_cached_comp_units)
13988         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13989         (init_cutu_and_read_dies_no_follow): Update.
13990         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
13991         (dwarf2_cu::~dwarf2_cu): New.
13992         (free_heap_comp_unit, free_stack_comp_unit): Remove.
13993         (age_cached_comp_units, free_one_cached_comp_unit): Update.
13994
13995 2018-01-17  Tom Tromey  <tom@tromey.com>
13996             Simon Marchi  <simon.marchi@ericsson.com>
13997
13998         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
13999         (struct die_reader_specs) <abbrev_table>: New member.
14000         (struct abbrev_table): Add constructor.
14001         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14002         <abbrev_obstack>: Now an auto_obstack.
14003         (abbrev_table_up): New typedef.
14004         (init_cu_die_reader): Add abbrev_table parameter.
14005         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14006         Add result_dwo_abbrev_table.
14007         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14008         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14009         Update.
14010         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14011         parameter.
14012         (skip_children): Update.
14013         (abbrev_table::alloc_abbrev): Rename from
14014         abbrev_table_alloc_abbrev.
14015         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14016         (abbrev_table::lookup_abbrev): Rename from
14017         abbrev_table_lookup_abbrev.
14018         (abbrev_table_read_table): Return abbrev_table_up.
14019         (abbrev_table_free, abbrev_table_free_cleanup)
14020         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14021         (load_partial_dies): Update.
14022
14023 2018-01-17  Tom Tromey  <tom@tromey.com>
14024
14025         * dwarf2read.c (dwarf2_compute_name): Update comment.
14026         (read_func_scope, read_variable): Update.
14027         (new_symbol): Remove.
14028         (new_symbol_full): Rename to new_symbol.
14029
14030 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14031
14032         PR gdb/16577
14033         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14034         a warning instead of throwing an error, set section size to 0 and return
14035         NULL.
14036         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14037
14038 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14039
14040         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14041         std::string.
14042         (linux_ptrace_attach_fail_reason_string): Likewise.
14043         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14044         Likewise.
14045         (linux_ptrace_attach_fail_reason_string): Likewise.
14046         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14047
14048 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14049
14050         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14051
14052 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14053
14054         PR gdb/21559
14055         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14056         checking for fs_base/gs_base fields in struct user_regs_struct.
14057         * configure: Regenerate.
14058
14059 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14060
14061         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14062         function.
14063         (aarch64_linux_init_abi): Install it to gdbarch hook
14064         gcc_target_options.
14065
14066 2018-01-15  Pedro Alves  <palves@redhat.com>
14067
14068         * common/signals-state-save-restore.c
14069         (save_original_signals_state): Fix typos.
14070
14071 2017-01-12  Tom Tromey  <tom@tromey.com>
14072             Sergio Durigan Junior  <sergiodj@redhat.com>
14073
14074         * Makefile.in (install-only): Install gdb-add-index.
14075
14076 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14077
14078         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14079
14080 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14081
14082         * infrun.c (keep_going_pass_signal): Clear step-over info when
14083         insert_breakpoints fails.
14084
14085 2018-01-11  Pedro Alves  <palves@redhat.com>
14086
14087         PR gdb/22583
14088         * infrun.c (resume): Rename to ...
14089         (resume_1): ... this.
14090         (resume): Reimplement as wrapper around resume_1.
14091
14092 2018-01-11  Pedro Alves  <palves@redhat.com>
14093
14094         PR remote/22597
14095         * remote.c (remote_parse_stop_reply): Default to the last-set
14096         general thread instead of to 'magic_null_ptid'.
14097
14098 2018-01-10  Pedro Alves  <palves@redhat.com>
14099
14100         * language.h (language_get_symbol_name_matcher): Rename ...
14101         (get_symbol_name_matcher): ... this.
14102         * language.c (language_get_symbol_name_matcher): Ditto.
14103         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14104         callers adjusted.
14105
14106 2018-01-10  Pedro Alves  <palves@redhat.com>
14107
14108         PR gdb/22670
14109         * dwarf2read.c
14110         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14111         Adjust to use language_get_symbol_name_matcher instead of
14112         language_defn::la_get_symbol_name_matcher.
14113         * language.c (language_get_symbol_name_matcher): If in Ada mode
14114         and the lookup name is a verbatim match, return Ada's matcher.
14115         * language.h (language_get_symbol_name_matcher): Adjust comment.
14116         (ada_lookup_name_info::verbatim_p):: New method.
14117
14118 2018-01-10  Pedro Alves  <palves@redhat.com>
14119
14120         PR gdb/22670
14121         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14122         minsym's language is language_auto or language_cplus, pass down
14123         language_ada instead.
14124         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14125
14126 2018-01-10  Pedro Alves  <palves@redhat.com>
14127
14128         PR gdb/22670
14129         * minsyms.c (linkage_name_str): New function.
14130         (iterate_over_minimal_symbols): Use it.
14131
14132 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14133
14134         * NEWS: Document that 'info proc' now works on FreeBSD.
14135
14136 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14137
14138         * configure.ac: Check for kinfo_getfile in libutil.
14139         * configure: Regenerate.
14140         * config.in: Regenerate.
14141         * fbsd-nat.c: Include "fbsd-tdep.h".
14142         (fbsd_fetch_cmdline): New.
14143         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14144         rather than calling error.
14145         (fbsd_info_proc): New.
14146         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14147         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14148         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14149
14150 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14151
14152         * fbsd-nat.c (struct free_deleter): Remove.
14153         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14154
14155 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14156
14157         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14158         NULL for an empty pathname.
14159
14160 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14161
14162         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14163         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14164         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14165         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14166         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14167         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14168         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14169         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14170         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14171         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14172         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14173         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14174         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14175         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14176         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14177
14178 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14179
14180         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14181         (gnu_xfer_auxv): New function.
14182         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14183         TARGET_OBJECT_AUXV.
14184
14185 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14186             Simon Marchi  <simon.marchi@ericsson.com>
14187
14188         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14189         common/selftest.c.
14190         (COMMON_OBS): Remove selftest.o.
14191         * configure.ac: Append selftest-arch.c and common/selftest.c to
14192         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14193         * configure: Re-generated.
14194         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14195         GDB_SELF_TEST.
14196         (maintenance_info_selftests): Likewise.
14197
14198 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14199
14200         * ada-valprint.c (val_print_packed_array_elements): Use
14201         proper number of elements when printing an array indexed
14202         by an enumeration type.
14203
14204 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14205
14206         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14207         (dw2_get_file_names_reader): Adjust.
14208         (lookup_dwo_signatured_type): Adjust.
14209         (lookup_dwp_signatured_type): Adjust.
14210         (lookup_signatured_type): Adjust.
14211         (create_type_unit_group): Adjust.
14212         (get_type_unit_group): Adjust.
14213         (process_psymtab_comp_unit_reader): Adjust.
14214         (build_type_psymtabs_reader): Adjust.
14215         (scan_partial_symbols): Adjust.
14216         (add_partial_symbol): Adjust.
14217         (add_partial_subprogram): Adjust.
14218         (peek_die_abbrev): Adjust.
14219         (fixup_go_packaging): Adjust.
14220         (process_imported_unit_die): Adjust.
14221         (dwarf2_compute_name): Adjust.
14222         (dwarf2_physname): Adjust.
14223         (read_import_statement): Adjust.
14224         (handle_DW_AT_stmt_list): Adjust.
14225         (read_file_scope): Adjust.
14226         (read_func_scope): Adjust.
14227         (read_lexical_block_scope): Adjust.
14228         (read_call_site_scope): Adjust.
14229         (read_variable): Adjust.
14230         (dwarf2_rnglists_process): Adjust.
14231         (dwarf2_ranges_process): Adjust.
14232         (dwarf2_ranges_read): Adjust.
14233         (dwarf2_get_pc_bounds): Adjust.
14234         (dwarf2_record_block_ranges): Adjust.
14235         (dwarf2_add_field): Adjust.
14236         (dwarf2_add_member_fn): Adjust.
14237         (read_structure_type): Adjust.
14238         (process_structure_scope): Adjust.
14239         (read_enumeration_type): Adjust.
14240         (read_array_type): Adjust.
14241         (mark_common_block_symbol_computed): Adjust.
14242         (read_common_block): Adjust.
14243         (read_namespace_type): Adjust.
14244         (read_namespace): Adjust.
14245         (read_module_type): Adjust.
14246         (read_tag_pointer_type): Adjust.
14247         (read_tag_ptr_to_member_type): Adjust.
14248         (read_tag_string_type): Adjust.
14249         (read_subroutine_type): Adjust.
14250         (read_typedef): Adjust.
14251         (read_base_type): Adjust.
14252         (attr_to_dynamic_prop): Adjust.
14253         (read_subrange_type): Adjust.
14254         (read_unspecified_type): Adjust.
14255         (dwarf2_read_abbrevs): Adjust.
14256         (load_partial_dies): Adjust.
14257         (read_partial_die): Adjust.
14258         (find_partial_die): Adjust.
14259         (guess_partial_die_structure_name): Adjust.
14260         (fixup_partial_die): Adjust.
14261         (read_attribute_value): Adjust.
14262         (read_addr_index): Adjust.
14263         (read_addr_index_from_leb128): Adjust.
14264         (read_str_index): Adjust.
14265         (dwarf2_string_attr): Adjust.
14266         (get_debug_line_section): Adjust.
14267         (dwarf_decode_line_header): Adjust.
14268         (lnp_state_machine::check_line_address): Adjust.
14269         (dwarf_decode_lines_1): Adjust.
14270         (dwarf_decode_lines): Adjust.
14271         (dwarf2_start_symtab): Adjust.
14272         (var_decode_location): Adjust.
14273         (new_symbol_full): Adjust.
14274         (dwarf2_const_value_data): Adjust.
14275         (dwarf2_const_value_attr): Adjust.
14276         (dwarf2_const_value): Adjust.
14277         (die_type): Adjust.
14278         (die_containing_type): Adjust.
14279         (build_error_marker_type): Adjust.
14280         (lookup_die_type): Adjust.
14281         (guess_full_die_structure_name): Adjust.
14282         (anonymous_struct_prefix): Adjust.
14283         (determine_prefix): Adjust.
14284         (dwarf2_name): Adjust.
14285         (follow_die_ref_or_sig): Adjust.
14286         (follow_die_offset): Adjust.
14287         (follow_die_ref): Adjust.
14288         (follow_die_sig_1): Adjust.
14289         (follow_die_sig): Adjust.
14290         (get_signatured_type): Adjust.
14291         (get_DW_AT_signature_type): Adjust.
14292         (decode_locdesc): Adjust.
14293         (dwarf_decode_macros): Adjust.
14294         (cu_debug_loc_section): Adjust.
14295         (fill_in_loclist_baton): Adjust.
14296         (dwarf2_symbol_mark_computed): Adjust.
14297         (init_one_comp_unit): Don't assign
14298         dwarf2_cu::dwarf2_per_objfile.
14299         (set_die_type): Adjust.
14300
14301 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14302
14303         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14304         <dwarf2_per_objfile>: New field.
14305         (dwarf2_per_objfile): Remove global.
14306         (get_dwarf2_per_objfile): New function.
14307         (set_dwarf2_per_objfile): New function.
14308         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14309         dwarf2_per_objfile.
14310         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14311         (read_abbrev_offset): Likewise.
14312         (read_indirect_string): Likewise.
14313         (read_indirect_line_string): Likewise.
14314         (read_indirect_string_at_offset): Likewise.
14315         (read_indirect_string_from_dwz): Likewise.
14316         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14317         dwarf2_per_objfile.
14318         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14319         (create_all_comp_units): Change objfile parameter to
14320         dwarf2_per_objfile.
14321         (create_all_type_units): Likewise.
14322         (process_queue): Add dwarf2_per_objfile parameter.
14323         (read_and_check_comp_unit_head): Likewise.
14324         (lookup_dwo_unit_in_dwp): Likewise.
14325         (get_dwp_file): Likewise.
14326         (process_cu_includes): Likewise.
14327         (struct free_dwo_file_cleanup_data): New struct.
14328         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14329         set_dwarf2_per_objfile.
14330         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14331         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14332         context, adjust calls.
14333         (dw2_instantiate_symtab): Likewise.
14334         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14335         (dw2_get_cu): Likewise.
14336         (create_cu_from_index_list): Change objfile parameter to
14337         dwarf2_per_objfile.
14338         (create_cus_from_index_list): Get dwarf2_per_objfile from
14339         context, adjust calls.
14340         (create_cus_from_index): Likewise.
14341         (create_signatured_type_table_from_index): Change objfile
14342         parameter to dwarf2_per_objfile.
14343         (create_signatured_type_table_from_debug_names): Change objfile
14344         parameter to dwarf2_per_objfile.
14345         (create_addrmap_from_index): Likewise.
14346         (create_addrmap_from_aranges): Likewise.
14347         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14348         (dw2_setup): Remove.
14349         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14350         context.
14351         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14352         get_dwarf2_per_objfile.
14353         (dw2_forget_cached_source_info): Likewise.
14354         (dw2_map_symtabs_matching_filename): Likewise.
14355         (struct dw2_symtab_iterator) <index>: Remove.
14356         <dwarf2_per_objfile>: New field.
14357         (dw2_symtab_iter_init): Replace index parameter with
14358         dwarf2_per_objfile.
14359         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14360         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14361         (dw2_print_stats): Likewise.
14362         (dw2_dump): Likewise.
14363         (dw2_expand_symtabs_for_function): Likewise.
14364         (dw2_expand_all_symtabs): Likewise.
14365         (dw2_expand_symtabs_with_fullname): Likewise.
14366         (dw2_expand_marked_cus): Replace index and objfile parameters
14367         with dwarf2_per_objfile.
14368         (dw_expand_symtabs_matching_file_matcher): Add
14369         dwarf2_per_objfile parameter and adjust calls.
14370         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14371         adjust calls.
14372         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14373         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14374         adjust calls.
14375         (create_cus_from_debug_names_list): Replace objfile parameter
14376         with dwarf2_per_objfile and adjust calls.
14377         (create_cus_from_debug_names): Likewise.
14378         (dwarf2_read_debug_names): Likewise.
14379         (mapped_debug_names::namei_to_name): Adjust call.
14380         (dw2_debug_names_iterator::next): Likewise.
14381         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14382         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14383         (dw2_debug_names_dump): Likewise.
14384         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14385         (dw2_debug_names_expand_symtabs_matching): Likewise.
14386         (dwarf2_initialize_objfile): Likewise.
14387         (dwarf2_build_psymtabs): Likewise.
14388         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14389         this_cu.
14390         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14391         (read_and_check_comp_unit_head): Likewise.
14392         (read_abbrev_offset): Likewise.
14393         (create_debug_type_hash_table): Likewise.
14394         (create_debug_types_hash_table): Likewise.
14395         (create_all_type_units): Replace objfile parameter with
14396         dwarf2_per_objfile.
14397         (add_type_unit): Add dwarf2_per_objfile parameter.
14398         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14399         with dwarf2_per_objfile.
14400         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14401         (lookup_dwp_signatured_type): Likewise.
14402         (lookup_signatured_type): Likewise.
14403         (read_cutu_die_from_dwo): Likewise.
14404         (init_tu_and_read_dwo_dies): Likewise.
14405         (init_cutu_and_read_dies): Likewise.
14406         (init_cutu_and_read_dies_no_follow): Likewise.
14407         (allocate_type_unit_groups_table): Add objfile parameter.
14408         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14409         (get_type_unit_group): Likewise.
14410         (process_psymtab_comp_unit): Update call.
14411         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14412         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14413         (print_tu_stats): Likewise.
14414         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14415         in void* parameter.
14416         (build_type_psymtabs): Change objfile parameter to
14417         dwarf2_per_objfile.
14418         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14419         passed in void* parameter.
14420         (process_skeletonless_type_units): Change objfile parameter to
14421         dwarf2_per_objfile.
14422         (set_partial_user): Likewise.
14423         (dwarf2_build_psymtabs_hard): Likewise.
14424         (read_comp_units_from_section): Likewise.
14425         (create_all_comp_units): Likewise.
14426         (scan_partial_symbols): Update calls.
14427         (add_partial_symbol): Likewise.
14428         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14429         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14430         (process_queue): Add dwarf2_per_objfile parameter.
14431         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14432         (compute_compunit_symtab_includes): Likewise.
14433         (process_cu_includes): Add dwarf2_per_objfile parameter.
14434         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14435         (process_full_type_unit): Likewise.
14436         (process_imported_unit_die): Update call.
14437         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14438         (read_file_scope): Likewise.
14439         (allocate_dwo_file_hash_table): Add objfile parameter.
14440         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14441         (create_cus_hash_table): Likewise.
14442         (create_dwp_hash_table): Likewise.
14443         (create_dwo_unit_in_dwp_v1): Likewise.
14444         (create_dwp_v2_section): Likewise.
14445         (create_dwo_unit_in_dwp_v2): Likewise.
14446         (lookup_dwo_unit_in_dwp): Likewise.
14447         (try_open_dwop_file): Likewise.
14448         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14449         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14450         cleanup to include a reference to dwarf2_per_objfile.
14451         (open_dwp_file): Add dwarf2_per_objfile parameter.
14452         (open_and_init_dwp_file): Likewise.
14453         (get_dwp_file): Likewise.
14454         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14455         (queue_and_load_all_dwo_tus): Update call.
14456         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14457         data.
14458         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14459         (dwarf2_ranges_process): Likewise.
14460         (dwarf2_get_pc_bounds): Likewise.
14461         (mark_common_block_symbol_computed): Likewise.
14462         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14463         (dwarf2_read_abbrevs): Update call.
14464         (read_partial_die): Use dwarf2_per_objfile from cu.
14465         (find_partial_die): Likewise.
14466         (fixup_partial_die): Likewise.
14467         (read_attribute_value): Likewise.
14468         (read_indirect_string_at_offset_from): Add objfile parameter.
14469         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14470         parameter.
14471         (read_indirect_string_from_dwz): Add objfile parameter.
14472         (read_indirect_string): Add objfile parameter.
14473         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14474         (read_addr_index): Use dwarf2_per_objfile from cu.
14475         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14476         call dw2_setup.
14477         (read_str_index): Use dwarf2_per_objfile from cu.
14478         (get_debug_line_section): Likewise.
14479         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14480         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14481         (new_symbol_full): Use dwarf2_per_objfile from cu.
14482         (build_error_marker_type): Likewise.
14483         (lookup_die_type): Likewise.
14484         (determine_prefix): Likewise.
14485         (follow_die_offset): Likewise.
14486         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14487         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14488         (dwarf2_fetch_die_type_sect_off): Likewise.
14489         (dwarf2_get_die_type): Likewise.
14490         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14491         (get_signatured_type): Likewise.
14492         (get_DW_AT_signature_type): Likewise.
14493         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14494         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14495         (cu_debug_loc_section): Likewise.
14496         (fill_in_loclist_baton): Likewise.
14497         (dwarf2_symbol_mark_computed): Likewise.
14498         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14499         dwarf2_per_objfile.
14500         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14501         parameter.
14502         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14503         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14504         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14505         (set_die_type): Use dwarf2_free_objfile from cu.
14506         (get_die_type_at_offset): Likewise.
14507         (dwarf2_per_objfile_free): Don't assign global variable.
14508         (debug_names) <constructor>: Add dwarf2_per_objfile
14509         parameter, update m_debugstrlookup construction.
14510         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14511         parameter.
14512         <m_dwarf2_per_objfile>: New field.
14513         <lookup>: Use m_dwarf2_per_objfile.
14514         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14515         (psyms_seen_size): Likewise.
14516         (write_gdbindex): Replace objfile parameter with
14517         dwarf2_per_objfile.
14518         (write_debug_names): Likewise.
14519         (write_psymtabs_to_index): Likewise.
14520         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14521         calls.
14522
14523 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14524
14525         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14526         <dwarf2_per_objfile>: New field.
14527         (struct dwarf2_per_cu_data) <objfile>: Remove.
14528         <dwarf2_per_objfile>: New field.
14529         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14530         of objfile.
14531         (create_signatured_type_table_from_index): Likewise.
14532         (create_debug_type_hash_table): Likewise.
14533         (fill_in_sig_entry_from_dwo_entry): Likewise.
14534         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14535         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14536         objfile.
14537         (create_partial_symtab): Access objfile through
14538         dwarf2_per_objfile.
14539         (process_psymtab_comp_unit_reader): Likewise.
14540         (read_comp_units_from_section): Likewise.
14541         (scan_partial_symbols): Likewise.
14542         (add_partial_symbol): Likewise.
14543         (add_partial_subprogram): Likewise.
14544         (peek_die_abbrev): Likewise.
14545         (fixup_go_packaging): Likewise.
14546         (process_full_comp_unit): Likewise.
14547         (process_full_type_unit): Likewise.
14548         (process_imported_unit_die): Likewise.
14549         (dwarf2_compute_name): Likewise.
14550         (dwarf2_physname): Likewise.
14551         (read_import_statement): Likewise.
14552         (create_cus_hash_table): Assign dwarf2_physname instead of
14553         objfile.
14554         (read_func_scope): Access objfile through dwarf2_per_objfile.
14555         (read_lexical_block_scope): Likewise.
14556         (read_call_site_scope): Likewise.
14557         (read_variable): Likewise.
14558         (dwarf2_rnglists_process): Likewise.
14559         (dwarf2_ranges_process): Likewise.
14560         (dwarf2_ranges_read): Likewise.
14561         (dwarf2_record_block_ranges): Likewise.
14562         (dwarf2_add_field): Likewise.
14563         (dwarf2_add_member_fn): Likewise.
14564         (read_structure_type): Likewise.
14565         (process_structure_scope): Likewise.
14566         (read_enumeration_type): Likewise.
14567         (read_array_type): Likewise.
14568         (read_common_block): Likewise.
14569         (read_namespace_type): Likewise.
14570         (read_namespace): Likewise.
14571         (read_module_type): Likewise.
14572         (read_tag_pointer_type): Likewise.
14573         (read_tag_ptr_to_member_type): Likewise.
14574         (read_tag_string_type): Likewise.
14575         (read_subroutine_type): Likewise.
14576         (read_typedef): Likewise.
14577         (read_base_type): Likewise.
14578         (attr_to_dynamic_prop): Likewise.
14579         (read_subrange_type): Likewise.
14580         (read_unspecified_type): Likewise.
14581         (load_partial_dies): Likewise.
14582         (read_partial_die): Likewise.
14583         (find_partial_die): Likewise.
14584         (guess_partial_die_structure_name): Likewise.
14585         (fixup_partial_die): Likewise.
14586         (read_attribute_value): Likewise.
14587         (read_addr_index_from_leb128): Likewise.
14588         (dwarf2_read_addr_index): Likewise.
14589         (dwarf2_string_attr): Likewise.
14590         (lnp_state_machine::check_line_address): Likewise.
14591         (dwarf_decode_lines_1): Likewise.
14592         (dwarf_decode_lines): Likewise.
14593         (dwarf2_start_symtab): Likewise.
14594         (var_decode_location): Likewise.
14595         (new_symbol_full): Likewise.
14596         (dwarf2_const_value_data): Likewise.
14597         (dwarf2_const_value_attr): Likewise.
14598         (dwarf2_const_value): Likewise.
14599         (die_type): Likewise.
14600         (die_containing_type): Likewise.
14601         (lookup_die_type): Likewise.
14602         (guess_full_die_structure_name): Likewise.
14603         (anonymous_struct_prefix): Likewise.
14604         (dwarf2_name): Likewise.
14605         (follow_die_ref_or_sig): Likewise.
14606         (follow_die_offset): Likewise.
14607         (follow_die_ref): Likewise.
14608         (dwarf2_fetch_die_loc_sect_off): Likewise.
14609         (dwarf2_fetch_constant_bytes): Likewise.
14610         (dwarf2_fetch_die_type_sect_off): Likewise.
14611         (dwarf2_get_die_type): Likewise.
14612         (follow_die_sig): Likewise.
14613         (decode_locdesc): Likewise.
14614         (dwarf2_per_cu_objfile): Likewise.
14615         (dwarf2_per_cu_text_offset): Likewise.
14616         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
14617         objfile.
14618         (set_die_type): Access objfile through
14619         dwarf2_per_objfile.
14620
14621 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14622
14623         * valprint.c (converted_character_d): Remove typedef.
14624         (DEF_VEC_O (converted_character_d)): Remove.
14625         (count_next_character): Use std::vector.
14626         (print_converted_chars_to_obstack): Likewise.
14627         (generic_printstr): Likewise.
14628
14629 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14630
14631         * xml-support.h (struct gdb_xml_value): Add constructor.
14632         <value>: Change type to unique_xmalloc_ptr.
14633         (gdb_xml_value_s): Remove typedef.
14634         (DEF_VEC_O (gdb_xml_value_s)): Remove.
14635         (gdb_xml_element_start_handler): Change parameter type to
14636         std::vector.
14637         (xml_find_attribute): Likewise.
14638         * xml-support.c (xml_find_attribute): Change parameter type to
14639         std::vector and adjust.
14640         (gdb_xml_values_cleanup): Remove.
14641         (gdb_xml_parser::start_element): Adjust to std::vector.
14642         (xinclude_start_include): Change paraeter type to std::vector
14643         and adjust.
14644         * btrace.c (check_xml_btrace_version): Likewise.
14645         (parse_xml_btrace_block): Likewise.
14646         (parse_xml_btrace_pt_config_cpu): Likewise.
14647         (parse_xml_btrace_pt): Likewise.
14648         (parse_xml_btrace_conf_bts): Likewise.
14649         (parse_xml_btrace_conf_pt): Likewise.
14650         * memory-map.c (memory_map_start_memory): Likewise.
14651         (memory_map_start_property): Likewise.
14652         * osdata.c (osdata_start_osdata): Likewise.
14653         (osdata_start_item): Likewise.
14654         (osdata_start_column): Likewise.
14655         * remote.c (start_thread): Likewise.
14656         * solib-aix.c (library_list_start_library): Likewise.
14657         (library_list_start_list): Likewise.
14658         * solib-svr4.c (library_list_start_library): Likewise.
14659         (svr4_library_list_start_list): Likewise.
14660         * solib-target.c (library_list_start_segment): Likewise.
14661         (library_list_start_section): Likewise.
14662         (library_list_start_library): Likewise.
14663         (library_list_start_list): Likewise.
14664         * tracepoint.c (traceframe_info_start_memory): Likewise.
14665         (traceframe_info_start_tvar): Likewise.
14666         * xml-syscall.c (syscall_start_syscall): Likewise.
14667         * xml-tdesc.c (tdesc_start_target): Likewise.
14668         (tdesc_start_feature): Likewise.
14669         (tdesc_start_reg): Likewise.
14670         (tdesc_start_union): Likewise.
14671         (tdesc_start_struct): Likewise.
14672         (tdesc_start_flags): Likewise.
14673         (tdesc_start_enum): Likewise.
14674         (tdesc_start_field): Likewise.
14675         (tdesc_start_enum_value): Likewise.
14676         (tdesc_start_vector): Likewise.
14677
14678 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14679
14680         * extension.h (struct xmethod_worker) <clone>: Remove.
14681         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
14682         Remove.
14683         (python_xmethod_worker::clone): Remove.
14684         * valops.c (find_overload_match): Use std::move instead of
14685         clone.
14686
14687 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14688
14689         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
14690         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
14691         <free_xmethod_worker_data>: Remove.
14692         <get_matching_xmethod_workers>: Chance VEC to std::vector.
14693         <get_xmethod_arg_types>: Remove.
14694         <get_xmethod_result_type>: Remove.
14695         <invoke_xmethod>: Remove.
14696         * extension.c (new_xmethod_worker): Remove.
14697         (clone_xmethod_worker): Remove.
14698         (get_matching_xmethod_workers): Return void, pass std::vector by
14699         pointer.
14700         (get_xmethod_arg_types): Rename to...
14701         (xmethod_worker::get_arg_types): ... this, and adjust.
14702         (get_xmethod_result_type): Rename to...
14703         (xmethod_worker::get_result_type): ... this, and adjust.
14704         (invoke_xmethod): Remove.
14705         (free_xmethod_worker): Remove.
14706         (free_xmethod_worker_vec): Remove.
14707         * extension.h (enum ext_lang_rc): Move here from
14708         extension-priv.h.
14709         (struct xmethod_worker): Add constructor and destructor.
14710         <data>: Remove.
14711         <value>: Remove.
14712         <invoke, clone, do_get_result_type, do_get_arg_types>: New
14713         virtual pure methods.
14714         <get_arg_types, get_result_type>: New methods.
14715         (xmethod_worker_ptr): Remove typedef.
14716         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
14717         (xmethod_worker_vec): Remove typedef.
14718         (xmethod_worker_up): New typedef.
14719         (invoke_xmethod): Remove.
14720         (clone_xmethod_worker): Remove.
14721         (free_xmethod_worker): Remove.
14722         (free_xmethod_worker_vec): Remove.
14723         (get_xmethod_arg_types): Remove.
14724         (get_xmethod_result_type): Remove.
14725         * valops.c (find_method_list): Use std::vector, don't use
14726         intermediate vector.
14727         (value_find_oload_method_list): Use std::vector.
14728         (find_overload_match): Use std::vector.
14729         (find_oload_champ): Use std::vector.
14730         * value.c (value_free): Use operator delete.
14731         (value_of_xmethod): Rename to...
14732         (value_from_xmethod): ... this.  Don't assign
14733         xmethod_worker::value, take rvalue-reference.
14734         (result_type_of_xmethod): Adjust.
14735         (call_xmethod): Adjust.
14736         * value.h: Include extension.h.
14737         (struct xmethod_worker): Don't forward-declare.
14738         (value_of_xmethod): Rename to...
14739         (value_from_xmethod): ... this, take rvalue-reference.
14740         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
14741         (struct python_xmethod_worker): ... this, add constructor and
14742         destructor.
14743         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
14744         (gdbpy_free_xmethod_worker_data): Rename to...
14745         (python_xmethod_worker::~python_xmethod_worker): ... this and
14746         adjust.
14747         (gdbpy_clone_xmethod_worker_data): Rename to...
14748         (python_xmethod_worker::clone): ... this and adjust.
14749         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
14750         temporary vector.
14751         (gdbpy_get_xmethod_arg_types): Rename to...
14752         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
14753         (gdbpy_get_xmethod_result_type): Rename to...
14754         (python_xmethod_worker::do_get_result_type): ... this and
14755         adjust.
14756         (gdbpy_invoke_xmethod): Rename to...
14757         (python_xmethod_worker::invoke): ... this and adjust.
14758         (new_python_xmethod_worker): Rename to...
14759         (python_xmethod_worker::python_xmethod_worker): ... this and
14760         adjust.
14761         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
14762         Remove.
14763         (gdbpy_free_xmethod_worker_data): Remove.
14764         (gdbpy_get_matching_xmethod_workers): Use std::vector.
14765         (gdbpy_get_xmethod_arg_types): Remove.
14766         (gdbpy_get_xmethod_result_type): Remove.
14767         (gdbpy_invoke_xmethod): Remove.
14768         * python/python.c (python_extension_ops): Remove obsolete
14769         callbacks.
14770
14771 2018-01-05  Pedro Alves  <palves@redhat.com>
14772
14773         PR gdb/18653
14774         * common/signals-state-save-restore.c
14775         (save_original_signals_state): New parameter 'quiet'.  Warn if we
14776         find a custom handler preinstalled, instead of internal erroring.
14777         But only warn if !quiet.
14778         * common/signals-state-save-restore.h
14779         (save_original_signals_state): New parameter 'quiet'.
14780         * main.c (captured_main_1): Move save_original_signals_state call
14781         after option handling, and pass QUIET.
14782
14783 2018-01-05  Pedro Alves  <palves@redhat.com>
14784
14785         * spu-tdep.c (spu_catch_start): Pass
14786         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
14787
14788 2018-01-05  Pedro Alves  <palves@redhat.com>
14789
14790         PR gdb/22670
14791         * ada-lang.c (literal_symbol_name_matcher): New function.
14792         (ada_get_symbol_name_matcher): Use it for
14793         symbol_name_match_type::SEARCH_NAME.
14794         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
14795         it down instead of assuming symbol_name_match_type::FULL.
14796         * block.h (block_lookup_symbol): New parameter 'match_type'.
14797         * c-valprint.c (print_unpacked_pointer): Use
14798         lookup_symbol_search_name instead of lookup_symbol.
14799         * compile/compile-object-load.c (get_out_value_type): Pass down
14800         symbol_name_match_type::SEARCH_NAME.
14801         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
14802         symbol_name_match_type::FULL.
14803         * cp-support.c (cp_get_symbol_name_matcher): Handle
14804         symbol_name_match_type::SEARCH_NAME.
14805         * infrun.c (insert_exception_resume_breakpoint): Use
14806         lookup_symbol_search_name.
14807         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
14808         * psymtab.c (maintenance_check_psymtabs): Use
14809         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
14810         * stack.c (print_frame_args): Use lookup_symbol_search_name and
14811         SYMBOL_SEARCH_NAME.
14812         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
14813         if symbol_name_match_type::SEARCH_NAME.
14814         (lookup_symbol_in_language): Pass down
14815         symbol_name_match_type::FULL.
14816         (lookup_symbol_search_name): New.
14817         (lookup_language_this): Pass down
14818         symbol_name_match_type::SEARCH_NAME.
14819         (lookup_symbol_aux, lookup_local_symbol): New parameter
14820         'match_type'.  Pass it down.
14821         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
14822         (lookup_symbol_search_name): New declaration.
14823         (lookup_symbol_in_block): New 'match_type' parameter.
14824
14825 2018-01-05  Pedro Alves  <palves@redhat.com>
14826
14827         PR gdb/22670
14828         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
14829         ada_lookup_symbol.
14830         (ada_lookup_symbol): Reimplement in terms of
14831         ada_lookup_symbol_list, bits factored out from
14832         ada_lookup_encoded_symbol.
14833
14834 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14835
14836         * ada-exp.y (write_object_renaming): When subscripting an array
14837         using a symbol as the index, pass the block in call to
14838         ada_lookup_encoded_symbol when looking that symbol up.
14839
14840 2018-01-05  Jerome Guitton  <guitton@adacore.com>
14841
14842         * ada-lang.c (ada_array_length): Use ada_index_type instead of
14843         TYPE_INDEX_TYPE.
14844
14845 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14846
14847         * ada-lang.c (ada_to_fixed_value_create): Add handling of
14848         the case where VALUE_LVAL (val0) is not lval_memory.
14849
14850 2018-01-05  Xavier Roirand  <roirand@adacore.com>
14851
14852         * ada-valprint.c (print_optional_low_bound): Handle
14853         character-indexed array printing like boolean-indexed array
14854         printing.
14855
14856 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14857
14858         * NEWS: Create a new section for the next release branch.
14859         Rename the section of the current branch, now that it has
14860         been cut.
14861
14862 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14863
14864         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
14865         * version.in: Bump version to 8.1.50.DATE-git.
14866
14867 2018-01-03  Xavier Roirand  <roirand@adacore.com>
14868
14869         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
14870         Add field.
14871         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
14872         Add field.
14873         (default_exception_support_info) <catch_handlers_sym>: Add field.
14874         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
14875         (ada_exception_name_addr_1): Add "catch handlers" handling.
14876         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
14877         Update all callers.
14878         (create_excep_cond_exprs) <ex>: Add parameter.
14879         (re_set_exception): Update create_excep_cond_exprs call.
14880         (print_it_exception, print_one_exception, print_mention_exception)
14881         (print_recreate_exception): Add "catch handler" handling.
14882         (allocate_location_catch_handlers, re_set_catch_handlers)
14883         (check_status_catch_handlers, print_it_catch_handlers)
14884         (print_one_catch_handlers, print_mention_catch_handlers)
14885         (print_recreate_catch_handlers): New function.
14886         (catch_handlers_breakpoint_ops): New variable.
14887         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
14888         Add parameter.  Add "catch handler" handling.
14889         (ada_exception_sym_name, ada_exception_breakpoint_ops):
14890         Add "catch handler" handling.
14891         (ada_exception_catchpoint_cond_string): Add "catch handler"
14892         handling.
14893         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
14894         call.
14895         (catch_ada_handlers_command): New function.
14896         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
14897         operations structure.
14898         (_initialize_ada_language): Add "catch handlers" command entry.
14899         * NEWS: Document "catch handlers" feature.
14900
14901 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14902
14903         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
14904         account when creating the array type of the slice.
14905         (ada_value_slice): Likewise.
14906
14907 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14908
14909         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
14910         New enum value.
14911         (create_array_type_with_stride): Add byte_stride_prop parameter.
14912         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
14913         New parameter.  Update all callers in this file.
14914         (array_type_has_dynamic_stride): New function.
14915         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
14916         of arrays with dynamic byte strides.
14917         * dwarf2read.c (read_array_type): Add support for dynamic
14918         DW_AT_byte_stride attributes.
14919
14920 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14921
14922         * dwarf2read.c (read_unspecified_type): Treat
14923         DW_TAG_enumeration_type DIEs from Ada units as stubs.
14924
14925 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14926
14927         Update copyright year range in all GDB files.
14928
14929 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
14930
14931         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
14932         and gdb/testsuite/gdb.base/step-line.c.
14933
14934 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14935
14936         * copyright.py (main): Dump the contents of
14937         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
14938         even if BY_HAND is empty.
14939
14940 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14941
14942         * top.c (print_gdb_version): Update Copyright year in version
14943         message.
14944
14945 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14946
14947         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
14948
14949 For older changes see ChangeLog-2017.
14950 \f
14951 Local Variables:
14952 mode: change-log
14953 left-margin: 8
14954 fill-column: 74
14955 version-control: never
14956 coding: utf-8
14957 End: