Add decfloat registers to float reggroup
[external/binutils.git] / gdb / ChangeLog
1 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2
3         * reggroups.c (default_register_reggroup_p): Return true for
4         decfloat registers and float_reggroup.
5
6 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
7
8         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
9         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
10         ppc_linux_collect_vrregset by regcache_collect_regset.
11
12 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
13
14         * linux-tdep.c (linux_collect_regset_section_cb): Use
15         std::vector<gdb_byte> instead of char * and malloc for buf.
16         Remove xfree.
17
18 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
19
20         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
21         symtab_start instead of always using language_unknown.
22
23 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
24
25         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
26         READ_P parameter, catch and ignore register access errors from
27         either the old or new MISA location.
28         (riscv_has_feature): Update call to riscv_read_misa_reg.
29
30 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
31
32         * python/py-function.c (convert_values_to_python): Return
33         gdbpy_ref<>.  Add header comment.
34         (fnpy_call): Adjust.
35
36 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
37
38         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
39         (cmdpy_completer_handle_brkchars): Adjust.
40         (cmdpy_completer): Adjust.
41
42 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
43
44         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
45         Pass correct regnum to raw_supply_zeroed.
46
47 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
48
49         * regcache.c (cooked_read_test): Add CSKY to the list of
50         architectures with a save_reggroup
51
52 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
53
54         PR gdb/23368
55         * infrun.c (follow_exec): In the follow_exec_mode_new case,
56         transfer terminal state from old new new inferior.
57         * terminal.h (swap_terminal_info): New function.
58         * inflow.c (swap_terminal_info): New function.
59
60 2018-10-23  Tom Tromey  <tom@tromey.com>
61
62         * record-btrace.c (get_thread_current_frame_id): Rename from
63         get_thread_current_frame.  Return a frame_id.
64         (record_btrace_start_replaying): Update.
65
66 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
67
68         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
69         for CSRs.
70
71 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
72
73         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
74         have_nonsteppable_watchpoint attribute to 1.
75
76 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
77
78         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
79         register names.
80         (struct register_alias): Rename to...
81         (struct riscv_register_alias): ...this, and update comment.
82         (riscv_register_aliases): Update type, and alias names.  Remove
83         CSR names from this list.
84         (riscv_register_name): Use riscv_gdb_reg_names for int and float
85         register names.  Add an extra assertion.
86         (riscv_is_regnum_a_named_csr): New function.
87         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
88
89 2018-10-22  Jim Wilson  <jimw@sifive.com>
90
91         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
92         FP reg smaller than FP reg size, and fill with -1 instead of 0.
93
94         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
95         (riscv_register_type): Use them.
96         (riscv_print_one_register_info): Handle union of floats same as float.
97         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
98         riscv_fpreg_q_type fields.
99
100 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
101
102         * gdbarch.sh (gdbarch_num_cooked_regs): New.
103         * gdbarch.h: Re-generate.
104         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
105         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
106         * eval.c (evaluate_subexp_standard): Likewise.
107         * findvar.c (value_of_register): Likewise.
108         (value_of_register_lazy): Likewise.
109         (address_from_register): Likewise.
110         * frame.c (get_frame_register_bytes): Likewise.
111         * gdbarch-selftests.c (register_to_value_test): Likewise.
112         * h8300-tdep.c (h8300_register_type): Likewise.
113         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
114         (i386_svr4_reg_to_regnum): Likewise.
115         * infcmd.c (default_print_registers_info): Likewise.
116         (registers_info): Likewise.
117         (print_vector_info): Likewise.
118         (default_print_float_info): Likewise.
119         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
120         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
121         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
122         (mi_cmd_data_list_changed_registers): Likewise.
123         (mi_cmd_data_list_register_values): Likewise.
124         (mi_cmd_data_write_register_values): Likewise.
125         (mi_cmd_trace_frame_collected): Likewise.
126         * mips-tdep.c (print_gp_register_row): Likewise.
127         (mips_print_registers_info): Likewise.
128         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
129         * regcache.c (init_regcache_descr): Likewise.
130         (register_size): Likewise.
131         (register_dump::dump): Likewise.
132         (cooked_read_test): Likewise.
133         (cooked_write_test): Likewise.
134         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
135         (rs6000_gdbarch_init): Likewise.
136         * stabsread.c (stab_reg_to_regnum): Likewise.
137         * stack.c (info_frame_command): Likewise.
138         * target-descriptions.c (tdesc_register_name): Likewise.
139         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
140         * tui/tui-regs.c (tui_show_register_group): Likewise.
141         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
142         (user_reg_map_regnum_to_name): Likewise.
143         (value_of_user_reg): Likewise.
144         (maintenance_print_user_registers): Likewise.
145         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
146         (xtensa_register_name): Likewise.
147         (xtensa_register_type): Likewise.
148         (xtensa_reg_to_regnum): Likewise.
149         (xtensa_pseudo_register_read): Likewise.
150         (xtensa_pseudo_register_write): Likewise.
151
152 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
153
154         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
155         correctly-sized buffer with raw_read.
156         (amd64_pseudo_register_write): Use correctly-sized buffer for
157         raw_read/raw_write.
158
159 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
160
161         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
162         in add_prefix_cmd of set print type.
163
164 2018-10-19  Tom Tromey  <tom@tromey.com>
165
166         PR tui/18388:
167         * NEWS: Mention tabset deprecation.
168         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
169         (update_tab_width): New function.
170         (tui_set_tab_width, tui_show_tab_width): New functions.
171         (tui_set_tab_width_command): Use update_tab_width.
172         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
173         Add new "set tui tab-width" command.
174         * tui/tui-source.c (tui_set_source_content): Update.
175         * tui/tui-disasm.c (tui_set_disassem_content): Update.
176         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
177         Don't declare.
178         (tui_tab_width): Declare.
179         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
180         (tui_set_default_tab_len): Remove.
181
182 2018-10-19  Tom Tromey  <tom@tromey.com>
183
184         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
185         (key_is_backspace, tui_getc): Don't declare.
186         * tui/tui-io.c (key_is_start_sequence): Now static.
187         (key_is_end_sequence, key_is_backspace): Remove.
188         (tui_getc): Now static.
189
190 2018-10-19  Tom Tromey  <tom@tromey.com>
191
192         * symfile.c (reread_symbols): Clear "static_links".
193
194 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
195
196         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
197         define.
198         (aarch64_linux_sigframe_init): Extra boundary checks.
199
200 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
201
202         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
203         the possibly non-existent tdesc type 'vec128', but the type of raw
204         register v16 instead.
205
206 2018-10-19  Gary Benson <gbenson@redhat.com>
207
208         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
209
210 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
211
212         PR cli/23785
213         * cli/cli-dump.c (restore_binary_file): Check if "file" is
214         NULL.
215
216 2018-10-17  Paul Koning  <paul_koning@dell.com>
217
218         * charset.c (convert_between_encodings): Fix unsigned overflow.
219
220 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
221
222         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
223         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
224         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
225         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
226         New functions.
227         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
228         and fbsd_info_proc_mappings_header.
229         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
230         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
231         New.
232
233 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
234
235         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
236         Solaris Maintainer.
237
238 2018-10-15  Tom Tromey  <tom@tromey.com>
239
240         * tui/tui.c (strcat_to_buf): Remove casts.
241         * tui/tui-winsource.c (tui_show_source_line)
242         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
243         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
244         * tui/tui-windata.c (tui_first_data_item_displayed)
245         (tui_delete_data_content_windows, tui_erase_data_content)
246         (tui_display_all_data, tui_display_data_from)
247         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
248         * tui/tui-win.c (tui_set_win_height)
249         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
250         casts.
251         * tui/tui-win.c (tui_resize_all): Remove casts.
252         (tui_scroll_backward_command, tui_set_focus)
253         (tui_set_tab_width_command): Likewise.
254         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
255         * tui/tui-regs.c (tui_show_register_group): Remove cast.
256         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
257         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
258         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
259         Remove casts.
260
261 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
262
263         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
264         AArch64/ARM maintainer.
265
266 2018-10-11  Gary Benson <gbenson@redhat.com>
267
268         * interps.h (interp::m_name): Make private and mutable.
269         * interps.c (interp::~interp): Free m_name.
270
271 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
272             Simon Marchi <simark@simark.ca>
273
274         * README (`configure' options): Add documentation for new
275         "--enable-unit-tests" option.
276         * acinclude.m4: Include "selftest.m4".
277         * configure: Regenerate.
278         * configure.ac: Use "GDB_AC_SELFTEST".
279         * maint.c (maintenance_selftest): Update message informing
280         that selftests have been disabled.
281         (maintenance_info_selftests): Likewise.
282         * selftest.m4: New file.
283
284 2018-10-10  Gary Benson <gbenson@redhat.com>
285
286         * remote.c (remote_target::remote_send_printf): Add
287         missing va_end found by Coverity.
288
289 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
290
291         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
292
293 2018-10-09  Tom Tromey  <tom@tromey.com>
294
295         * configure: Rebuild.
296         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
297         * NEWS: Update --enable-ubsan documentation.
298
299 2018-10-09  Gary Benson <gbenson@redhat.com>
300
301         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
302         found by Coverity.
303
304 2018-10-08  Tom Tromey  <tom@tromey.com>
305
306         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
307         variable.
308         (riscv_fbsd_init_abi): Likewise.
309
310 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
311         * valops.c (value_struct_elt_for_reference): Rename local variable
312         to work around the shadowing a previous local warning.
313
314 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
315
316         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
317         * NEWS: Mention new FreeBSD/riscv native configuration.
318         * configure.host: Add riscv*-*-freebsd*.
319         * configure.nat: Likewise.
320         * riscv-fbsd-nat.c: New file.
321
322 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
323
324         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
325         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
326         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
327         * NEWS: Mention new FreeBSD/riscv target.
328         * configure.tgt: Add riscv*-*-freebsd*.
329         * riscv-fbsd-tdep.c: New file.
330         * riscv-fbsd-tdep.h: New file.
331
332 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
333
334         * regcache.h (struct regcache_map_entry): Note that this type can
335         be used with traditional frame caches.
336         * trad-frame.c (trad_frame_set_reg_regmap): New.
337         * trad-frame.h (trad_frame_set_reg_regmap): New.
338
339 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
340
341         PR c++/16841
342         * valops.c (get_virtual_base_offset): New function.
343         (value_struct_elt_for_reference): Use it to get virtual base offset
344         and add it in calculating class member address.
345
346 2018-10-08   John Darrington <john@darrington.wattle.id.au>
347
348     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
349       (check_producer): Check if the producer is codewarrior.
350       (producer_is_codewarrior): New function.
351       (lnp_state_machine::record_line): Ignore is_stmt flag for records
352        produced by codewarrior.
353       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
354
355 2018-10-06  Tom Tromey  <tom@tromey.com>
356
357         PR python/19399:
358         * python/py-inferior.c: Add "architecture" entry.
359         (infpy_architecture): New function.
360
361 2018-10-06  Tom Tromey  <tom@tromey.com>
362
363         PR python/21765:
364         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
365         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
366         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
367         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
368
369 2018-10-06  Tom Tromey  <tom@tromey.com>
370
371         PR build/17077:
372         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
373         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
374         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
375         #include.
376
377 2018-10-06  Tom Tromey  <tom@tromey.com>
378
379         * python/py-breakpoint.c (bppy_get_location): Handle a
380         bp_breakpoint without a location.
381
382 2018-10-06  Tom Tromey  <tom@tromey.com>
383
384         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
385         (_RegEx): Reformat help text.
386         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
387         (AnyCallerIs, AnyCallerMatches): Reformat help text.
388         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
389         text.
390         * python/lib/gdb/command/xmethods.py (InfoXMethod)
391         (EnableXMethod, DisableXMethod): Remove help indentation.
392         Capitalize meta-syntactic variables.
393         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
394         (EnableUnwinder, DisableUnwinder): Remove help indentation.
395         Capitalize meta-syntactic variables.
396         * python/lib/gdb/command/explore.py (ExploreCommand)
397         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
398         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
399         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
400         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
401         Remove help indentation.
402         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
403         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
404         (DisableFrameFilter, SetFrameFilterPriority)
405         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
406
407 2018-10-06  Tom Tromey  <tom@tromey.com>
408
409         PR tui/28819:
410         * tui/tui-io.c (gdb_wgetch): New function.
411         (tui_mld_getc, tui_getc): Use it.
412
413 2018-10-05  Tom Tromey  <tom@tromey.com>
414
415         * sol-thread.c (sol_thread_target::wait): Rename inner
416         "save_ptid".
417
418 2018-10-04  Tom Tromey  <tom@tromey.com>
419
420         * configure: Rebuild.
421         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
422
423 2018-10-04  Tom Tromey  <tom@tromey.com>
424
425         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
426         declaration of "block".
427
428 2018-10-04  Tom Tromey  <tom@tromey.com>
429
430         * common/filestuff.c (fdwalk): Remove inner declaration of
431         "result".
432
433 2018-10-04  Tom Tromey  <tom@tromey.com>
434
435         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
436         "structs_addr" and hoist declaration.
437
438 2018-10-04  Tom Tromey  <tom@tromey.com>
439
440         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
441         variable "size".
442
443 2018-10-04  Tom Tromey  <tom@tromey.com>
444
445         * mdebugread.c (parse_partial_symbols): Use std::string.
446
447 2018-10-04  Tom Tromey  <tom@tromey.com>
448
449         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
450         * p-valprint.c (pascal_val_print): Split inner "i" variable.
451         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
452         header.
453         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
454         more inner scope.
455         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
456         * varobj.c (varobj_update): Rename inner "newobj",
457         "type_changed".
458         * valprint.c (generic_emit_char): Rename inner "buf".
459         * valops.c (find_overload_match): Rename inner "temp".
460         (value_struct_elt_for_reference): Declare "v" in more inner
461         scope.
462         * v850-tdep.c (v850_push_dummy_call): Rename "len".
463         * unittests/array-view-selftests.c (run_tests): Rename inner
464         "vec".
465         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
466         header.
467         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
468         "tsv" in more inner scope.
469         (print_one_static_tracepoint_marker): Rename inner
470         "tuple_emitter".
471         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
472         (tic6x_push_dummy_call): Don't redeclare "addr".
473         * target-float.c: Declare "dto" lower.
474         * symtab.c (lookup_local_symbol): Rename inner "sym".
475         (find_pc_sect_line): Rename inner "pc".
476         * stack.c (print_frame): Don't redeclare "gdbarch".
477         (return_command): Rename inner "gdbarch".
478         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
479         "sp".
480         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
481         header.
482         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
483         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
484         scope.
485         * remote.c (remote_target::update_thread_list): Don't redeclare
486         "tp".
487         (remote_target::process_initial_stop_replies): Rename inner
488         "thread".
489         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
490         (remote_target::wait_as): Don't redeclare "stop_reply".
491         (remote_target::get_thread_local_address): Rename inner
492         "result".
493         (remote_target::get_tib_address): Likewise.
494
495         * regcache.c (cooked_read_test): Rename "regnum".
496         * record-btrace.c (cmd_record_btrace_start): Rename inner
497         "exception".
498         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
499         loop header.
500         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
501         header.
502         (ppu2spu_sniffer): Rename inner "buf".
503         * parse.c (operator_check_standard): Rename inner "type",
504         "objfile".
505         * p-valprint.c (pascal_val_print): Introduce new scope for
506         "low_bound", "high_bound".
507         * p-exp.y (yylex): Declare "i" in loop header.
508         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
509         Lower declaration of "s".
510         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
511         header.
512         (nios2_push_dummy_call): Rename "len".
513         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
514         "buf".
515         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
516         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
517         (linux_xfer_osdata_modules): Likewise.
518         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
519         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
520         (mips_o64_push_dummy_call): Likewise.
521         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
522         "op".
523         * mi/mi-main.c (list_available_thread_groups): Rename inner
524         "tuple_emitter".
525         (mi_cmd_data_read_memory): Rename inner "opts".
526         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
527         "tuple_emitter".
528         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
529         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
530         more inner scope.
531         (parse_partial_symbols): Rename inner "pst", "p", "name"
532         * main.c (captured_main_1): Rename inner "i"s.
533         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
534         "oso2".
535         * linux-tdep.c (linux_info_proc): Rename inner "filename".
536         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
537         * infrun.c (handle_no_resumed): Don't redeclare "thread".
538         (handle_signal_stop): Rename inner "gdbarch".
539         (handle_command): Declare "signum" in loop header.
540         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
541         "status".
542         (examine_prologue): Rename inner "sol" and "sof".
543         (ia64_extract_return_value): Rename inner "val".  Declare another
544         "val" in a more inner scope.
545         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
546         inner scope.
547         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
548         "except".
549         * findvar.c (default_read_var_value): Don't redeclare "addr".
550         * f-exp.y (yylex): Declare "i" in loop header.
551         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
552         Rename inner "type", "expect_type".
553         (evaluate_subexp_for_sizeof): Rename inner "pc".
554         * elfread.c (elf_symfile_read): Rename inner "abfd".
555         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
556         "bytes_read".
557         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
558         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
559         (dwarf_decode_line_header): Rename inner "lh".
560         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
561         "offset".  Declare "i" in loop header.
562         (disassemble_dwarf_expression): Rename inner "addr_size".
563         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
564         inner "result".
565         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
566         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
567         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
568         "inner_list_emitter".
569         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
570         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
571         declaration in a block.
572         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
573         * cp-valprint.c (cp_print_value_fields): Don't redeclare
574         "obstack_final_size".
575         * cp-support.c (inspect_type): Declare "i" in loop header.
576         * compile/compile.c (compile_instance::insert_symbol_error):
577         Rename inner "e".
578         * common/agent.c (agent_run_command): Remove inner "ret"
579         declaration.
580         * coffread.c (coff_symfile_read): Rename inner "name".
581         (coff_symfile_read): Rename inner "abfd".
582         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
583         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
584         "high".
585         * c-exp.y (lex_one_token): Move "len" declaration lower.
586         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
587         "gdbarch".
588         (create_exception_master_breakpoint): Likewise.  Don't redeclare
589         "b".
590         (watch_command_1): Declare "mark" later.
591         (clear_command): Don't shadow "a" or "b".
592         (delete_command): Rename inner "b".
593         (delete_trace_command): Likewise.
594         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
595         "op".
596         (arm_gdbarch_init): Remove inner "e_flags".
597         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
598         "offset" in inner blocks.
599
600 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
601
602         * dwarf-index-write.c (file_write): Don't write if the vector is
603         empty.
604
605 2018-10-05  Tom de Vries  <tdevries@suse.de>
606
607         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
608         PyArg_ParseTuple call.
609
610 2018-10-05  Tom de Vries  <tdevries@suse.de>
611
612         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
613         PyArg_ParseTuple call.
614
615 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
616
617         * psymtab.c (recursively_search_psymtabs): Reformat parameters
618         to avoid exceeding 80 characters per line limit.
619
620 2018-10-04  Tom Tromey  <tom@tromey.com>
621
622         * symfile.c (syms_from_objfile_1, finish_new_objfile)
623         (reread_symbols): Update.
624         * complaints.h (clear_complaints): Remove argument.
625         * complaints.c (enum complaint_series): Remove.
626         (series): Remove global.
627         (complaint_internal): Update.
628         (clear_complaints): Remove argument.
629
630 2018-10-04  Tom Tromey  <tom@tromey.com>
631
632         * symfile.c (symbol_file_add_with_addrs): Do not print "no
633         debugging symbols" message if there is a separate debug objfile.
634
635 2018-10-04  Tom Tromey  <tom@tromey.com>
636
637         PR cli/19551:
638         * symfile.c (symbol_file_add_with_addrs): Update output.
639         * psymtab.c (require_partial_symbols): Update output.
640
641 2018-10-04  Tom Tromey  <tom@tromey.com>
642
643         PR cli/22234:
644         * complaints.c: Emit \n.
645
646 2018-10-04  Tom Tromey  <tom@tromey.com>
647
648         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
649         (separate_debug_file_exists, find_separate_debug_file)
650         (add_symbol_file_command, reread_symbols, allocate_symtab)
651         (allocate_compunit_symtab): Use filtered printing, not
652         unfiltered.
653         * psymtab.c (require_partial_symbols, dump_psymtab)
654         (allocate_psymtab): Use filtered printing, not unfiltered.
655
656 2018-10-04  Tom Tromey  <tom@tromey.com>
657
658         * complaints.c (complaint_internal): Correctly check complaint
659         count.
660
661 2018-10-04  Tom Tromey  <tom@tromey.com>
662
663         * complaints.h (struct complaints): Remove declaration.
664         * complaints.c (clear_complaints): Remove an unused variable.
665
666 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
667
668         * MAINTAINERS (Write After Approval): Add self.
669
670 2018-10-03  Tom Tromey  <tom@tromey.com>
671
672         * guile/scm-value.c (gdbscm_value_to_string): Initialize
673         "buffer_contents".
674         * coffread.c (coff_symtab_read): Initialize "newobj".
675
676 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
677
678         * dwarf2read.c (read_func_scope): Remove struct keyword in
679         range-based for.
680
681 2018-10-03  Tom Tromey  <tom@tromey.com>
682
683         * README: Mention --enable-ubsan.
684         * NEWS: Mention --enable-ubsan.
685         * acinclude.m4: Include sanitize.m4.
686         * configure: Rebuild.
687         * configure.ac: Call AM_GDB_UBSAN.
688         * sanitize.m4: New file.
689
690 2018-10-03  Tom Tromey  <tom@tromey.com>
691
692         * expression.h (enum exp_opcode): Use uint8_t as base type.
693         * expprint.c (op_name): Handle invalid opcodes.
694
695 2018-10-03  Tom Tromey  <tom@tromey.com>
696
697         * parse.c (prefixify_expression): Add assert.
698         (parse_exp_in_context_1): Throw exception if the expression is
699         empty.
700
701 2018-10-03  Tom Tromey  <tom@tromey.com>
702
703         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
704
705 2018-10-03  Tom Tromey  <tom@tromey.com>
706
707         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
708
709 2018-10-03  Tom Tromey  <tom@tromey.com>
710
711         * dwarf2read.c (read_subrange_type): Make "negative_mask"
712         unsigned.
713
714 2018-10-03  Tom Tromey  <tom@tromey.com>
715
716         * findvar.c (extract_integer): Do work in an unsigned type.
717
718 2018-10-03  Tom Tromey  <tom@tromey.com>
719
720         * common/enum-flags.h (enum_flags::operator~): Add static assert.
721         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
722         base type.
723         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
724         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
725         type.
726         * c-lang.h (enum c_string_type_values): Use unsigned as base
727         type.
728         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
729
730 2018-10-03  Tom Tromey  <tom@tromey.com>
731
732         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
733         <~dwarf2_frame_state_reg_info>: Update.
734         <dwarf2_frame_state_reg_info>: Update.
735         <alloc_regs>: Add assertion.  Update.
736         <reg>: Now a std::vector.
737         <num_regs>: Remove.
738         <swap>: Update.
739         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
740         (execute_cfa_program_test, dwarf2_frame_cache): Update.
741
742 2018-10-03  Tom Tromey  <tom@tromey.com>
743
744         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
745
746 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
747
748         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
749
750 2018-10-02  Tom Tromey  <tom@tromey.com>
751
752         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
753
754 2018-10-02  John Darrington <john@darrington.wattle.id.au>
755
756         * NEWS: Mention changed commands.
757         * ser-uds.c: New file.
758         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
759         * configure: Regenerate.
760         * Makefile.in: Add new file.
761         * serial.c (serial_open): Check if filename is a socket
762           and lookup the appropriate interface accordingly.
763
764 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
765
766         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
767         define.
768         (AARCH64_EXTRA_MAGIC): Likewise.
769         (AARCH64_FPSIMD_MAGIC): Likewise.
770         (AARCH64_SVE_MAGIC): Likewise.
771         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
772         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
773         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
774         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
775         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
776         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
777         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
778         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
779         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
780         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
781         (read_aarch64_ctx): Add function.
782         (aarch64_linux_sigframe_init): Detect FP registers.
783
784 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
785
786         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
787         (AARCH64_D0_REGNUM): Likewise.
788         (AARCH64_S0_REGNUM): Likewise.
789         (AARCH64_H0_REGNUM): Likewise.
790         (AARCH64_B0_REGNUM): Likewise.
791         (AARCH64_SVE_V0_REGNUM): Likewise.
792         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
793         (AARCH64_D0_REGNUM): Likewise.
794         (AARCH64_S0_REGNUM): Likewise.
795         (AARCH64_H0_REGNUM): Likewise.
796         (AARCH64_B0_REGNUM): Likewise.
797         (AARCH64_SVE_V0_REGNUM): Likewise.
798
799 2018-10-01  Gary Benson <gbenson@redhat.com>
800
801         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
802         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
803         prfpregset_t instead of gdb_prfpregset_t.
804         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
805         * configure, config.in: Rebuild.
806
807 2018-10-01  Gary Benson <gbenson@redhat.com>
808
809         * common/gdb_proc_service.h: New file, factored out from...
810         * gdb_proc_service.h: Moved common code to the above file.
811         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
812
813 2018-10-01  Gary Benson <gbenson@redhat.com>
814
815         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
816         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
817
818 2018-10-01  Gary Benson <gbenson@redhat.com>
819
820         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
821         (AC_CHECK_HEADERS): Check for linux/elf.h.
822         * configure, config.in: Rebuild.
823         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
824         doesn't define elf_fpregset_t.
825
826 2018-10-01  Gary Benson <gbenson@redhat.com>
827
828         * gdb_proc_service.h: Whitespace change.
829
830 2018-10-01  Tom Tromey  <tom@tromey.com>
831
832         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
833         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
834         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
835
836 2018-10-01  Tom Tromey  <tom@tromey.com>
837
838         * README: Minor change.
839
840 2018-09-30  Pedro Alves  <palves@redhat.com>
841
842         * darwin-nat-info.c (darwin_debug_regions_recurse)
843         (info_mach_exceptions_command): Remove unused local variables.
844         * darwin-nat.c (darwin_decode_notify_message)
845         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
846         (darwin_stop_inferior, darwin_setup_exceptions)
847         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
848         (darwin_nat_target::attach, darwin_nat_target::detach)
849         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
850         local variables.
851         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
852         variables.
853
854 2018-09-29  Tom Tromey  <tom@tromey.com>
855
856         * README: Remove some leftover text.
857
858 2018-09-29  Tom Tromey  <tom@tromey.com>
859
860         * PROBLEMS: Rewrite.
861         * README: Update.
862
863 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
864
865         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
866         case with explicit breakpoint kind.
867         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
868         'additional_info' and related logic.
869         (riscv_debug_breakpoints): New variable.
870         (riscv_breakpoint_kind_from_pc): Use the length of the existing
871         instruction to determine the breakpoint kind.
872         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
873         flag.  Update description of 'set/show riscv
874         use-compressed-breakpoints' flag.
875
876 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
877
878         (NEWS): Mention changes to frame related commands.
879         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
880         (add_prefix_cmd_suppress_notification): New function.
881         (add_com_suppress_notification): Call
882         add_cmd_suppress_notification.
883         * command.h (add_cmd_suppress_notification): Declare.
884         (add_prefix_cmd_suppress_notification): Declare.
885         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
886         (parse_frame_specification): Moved from stack.c, with
887         simplification to handle a single argument.
888         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
889         switch to the selected frame.  Add a header comment.
890         * stack.c: Remove 'safe-ctype.h' include.
891         (find_frame_for_function): Add declaration.
892         (find_frame_for_address): New function.
893         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
894         (frame_selection_by_function_completer): New function.
895         (info_frame_command): Rename to...
896         (info_frame_command_core): ...this, and update parameter types.
897         (select_frame_command): Rename to...
898         (select_frame_command_core): ...this, and update parameter types.
899         (frame_command): Rename to...
900         (frame_command_core): ...this, and update parameter types.
901         (class frame_command_helper): New class to wrap implementations of
902         frame related sub-commands.
903         (frame_apply_cmd_list): New static global.
904         (frame_cmd_list): Make static.
905         (select_frame_cmd_list): New global for sub-commands.
906         (info_frame_cmd_list): New global for sub-commands.
907         (_initialize_stack): Register sub-commands for 'frame',
908         'select-frame', and 'info frame'.  Update 'frame apply' commands
909         to use frame_apply_cmd_list.  Move function local static
910         frame_apply_list to file static frame_apply_cmd_list for
911         consistency.
912         * stack.h (select_frame_command): Delete declarationn.
913         (select_frame_for_mi): Declare new function.
914
915 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
916
917         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
918         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
919         and NOP.
920
921 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
922
923         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
924
925 2018-09-26  Tom Tromey  <tom@tromey.com>
926
927         * valops.c (auto_abandon): Remove dead code.
928
929 2018-09-26  Tom Tromey  <tom@tromey.com>
930
931         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
932
933 2018-09-24  Tom Tromey  <tom@tromey.com>
934
935         * common/pathstuff.c (get_standard_cache_dir): Make
936         "xdg_cache_home" and "home" const.
937         * top.c (init_history): Make "tmpenv" const.
938         * main.c (get_init_files): Make "homedir" const.
939
940 2018-09-23  Tom Tromey  <tom@tromey.com>
941
942         PR python/18852:
943         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
944
945 2018-09-23  Tom Tromey  <tom@tromey.com>
946
947         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
948         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
949         * python/python-internal.h (gdbpy_handle_exception): Declare.
950         * python/py-utils.c (gdbpy_handle_exception): New function.
951
952 2018-09-23  Tom Tromey  <tom@tromey.com>
953
954         PR python/17284:
955         * python/py-type.c (typy_template_argument): Check for negative
956         argument number.
957
958 2018-09-23  Tom Tromey  <tom@tromey.com>
959
960         PR python/14062:
961         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
962
963 2018-09-23  Tom Tromey  <tom@tromey.com>
964
965         PR python/18170:
966         * python/py-value.c (valpy_int): Allow conversion from pointer
967         type.
968
969 2018-09-23  Tom Tromey  <tom@tromey.com>
970
971         PR python/20126:
972         * python/py-value.c (valpy_int): Respect type sign.
973
974 2018-09-23  Tom Tromey  <tom@tromey.com>
975
976         PR python/18352;
977         * python/py-value.c (valpy_float): Allow conversions from int or
978         char.
979         (valpy_int, valpy_long): Allow conversions from float.
980
981 2018-09-23  Tom Tromey  <tom@tromey.com>
982
983         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
984         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
985
986 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
987
988         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
989         __sighndlr.
990         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
991
992 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
993
994         * windows-nat.c (windows_nat_target::wait): Remove a spurious
995         target_terminal::ours().
996
997 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
998
999         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1000         of vl to ULONGEST.
1001
1002 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1003
1004         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1005         redundant condition.
1006
1007 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1008
1009         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1010
1011         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1012         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1013         * sol-thread.c (ps_pdmodel): Don't guard definition.
1014
1015         * procfs.c: Fix formatting.
1016
1017         * procfs.c (sysset_t_alloc): Remove.
1018         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1019         (procfs_debug_inferior): Likewise.
1020         (procfs_set_exec_trap): Likewise.
1021         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1022         (proc_set_traced_sysexit): Likewise.
1023
1024         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1025         (dead_procinfo): Likewise.
1026         (proc_warn): Likewise.
1027         (proc_error): Likewise.
1028         (proc_get_LDT_entry): Likewise.
1029         (do_attach): Likewise.
1030         (procfs_target::pid_to_str): Likewise.
1031         (iterate_over_mappings): Likewise.
1032
1033         * procfs.c (create_procinfo): Fix ARI warning.
1034         (proc_get_status): Likewise.
1035         (proc_stop_process): Likewise.
1036         (proc_run_process): Likewise.
1037         (proc_kill): Likewise.
1038         (proc_get_LDT_entry): Likewise.
1039         (procfs_find_LDT_entry): Likewise.
1040         (proc_update_threads): Likewise.
1041         (proc_iterate_over_threads): Likewise.
1042         (do_attach): Likewise.
1043         (procfs_xfer_memory): Likewise.
1044         (invalidate_cache): Likewise.
1045         (procfs_target::resume): Likewise.
1046         (procfs_init_inferior): Likewise.
1047         (procfs_set_exec_trap): Likewise.
1048         (procfs_target::thread_alive): Likewise.
1049         (procfs_target::pid_to_exec_file): Likewise.
1050         (iterate_over_mappings): Likewise.
1051         (procfs_target::make_corefile_notes): Likewise.
1052         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1053
1054         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1055         (procfs_find_LDT_entry): Likewise.
1056         * sol-thread.c (ps_lgetLDT): Likewise.
1057
1058 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1059
1060         PR tdep/17903
1061         * procfs.c (procfs_target): Declare pid_to_exec_file.
1062         (procfs_target::pid_to_exec_file): New.
1063
1064 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1065
1066         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1067         renaming.
1068         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1069         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1070
1071 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1072
1073         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1074         (supply_fpregset, fill_fpregset): Move ...
1075         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1076         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1077         Remove references to ioctl-based procfs.
1078         Include <sys/reg.h>.
1079         Remove PR_MODEL_NATIVE guards.
1080         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1081         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1082
1083 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1084
1085         PR gdb/20981:
1086         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1087         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1088         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1089
1090 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1091
1092         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1093         (fbsd_print_sockaddr_in6): Likewise.
1094
1095 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1096             Chris January  <chris.january@arm.com>
1097
1098         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1099         (evaluate_subexp_standard): Return a dummy type when
1100         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1101         OP_F77_UNDETERMINED_ARGLIST case.
1102         * expression.h (enum noside): Update comment.
1103
1104 2018-09-19  George Vasick <george.vasick@oracle.com>
1105
1106         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1107
1108 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1109             April Chin <april.chin@oracle.com>
1110             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1111
1112         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1113         uint_t lwpid_t.
1114         (create_procinfo): Print pids in /proc without leading zeros.
1115
1116 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1117
1118         * nios2-tdep.c (nios2_gcc_target_options): New.
1119         (nios2_gdb_arch_init): Install new hook.
1120
1121 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1122
1123         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1124         New file.
1125         * update-gnulib.sh: Apply patch.
1126         * configure: Re-generate.
1127
1128 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1129
1130         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1131         description.  Make "info proc" command descriptions more
1132         consistent.
1133
1134 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1135
1136         * NEWS: Mention 'info proc files' command.
1137
1138 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1139
1140         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1141         descriptors for IP_FILES and IP_ALL.
1142
1143 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1144
1145         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1146         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1147         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1148         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1149         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1150         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1151         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1152         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1153         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1154         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1155         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1156         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1157         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1158         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1159         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1160         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1161         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1162         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1163         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1164         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1165         (struct fbsd_sockaddr_un): New types.
1166         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1167         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1168         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1169         (fbsd_core_info_proc_files): New functions.
1170         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1171         IP_ALL.
1172         * fbsd-tdep.h (fbsd_info_proc_files_header)
1173         (fbsd_info_proc_files_entry): New.
1174
1175 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1176
1177         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1178         * infcmd.c (info_proc_cmd_files): New function.
1179         (_initialize_infcmd): Register 'info proc files' command.
1180
1181 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1182
1183         * gnulib/aclocal-m4-deps.mk: Re-generate.
1184         * gnulib/aclocal.m4: Re-generate.
1185         * gnulib/config.in: Re-generate.
1186         * gnulib/configure: Re-generate.
1187         * gnulib/import/Makefile.am: Re-generate.
1188         * gnulib/import/Makefile.in: Re-generate.
1189         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1190         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1191         * gnulib/import/arpa_inet.in.h: New file.
1192         * gnulib/import/inet_ntop.c: New file.
1193         * gnulib/import/m4/arpa_inet_h.m4: New file.
1194         * gnulib/import/m4/inet_ntop.m4: New file.
1195         * gnulib/import/m4/netinet_in_h.m4: New file.
1196         * gnulib/import/m4/socklen.m4: New file.
1197         * gnulib/import/m4/sockpfaf.m4: New file.
1198         * gnulib/import/m4/stdalign.m4: New file.
1199         * gnulib/import/m4/sys_uio_h.m4: New file.
1200         * gnulib/import/netinet_in.in.h: New file.
1201         * gnulib/import/stdalign.in.h: New file.
1202         * gnulib/import/sys_socket.c: New file.
1203         * gnulib/import/sys_socket.in.h: New file.
1204         * gnulib/import/sys_uio.in.h: New file.
1205         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1206         module.
1207
1208 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1209
1210         * gnulib/aclocal-m4-deps.mk: New file.
1211         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1212         deterministically.
1213
1214 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1215
1216         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1217         KVE_PATH.
1218
1219 2018-09-18  Tom Tromey  <tom@tromey.com>
1220
1221         * compile/compile-object-load.c (struct
1222         link_hash_table_cleanup_data): Add constructor and destructor.
1223         Use DISABLE_COPY_AND_ASSIGN.
1224         (~link_hash_table_cleanup_data): Rename from
1225         link_hash_table_free.  Now a destructor.
1226         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1227
1228 2018-09-18  Tom Tromey  <tom@tromey.com>
1229
1230         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1231         * compile/compile-object-load.c (struct munmap_list): Move to
1232         header file.
1233         (munmap_list::add): Rename from munmap_list_add; rewrite.
1234         (munmap_list::~munmap_list): Rename from munmap_list_free.
1235         (munmap_listp_free_cleanup): Remove.
1236         (compile_object_load): Update.
1237         * compile/compile-object-load.h (struct munmap_list): Move from
1238         compile-object-load.c.  Rewrite.
1239
1240 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1241
1242         * aarch64-tdep.c (pass_in_v): Use register size.
1243         (aarch64_extract_return_value): Likewise.
1244         (aarch64_store_return_value): Likewise.
1245
1246 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1247
1248         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1249         rlim_t.
1250
1251 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1252
1253         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1254         Fix short help line.
1255
1256 2018-09-17  Tom Tromey  <tom@tromey.com>
1257
1258         PR python/20445:
1259         * configure: Rebuild.
1260         * configure.ac: Conditionally use -DNDEBUG for Python.
1261
1262 2018-09-17  Tom Tromey  <tom@tromey.com>
1263
1264         * configure: Rebuild.
1265         * configure.ac: Use gmp as a library dependency when checking for
1266         mpfr.
1267
1268 2018-09-17  Pedro Alves  <palves@redhat.com>
1269
1270         * python/py-inferior.c (find_inferior_object): Delete.
1271
1272 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1273
1274         * compile/compile-cplus-types.c
1275         (compile_cplus_instance::enter_scope): Don't use new_scope after
1276         std::move.
1277
1278 2018-09-17  Tom Tromey  <tom@tromey.com>
1279
1280         * common/pathstuff.c (get_standard_cache_dir): Use
1281         ~/Library/Caches on macOS.
1282         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1283
1284 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1285
1286         PR python/23669
1287         * breakpoint.c (commands_cmd_element): New.
1288         (_initialize_breakpoint): Assign commands_cmd_element.
1289         * breakpoint.h (commands_cmd_element): New.
1290         * cli/cli-script.c (while_cmd_element, if_command,
1291         define_cmd_element): New.
1292         (command_name_equals): Remove.
1293         (process_next_line): Compare commands by pointer, not by name.
1294         (_initialize_cli_script): Assign the various cmd_list_element
1295         variables.
1296         * compile/compile.c (compile_cmd_element): New.
1297         (_initialize_compile): Assign compile_cmd_element.
1298         * compile/compile.h (compile_cmd_element): New.
1299         * guile/guile.c (guile_cmd_element): New.
1300         (install_gdb_commands): Assign guile_cmd_element.
1301         * guile/guile.h (guile_cmd_element): New.
1302         * python/python.c (python_cmd_element): New.
1303         (_initialize_python): Assign python_cmd_element.
1304         * python/python.h (python_cmd_element): New.
1305         * tracepoint.c (while_stepping_cmd_element): New.
1306         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1307         * tracepoint.h (while_stepping_cmd_element): New.
1308
1309 2018-09-17  Tom Tromey  <tom@tromey.com>
1310
1311         * infrun.c (save_infcall_suspend_state): Return
1312         infcall_suspend_state_up.
1313         (save_infcall_control_state): Return infcall_control_state_up.
1314         * inferior.h (save_infcall_suspend_state)
1315         (save_infcall_control_state): Declare later.  Return unique
1316         pointers.
1317
1318 2018-09-17  Tom Tromey  <tom@tromey.com>
1319
1320         * infrun.c (struct stop_context): Declare constructor,
1321         destructor, "changed" method.
1322         (stop_context::stop_context): Rename from save_stop_context.
1323         (stop_context::~stop_context): Rename from
1324         release_stop_context_cleanup.
1325         (normal_stop): Update.
1326         (stop_context::changed): Rename from stop_context_changed.  Return
1327         bool.
1328
1329 2018-09-17  Tom Tromey  <tom@tromey.com>
1330
1331         * inferior.h (struct infcall_suspend_state_deleter): New.
1332         (infcall_suspend_state_up): New typedef.
1333         (struct infcall_control_state_deleter): New.
1334         (infcall_control_state_up): New typedef.
1335         (make_cleanup_restore_infcall_suspend_state)
1336         (make_cleanup_restore_infcall_control_state): Don't declare.
1337         * infcall.c (call_function_by_hand_dummy): Update.
1338         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1339         (make_cleanup_restore_infcall_suspend_state): Remove.
1340         (do_restore_infcall_control_state_cleanup)
1341         (make_cleanup_restore_infcall_control_state): Remove.
1342
1343 2018-09-17  Tom Tromey  <tom@tromey.com>
1344
1345         * gdbthread.h (struct thread_control_state): Add initializer.
1346         (class thread_info) <control>: Remove initializer.
1347         * inferior.h (struct inferior_control_state): Add initializer.
1348         (class inferior) <control>: Remove initializer.
1349         (exit_inferior_1): Update.
1350         * infrun.c (struct infcall_control_state): Add constructors.
1351         (save_infcall_control_state): Use new.
1352         (restore_infcall_control_state, discard_infcall_control_state):
1353         Use delete.
1354
1355 2018-09-17  Tom Tromey  <tom@tromey.com>
1356
1357         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1358         unique_ptr.
1359         <siginfo_data>: Now a unique_xmalloc_ptr.
1360         (save_infcall_suspend_state, restore_infcall_suspend_state)
1361         (discard_infcall_suspend_state)
1362         (get_infcall_suspend_state_regcache): Update.
1363
1364 2018-09-17  Tom Tromey  <tom@tromey.com>
1365
1366         * gdbthread.h (struct thread_suspend_state): Add initializers.
1367         (class thread_info) <suspend>: Remove initializer.
1368         * infrun.c (struct infcall_suspend_state): Add initializers.
1369         (save_infcall_suspend_state): Use new.
1370         (discard_infcall_suspend_state): Use delete.
1371
1372 2018-09-16  Tom Tromey  <tom@tromey.com>
1373
1374         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1375         Remove.
1376         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1377         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1378         (py_varobj_iter_new): Likewise.
1379         (py_varobj_get_iterator): Use gdbpy_ref.
1380
1381 2018-09-16  Tom Tromey  <tom@tromey.com>
1382
1383         * python/py-threadevent.c (py_get_event_thread): Simplify.
1384         * python/py-inferior.c (infpy_thread_from_thread_handle):
1385         Return immediately after calling thread_to_thread_object.  Use
1386         Py_RETURN_NONE.
1387         (thread_to_thread_object): Set the exception on a NULL return.
1388
1389 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1390
1391         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1392
1393 2018-09-16  Tom Tromey  <tom@tromey.com>
1394
1395         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1396         Remove.
1397
1398 2018-09-16  Tom Tromey  <tom@tromey.com>
1399
1400         * python/python-internal.h (thread_to_thread_object): Change
1401         return type.
1402         * python/py-inferior.c (thread_to_thread_object): Return a new
1403         reference.
1404         (infpy_thread_from_thread_handle): Update.
1405         * python/py-infthread.c (gdbpy_selected_thread): Update.
1406         * python/py-stopevent.c (create_stop_event_object): Update.
1407         * python/py-threadevent.c (py_get_event_thread): Return a new
1408         reference.
1409         (py_get_event_thread): Update.
1410         * python/py-event.h (py_get_event_thread): Change return type.
1411         * python/py-continueevent.c (create_continue_event_object):
1412         Update.
1413
1414 2018-09-16  Tom Tromey  <tom@tromey.com>
1415
1416         * python/py-progspace.c (pspy_get_objfiles): Update.
1417         * python/python-internal.h (objfile_to_objfile_object): Change
1418         return type.
1419         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1420         Update.
1421         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1422         Update.
1423         * python/python.c (gdbpy_get_current_objfile): Update.
1424         (gdbpy_objfiles): Update.
1425         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1426         Update.
1427         (objfile_to_objfile_object): Return a new reference.
1428         * python/py-symtab.c (stpy_get_objfile): Update.
1429         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1430         Update.
1431
1432 2018-09-16  Tom Tromey  <tom@tromey.com>
1433
1434         * python/py-inferior.c (infpy_get_progspace): Update.
1435         * python/python-internal.h (pspace_to_pspace_object): Change
1436         return type.
1437         * python/py-newobjfileevent.c
1438         (create_clear_objfiles_event_object): Update.
1439         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1440         Update.
1441         * python/python.c (gdbpy_get_current_progspace): Update.
1442         (gdbpy_progspaces): Update.
1443         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1444         reference.
1445         * python/py-objfile.c (objfpy_get_progspace): Update.
1446         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1447         Update.
1448
1449 2018-09-16  Tom Tromey  <tom@tromey.com>
1450
1451         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1452         (solib_name, block_for_pc, find_pc_line): New functions.
1453         (execute_unwinders): Update.
1454         * python/py-block.c (gdbpy_block_for_pc): Remove.
1455         * python/py-inferior.c (infpy_get_progspace): New function.
1456         (inferior_object_getset) <progspace>: Add.
1457         * python/py-progspace.c (pspy_objfiles): Rewrite.
1458         (pspy_solib_name, pspy_block_for_pc)
1459         (pspy_find_pc_line, pspy_is_valid): New functions.
1460         (progspace_object_methods): Add entries for solib_name,
1461         block_for_pc, find_pc_line, is_valid.
1462         * python/python-internal.h (gdbpy_block_for_pc)
1463         (build_objfiles_list): Don't declare.
1464         * python/python.c: Don't include solib.h.
1465         (gdbpy_solib_name, gdbpy_find_pc_line)
1466         (gdbpy_get_current_progspace, build_objfiles_list)
1467         (gdbpy_objfiles): Remove.
1468         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1469         solib_name, find_pc_line>: Remove entries.
1470
1471 2018-09-16  Tom Tromey  <tom@tromey.com>
1472
1473         * top.c (new_ui_command): Use GNU style for metasyntactic
1474         variables.
1475         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1476         variables.
1477         * maint.c (maintenance_translate_address): Remove "<>" around
1478         text.
1479         * interps.c (interpreter_exec_cmd): Use GNU style for
1480         metasyntactic variables.
1481         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1482         metasyntactic variables.
1483         * tracepoint.c (tfind_range_command): Use GNU style for
1484         metasyntactic variables.
1485         (tfind_outside_command): Likewise.
1486         (_initialize_tracepoint): Likewise.
1487         * remote.c (extended_remote_target::create_inferior): Use GNU
1488         style for metasyntactic variables.
1489         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1490         metasyntactic variables.
1491         (adi_assign_command): Likewise.
1492
1493 2018-09-16  Tom Tromey  <tom@tromey.com>
1494
1495         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1496         metasyntactic variables.  Print message if no disassembler options
1497         are available.
1498
1499 2018-09-15  Tom Tromey  <tom@tromey.com>
1500
1501         * infcmd.c (get_inferior_args): Return const char *.
1502         * inferior.h (get_inferior_args): Return type now const.
1503         * linux-tdep.c (linux_fill_prpsinfo): Update.
1504         * procfs.c (procfs_target::make_corefile_notes): Update.
1505
1506 2018-09-07  Tom Tromey  <tom@tromey.com>
1507
1508         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1509         inside the TRY.
1510
1511 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1512
1513         * nios2-tdep.c (nios2_type_align): New.
1514         (nios2_gdb_arch_init): Install type_align hook.
1515
1516 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1517
1518         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1519         type that is neither object file owned, nor gdbarch owned.
1520         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1521         gdbarch is non-NULL.
1522         (alloc_type_instance): Allocate non-objfile owned types on the
1523         gdbarch obstack.
1524         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1525         using TYPE_ALLOC to ensure memory is allocated on the correct
1526         obstack.
1527         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1528         obstack, or the gdbarch obstack.
1529         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1530
1531 2018-09-14  Tom Tromey  <tom@tromey.com>
1532
1533         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1534         block.
1535
1536 2018-09-14  Tom Tromey  <tom@tromey.com>
1537
1538         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1539
1540 2018-09-13  Tom Tromey  <tom@tromey.com>
1541
1542         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1543         static.
1544
1545 2018-09-13  Tom Tromey  <tom@tromey.com>
1546
1547         * exec.c (try_open_exec_file): Use std::string.
1548
1549 2018-09-13  Tom Tromey  <tom@tromey.com>
1550
1551         * utils.h (gdb_bfd_errmsg): Return std::string.
1552         * exec.c (exec_file_attach): Update.
1553         * compile/compile-object-load.c (compile_object_load): Update.
1554         * utils.c (gdb_bfd_errmsg): Return std::string.
1555
1556 2018-09-13  Tom Tromey  <tom@tromey.com>
1557
1558         * procfs.c (struct procinfo_deleter): New.
1559         (procinfo_up): New typedef.
1560         (do_destroy_procinfo_cleanup): Remove.
1561         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
1562
1563 2018-09-13  Tom Tromey  <tom@tromey.com>
1564
1565         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
1566
1567 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1568 2018-09-13  Tom Tromey  <tom@tromey.com>
1569
1570         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
1571         (pspy_get_objfiles): New function.
1572         (progspace_object_methods): New.
1573         (pspace_object_type): Add tp_methods callback.
1574         * python/python-internal.h (build_objfiles_list): New
1575         declaration.
1576         * python/python.c (build_objfiles_list): New function.
1577         (gdbpy_objfiles): Implement using build_objfiles_list.
1578         * NEWS: Mention the Progspace.objfiles method.
1579
1580 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1581
1582         * python/py-inferior.c (infpy_get_progspace): New function.
1583         (inferior_object_getset): Add progspace property.
1584         * NEWS: Mention the new property.
1585
1586 2018-09-13  Tom Tromey  <tom@tromey.com>
1587
1588         PR rust/23650:
1589         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
1590
1591 2018-09-13  Tom Tromey  <tom@tromey.com>
1592
1593         PR rust/23626:
1594         * rust-lang.c (rust_enum_variant): Now static.
1595         (rust_empty_enum_p): New function.
1596         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
1597         Handle empty enum.
1598
1599 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1600
1601         * python/py-inferior.c (infpy_repr): New.
1602         (inferior_object_type): Register infpy_repr.
1603         * python/py-objfile.c (objfpy_repr): New.
1604         (objfile_object_type): Register objfpy_repr.
1605
1606 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1607
1608         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
1609
1610 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1611
1612         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
1613         typo.
1614
1615 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
1616
1617         * common/common-utils.c: Don't include '<sys/stat.h>'.
1618         (is_regular_file): Move to...
1619         * common/filestuff.c (is_regular_file): ... here.
1620         * common/common-utils.h (is_regular_file): Move to...
1621         * common/filestuff.h (is_regular_file): ... here.
1622
1623 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
1624
1625         * skip.c (debug_skip): New variable.
1626         (skiplist_entry::do_skip_file_p): Add debug output.
1627         (skiplist_entry::do_skip_gfile_p): Likewise.
1628         (skiplist_entry::skip_function_p): Likewise.
1629         (_initialize_step_skip): Create debug command.
1630         * NEWS: Mention set/show debug skip.
1631
1632 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1633
1634         * darwin-nat.c (should_disable_startup_with_shell):
1635         New function.
1636         (darwin_nat_target::create_inferior): Add call.
1637
1638 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1639
1640         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
1641         inf_port, msg_state>: Initialize.
1642         (struct darwin_thread_info) <signaled, single_step>: Change
1643         type and initialize.
1644         (struct darwin_thread_info) <event>: Initialize.
1645
1646 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1647
1648         PR gdb/23555
1649         PR gdb/23558
1650         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
1651         guesses.
1652
1653 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1654
1655         Revert:
1656         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1657
1658         PR gdb/23555
1659         PR gdb/23558
1660         * gnulib/aclocal.m4: Regenerate.
1661         * gnulib/config.in: Regenerate.
1662         * gnulib/configure: Regenerate.
1663         * gnulib/import/Makefile.am: Update.
1664         * gnulib/import/Makefile.in: Update.
1665         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1666         * gnulib/import/_Noreturn.h: ... this.
1667         * gnulib/import/alloca.in.h: Update.
1668         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
1669         * gnulib/import/arg-nonnull.h: ... this.
1670         * gnulib/import/assure.h: Update.
1671         * gnulib/import/at-func.c: Update.
1672         * gnulib/import/basename-lgpl.c: Update.
1673         * gnulib/import/extra/snippet/c++defs.h: Rename to...
1674         * gnulib/import/c++defs.h: ... this.
1675         * gnulib/import/canonicalize-lgpl.c: Update.
1676         * gnulib/import/cdefs.h: Update.
1677         * gnulib/import/chdir-long.c: Update.
1678         * gnulib/import/chdir-long.h: Update.
1679         * gnulib/import/cloexec.c: Update.
1680         * gnulib/import/cloexec.h: Update.
1681         * gnulib/import/close.c: Update.
1682         * gnulib/import/closedir.c: Update.
1683         * gnulib/import/config.charset: Update.
1684         * gnulib/import/dirent-private.h: Update.
1685         * gnulib/import/dirent.in.h: Update.
1686         * gnulib/import/dirfd.c: Update.
1687         * gnulib/import/dirname-lgpl.c: Update.
1688         * gnulib/import/dirname.h: Update.
1689         * gnulib/import/dosname.h: Update.
1690         * gnulib/import/dup-safer-flag.c: Update.
1691         * gnulib/import/dup-safer.c: Update.
1692         * gnulib/import/dup.c: Update.
1693         * gnulib/import/dup2.c: Update.
1694         * gnulib/import/errno.in.h: Update.
1695         * gnulib/import/error.c: Update.
1696         * gnulib/import/error.h: Update.
1697         * gnulib/import/exitfail.c: Update.
1698         * gnulib/import/exitfail.h: Update.
1699         * gnulib/import/extra/update-copyright: Update.
1700         * gnulib/import/fchdir.c: Update.
1701         * gnulib/import/fcntl.c: Update.
1702         * gnulib/import/fcntl.in.h: Update.
1703         * gnulib/import/fd-hook.c: Update.
1704         * gnulib/import/fd-hook.h: Update.
1705         * gnulib/import/fd-safer-flag.c: Update.
1706         * gnulib/import/fd-safer.c: Update.
1707         * gnulib/import/fdopendir.c: Update.
1708         * gnulib/import/filename.h: Update.
1709         * gnulib/import/filenamecat-lgpl.c: Update.
1710         * gnulib/import/filenamecat.h: Update.
1711         * gnulib/import/flexmember.h: Update.
1712         * gnulib/import/float+.h: Update.
1713         * gnulib/import/float.c: Update.
1714         * gnulib/import/float.in.h: Update.
1715         * gnulib/import/fnmatch.c: Update.
1716         * gnulib/import/fnmatch.in.h: Update.
1717         * gnulib/import/fnmatch_loop.c: Update.
1718         * gnulib/import/fpucw.h: Update.
1719         * gnulib/import/frexp.c: Update.
1720         * gnulib/import/frexpl.c: Update.
1721         * gnulib/import/fstat.c: Update.
1722         * gnulib/import/fstatat.c: Update.
1723         * gnulib/import/getcwd-lgpl.c: Update.
1724         * gnulib/import/getcwd.c: Update.
1725         * gnulib/import/getdtablesize.c: Update.
1726         * gnulib/import/getlogin_r.c: Update.
1727         * gnulib/import/getprogname.c: Update.
1728         * gnulib/import/getprogname.h: Update.
1729         * gnulib/import/gettext.h: Update.
1730         * gnulib/import/gettimeofday.c: Update.
1731         * gnulib/import/glob-libc.h: Update.
1732         * gnulib/import/glob.c: Update.
1733         * gnulib/import/glob.in.h: Update.
1734         * gnulib/import/glob_internal.h: Update.
1735         * gnulib/import/glob_pattern_p.c: Update.
1736         * gnulib/import/globfree.c: Update.
1737         * gnulib/import/hard-locale.c: Update.
1738         * gnulib/import/hard-locale.h: Update.
1739         * gnulib/import/intprops.h: Update.
1740         * gnulib/import/inttypes.in.h: Update.
1741         * gnulib/import/isnan.c: Update.
1742         * gnulib/import/isnand-nolibm.h: Update.
1743         * gnulib/import/isnand.c: Update.
1744         * gnulib/import/isnanl-nolibm.h: Update.
1745         * gnulib/import/isnanl.c: Update.
1746         * gnulib/import/itold.c: Update.
1747         * gnulib/import/libc-config.h: Update.
1748         * gnulib/import/limits.in.h: Update.
1749         * gnulib/import/localcharset.c: Update.
1750         * gnulib/import/localcharset.h: Update.
1751         * gnulib/import/localtime-buffer.c: Update.
1752         * gnulib/import/localtime-buffer.h: Update.
1753         * gnulib/import/lstat.c: Update.
1754         * gnulib/import/m4/00gnulib.m4: Update.
1755         * gnulib/import/m4/__inline.m4: Update.
1756         * gnulib/import/m4/absolute-header.m4: Update.
1757         * gnulib/import/m4/alloca.m4: Update.
1758         * gnulib/import/m4/builtin-expect.m4: Update.
1759         * gnulib/import/m4/canonicalize.m4: Update.
1760         * gnulib/import/m4/chdir-long.m4: Update.
1761         * gnulib/import/m4/close.m4: Update.
1762         * gnulib/import/m4/closedir.m4: Update.
1763         * gnulib/import/m4/configmake.m4: Update.
1764         * gnulib/import/m4/d-ino.m4: Update.
1765         * gnulib/import/m4/d-type.m4: Update.
1766         * gnulib/import/m4/dirent_h.m4: Update.
1767         * gnulib/import/m4/dirfd.m4: Update.
1768         * gnulib/import/m4/dirname.m4: Update.
1769         * gnulib/import/m4/double-slash-root.m4: Update.
1770         * gnulib/import/m4/dup.m4: Update.
1771         * gnulib/import/m4/dup2.m4: Update.
1772         * gnulib/import/m4/eealloc.m4: Update.
1773         * gnulib/import/m4/environ.m4: Update.
1774         * gnulib/import/m4/errno_h.m4: Update.
1775         * gnulib/import/m4/error.m4: Update.
1776         * gnulib/import/m4/exponentd.m4: Update.
1777         * gnulib/import/m4/exponentl.m4: Update.
1778         * gnulib/import/m4/extensions.m4: Update.
1779         * gnulib/import/m4/extern-inline.m4: Update.
1780         * gnulib/import/m4/fchdir.m4: Update.
1781         * gnulib/import/m4/fcntl-o.m4: Update.
1782         * gnulib/import/m4/fcntl.m4: Update.
1783         * gnulib/import/m4/fcntl_h.m4: Update.
1784         * gnulib/import/m4/fdopendir.m4: Update.
1785         * gnulib/import/m4/filenamecat.m4: Update.
1786         * gnulib/import/m4/flexmember.m4: Update.
1787         * gnulib/import/m4/float_h.m4: Update.
1788         * gnulib/import/m4/fnmatch.m4: Update.
1789         * gnulib/import/m4/fnmatch_h.m4: Update.
1790         * gnulib/import/m4/fpieee.m4: Update.
1791         * gnulib/import/m4/frexp.m4: Update.
1792         * gnulib/import/m4/frexpl.m4: Update.
1793         * gnulib/import/m4/fstat.m4: Update.
1794         * gnulib/import/m4/fstatat.m4: Update.
1795         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1796         * gnulib/import/m4/getcwd-path-max.m4: Update.
1797         * gnulib/import/m4/getcwd.m4: Update.
1798         * gnulib/import/m4/getdtablesize.m4: Update.
1799         * gnulib/import/m4/getlogin.m4: Update.
1800         * gnulib/import/m4/getlogin_r.m4: Update.
1801         * gnulib/import/m4/getpagesize.m4: Update.
1802         * gnulib/import/m4/getprogname.m4: Update.
1803         * gnulib/import/m4/gettimeofday.m4: Update.
1804         * gnulib/import/m4/glibc21.m4: Update.
1805         * gnulib/import/m4/glob.m4: Update.
1806         * gnulib/import/m4/glob_h.m4: Update.
1807         * gnulib/import/m4/gnulib-cache.m4: Update.
1808         * gnulib/import/m4/gnulib-common.m4: Update.
1809         * gnulib/import/m4/gnulib-comp.m4: Update.
1810         * gnulib/import/m4/gnulib-tool.m4: Update.
1811         * gnulib/import/m4/hard-locale.m4: Update.
1812         * gnulib/import/m4/include_next.m4: Update.
1813         * gnulib/import/m4/inttypes-pri.m4: Update.
1814         * gnulib/import/m4/inttypes.m4: Update.
1815         * gnulib/import/m4/isnand.m4: Update.
1816         * gnulib/import/m4/isnanl.m4: Update.
1817         * gnulib/import/m4/largefile.m4: Update.
1818         * gnulib/import/m4/limits-h.m4: Update.
1819         * gnulib/import/m4/localcharset.m4: Update.
1820         * gnulib/import/m4/locale-fr.m4: Update.
1821         * gnulib/import/m4/locale-ja.m4: Update.
1822         * gnulib/import/m4/locale-zh.m4: Update.
1823         * gnulib/import/m4/localtime-buffer.m4: Update.
1824         * gnulib/import/m4/longlong.m4: Update.
1825         * gnulib/import/m4/lstat.m4: Update.
1826         * gnulib/import/m4/malloc.m4: Update.
1827         * gnulib/import/m4/malloca.m4: Update.
1828         * gnulib/import/m4/math_h.m4: Update.
1829         * gnulib/import/m4/mbrtowc.m4: Update.
1830         * gnulib/import/m4/mbsinit.m4: Update.
1831         * gnulib/import/m4/mbsrtowcs.m4: Update.
1832         * gnulib/import/m4/mbstate_t.m4: Update.
1833         * gnulib/import/m4/memchr.m4: Update.
1834         * gnulib/import/m4/memmem.m4: Update.
1835         * gnulib/import/m4/mempcpy.m4: Update.
1836         * gnulib/import/m4/memrchr.m4: Update.
1837         * gnulib/import/m4/mkdir.m4: Update.
1838         * gnulib/import/m4/mkstemp.m4: Update.
1839         * gnulib/import/m4/mmap-anon.m4: Update.
1840         * gnulib/import/m4/mode_t.m4: Update.
1841         * gnulib/import/m4/msvc-inval.m4: Update.
1842         * gnulib/import/m4/msvc-nothrow.m4: Update.
1843         * gnulib/import/m4/multiarch.m4: Update.
1844         * gnulib/import/m4/nocrash.m4: Update.
1845         * gnulib/import/m4/off_t.m4: Update.
1846         * gnulib/import/m4/onceonly.m4: Update.
1847         * gnulib/import/m4/open-cloexec.m4: Update.
1848         * gnulib/import/m4/open.m4: Update.
1849         * gnulib/import/m4/openat.m4: Update.
1850         * gnulib/import/m4/opendir.m4: Update.
1851         * gnulib/import/m4/pathmax.m4: Update.
1852         * gnulib/import/m4/rawmemchr.m4: Update.
1853         * gnulib/import/m4/readdir.m4: Update.
1854         * gnulib/import/m4/readlink.m4: Update.
1855         * gnulib/import/m4/realloc.m4: Update.
1856         * gnulib/import/m4/rename.m4: Update.
1857         * gnulib/import/m4/rewinddir.m4: Update.
1858         * gnulib/import/m4/rmdir.m4: Update.
1859         * gnulib/import/m4/save-cwd.m4: Update.
1860         * gnulib/import/m4/secure_getenv.m4: Update.
1861         * gnulib/import/m4/setenv.m4: Update.
1862         * gnulib/import/m4/signal_h.m4: Update.
1863         * gnulib/import/m4/ssize_t.m4: Update.
1864         * gnulib/import/m4/stat-time.m4: Update.
1865         * gnulib/import/m4/stat.m4: Update.
1866         * gnulib/import/m4/std-gnu11.m4: Update.
1867         * gnulib/import/m4/stdbool.m4: Update.
1868         * gnulib/import/m4/stddef_h.m4: Update.
1869         * gnulib/import/m4/stdint.m4: Update.
1870         * gnulib/import/m4/stdio_h.m4: Update.
1871         * gnulib/import/m4/stdlib_h.m4: Update.
1872         * gnulib/import/m4/strchrnul.m4: Update.
1873         * gnulib/import/m4/strdup.m4: Update.
1874         * gnulib/import/m4/strerror.m4: Update.
1875         * gnulib/import/m4/string_h.m4: Update.
1876         * gnulib/import/m4/strstr.m4: Update.
1877         * gnulib/import/m4/strtok_r.m4: Update.
1878         * gnulib/import/m4/sys_socket_h.m4: Update.
1879         * gnulib/import/m4/sys_stat_h.m4: Update.
1880         * gnulib/import/m4/sys_time_h.m4: Update.
1881         * gnulib/import/m4/sys_types_h.m4: Update.
1882         * gnulib/import/m4/tempname.m4: Update.
1883         * gnulib/import/m4/time_h.m4: Update.
1884         * gnulib/import/m4/unistd-safer.m4: Update.
1885         * gnulib/import/m4/unistd_h.m4: Update.
1886         * gnulib/import/m4/warn-on-use.m4: Update.
1887         * gnulib/import/m4/wchar_h.m4: Update.
1888         * gnulib/import/m4/wchar_t.m4: Update.
1889         * gnulib/import/m4/wctype_h.m4: Update.
1890         * gnulib/import/m4/wint_t.m4: Update.
1891         * gnulib/import/malloc.c: Update.
1892         * gnulib/import/malloc/scratch_buffer.h: Update.
1893         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1894         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1895         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1896         * gnulib/import/malloca.c: Update.
1897         * gnulib/import/malloca.h: Update.
1898         * gnulib/import/malloca.valgrind: Update.
1899         * gnulib/import/math.in.h: Update.
1900         * gnulib/import/mbrtowc.c: Update.
1901         * gnulib/import/mbsinit.c: Update.
1902         * gnulib/import/mbsrtowcs-impl.h: Update.
1903         * gnulib/import/mbsrtowcs-state.c: Update.
1904         * gnulib/import/mbsrtowcs.c: Update.
1905         * gnulib/import/memchr.c: Update.
1906         * gnulib/import/memmem.c: Update.
1907         * gnulib/import/mempcpy.c: Update.
1908         * gnulib/import/memrchr.c: Update.
1909         * gnulib/import/mkdir.c: Update.
1910         * gnulib/import/mkstemp.c: Update.
1911         * gnulib/import/msvc-inval.c: Update.
1912         * gnulib/import/msvc-inval.h: Update.
1913         * gnulib/import/msvc-nothrow.c: Update.
1914         * gnulib/import/msvc-nothrow.h: Update.
1915         * gnulib/import/open.c: Update.
1916         * gnulib/import/openat-die.c: Update.
1917         * gnulib/import/openat-priv.h: Update.
1918         * gnulib/import/openat-proc.c: Update.
1919         * gnulib/import/openat.c: Update.
1920         * gnulib/import/openat.h: Update.
1921         * gnulib/import/opendir.c: Update.
1922         * gnulib/import/pathmax.h: Update.
1923         * gnulib/import/pipe-safer.c: Update.
1924         * gnulib/import/rawmemchr.c: Update.
1925         * gnulib/import/readdir.c: Update.
1926         * gnulib/import/readlink.c: Update.
1927         * gnulib/import/realloc.c: Update.
1928         * gnulib/import/ref-add.sin: Update.
1929         * gnulib/import/ref-del.sin: Update.
1930         * gnulib/import/rename.c: Update.
1931         * gnulib/import/rewinddir.c: Update.
1932         * gnulib/import/rmdir.c: Update.
1933         * gnulib/import/same-inode.h: Update.
1934         * gnulib/import/save-cwd.c: Update.
1935         * gnulib/import/save-cwd.h: Update.
1936         * gnulib/import/scratch_buffer.h: Update.
1937         * gnulib/import/secure_getenv.c: Update.
1938         * gnulib/import/setenv.c: Update.
1939         * gnulib/import/signal.in.h: Update.
1940         * gnulib/import/stat-time.c: Update.
1941         * gnulib/import/stat-time.h: Update.
1942         * gnulib/import/stat-w32.c: Update.
1943         * gnulib/import/stat-w32.h: Update.
1944         * gnulib/import/stat.c: Update.
1945         * gnulib/import/stdbool.in.h: Update.
1946         * gnulib/import/stddef.in.h: Update.
1947         * gnulib/import/stdint.in.h: Update.
1948         * gnulib/import/stdio.in.h: Update.
1949         * gnulib/import/stdlib.in.h: Update.
1950         * gnulib/import/str-two-way.h: Update.
1951         * gnulib/import/strchrnul.c: Update.
1952         * gnulib/import/strdup.c: Update.
1953         * gnulib/import/streq.h: Update.
1954         * gnulib/import/strerror-override.c: Update.
1955         * gnulib/import/strerror-override.h: Update.
1956         * gnulib/import/strerror.c: Update.
1957         * gnulib/import/string.in.h: Update.
1958         * gnulib/import/stripslash.c: Update.
1959         * gnulib/import/strnlen1.c: Update.
1960         * gnulib/import/strnlen1.h: Update.
1961         * gnulib/import/strstr.c: Update.
1962         * gnulib/import/strtok_r.c: Update.
1963         * gnulib/import/sys_stat.in.h: Update.
1964         * gnulib/import/sys_time.in.h: Update.
1965         * gnulib/import/sys_types.in.h: Update.
1966         * gnulib/import/tempname.c: Update.
1967         * gnulib/import/tempname.h: Update.
1968         * gnulib/import/time.in.h: Update.
1969         * gnulib/import/unistd--.h: Update.
1970         * gnulib/import/unistd-safer.h: Update.
1971         * gnulib/import/unistd.in.h: Update.
1972         * gnulib/import/unsetenv.c: Update.
1973         * gnulib/import/verify.h: Update.
1974         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1975         * gnulib/import/wchar.in.h: Update.
1976         * gnulib/import/wctype.in.h: Update.
1977         * gnulib/import/xalloc-oversized.h: Update.
1978         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1979         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1980
1981 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
1982
1983         * record-btrace.c (get_thread_current_frame): Remove
1984         old_inferior_ptid.
1985
1986 2018-09-10  Jerome Guitton  <guitton@adacore.com>
1987
1988         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
1989         with check_tag to 1 if and only if the type is tagged and the
1990         component being searched cannot been found in the current
1991         view. Otherwise, always call ada_to_fixed_type with
1992         check_tag to 0.
1993
1994 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1995
1996         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
1997         declaration.
1998         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
1999         * ada-varobj.c (ada_varobj_get_number_of_children,
2000         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2001
2002 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2003
2004         * ada-valprint.c (ada_value_print): Use type instead of
2005         enclosing type.
2006
2007 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2008
2009         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2010         an array of access to unconstrained array.
2011
2012 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2013
2014         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2015         (ada_check_typedef): Use it.
2016
2017 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2018
2019         * ada-varobj.c (ada_varobj_describe_struct_child)
2020         (ada_varobj_describe_child): Handle union case like struct one.
2021
2022 2018-09-10  Tom Tromey  <tom@tromey.com>
2023
2024         PR python/18380:
2025         * python/python.c (_initialize_python): Make example in "python"
2026         help work in Python 3.
2027
2028 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2029
2030         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2031         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2032         $(EXEEXT) to the script, as it is not a program.
2033
2034 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2035
2036         * python/py-prettyprint.c (pretty_print_one_value): Return
2037         gdbpy_ref<>.
2038         (print_string_repr): Adjust.
2039         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2040         * python/python-internal.h (apply_varobj_pretty_printer): Return
2041         gdbpy_ref<>.
2042         * varobj.c (varobj_value_get_print_value): Adjust.
2043
2044 2018-09-08  Tom Tromey  <tom@tromey.com>
2045
2046         PR python/16047:
2047         * python/py-prettyprint.c (pretty_print_one_value): Check for
2048         to_string method.
2049
2050 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2051
2052         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2053         replace_operator_with_call.
2054
2055 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2056
2057         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2058
2059 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2060
2061         * ada-typeprint.c (print_range): Print the bounds using TYPE
2062         rather than its TYPE_TARGET_TYPE.
2063
2064 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2065
2066         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2067         call to ada_to_fixed_value_create.
2068
2069 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2070
2071         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2072
2073 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2074
2075         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2076         by calls to error.
2077
2078 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2079
2080         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2081         Move update of loop variable "fi".
2082
2083 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2084
2085         * ada-lang.c (value_assign_to_component): In the case of
2086         big-endian targets, extract the bits of the given VAL
2087         using an src_offset of zero if container is not a scalar.
2088
2089 2018-09-06  Simon Ser  <contact@emersion.fr>
2090
2091         PR gdb/23105
2092         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2093         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2094         * fbsd-tdep.c (fbsd_make_note_desc): New.
2095         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2096         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2097         * target.h (enum target_object) Add FreeBSD-specific
2098         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2099
2100 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2101
2102         * compile/compile-c.h (generate_c_for_variable_locations):
2103         Change reference to pointer.
2104         * compile/compile-c-support.c (compile_program) <compute>:
2105         Likewise.
2106         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2107         (generate_c_for_for_one_variable): Likewise
2108         (generate_c_for_variable_locations): Likewise
2109         * compile/compile-c-types.c (compile_c_instance::convert_type):
2110         Likewise
2111         * compile/compile-cplus-symbols.c (convert_one_symbol):
2112         std::move the scope passed to enter_scope.
2113         * compile/compile-cplus-types.c
2114         (compile_cplus_instance::enter_scope): Make parameter
2115         rvalue-reference.
2116         (compile_cplus_instance::new_scope): Change reference to
2117         pointer.
2118         (compile_cplus_instance::convert_type): Likewise
2119         (compile_cplus_convert_typedef): std::move the scope passed to
2120         enter_scope.
2121         (compile_cplus_convert_struct_or_union): Likewise.
2122         (compile_cplus_convert_enum): Likewise.
2123         (compile_cplus_convert_namespace): Likewise.
2124         * compile/compile-cplus.h (compile_cplus_instance)
2125         <enter_scope>: Make parameter rvalue-reference.
2126         * compile/compile-internal.h (compile_instance)
2127         <get_cached_type>: Likewise
2128         * compile/compile-loc2c.c (push): Likewise
2129         (pushf): Likewise
2130         (unary): Likewise
2131         (binary): Likewise
2132         (print_label): Likewise
2133         (pushf_register_address): Likewise
2134         (pushf_register): Likewise
2135         (do_compile_dwarf_expr_to_c): Likewise
2136         (compile_dwarf_expr_to_c): Likewise
2137         (compile_dwarf_bounds_to_c): Likewise
2138         * compile/compile.c (compile_instance::get_cached_type):
2139         Likewise
2140         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2141         (compile_dwarf_bounds_to_c): Likewise
2142         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2143         (dwarf2_compile_property_to_c): Likewise
2144         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2145         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2146         Likewise
2147
2148 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2149
2150         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2151         * tui/tui-data.c (init_content_element): Don't initialize it.
2152
2153 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2154
2155         * tui/tui-data.h (struct tui_win_info)
2156         <detail::opaque>: Remove.
2157         * tui/tui-data.c (init_win_info): Remove assignment.
2158
2159 2018-09-05  Tom Tromey  <tom@tromey.com>
2160
2161         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2162         -Wformat-nonliteral.
2163         * target-float.c (host_float_ops<T>::to_string)
2164         (host_float_ops<T>::from_string): Use
2165         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2166         * configure: Rebuild.
2167
2168 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2169
2170         * printcmd.c (printf_c_string): Use
2171         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2172         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2173
2174 2018-09-05  Tom Tromey  <tom@tromey.com>
2175
2176         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2177
2178 2018-09-05  Tom de Vries  <tdevries@suse.de>
2179
2180         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2181         with resolve_abstract_p == true.
2182         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2183         defaulting to false. Propagate resolve_abstract_p to
2184         dwarf2_fetch_die_loc_sect_off.
2185         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2186         parameter, defaulting to false.
2187         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2188         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2189         parameter.
2190         * dwarf2read.h (struct die_info): Forward-declare.
2191         (die_info_ptr): New typedef.
2192         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2193
2194 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2195
2196         GDB 8.2 released.
2197
2198 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2199             Pedro Alves  <palves@redhat.com>
2200
2201         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2202         "aclocal-m4-deps.mk".  Include file here.
2203         $(srcdir)/aclocal.m4: Add "configure.ac".
2204         * gnulib/aclocal-m4-deps.mk: New file.
2205         * gnulib/update-gnulib.sh: Automatically update
2206         "aclocal-m4-deps.mk".
2207
2208 2018-09-04  Tom Tromey  <tom@tromey.com>
2209
2210         * configure: Rebuild.
2211         * configure.ac: Remove multi-ice code.
2212
2213 2018-09-04  Tom Tromey  <tom@tromey.com>
2214
2215         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2216         (ada-exp.o): Update.
2217
2218 2018-09-04  Tom Tromey  <tom@tromey.com>
2219
2220         * Makefile.in (printcmd.o, target-float.o): Remove.
2221         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2222
2223 2018-09-04  Tom Tromey  <tom@tromey.com>
2224
2225         * gnulib/Makefile.in: Remove obsolete comment.
2226         * Makefile.in: Remove obsolete comment.
2227
2228 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2229
2230         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2231         line with '+'.
2232
2233 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2234
2235         * riscv-tdep.c: Add 'prologue-value.h' include.
2236         (struct riscv_unwind_cache): New struct.
2237         (riscv_debug_unwinder): New global.
2238         (riscv_scan_prologue): Update arguments, capture register details
2239         from prologue scan.
2240         (riscv_skip_prologue): Reformat arguments line, move end of
2241         prologue calculation into riscv_scan_prologue.
2242         (riscv_frame_cache): Update return type, create
2243         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2244         details.
2245         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2246         (riscv_frame_prev_register): Use the trad_frame within the
2247         riscv_unwind_cache.
2248         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2249         flag.
2250
2251 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2252
2253         * trad-frame.h (trad_frame_set_realreg): Declare.
2254         (trad_frame_set_addr): Declare.
2255         * trad-frame.c (trad_frame_set_realreg): Define new function.
2256         (trad_frame_set_addr): Define new function.
2257         (trad_frame_set_reg_realreg): Use new function.
2258         (trad_frame_set_reg_addr): Use new function.
2259
2260 2018-09-01  Keith Seitz  <keiths@redhat.com>
2261
2262         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2263         pulongest instead of "%lld".
2264         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2265         ATTRIBUTE_UNUSED.
2266
2267 2018-08-31  Tom Tromey  <tom@tromey.com>
2268
2269         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2270         variant part type.
2271
2272 2018-08-31  Pedro Alves  <palves@redhat.com>
2273
2274         * gdbarch.h: Regenerate.
2275
2276 2018-08-31  Pedro Alves  <palves@redhat.com>
2277
2278         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2279         * target.h (Hardware watchpoint interfaces): Describe
2280         continuable/steppable/non-steppable watchpoints.
2281         * gdbarch.h, gdbarch.c: Regenerate.
2282
2283 2018-08-31  Pedro Alves  <palves@redhat.com>
2284
2285         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2286         Delete.
2287         * s390-linux-nat.c
2288         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2289         * target.h (target_ops::have_continuable_watchpoint): Delete.
2290         (target_have_continuable_watchpoint): Delete.
2291         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2292         * target-delegates.c: Regenerate.
2293
2294 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2295
2296         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2297         the files present in "gnulib/import/m4/".
2298
2299 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2300
2301         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2302         c.sw, c.swsp, and c.sdsp.
2303
2304 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2305
2306         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2307         (riscv_read_misa_reg): Don't cache value read into inferior data.
2308         (riscv_new_inferior_data): Delete.
2309         (riscv_inferior_data_cleanup): Delete.
2310         (riscv_inferior_data): Delete.
2311         (riscv_invalidate_inferior_data): Delete.
2312         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2313
2314 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2315
2316         * compile/compile-cplus-types.c
2317         (compile_cplus_instance::leave_scope): Take the address of scope
2318         object.
2319         (compile_cplus_instance::convert_qualified_base): Compare quals
2320         to 0.
2321
2322 2018-08-30  Keith Seitz  <keiths@redhat.com>
2323
2324         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2325         Use "%s" and host_address_to_string instead of "%p" in printf.
2326
2327 2018-08-29  Keith Seitz  <keiths@redhat.com>
2328
2329         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2330         and compile-cplus-types.c.
2331         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2332         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2333         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2334         Declare.
2335         * compile/compile-c-support.c: Include compile-cplus.h.
2336         (load_libcompile): Templatize.
2337         (get_compile_context): "New" function.
2338         (c_get_compile_context): Use get_compile_context.
2339         (cplus_get_compile_context): New function.
2340         (cplus_push_user_expression, cplus_pop_user_expression)
2341         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2342         (cplus_compute_program): Define new structs/functions.
2343         * compile/compile-cplus-symmbols.c: New file.
2344         * compile/compile-cplus-types.c: New file.
2345         * compile/compile-cplus.h: New file.
2346         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2347         Declare.
2348         * compile/compile-object-load.c (get_out_value_type): Use
2349         strncmp_iw when comparing symbol names.
2350         (compile_object_load): Add mst_bss and mst_data.
2351         * compile/compile.c (_initialize_compile): Remove
2352         -Wno-implicit-function-declaration from `compile_args'.
2353         * compile/gcc-cp-plugin.h: New file.
2354         * NEWS: Mention C++ compile support and new debug options.
2355
2356 2018-08-29  Keith Seitz  <keiths@redhat.com>
2357
2358         * linespec.c (collect_info::add_symbol): Make virtual.
2359         (struct symbol_searcher_collect_info): New struct.
2360         (symbol_searcher::find_all_symbols): New method.
2361         * symtab.h (class symbol_searcher): New class.
2362
2363 2018-08-29  Keith Seitz  <keiths@redhat.com>
2364
2365         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2366         Change to vector of block_symbol.  Update all users.
2367         (struct collect_info) <symbols>: Likewise.
2368         (collect_info::add_symbol): Take block_symbol as argument.
2369         Update all callers.
2370         (decode_compound_collector) <m_symbols>: Change type to vector
2371         of block_symbol.  Update all users.
2372         (decode_compound_collector::operator ()): Change parameter type
2373         to block_symbol.
2374         (find_method, find_function_symbols, find_linespec_symbols)
2375         (find_label_symbols_in_block, find_label_symbols): Change symbol
2376         vectors to block_symbol vectors.
2377         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2378         block_symbol.
2379
2380 2018-08-29  Keith Seitz  <keiths@redhat.com>
2381
2382         * linespec.c (symbolp): Remove typedef and VEC definitions.
2383         (bound_minimal_symbol_d): Likewise.
2384
2385 2018-08-29  Keith Seitz  <keiths@redhat.com>
2386
2387         * linespec.c (decode_compound_collector::decode_compound_collector):
2388         Remove initialization for `m_symtabs'.
2389         (decode_compound_collector::release_symbols): Change return type
2390         to std::vector.  Update all callers.
2391         (class decode_compound_collector) <m_symbols>: Change type to
2392         std::vector.
2393         (lookup_prefix_sym): Change return type to std::vector.  Update all
2394         callers.
2395         (compare_symbols): Remove.
2396         (std_compare_symbols): Rename to `compare_symbols'.
2397         (find_method): Change `sym_classes' parameter to std::vector.
2398         Update all callers.  Use std::sort to sort sym_classes.
2399         (find_linespec_symbols): Remove cleanup.
2400
2401 2018-08-29  Keith Seitz  <keiths@redhat.com>
2402
2403         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2404         std::vector.  Update all users.
2405         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2406         (struct collect_info) <minimal_symbols>: Likewise.
2407         (compare_msymbols): Return bool.  Change parameters to const
2408         bound_minimal_symbol references.
2409         (find_method, find_function_symbols, find_linespec_symbols): Change
2410         `minsyms' parameter to std::vector.  Update all callers.
2411
2412 2018-08-29  Keith Seitz  <keiths@redhat.com>
2413
2414         * linespec.c (struct linespec) <label_symbols>: Change type to
2415         std::vector.  Update all users.
2416         (find_label_symbols_in_block): Change `result' parameter to
2417         std::vector.  Update all callers.
2418         (find_label_symbols): Return std::vector.  Update all callers.
2419
2420 2018-08-29  Keith Seitz  <keiths@redhat.com>
2421
2422         * linespec.c (struct linespec) <function_symbols>: Change type to
2423         std::vector.  Update all users.
2424         (struct collect_info) <function_symbols>: Likewise.
2425         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2426         (std_compare_symbols): New function.
2427         (find_method, find_function_symbols, find_linespec_symbols)
2428         (find_label_symbols_in_block): Change `symbols' parameter to
2429         std::vector.  Update all callers.
2430         (find_label_symbols): Likewise for `function_symbols' and
2431         `label_funcs_ret'.
2432
2433 2018-08-29  Keith Seitz  <keiths@redhat.com>
2434
2435         * linespec.c (symtab_vector_up): Define.
2436         (struct linespec) <file_symtabs>: Change type to std::vector *.
2437         Update all uses.
2438         (struct collect_info) <file_symtabs>: Likewise.
2439         (collect_symtabs_from_filename): Return symtab_vector_up.
2440         Update all callers.
2441         (decode_objc): Remove cleanup.
2442         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2443         (symtab_collector::release_symtabs): Return symtab_vector_up.
2444         Update all callers.
2445         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2446         Update all users.
2447         (collect_symtabs_from_filename, symtabs_from_filename): Return
2448         symtab_vector_up.  Update all callers.
2449
2450 2018-08-29  Tom Tromey  <tom@tromey.com>
2451
2452         * csky-tdep.c (csky_analyze_prologue): Use
2453         core_addr_to_string_nz.
2454
2455 2018-08-29  Tom Tromey  <tom@tromey.com>
2456
2457         * windows-nat.c (struct xlate_exception) <them>: Change type to
2458         DWORD.
2459         (xlate): Fix formatting.  Remove last entry.
2460         (struct xlate_exception, xlate): Comment out.
2461         (windows_nat_target::resume): Use ranged for.
2462
2463 2018-08-29  Jim Wilson  <jimw@sifive.com>
2464
2465         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2466         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2467         of NT_PRFPREG.
2468         (riscv_linux_nat_target::store_registers): Likewise.
2469
2470 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2471
2472         PR gdb/23555
2473         PR gdb/23558
2474         * gnulib/aclocal.m4: Regenerate.
2475         * gnulib/config.in: Regenerate.
2476         * gnulib/configure: Regenerate.
2477         * gnulib/import/Makefile.am: Update.
2478         * gnulib/import/Makefile.in: Update.
2479         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2480         * gnulib/import/_Noreturn.h: ... this.
2481         * gnulib/import/alloca.in.h: Update.
2482         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2483         * gnulib/import/arg-nonnull.h: ... this.
2484         * gnulib/import/assure.h: Update.
2485         * gnulib/import/at-func.c: Update.
2486         * gnulib/import/basename-lgpl.c: Update.
2487         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2488         * gnulib/import/c++defs.h: ... this.
2489         * gnulib/import/canonicalize-lgpl.c: Update.
2490         * gnulib/import/cdefs.h: Update.
2491         * gnulib/import/chdir-long.c: Update.
2492         * gnulib/import/chdir-long.h: Update.
2493         * gnulib/import/cloexec.c: Update.
2494         * gnulib/import/cloexec.h: Update.
2495         * gnulib/import/close.c: Update.
2496         * gnulib/import/closedir.c: Update.
2497         * gnulib/import/config.charset: Update.
2498         * gnulib/import/dirent-private.h: Update.
2499         * gnulib/import/dirent.in.h: Update.
2500         * gnulib/import/dirfd.c: Update.
2501         * gnulib/import/dirname-lgpl.c: Update.
2502         * gnulib/import/dirname.h: Update.
2503         * gnulib/import/dosname.h: Update.
2504         * gnulib/import/dup-safer-flag.c: Update.
2505         * gnulib/import/dup-safer.c: Update.
2506         * gnulib/import/dup.c: Update.
2507         * gnulib/import/dup2.c: Update.
2508         * gnulib/import/errno.in.h: Update.
2509         * gnulib/import/error.c: Update.
2510         * gnulib/import/error.h: Update.
2511         * gnulib/import/exitfail.c: Update.
2512         * gnulib/import/exitfail.h: Update.
2513         * gnulib/import/extra/update-copyright: Update.
2514         * gnulib/import/fchdir.c: Update.
2515         * gnulib/import/fcntl.c: Update.
2516         * gnulib/import/fcntl.in.h: Update.
2517         * gnulib/import/fd-hook.c: Update.
2518         * gnulib/import/fd-hook.h: Update.
2519         * gnulib/import/fd-safer-flag.c: Update.
2520         * gnulib/import/fd-safer.c: Update.
2521         * gnulib/import/fdopendir.c: Update.
2522         * gnulib/import/filename.h: Update.
2523         * gnulib/import/filenamecat-lgpl.c: Update.
2524         * gnulib/import/filenamecat.h: Update.
2525         * gnulib/import/flexmember.h: Update.
2526         * gnulib/import/float+.h: Update.
2527         * gnulib/import/float.c: Update.
2528         * gnulib/import/float.in.h: Update.
2529         * gnulib/import/fnmatch.c: Update.
2530         * gnulib/import/fnmatch.in.h: Update.
2531         * gnulib/import/fnmatch_loop.c: Update.
2532         * gnulib/import/fpucw.h: Update.
2533         * gnulib/import/frexp.c: Update.
2534         * gnulib/import/frexpl.c: Update.
2535         * gnulib/import/fstat.c: Update.
2536         * gnulib/import/fstatat.c: Update.
2537         * gnulib/import/getcwd-lgpl.c: Update.
2538         * gnulib/import/getcwd.c: Update.
2539         * gnulib/import/getdtablesize.c: Update.
2540         * gnulib/import/getlogin_r.c: Update.
2541         * gnulib/import/getprogname.c: Update.
2542         * gnulib/import/getprogname.h: Update.
2543         * gnulib/import/gettext.h: Update.
2544         * gnulib/import/gettimeofday.c: Update.
2545         * gnulib/import/glob-libc.h: Update.
2546         * gnulib/import/glob.c: Update.
2547         * gnulib/import/glob.in.h: Update.
2548         * gnulib/import/glob_internal.h: Update.
2549         * gnulib/import/glob_pattern_p.c: Update.
2550         * gnulib/import/globfree.c: Update.
2551         * gnulib/import/hard-locale.c: Update.
2552         * gnulib/import/hard-locale.h: Update.
2553         * gnulib/import/intprops.h: Update.
2554         * gnulib/import/inttypes.in.h: Update.
2555         * gnulib/import/isnan.c: Update.
2556         * gnulib/import/isnand-nolibm.h: Update.
2557         * gnulib/import/isnand.c: Update.
2558         * gnulib/import/isnanl-nolibm.h: Update.
2559         * gnulib/import/isnanl.c: Update.
2560         * gnulib/import/itold.c: Update.
2561         * gnulib/import/libc-config.h: Update.
2562         * gnulib/import/limits.in.h: Update.
2563         * gnulib/import/localcharset.c: Update.
2564         * gnulib/import/localcharset.h: Update.
2565         * gnulib/import/localtime-buffer.c: Update.
2566         * gnulib/import/localtime-buffer.h: Update.
2567         * gnulib/import/lstat.c: Update.
2568         * gnulib/import/m4/00gnulib.m4: Update.
2569         * gnulib/import/m4/__inline.m4: Update.
2570         * gnulib/import/m4/absolute-header.m4: Update.
2571         * gnulib/import/m4/alloca.m4: Update.
2572         * gnulib/import/m4/builtin-expect.m4: Update.
2573         * gnulib/import/m4/canonicalize.m4: Update.
2574         * gnulib/import/m4/chdir-long.m4: Update.
2575         * gnulib/import/m4/close.m4: Update.
2576         * gnulib/import/m4/closedir.m4: Update.
2577         * gnulib/import/m4/configmake.m4: Update.
2578         * gnulib/import/m4/d-ino.m4: Update.
2579         * gnulib/import/m4/d-type.m4: Update.
2580         * gnulib/import/m4/dirent_h.m4: Update.
2581         * gnulib/import/m4/dirfd.m4: Update.
2582         * gnulib/import/m4/dirname.m4: Update.
2583         * gnulib/import/m4/double-slash-root.m4: Update.
2584         * gnulib/import/m4/dup.m4: Update.
2585         * gnulib/import/m4/dup2.m4: Update.
2586         * gnulib/import/m4/eealloc.m4: Update.
2587         * gnulib/import/m4/environ.m4: Update.
2588         * gnulib/import/m4/errno_h.m4: Update.
2589         * gnulib/import/m4/error.m4: Update.
2590         * gnulib/import/m4/exponentd.m4: Update.
2591         * gnulib/import/m4/exponentl.m4: Update.
2592         * gnulib/import/m4/extensions.m4: Update.
2593         * gnulib/import/m4/extern-inline.m4: Update.
2594         * gnulib/import/m4/fchdir.m4: Update.
2595         * gnulib/import/m4/fcntl-o.m4: Update.
2596         * gnulib/import/m4/fcntl.m4: Update.
2597         * gnulib/import/m4/fcntl_h.m4: Update.
2598         * gnulib/import/m4/fdopendir.m4: Update.
2599         * gnulib/import/m4/filenamecat.m4: Update.
2600         * gnulib/import/m4/flexmember.m4: Update.
2601         * gnulib/import/m4/float_h.m4: Update.
2602         * gnulib/import/m4/fnmatch.m4: Update.
2603         * gnulib/import/m4/fnmatch_h.m4: Update.
2604         * gnulib/import/m4/fpieee.m4: Update.
2605         * gnulib/import/m4/frexp.m4: Update.
2606         * gnulib/import/m4/frexpl.m4: Update.
2607         * gnulib/import/m4/fstat.m4: Update.
2608         * gnulib/import/m4/fstatat.m4: Update.
2609         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2610         * gnulib/import/m4/getcwd-path-max.m4: Update.
2611         * gnulib/import/m4/getcwd.m4: Update.
2612         * gnulib/import/m4/getdtablesize.m4: Update.
2613         * gnulib/import/m4/getlogin.m4: Update.
2614         * gnulib/import/m4/getlogin_r.m4: Update.
2615         * gnulib/import/m4/getpagesize.m4: Update.
2616         * gnulib/import/m4/getprogname.m4: Update.
2617         * gnulib/import/m4/gettimeofday.m4: Update.
2618         * gnulib/import/m4/glibc21.m4: Update.
2619         * gnulib/import/m4/glob.m4: Update.
2620         * gnulib/import/m4/glob_h.m4: Update.
2621         * gnulib/import/m4/gnulib-cache.m4: Update.
2622         * gnulib/import/m4/gnulib-common.m4: Update.
2623         * gnulib/import/m4/gnulib-comp.m4: Update.
2624         * gnulib/import/m4/gnulib-tool.m4: Update.
2625         * gnulib/import/m4/hard-locale.m4: Update.
2626         * gnulib/import/m4/include_next.m4: Update.
2627         * gnulib/import/m4/inttypes-pri.m4: Update.
2628         * gnulib/import/m4/inttypes.m4: Update.
2629         * gnulib/import/m4/isnand.m4: Update.
2630         * gnulib/import/m4/isnanl.m4: Update.
2631         * gnulib/import/m4/largefile.m4: Update.
2632         * gnulib/import/m4/limits-h.m4: Update.
2633         * gnulib/import/m4/localcharset.m4: Update.
2634         * gnulib/import/m4/locale-fr.m4: Update.
2635         * gnulib/import/m4/locale-ja.m4: Update.
2636         * gnulib/import/m4/locale-zh.m4: Update.
2637         * gnulib/import/m4/localtime-buffer.m4: Update.
2638         * gnulib/import/m4/longlong.m4: Update.
2639         * gnulib/import/m4/lstat.m4: Update.
2640         * gnulib/import/m4/malloc.m4: Update.
2641         * gnulib/import/m4/malloca.m4: Update.
2642         * gnulib/import/m4/math_h.m4: Update.
2643         * gnulib/import/m4/mbrtowc.m4: Update.
2644         * gnulib/import/m4/mbsinit.m4: Update.
2645         * gnulib/import/m4/mbsrtowcs.m4: Update.
2646         * gnulib/import/m4/mbstate_t.m4: Update.
2647         * gnulib/import/m4/memchr.m4: Update.
2648         * gnulib/import/m4/memmem.m4: Update.
2649         * gnulib/import/m4/mempcpy.m4: Update.
2650         * gnulib/import/m4/memrchr.m4: Update.
2651         * gnulib/import/m4/mkdir.m4: Update.
2652         * gnulib/import/m4/mkstemp.m4: Update.
2653         * gnulib/import/m4/mmap-anon.m4: Update.
2654         * gnulib/import/m4/mode_t.m4: Update.
2655         * gnulib/import/m4/msvc-inval.m4: Update.
2656         * gnulib/import/m4/msvc-nothrow.m4: Update.
2657         * gnulib/import/m4/multiarch.m4: Update.
2658         * gnulib/import/m4/nocrash.m4: Update.
2659         * gnulib/import/m4/off_t.m4: Update.
2660         * gnulib/import/m4/onceonly.m4: Update.
2661         * gnulib/import/m4/open-cloexec.m4: Update.
2662         * gnulib/import/m4/open.m4: Update.
2663         * gnulib/import/m4/openat.m4: Update.
2664         * gnulib/import/m4/opendir.m4: Update.
2665         * gnulib/import/m4/pathmax.m4: Update.
2666         * gnulib/import/m4/rawmemchr.m4: Update.
2667         * gnulib/import/m4/readdir.m4: Update.
2668         * gnulib/import/m4/readlink.m4: Update.
2669         * gnulib/import/m4/realloc.m4: Update.
2670         * gnulib/import/m4/rename.m4: Update.
2671         * gnulib/import/m4/rewinddir.m4: Update.
2672         * gnulib/import/m4/rmdir.m4: Update.
2673         * gnulib/import/m4/save-cwd.m4: Update.
2674         * gnulib/import/m4/secure_getenv.m4: Update.
2675         * gnulib/import/m4/setenv.m4: Update.
2676         * gnulib/import/m4/signal_h.m4: Update.
2677         * gnulib/import/m4/ssize_t.m4: Update.
2678         * gnulib/import/m4/stat-time.m4: Update.
2679         * gnulib/import/m4/stat.m4: Update.
2680         * gnulib/import/m4/std-gnu11.m4: Update.
2681         * gnulib/import/m4/stdbool.m4: Update.
2682         * gnulib/import/m4/stddef_h.m4: Update.
2683         * gnulib/import/m4/stdint.m4: Update.
2684         * gnulib/import/m4/stdio_h.m4: Update.
2685         * gnulib/import/m4/stdlib_h.m4: Update.
2686         * gnulib/import/m4/strchrnul.m4: Update.
2687         * gnulib/import/m4/strdup.m4: Update.
2688         * gnulib/import/m4/strerror.m4: Update.
2689         * gnulib/import/m4/string_h.m4: Update.
2690         * gnulib/import/m4/strstr.m4: Update.
2691         * gnulib/import/m4/strtok_r.m4: Update.
2692         * gnulib/import/m4/sys_socket_h.m4: Update.
2693         * gnulib/import/m4/sys_stat_h.m4: Update.
2694         * gnulib/import/m4/sys_time_h.m4: Update.
2695         * gnulib/import/m4/sys_types_h.m4: Update.
2696         * gnulib/import/m4/tempname.m4: Update.
2697         * gnulib/import/m4/time_h.m4: Update.
2698         * gnulib/import/m4/unistd-safer.m4: Update.
2699         * gnulib/import/m4/unistd_h.m4: Update.
2700         * gnulib/import/m4/warn-on-use.m4: Update.
2701         * gnulib/import/m4/wchar_h.m4: Update.
2702         * gnulib/import/m4/wchar_t.m4: Update.
2703         * gnulib/import/m4/wctype_h.m4: Update.
2704         * gnulib/import/m4/wint_t.m4: Update.
2705         * gnulib/import/malloc.c: Update.
2706         * gnulib/import/malloc/scratch_buffer.h: Update.
2707         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2708         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2709         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2710         * gnulib/import/malloca.c: Update.
2711         * gnulib/import/malloca.h: Update.
2712         * gnulib/import/malloca.valgrind: Update.
2713         * gnulib/import/math.in.h: Update.
2714         * gnulib/import/mbrtowc.c: Update.
2715         * gnulib/import/mbsinit.c: Update.
2716         * gnulib/import/mbsrtowcs-impl.h: Update.
2717         * gnulib/import/mbsrtowcs-state.c: Update.
2718         * gnulib/import/mbsrtowcs.c: Update.
2719         * gnulib/import/memchr.c: Update.
2720         * gnulib/import/memmem.c: Update.
2721         * gnulib/import/mempcpy.c: Update.
2722         * gnulib/import/memrchr.c: Update.
2723         * gnulib/import/mkdir.c: Update.
2724         * gnulib/import/mkstemp.c: Update.
2725         * gnulib/import/msvc-inval.c: Update.
2726         * gnulib/import/msvc-inval.h: Update.
2727         * gnulib/import/msvc-nothrow.c: Update.
2728         * gnulib/import/msvc-nothrow.h: Update.
2729         * gnulib/import/open.c: Update.
2730         * gnulib/import/openat-die.c: Update.
2731         * gnulib/import/openat-priv.h: Update.
2732         * gnulib/import/openat-proc.c: Update.
2733         * gnulib/import/openat.c: Update.
2734         * gnulib/import/openat.h: Update.
2735         * gnulib/import/opendir.c: Update.
2736         * gnulib/import/pathmax.h: Update.
2737         * gnulib/import/pipe-safer.c: Update.
2738         * gnulib/import/rawmemchr.c: Update.
2739         * gnulib/import/readdir.c: Update.
2740         * gnulib/import/readlink.c: Update.
2741         * gnulib/import/realloc.c: Update.
2742         * gnulib/import/ref-add.sin: Update.
2743         * gnulib/import/ref-del.sin: Update.
2744         * gnulib/import/rename.c: Update.
2745         * gnulib/import/rewinddir.c: Update.
2746         * gnulib/import/rmdir.c: Update.
2747         * gnulib/import/same-inode.h: Update.
2748         * gnulib/import/save-cwd.c: Update.
2749         * gnulib/import/save-cwd.h: Update.
2750         * gnulib/import/scratch_buffer.h: Update.
2751         * gnulib/import/secure_getenv.c: Update.
2752         * gnulib/import/setenv.c: Update.
2753         * gnulib/import/signal.in.h: Update.
2754         * gnulib/import/stat-time.c: Update.
2755         * gnulib/import/stat-time.h: Update.
2756         * gnulib/import/stat-w32.c: Update.
2757         * gnulib/import/stat-w32.h: Update.
2758         * gnulib/import/stat.c: Update.
2759         * gnulib/import/stdbool.in.h: Update.
2760         * gnulib/import/stddef.in.h: Update.
2761         * gnulib/import/stdint.in.h: Update.
2762         * gnulib/import/stdio.in.h: Update.
2763         * gnulib/import/stdlib.in.h: Update.
2764         * gnulib/import/str-two-way.h: Update.
2765         * gnulib/import/strchrnul.c: Update.
2766         * gnulib/import/strdup.c: Update.
2767         * gnulib/import/streq.h: Update.
2768         * gnulib/import/strerror-override.c: Update.
2769         * gnulib/import/strerror-override.h: Update.
2770         * gnulib/import/strerror.c: Update.
2771         * gnulib/import/string.in.h: Update.
2772         * gnulib/import/stripslash.c: Update.
2773         * gnulib/import/strnlen1.c: Update.
2774         * gnulib/import/strnlen1.h: Update.
2775         * gnulib/import/strstr.c: Update.
2776         * gnulib/import/strtok_r.c: Update.
2777         * gnulib/import/sys_stat.in.h: Update.
2778         * gnulib/import/sys_time.in.h: Update.
2779         * gnulib/import/sys_types.in.h: Update.
2780         * gnulib/import/tempname.c: Update.
2781         * gnulib/import/tempname.h: Update.
2782         * gnulib/import/time.in.h: Update.
2783         * gnulib/import/unistd--.h: Update.
2784         * gnulib/import/unistd-safer.h: Update.
2785         * gnulib/import/unistd.in.h: Update.
2786         * gnulib/import/unsetenv.c: Update.
2787         * gnulib/import/verify.h: Update.
2788         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2789         * gnulib/import/wchar.in.h: Update.
2790         * gnulib/import/wctype.in.h: Update.
2791         * gnulib/import/xalloc-oversized.h: Update.
2792         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2793         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2794
2795 2018-08-16  Gary Benson <gbenson@redhat.com>
2796
2797         PR gdb/13000:
2798         * gdb/main.c (captured_main_1): Exit with nonzero status
2799         in batch mode if the last command to be executed failed.
2800         * NEWS: Mention the above.
2801
2802 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
2803
2804         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
2805         end of warning message.
2806
2807 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2808
2809         PR gdb/22943:
2810         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
2811         (aarch64_extract_return_value): Use
2812         aapcs_is_vfp_call_or_return_candidate.
2813         (aarch64_return_in_memory): Likewise.
2814         (aarch64_store_return_value): Likewise.
2815
2816 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2817
2818         * aarch64-tdep.c
2819         (aapcs_is_vfp_call_or_return_candidate): Make static
2820         (pass_in_v_or_stack): Remove function.
2821         (pass_in_v_vfp_candidate): New function.
2822         (aarch64_push_dummy_call): Check for float register candidates.
2823
2824 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2825
2826         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
2827         (aapcs_is_vfp_call_or_return_candidate_1): New function.
2828         (aapcs_is_vfp_call_or_return_candidate): Likewise.
2829
2830 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
2831
2832         PR build/23399
2833         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
2834         (struct ipa_sym_addresses): Rename to...
2835         (struct ipa_sym_addresses_common): ... this.
2836         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
2837
2838 2018-08-28  Tom Tromey  <tom@tromey.com>
2839
2840         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2841         (token_fifo): Now a std::vector.
2842         (yylex, c_parse): Update.
2843         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2844         (token_fifo): Now a std::vector.
2845         (yylex, d_parse): Update.
2846         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2847         (token_fifo): Now a std::vector.
2848         (yylex, go_parse): Update.
2849
2850 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
2851
2852         * parser-defs.h (struct type_stack) <elements>: Change type to
2853         std::vector<union type_stack_elt>.
2854         <depth, size>: Remove.
2855         * parse.c (parse_exp_in_context_1): Adjust.
2856         (type_stack_reserve): Remove.
2857         (check_type_stack_depth): Remove.
2858         (insert_into_type_stack): Adjust to std::vector.
2859         (insert_type): Likewise.
2860         (push_type): Likewise.
2861         (push_type_int): Likewise.
2862         (insert_type_address_space): Likewise.
2863         (pop_type): Likewise.
2864         (pop_type_int): Likewise.
2865         (pop_typelist): Likewise.
2866         (pop_type_stack): Likewise.
2867         (append_type_stack): Likewise.
2868         (push_type_stack): Likewise.
2869         (get_type_stack): Likewise.
2870         (type_stack_cleanup): Likewise.
2871         (push_typelist): Likewise.
2872         (follow_types): Likewise.
2873         (_initialize_parse): Likewise.
2874
2875 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2876
2877         * NEWS: Mention csky target.
2878
2879 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
2880             Hafiz Abid Qadeer  <abidh@codesourcery.com>
2881             Don Breazeal  <donb@codesourcery.com>
2882
2883         * csky-linux-tdep.c: New file.
2884         * csky-tdep.c: Likewise.
2885         * csky-tdep.h: Likewise.
2886         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
2887         csky-tdep.o.
2888         (HFILES_NO_SRCDIR): Add csky-tdep.h.
2889         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
2890         * configure.tgt: Add csky support.
2891
2892 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
2893
2894         * python/py-framefilter.c (py_print_frame): Print frame architecture
2895         when printing on an MI output.
2896
2897 2018-08-27  Tom Tromey  <tom@tromey.com>
2898
2899         PR build/23087:
2900         * configure: Rebuild.
2901         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
2902
2903 2018-08-27  Tom Tromey  <tom@tromey.com>
2904
2905         * aarch64-linux-tdep.c
2906         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
2907         casts to int.
2908
2909 2018-08-27  Tom Tromey  <tom@tromey.com>
2910
2911         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
2912         unsigned.
2913         (ppc64_standard_linkage1, ppc64_standard_linkage2)
2914         (ppc64_standard_linkage3, ppc64_standard_linkage4)
2915         (ppc64_standard_linkage5, ppc64_standard_linkage6)
2916         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
2917         unsigned.
2918
2919 2018-08-27  Tom Tromey  <tom@tromey.com>
2920
2921         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
2922         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
2923
2924 2018-08-27  Tom Tromey  <tom@tromey.com>
2925
2926         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
2927         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
2928         ULONGEST_MAX.
2929         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
2930         ULONGEST_MAX.
2931         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
2932         ULONGEST_MAX.
2933         * sparc-linux-tdep.c (sparc32_linux_sigframe)
2934         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
2935         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
2936         ULONGEST_MAX.
2937         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
2938         (ppc64_linux_sigaction_tramp_frame)
2939         (ppc32_linux_sighandler_tramp_frame)
2940         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2941         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
2942         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
2943         * mn10300-linux-tdep.c (am33_linux_sigframe)
2944         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
2945         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
2946         * mips-linux-tdep.c (mips_linux_o32_sigframe)
2947         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
2948         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
2949         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
2950         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
2951         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
2952         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
2953         * microblaze-linux-tdep.c
2954         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2955         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
2956         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
2957         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
2958         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
2959         * common/common-types.h (ULONGEST_MAX): New define.
2960         (CORE_ADDR_MAX): Fix formatting.
2961         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
2962         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
2963         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
2964         (arm_linux_rt_sigreturn_tramp_frame)
2965         (arm_eabi_linux_sigreturn_tramp_frame)
2966         (arm_eabi_linux_rt_sigreturn_tramp_frame)
2967         (thumb2_eabi_linux_sigreturn_tramp_frame)
2968         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
2969         (arm_linux_restart_syscall_tramp_frame)
2970         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
2971         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
2972         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
2973         ULONGEST_MAX.
2974         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
2975
2976 2018-08-27  Tom Tromey  <tom@tromey.com>
2977
2978         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
2979         CORE_ADDR_MAX.
2980         * mips-tdep.c (mips_deal_with_atomic_sequence)
2981         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
2982         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
2983         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
2984         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
2985         CORE_ADDR_MAX.
2986         * aarch64-tdep.c (aarch64_software_single_step): Use
2987         CORE_ADDR_MAX.
2988
2989 2018-08-27  Tom Tromey  <tom@tromey.com>
2990
2991         * linespec.c (complete_linespec_component): Add cast to "char".
2992         * completer.c (completion_tracker::build_completion_result): Add
2993         cast to "char".
2994
2995 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2996
2997         * solist.h (struct solist, struct target_so_ops): Fix
2998         indentation.
2999
3000 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3001
3002         * ada-tasks.c (ada_task_info_s): Remove typedef.
3003         (DEF_VEC_O(ada_task_info_s)): Remove.
3004         (struct ada_tasks_inferior_data): Initialize fields.
3005         <task_list>: Make an std::vector.
3006         (get_ada_tasks_inferior_data): Allocate with new.
3007         (ada_get_task_number): Adjust.
3008         (get_task_number_from_id): Likewise.
3009         (valid_task_id): Likewise.
3010         (ada_get_task_info_from_ptid): Likewise.
3011         (iterate_over_live_ada_tasks): Likewise.
3012         (add_ada_task): Likewise.
3013         (read_known_tasks): Likewise.
3014         (ada_build_task_list): Likewise.
3015         (print_ada_task_info): Likewise.
3016         (info_task): Likewise.
3017         (task_command_1): Likewise.
3018
3019 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3020
3021         * ada-lang.c (add_angle_brackets): Return std::string.
3022
3023 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3024
3025         * python/py-threadevent.c (py_get_event_thread): Initialize
3026         pythread.
3027
3028 2018-08-24  Pedro Alves  <palves@redhat.com>
3029
3030         * python/py-bpevent.c (create_breakpoint_event_object): Use
3031         copy-initialization.
3032         * python/py-continueevent.c (emit_continue_event): Use
3033         copy-initialization.
3034         * python/py-exitedevent.c (create_exited_event_object): Return a
3035         gdbpy_ref<>.
3036         (emit_exited_event): Use copy-initialization.
3037         * python/py-inferior.c (python_new_inferior)
3038         (python_inferior_deleted, add_thread_object): Use
3039         copy-initialization.
3040         * python/py-infevents.c (create_inferior_call_event_object)
3041         (create_register_changed_event_object)
3042         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3043         (emit_inferior_call_event, emit_memory_changed_event)
3044         (emit_register_changed_event): Use copy-initialization.
3045         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3046         Return a gdbpy_ref<>.
3047         (emit_new_objfile_event): Use copy-initialization.
3048         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3049         (emit_clear_objfiles_event): Use copy-initialization.
3050         * python/py-signalevent.c (create_signal_event_object): Use
3051         copy-initialization.
3052         * python/py-threadevent.c (create_thread_event_object): Use
3053         copy-initialization.
3054
3055 2018-08-24  Pedro Alves  <palves@redhat.com>
3056             Simon Marchi  <simon.marchi@ericsson.com>
3057
3058         PR gdb/23379
3059         * python/py-continueevent.c: Include "gdbthread.h".
3060         (create_continue_event_object): Add intro comment.  Add 'ptid'
3061         parameter.  Use it to find thread to pass to
3062         create_thread_event_object.
3063         (emit_continue_event): Pass PTID down to
3064         create_continue_event_object.
3065         * python/py-event.h (py_get_event_thread): Declare.
3066         (create_thread_event_object): Remove default from 'thread'
3067         parameter.
3068         * python/py-stopevent.c (create_stop_event_object): Use
3069         py_get_event_thread.
3070         * python/py-threadevent.c (get_event_thread): Rename to ...
3071         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3072         and use it to find the thread.
3073         (create_thread_event_object): Assert that THREAD isn't null.
3074         Don't find the event thread here.
3075
3076 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3077
3078         * block.h (blockrange, blockranges): New struct declarations.
3079         (struct block): Add new field named `ranges'.
3080         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3081         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3082         macros for accessing ranges in struct block.
3083         (make_blockranges): New declaration.
3084         block.c (make_blockranges): New function.
3085         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3086         for block.
3087         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3088         * blockframe.c (cache_pc_function_block): New static global.
3089         (clear_pc_function_cache): Clear cache_pc_function_block.
3090         (find_pc_partial_function): Move comment to symtab.h.  Add
3091         support for non-contiguous blocks.
3092         * cli/cli-cmds.c (block.h): Include.
3093         (print_disassembly): Handle printing of non-contiguous blocks.
3094         (disassemble_current_function): Likewise.
3095         (disassemble_command): Likewise.
3096
3097         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3098         BLOCK_START.
3099         * blockframe.c (get_pc_function_start): Likewise.
3100         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3101         (gcc_symbol_address): Likewise.
3102         * compile/compile-object-run.c (compile_object_run): Likewise.
3103         * compile/compile.c (get_expr_block_and_pc): Likewise.
3104         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3105         (func_addr_to_tail_call_list): Likewise.
3106         * findvar.c (default_read_var_value): Likewise.
3107         * inline-frame.c (inline_frame_this_id): Likewise.
3108         (skip-inline_frames): Likewise.
3109         * infcmd.c (until_next_command): Likewise.
3110         * linespec.c (convert_linespec_to_sals): Likewise.
3111         * parse.c (parse_exp_in_context_1): Likewise.
3112         * printcmd.c (build_address_symbolic): likewise.
3113         (info_address_command): Likewise.
3114         symtab.c (find_function_start_sal): Likewise.
3115         (skip_prologue_sal): Likewise.
3116         (find_function_alias_target): Likewise.
3117         (find_gnu_ifunc): Likewise.
3118         * stack.c (find_frame_funname): Likewise.
3119         * symtab.c (fixup_symbol_section): Likewise.
3120         (find_function_start_sal): Likewise.
3121         (skip_prologue_sal): Likewsie.
3122         (find_function_alias_target): Likewise.
3123         (find_gnu_ifunc): Likewise.
3124         * tracepoint.c (info_scope_command): Likewise.
3125         * value.c (value_fn_field): Likewise.
3126
3127         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3128         in place of find_pc_partial_function.
3129         * blockframe.c (find_function_entry_range_from_pc): New function.
3130         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3131         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3132         for each range in a block.
3133
3134
3135 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3136
3137         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3138         incrementation.
3139
3140 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3141
3142         * solib-svr4.c (read_program_headers_from_bfd): Return
3143         gdb::optional<gdb::byte_vector>.
3144         (svr4_exec_displacement): Adjust.
3145
3146 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3147
3148         * solib-svr4.c (read_program_header): Return
3149         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3150         (find_program_interpreter): Return
3151         gdb::optional<gdb::byte_vector>.
3152         (scan_dyntag_auxv): Adjust.
3153         (enable_break): Adjust.
3154         (svr4_exec_displacement): Adjust.
3155
3156 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3157
3158         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3159         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3160
3161 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3162
3163         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3164         string_vprintf.
3165         * guile/scm-utils.c (gdbscm_printf): Likewise.
3166         * serial.c (serial_printf): Likewise.
3167         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3168
3169 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3170
3171         * stack.c (print_frame): Print frame architecture when printing on
3172         an MI output.
3173         * NEWS: Mention new "arch" attribute in frame output.
3174
3175 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3176
3177         * arch/aarch64.h (aarch64_regnum): Update comment.
3178
3179 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3180
3181         * NEWS: Add SVE to 8.2 section.
3182
3183 2018-08-21  Pedro Alves  <palves@redhat.com>
3184
3185         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3186         out from gdbscm_parse_function_args.
3187         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3188         gdbscm_parse_function_args_1.
3189
3190 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3191
3192         PR gdb/17816
3193         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3194         operator.
3195
3196 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3197
3198         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3199
3200 2018-08-19  Michael Spang  <spang@google.com>
3201
3202         PR gdb/11786
3203         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3204         for PT_TLS segments.
3205
3206 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3207
3208         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3209         dwarf_variable_value.
3210         * dwarf2-frame.c (class dwarf_expr_executor):
3211         Add override for dwarf_variable_value.
3212         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3213         (class symbol_needs_eval_context): Likewise.
3214         (indirect_synthetic_pointer): Add forward declaration.
3215         (sect_variable_value): New function.
3216         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3217         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3218         for DW_OP_GNU_variable_value.
3219
3220 2018-08-16  Tom Tromey  <tom@tromey.com>
3221
3222         * top.c (read_command_file): Update.
3223         (command_line_input): Remove "repeat" argument.
3224         * ada-lang.c (get_selections): Update.
3225         * linespec.c (decode_line_2): Update.
3226         * defs.h (command_line_input): Remove argument.
3227         * cli/cli-script.c (read_next_line): Update.
3228         * python/py-gdb-readline.c: Update.
3229
3230 2018-08-17  Tom Tromey  <tom@tromey.com>
3231
3232         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3233         command_line_input.
3234
3235 2018-08-15  Tom Tromey  <tom@tromey.com>
3236
3237         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3238
3239 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3240
3241         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3242         If used, use find_pc_partial_function to find address range
3243         to disassemble.
3244         * mi/mi-main.c (mi_cmd_list_features): Report
3245         "data-disassemble-a-option" feature.
3246         * NEWS: Mention new -data-disassemble option -a.
3247
3248 2018-08-13  Tom Tromey  <tom@tromey.com>
3249
3250         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3251
3252 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3253
3254         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3255         (aarch64_linux_collect_sve_regset): Likewise.
3256         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3257         * regcache.h (regcache_map_entry_size): New function.
3258
3259 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3260
3261         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3262         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3263         (SVE_HEADER_VL_LENGTH): Likewise.
3264         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3265         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3266         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3267         (SVE_HEADER_SIZE_OFFSET): Likewise.
3268         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3269         (SVE_HEADER_VL_OFFSET): Likewise.
3270         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3271         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3272         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3273         (SVE_HEADER_SIZE): Likewise.
3274         (aarch64_linux_core_read_vq): Add function.
3275         (aarch64_linux_core_read_description): Check for SVE section.
3276
3277 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3278
3279         * aarch64-fbsd-tdep.c
3280         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3281         collect_size.
3282         * aarch64-linux-tdep.c
3283         (aarch64_linux_iterate_over_regset_sections): Likewise.
3284         * alpha-linux-tdep.c
3285         (alpha_linux_iterate_over_regset_sections):
3286         * alpha-nbsd-tdep.c
3287         (alphanbsd_iterate_over_regset_sections): Likewise.
3288         * amd64-fbsd-tdep.c
3289         (amd64fbsd_iterate_over_regset_sections): Likewise.
3290         * amd64-linux-tdep.c
3291         (amd64_linux_iterate_over_regset_sections): Likewise.
3292         * arm-bsd-tdep.c
3293         (armbsd_iterate_over_regset_sections): Likewise.
3294         * arm-fbsd-tdep.c
3295         (arm_fbsd_iterate_over_regset_sections): Likewise.
3296         * arm-linux-tdep.c
3297         (arm_linux_iterate_over_regset_sections): Likewise.
3298         * corelow.c (get_core_registers_cb): Likewise.
3299         (core_target::fetch_registers): Likewise.
3300         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3301         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3302         * gdbarch.h (void): Regenerate.
3303         * gdbarch.sh: Add supply_size and collect_size.
3304         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3305         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3306         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3307         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3308         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3309         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3310         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3311         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3312         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3313         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3314         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3315         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3316         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3317         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3318         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3319         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3320         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3321         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3322         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3323         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3324         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3325         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3326         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3327         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3328         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3329         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3330         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3331         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3332         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3333         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3334
3335 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3336
3337         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3338         with string_printf.
3339
3340 2018-08-10  Keith Seitz  <keiths@redhat.com>
3341
3342         * compile/compile-c-support.c (add_code_header, add_code_footer):
3343         Move into policy class.
3344         (c_push_user_expression, pop_user_expression_nop)
3345         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3346         (compile_program): New host class.
3347         (c_compile_program): New typedef.
3348         (c_compute_porgram): Use c_compile_program.
3349
3350 2018-08-10  Keith Seitz  <keiths@redhat.com>
3351
3352         * compile/compile-internal.h (compile_instance::~compile_instance):
3353         Remove calls to htab_delete.
3354         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3355         * compile.c (compile_instance::compile_instance): Initialize
3356         htab unique pointers.
3357         (compile_instance::get_cached_type, compile_instance::insert_type)
3358         (compile_instance::error_symbol_once): Update for unique_ptr.
3359
3360 2018-08-10  Keith Seitz  <keiths@redhat.com>
3361
3362         * compile/compile-c-symbols.c (struct symbol_error)
3363         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3364         (compile_instance::insert_symbol_error)
3365         (compile_instance::error_symbol_once): Move to ...
3366         * compile/compile.c: ... here.
3367
3368 2018-08-10  Keith Seitz  <keiths@redhat.com>
3369
3370         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3371         instead of `new_compile_instance'.
3372         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3373         Update description.
3374         If the symbol error map is not initialized, create it.
3375         (generate_c_for_for_one_symbol): Do not check/initialize
3376         the symbol error map.
3377         * compile/compile-c-types.c (compile_c_instance): Make a class.
3378         Update all callers.
3379         (compile_instance::compile_instance): Initialize the type cache.
3380         (get_cached_type): New function.
3381         (insert_type): Update description.
3382         (compile_c_instance::m_default_cflags): Define.
3383         (convert_type): Update description.  Use get_cached_type.
3384         (delete_instance): Moved to destructor.
3385         (new_compile_instance): Moved to constructor.
3386         * compile/compile-c.h (compile_c_instance): Make class inheriting
3387         from compile_instance.
3388         <base>: Remove field.
3389         <type_map, symbol_err_map>: Move to base class.
3390         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3391         * compile/compile-internal.h (compile_instance): Make class.
3392         <type_map_t, symbol_err_map_t>: Define.
3393         <fe>: Rename to `m_gcc_fe'.
3394         <scope, block, gcc_target_options>: Add `m_' prefix.
3395         <m_type_map, m_symbol_err_map>: New fields, moved from
3396         compile_c_instance.
3397         <destroy>: Remove.
3398         (convert_type, new_compile_instance): Remove.
3399         * compile/compile.c (cleanup_compile_instance): Remove.
3400         (compile_to_object): Use unique_ptr to eliminate cleanups.
3401         (compile_instance::set_print_callback, compile_instance::version)
3402         (compile_instance::set_verbose)
3403         (compile_instance::set_driver_filename)
3404         (compile_instance::set_triplet_regexp)
3405         (compile_instance::set_arguments)
3406         (compile_instance::set_source_file)
3407         (compile_instance::compile): Define.
3408
3409 2018-08-10  Keith Seitz  <keiths@redhat.com>
3410
3411         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3412         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3413         gcc-c-fe.def to define C plugin.
3414         (delete_instance): Delete `c_plugin'.
3415         (new_compile_instance): Initialize `c_plugin'.
3416         * compile/compile-c.h: Include gcc_c_plugin.h.
3417         (struct compile_c_instance) <c_plugin>: New member.
3418         * gcc-c-plugin.h: New file.
3419         Update all callers with API change.
3420
3421 2018-08-10  Keith Seitz  <keiths@redhat.com>
3422
3423         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3424         (HFILES_NO_SRCDIR): ... to here.
3425         Add compile-internal.h and compile-c.h.
3426         * compile/compile-c-support.c: Include compile-c.h.
3427         * compile/compile-c-symbols.c: Include compile-c.h.
3428         (generate_c_for_variable_locations): Update comment.
3429         * compile/compile-c-types.c: Include compile-c.h.
3430         * compile/compile-c.h: New file -- moved C language declarations
3431         from other files here.
3432         * compile/compile-internal.h: Do not include hashtab.h or
3433         common/enum-flags.h.
3434         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3435         (gcc_convert_symbol, gcc_symbol_address)
3436         (generate_c_for_variable_locations, c_get_mode_for_size)
3437         (c_get_range_decl_name): Definitions moved to compile-c.h.
3438         * compile/compile-loc2c.c: Include compile-c.h.
3439
3440 2018-08-10  Keith Seitz  <keiths@redhat.com>
3441
3442         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3443         (c_symbol_substitution_name): ... this.
3444         Update all callers.
3445
3446 2018-08-10  Keith Seitz  <keiths@redhat.com>
3447
3448         * compile/compile-c-support.c (c_compute_program): Use
3449         unique_xmalloc_ptr to eliminate cleanup.
3450         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3451         Return a unique_xmalloc_ptr and eliminate cleanup.
3452         * compile/compile-internal.h (generate_c_for_variable_locations):
3453         Return unique_xmalloc_ptr and update description.
3454
3455 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3456
3457         * corelow.c (core_target::get_core_register_section): Rename
3458         min_size to section_min_size.
3459
3460 2018-08-09  Jim Wilson  <jimw@sifive.com>
3461
3462         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3463         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3464         * NEWS: Mention new GNU/Linux RISC-V target.
3465         * configure.host: Add riscv*-*-linux*.
3466         * configure.nat: Add riscv*.
3467         * configure.tgt: Add riscv*-*-linux*.
3468         * riscv-linux-nat.c: New file.
3469         * riscv-linux-tdep.c: New file.
3470
3471 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3472
3473         * infrun.c (resume): Make static, add forward declaration.
3474         (proceed): Update header comment.
3475         * infrun.h (resume): Delete declaration.
3476
3477 2018-08-09  Tom Tromey  <tom@tromey.com>
3478
3479         * riscv-tdep.h: Minor formatting fixes.
3480
3481 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3482
3483         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3484         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3485         (test_mkdir_recursive): Likewise.
3486         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3487
3488 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3489
3490         * valarith.c (value_subscripted_rvalue): If an array is not in
3491         memory, and we don't know the upper bound, then we can't know that
3492         the requested element exists or not.
3493
3494 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3495
3496         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3497         (target_options_to_string): Add comment.
3498
3499 2018-08-08  Tom Tromey  <tom@tromey.com>
3500
3501         * unittests/scoped_mmap-selftests.c: Check result of "write".
3502
3503 2018-08-08  Jim Wilson  <jimw@sifive.com>
3504
3505         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3506         (decode_register_index_short): New.
3507         (decode_j_type_insn, decode_cj_type_insn): New.
3508         (decode_b_type_insn, decode_cb_type_insn): New.
3509         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3510         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3511         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3512         is_c_sw_insn instead of is_sw_insn.
3513         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3514         (riscv_software_single_step): New.
3515         * riscv-tdep.h (riscv_software_single_step): Declare.
3516
3517         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3518         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3519
3520 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3521
3522         PR gdb/18050:
3523         * target.c (dispose_inferior): Don't dispose of inferiors that are
3524         already killed.
3525
3526 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3527
3528         * remote.c (remote_target::download_tracepoint): Change char* to
3529         const char*.
3530
3531 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3532
3533         * target.h (target_options_to_string): Return an std::string.
3534         * target.c (str_comma_list_concat_elem): Return void, use
3535         std::string.
3536         (do_option): Likewise.
3537         (target_options_to_string): Return an std::string.
3538         * linux-nat.c (linux_nat_target::wait): Adjust.
3539         * target-debug.h (target_debug_print_options): Adjust.
3540
3541 2018-08-07  Tom Tromey  <tom@tromey.com>
3542
3543         * Makefile.in (CPPFLAGS): New variable.
3544         (INTERNAL_CPPFLAGS): Use it.
3545
3546 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3547
3548         * NEWS: Mention the index cache.
3549
3550 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3551
3552         * common/pathstuff.h (get_standard_cache_dir): New.
3553         * common/pathstuff.c (get_standard_cache_dir): New.
3554         * build-id.h (build_id_to_string): New.
3555         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
3556         DEBUG_STR_SUFFIX): Move to here.
3557         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
3558         DEBUG_STR_SUFFIX): Move from there.
3559         (write_psymtabs_to_index): Make non-static, add basename
3560         parameter.  Write to temporary files, rename when done.
3561         (save_gdb_index_command): Adjust call to
3562         write_psymtabs_to_index.
3563         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
3564         field.
3565         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
3566         (get_gdb_index_contents_from_cache): New.
3567         (get_gdb_index_contents_from_cache_dwz): New.
3568         (dwarf2_initialize_objfile): Read index from cache.
3569         (dwarf2_build_psymtabs): Save to index.
3570         * dwarf-index-cache.h: New file.
3571         * dwarf-index-cache.c: New file.
3572         * dwarf-index-write.h: New file.
3573
3574 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3575
3576         * gnulib/aclocal.m4: Re-generate.
3577         * gnulib/config.in: Re-generate.
3578         * gnulib/configure: Re-generate.
3579         * gnulib/import/Makefile.am: Re-generate.
3580         * gnulib/import/Makefile.in: Re-generate.
3581         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3582         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3583         * gnulib/import/m4/mkdir.m4: New file.
3584         * gnulib/import/mkdir.c: New file.
3585         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
3586         module.
3587
3588 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3589
3590         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
3591         * common/scoped_mmap.c: New file.
3592         * common/scoped_mmap.h (destroy): New method.
3593         (~scoped_mmap, reset): Use destroy.
3594         (scoped_mmap): New move constructor.
3595         (mmap_file): New declaration.
3596         * unittests/scoped_mmap-selftests.c (test_normal,
3597         test_invalid_filename, run_tests): New functions.
3598         (_initialize_scoped_mmap_selftests): Register selftest.
3599
3600 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3601
3602         * dwarf2read.c (read_gdb_index_from_section): Rename to...
3603         (read_gdb_index_from_buffer): ... this.  Remove section
3604         parameter, add buffer parameter.
3605         (get_gdb_index_contents_ftype,
3606         get_gdb_index_contents_dwz_ftype): New typedefs.
3607         (dwarf2_read_gdb_index): Add callback parameters to get the
3608         index contents.
3609         (get_gdb_index_contents_from_section): New.
3610         (dwarf2_initialize_objfile): Update call to
3611         dwarf2_read_gdb_index.
3612
3613 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3614
3615         * common/filestuff.h (gdb_fopen_cloexec): New overload.
3616         (gdb_open_cloexec): Likewise.
3617         * nat/linux-osdata.c (command_from_pid): Use string_printf.
3618         (commandline_from_pid): Likewise.
3619         (linux_xfer_osdata_threads): Likewise.
3620         (linux_xfer_osdata_fds): Likewise.
3621         * ada-lang.c (is_package_name): Likewise.
3622         * auxv.c (procfs_xfer_auxv): Likewise.
3623         * breakpoint.c (print_one_breakpoint_location): Use
3624         uiout::field_fmt.
3625         (print_one_catch_solib): Use string_printf.
3626         * coff-pe-read.c (add_pe_exported_sym): Likewise.
3627         (add_pe_forwarded_sym): Likewise.
3628         * dwarf2read.c (create_type_unit_group): Likewise.
3629         (build_error_marker_type): Likewise.
3630         * infcall.c (get_function_name): Likewise.
3631         * valprint.c (print_converted_chars_to_obstack): Likewise.
3632         * xtensa-tdep.c (xtensa_register_type): Likewise.
3633
3634 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
3635
3636         * remote.c (remote_target::download_tracepoint): Fix format
3637         string errors.
3638
3639 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3640
3641         * tracefile.c: Include common/byte-vector.h.
3642         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
3643         with trace_regblock_size if needed.  Update uses of buf.
3644
3645 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3646
3647         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
3648         std::vector<unsigned char>.
3649         * tracepoint.c (collection_list::collection_list): Remove
3650         m_regs_mask initializer from initializer list.  Resize
3651         m_regs_mask using the largest remote register number.
3652         (collection_list::add_remote_register): Remove size check on
3653         m_regs_mask.  Use at to access element.
3654         (collection_list::stringify): Change type of temp_buf to
3655         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
3656         stringify the register mask.  Use pack_hex_byte for the register
3657         mask.
3658
3659 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3660
3661         * tracepoint.h (class collection_list) <add_register>: Remove.
3662         <add_remote_register, add_ax_registers, add_local_register>:
3663         Declare.
3664         <add_memrange>: Add scope parameter.
3665         * tracepoint.c (encode_actions_1): Likewise.
3666         (collection_list::add_register): Rename to ...
3667         (collection_list::add_remote_register): ... this.  Update
3668         comment.
3669         (collection_list::add_ax_registers, add_local_register): New
3670         methods.
3671         (collection_list::add_memrange): Add scope parameter.  Call
3672         add_local_register instead of add_register.
3673         (finalize_tracepoint_aexpr): New function.
3674         (collection_list::collect_symbol): Update calls to add_memrange.
3675         Call add_local_register instead of add_register.  Call
3676         add_ax_registers.  Call finalize_tracepoint_aexpr.
3677         (encode_actions_1): Get remote regnos for $reg action.  Call
3678         add_remote_register, add_ax_registers, and add_local_register.
3679         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
3680         (validate_actionline): Call finalize_tracepoint_aexpr.
3681
3682 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3683
3684         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
3685         Replace array buf with gdb::char_vector buf, of size
3686         get_remote_packet_size ().  Replace references to buf and
3687         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
3688         and xsnprintf with snprintf.  Raise errors if the buffer is too
3689         small.
3690
3691 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3692
3693         * remote.c (remote_target::download_tracepoint): Fix the has_more
3694         predicate in the QTDP action list iteration.
3695
3696 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3697
3698         * remote.c (remote_target::download_tracepoint): Fix indentation
3699         in for block.
3700
3701 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3702
3703         * proc-api.c (_initialize_proc_api): Remove c, unused.
3704         * procfs.c (procfs_init_inferior): Remove signals, unused.
3705         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
3706         unused.
3707
3708 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
3709             Andrew Burgess  <andrew.burgess@embecosm.com>
3710
3711         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
3712         'W_STOPCODE (0)' as this could be ambiguous.
3713
3714 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
3715
3716         * ser-tcp.c (net_open): Fix thinko when deciding whether to
3717         disable TCP's Nagle algorithm (use "ai_protocol" instead of
3718         "ai_socktype").
3719
3720 2018-08-02  Tom Tromey  <tom@tromey.com>
3721
3722         PR symtab/16842.
3723         * dwarf2read.c (read_func_scope): Set symtab on template parameter
3724         symbols.
3725         (process_structure_scope): Likewise.
3726
3727 2018-08-02  Xavier Roirand  <roirand@adacore.com>
3728
3729         PR gdb/22629:
3730         * darwin-nat.c (darwin_kill_inferior): Fix handling of
3731         kill inferior.
3732
3733 2018-08-02  Tom Tromey  <tom@tromey.com>
3734
3735         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
3736         (darwin_suspend_inferior, darwin_resume_inferior)
3737         (darwin_decode_notify_message, darwin_resume_inferior_threads)
3738         (darwin_check_new_threads): Check result of get_darwin_inferior.
3739
3740 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
3741
3742         GDB 8.1.1 released.
3743
3744 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
3745
3746         * varobj.c (varobj_get_path_expr_parent): Report an error if
3747         parent is a dynamic varobj.
3748
3749 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3750
3751         * gnulib/aclocal.m4: Re-generate.
3752         * gnulib/config.in: Re-generate.
3753         * gnulib/configure: Re-generate.
3754         * gnulib/import/Makefile.in: Re-generate.
3755         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3756         * gnulib/import/m4/onceonly.m4: Re-generate.
3757
3758 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3759
3760         * target-descriptions.c (struct xml_test_tdesc): New.
3761         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
3762         (record_xml_tdesc): Update.
3763         (maintenance_check_xml_descriptions): Update.
3764         * target-descriptions.h (record_xml_tdesc): Update comment.
3765
3766 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3767
3768         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
3769         checking array bounds are defined.
3770
3771 2018-07-30  Tom Tromey  <tom@tromey.com>
3772
3773         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
3774         irreflexivity violation.
3775
3776 2018-07-30  Tom Tromey  <tom@tromey.com>
3777
3778         * cli/cli-decode.c (lookup_cmd): Remove lint code.
3779         * value.c (unpack_long): Remove lint code.
3780         * valops.c (value_ind): Remove lint code.
3781         * valarith.c (value_x_binop, value_x_unop, value_equal)
3782         (value_pos): Remove lint code.
3783
3784 2018-07-28  Tom de Vries  <tdevries@suse.de>
3785
3786         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
3787         with undefined upper bound as <optimized out>.
3788
3789 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
3790
3791         * gcore.in: Rename variable "name" to "prefix".  Expand
3792         "usage" text.
3793
3794 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
3795
3796         * windows-nat.c (windows_nat_target::create_inferior): Update to
3797         call close() in global namespace.
3798
3799 2018-07-26  Tom Tromey  <tom@tromey.com>
3800
3801         * dwarf-index-write.c (add_address_entry): Don't add objfile
3802         offsets.
3803         * dbxread.c (find_stab_function): Rename from
3804         find_stab_function_addr.  Return a bound_minimal_symbol.
3805         (read_dbx_symtab): Use raw_text_low, raw_text_high.
3806         Don't add objfile offsets.
3807         (end_psymtab): Use raw_text_low, raw_text_high,
3808         MSYMBOL_VALUE_RAW_ADDRESS.
3809         (read_ofile_symtab): Update.
3810         (process_one_symbol): Update.
3811         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
3812         offsets.
3813         (dw2_relocate): Remove.
3814         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
3815         searching addrmap.
3816         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
3817         Update.
3818         (process_psymtab_comp_unit_reader, add_partial_symbol)
3819         (add_partial_subprogram, dwarf2_ranges_read): Update.
3820         (load_partial_dies): Update.
3821         (add_address_entry): Don't add objfile offsets.
3822         (dwarf2_build_include_psymtabs): Update.
3823         (create_addrmap_from_aranges): Don't add objfile offsets.
3824         (dw2_find_pc_sect_compunit_symtab): Update.
3825         * mdebugread.c (parse_symbol): Don't add objfile offsets.
3826         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
3827         Update.
3828         (parse_partial_symbols): Don't add objfile offsets.  Use
3829         raw_text_low, raw_text_high.  Update.
3830         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
3831         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
3832         or call 'relocate' quick function.  Clear psymbol_map.
3833         * psympriv.h (struct partial_symbol) <address>: Add section
3834         offset.
3835         <set_unrelocated_address>: Rename from set_address.
3836         <raw_text_low, raw_text_high>: New methods.
3837         <text_low, text_high>: Add objfile parameter.
3838         (add_psymbol_to_bcache): Add 'section' parameter.  Call
3839         set_unrelocated_address.
3840         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3841         (find_pc_psymbol): Update.
3842         (fixup_psymbol_section, relocate_psymtabs): Remove.
3843         (dump_psymtab, psym_functions): Update.
3844         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
3845         parameter.
3846         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
3847         (start_psymtab_common): Update.
3848         * symfile-debug.c (debug_qf_relocate): Remove.
3849         (debug_sym_quick_functions): Update.
3850         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
3851         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
3852         Update.
3853
3854 2018-07-26  Tom Tromey  <tromey@redhat.com>
3855
3856         * dbxread.c (end_psymtab): Use text_high_valid and
3857         text_low_valid.
3858         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
3859         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
3860         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3861         Update comment.
3862         <text_low_valid, text_high_valid>: New fields.
3863         <set_text_low, set_text_high>: Update.
3864         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
3865
3866 2018-07-26  Tom Tromey  <tom@tromey.com>
3867
3868         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
3869         Update.
3870         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
3871         textlow and texthigh fields.
3872         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
3873         Update.
3874         * mdebugread.c (parse_lines, parse_partial_symbols)
3875         (psymtab_to_symtab_1): Update.
3876         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3877         Rename fields.  Update comment.  Now private.
3878         <text_low, text_high, set_text_low, set_text_high>: New methods.
3879         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3880         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
3881         (start_psymtab_common, maintenance_info_psymtabs)
3882         (maintenance_check_psymtabs): Update.
3883         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
3884         texthigh fields.
3885         (scan_xcoff_symtab): Update.
3886
3887 2018-07-26  Tom Tromey  <tromey@redhat.com>
3888
3889         * psympriv.h (struct partial_symbol) <unrelocated_address,
3890         address, set_address>: New methods.
3891         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
3892         (fixup_psymbol_section, relocate_psymtabs): Update.
3893         (print_partial_symbols): Add 'objfile' parameter.  Update.
3894         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
3895         Update.
3896
3897 2018-07-26  Tom Tromey  <tom@tromey.com>
3898
3899         * dwarf-index-write.c (write_psymbols, debug_names::insert)
3900         (debug_names::write_psymbols): Update.
3901         * psympriv.h (struct partial_symbol): Derive from
3902         general_symbol_info.
3903         <obj_section>: New method.
3904         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
3905         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3906         (find_pc_sect_psymbol, fixup_psymbol_section)
3907         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
3908         (print_partial_symbols, recursively_search_psymtabs)
3909         (compare_psymbols, psymbol_hash, psymbol_compare)
3910         (add_psymbol_to_bcache, maintenance_check_psymtabs)
3911         (psymbol_name_matches, psym_fill_psymbol_map): Update.
3912
3913 2018-07-26  Tom Tromey  <tromey@redhat.com>
3914
3915         * dbxread.c (end_psymtab): Remove dead code.
3916
3917 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
3918
3919         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
3920         DWARF unwinders are disabled.
3921         * dwarf2-frame.c: Add dwarf2read.h include.
3922         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
3923         disabled.
3924         (dwarf2_frame_unwinders_enabled_p): Define.
3925         (show_dwarf_unwinders_enabled_p): New function.
3926         (_initialize_dwarf2_frame): Register switch to control DWARF
3927         unwinder use.
3928         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
3929         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
3930         (show_dwarf_cmdlist): Remove static keyword.
3931         * dwarf2read.h (set_dwarf_cmdlist): Declare.
3932         (show_dwarf_cmdlist): Declare.
3933         * NEWS: Document new feature.
3934
3935 2018-07-26  Tom de Vries  <tdevries@suse.de>
3936
3937         PR breakpoints/23366
3938         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
3939
3940 2018-07-26  Tom de Vries  <tdevries@suse.de>
3941
3942         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
3943         DW_AT_count can't be translated to a dynamic prop.
3944
3945 2018-07-25  Tom de Vries  <tdevries@suse.de>
3946
3947         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
3948         try/catch.
3949
3950 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
3951
3952         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
3953
3954 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
3955
3956         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
3957
3958 2018-07-24  Keith Seitz  <keiths@redhat.comt
3959
3960         PR symtab/23010
3961         * dwarf2read.c (dw2_add_symbol_to_list): New function.
3962         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
3963         instead of add_symbol_to_list.
3964         (read_file_scope): Call prepare_one_comp_unit before reading
3965         any other DIEs.
3966
3967 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
3968
3969         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
3970
3971 2018-07-24  Tom Tromey  <tom@tromey.com>
3972
3973         * utils.c (malloc, realloc, free): Don't declare.
3974         * configure, config.in: Rebuild.
3975         * configure.ac: Don't check for declarations of free, malloc, or
3976         realloc.
3977
3978 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3979
3980         * aarch64-linux-nat.c
3981         (aarch64_linux_nat_target::stopped_data_address): Remove unused
3982         variable.
3983         * arm-linux-nat.c (fetch_regs): Likewise.
3984         (store_regs): Likewise.
3985         (fetch_vfp_regs): Likewise.
3986         (store_vfp_regs): Likewise.
3987         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
3988         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
3989         (arm_linux_nat_target::insert_watchpoint): Likewise.
3990         (arm_linux_nat_target::remove_watchpoint): Likewise.
3991         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
3992         Likewise.
3993         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
3994         Likewise.
3995         * ppc-linux-nat.c (fetch_register): Likewise.
3996         (fetch_all_gp_regs): Likewise.
3997         (fetch_ppc_registers): Likewise.
3998         (store_all_gp_regs): Likewise.
3999         (store_ppc_registers): Likewise.
4000         (hwdebug_insert_point): Likewise.
4001         (can_use_watchpoint_cond_accel): Likewise.
4002         * remote-sim.c (gdb_os_write_stdout): Likewise.
4003
4004 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4005             Tom Tromey  <tom@tromey.com>
4006
4007         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4008         test for it.
4009         * configure: Rebuild.
4010
4011 2018-07-22  Tom Tromey  <tom@tromey.com>
4012
4013         * regformats/regdat.sh: Define xmltarget_${name} inside
4014         #ifndef IN_PROCESS_AGENT.
4015
4016 2018-07-22  Tom Tromey  <tom@tromey.com>
4017
4018         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4019
4020 2018-07-22  Tom Tromey  <tom@tromey.com>
4021
4022         * symfile.c (reread_symbols): Notify iter, not objfile.
4023
4024 2018-07-22  Tom Tromey  <tom@tromey.com>
4025
4026         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4027         Use arch_ops.
4028         (ravenscar_thread_target::prepare_to_store): Likewise.
4029
4030 2018-07-22  Tom Tromey  <tom@tromey.com>
4031
4032         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4033         unused variable.  Call value_fetch_lazy when needed.
4034         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4035         Remove unused variable.  Call value_fetch_lazy when needed.
4036
4037 2018-07-22  Tom Tromey  <tom@tromey.com>
4038
4039         * m32c-tdep.c (mark_dma): Return void.
4040         (make_regs): Remove unused declarations.
4041
4042 2018-07-22  Tom Tromey  <tom@tromey.com>
4043
4044         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4045         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4046         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4047         bkscm_get_valid_block_smob_arg_unsafe for effect.
4048
4049 2018-07-22  Tom Tromey  <tom@tromey.com>
4050
4051         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4052         value_type.
4053
4054 2018-07-22  Tom Tromey  <tom@tromey.com>
4055
4056         * windows-nat.c (saved_context): Conditionally define.
4057         * remote.c (remote_target::remote_btrace_maybe_reopen):
4058         Conditionally declare "warned".
4059         * inflow.c (sigquit_ours): Conditionally define.
4060         (new_tty): Move "tty" declaration inside #if.
4061         * guile/guile.c (guile_datadir): Conditionally define.
4062         * charset.c (set_be_le_names): Move some declarations inside #if.
4063         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4064         #if.
4065         (parse_xml_btrace_conf): Likewise.
4066
4067 2018-07-22  Tom Tromey  <tom@tromey.com>
4068
4069         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4070
4071 2018-07-22  Tom Tromey  <tom@tromey.com>
4072
4073         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4074         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4075         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4076         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4077         * stack.c (frame_apply_level_command): Remove unused variable.
4078         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4079         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4080         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4081         unused variable.
4082         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4083         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4084         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4085         variable.
4086         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4087         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4088         variable.
4089         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4090         Remove unused variable.
4091         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4092         variable.
4093         * common/tdesc.c (print_xml_feature::visit): Remove unused
4094         variable.
4095         * compile/compile-object-load.c (store_regs): Remove unused
4096         variables.
4097         * complaints.c (clear_complaints): Remove unused variable.
4098         * corelow.c (core_target_open): Remove unused variable.
4099         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4100         variable.
4101         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4102         variable.
4103         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4104         variable.
4105         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4106         variable.
4107         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4108         variable.
4109         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4110         variable.
4111         * ia64-tdep.c (examine_prologue): Remove unused variable.
4112         * infcall.c (run_inferior_call): Remove unused variable.
4113         * inferior.c (exit_inferior): Remove unused variable.
4114         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4115         * linespec.c (decode_line_2): Remove unused variable.
4116         * linux-nat.c (super_close): Remove.
4117         * linux-tdep.c (linux_info_proc): Remove unused variable.
4118         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4119         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4120         Remove unused variable.
4121         * parse.c (find_minsym_type_and_address): Remove unused variable.
4122         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4123         variable.
4124         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4125         variable.
4126         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4127         variables.
4128         * record-btrace.c (record_btrace_target::store_registers): Remove
4129         unused variable.
4130         (cmd_show_record_btrace_cpu): Remove unused variable.
4131         * riscv-tdep.c (riscv_register_reggroup_p)
4132         (riscv_push_dummy_call, riscv_return_value): Remove unused
4133         variable.
4134         * rust-exp.y (literal): Remove unused variable.
4135         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4136         unused variable.
4137         <STRUCTOP_ANONYMOUS>: Likewise.
4138         * s390-linux-tdep.c (s390_linux_init_abi_31)
4139         (s390_linux_init_abi_64): Remove unused variable.
4140         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4141         (file_select_thread, net_windows_open, _initialize_ser_windows):
4142         Remove unused variables.
4143         * symtab.c (find_pc_sect_line): Remove unused variable.
4144         * target-memory.c (compute_garbled_blocks): Remove unused
4145         variable.
4146         (target_write_memory_blocks): Remove unused variable.
4147         * target.c (target_stack::unpush): Remove unused variables.
4148         * tracepoint.c (start_tracing, all_tracepoint_actions)
4149         (merge_uploaded_trace_state_variables)
4150         (print_one_static_tracepoint_marker): Remove unused variable.
4151         * unittests/basic_string_view/element_access/char/1.cc (test01):
4152         Remove unused variable.
4153         * windows-nat.c (windows_continue, windows_add_all_dlls)
4154         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4155         Remove unused variables.
4156
4157 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4158
4159         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4160         attr_profile in HAVE_ELF.
4161         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4162         HAVE_ELF.
4163
4164 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4165
4166         * frame.c (frame_register_unwind): Change parameter name.
4167         (frame_unwind_register): Likewise.
4168         (frame_unwind_register_value): Likewise.
4169         (frame_unwind_register_signed): Likewise.
4170         (frame_unwind_register_unsigned): Likewise.
4171         * frame.h (frame_register_unwind): Likewise.
4172         (frame_unwind_register): Likewise.
4173         (frame_unwind_register_value): Likewise.
4174         (frame_unwind_register_signed): Likewise.
4175         (frame_unwind_register_unsigned): Likewise.
4176         (frame_unwind_arch): Likewise.
4177
4178 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4179
4180         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4181         ISA maintenance.
4182
4183 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4184
4185         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4186         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4187         hand.
4188
4189 2018-07-20  Keith Seitz  <keiths@redhat.com>
4190
4191         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4192         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4193         m_compunit_symtab, m_language>: Add "m_" prefix.
4194         Update all uses.
4195         * buildsym.c: Update all uses.
4196
4197 2018-07-20  Tom Tromey  <tom@tromey.com>
4198
4199         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4200         * buildsym.h (record_line_ftype): Remove typedef.
4201
4202 2018-07-20  Tom Tromey  <tom@tromey.com>
4203
4204         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4205         (end_expandable_symtab): Likewise.
4206         (end_symtab_get_static_block): Likewise.
4207         (end_symtab_from_static_block): Likewise.
4208         * buildsym-legacy.c (augment_type_symtab): Remove.
4209         (end_expandable_symtab): Remove.
4210         (end_symtab_get_static_block): Remove.
4211         (end_symtab_from_static_block): Remove.
4212
4213 2018-07-20  Tom Tromey  <tom@tromey.com>
4214
4215         * dwarf2read.c: Include buildsym.h.
4216         (struct dwarf2_cu) <builder>: New method.
4217         (fixup_go_packaging): Update.
4218         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4219         use scoped_free_pendings.
4220         (using_directives): Add "cu" parameter, remove "language".
4221         (read_import_statement, setup_type_unit_groups, )
4222         (read_func_scope, read_lexical_block_scope)
4223         (dwarf2_record_block_ranges, read_namespace): Update.
4224         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4225         (lnp_state_machine::handle_end_sequence): Update.
4226         (class lnp_state_machine) <m_cu>: New member.
4227         <m_record_line_callback>: Remove.
4228         <m_currently_recording_lines>: New member.
4229         (lnp_state_machine::handle_set_file): Update.
4230         (noop_record_line): Remove.
4231         (dwarf_record_line_p): Add cu parameter.
4232         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4233         (lnp_state_machine::record_line)
4234         (lnp_state_machine::lnp_state_machine)
4235         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4236         (dwarf_decode_lines): Update.
4237         (dwarf2_start_subfile): Add cu parameter.
4238         (dwarf2_start_symtab, new_symbol): Update.
4239         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4240         Remove dwarf2_per_objfile parameter.
4241         (dwarf_decode_macros): Update.
4242
4243 2018-07-20  Tom Tromey  <tom@tromey.com>
4244
4245         * stabsread.c (define_symbol): Update.
4246         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4247         * dwarf2read.c (new_symbol): Update.
4248         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4249         * cp-namespace.c: Include buildsym.h.
4250         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4251         * buildsym-legacy.c (get_buildsym_compunit): New function.
4252
4253 2018-07-20  Tom Tromey  <tom@tromey.com>
4254
4255         * xcoffread.c: Include buildsym-legacy.h.
4256         * windows-nat.c: Include buildsym-legacy.h.
4257         * stabsread.c: Include buildsym-legacy.h.
4258         * mdebugread.c: Include buildsym-legacy.h.
4259         * buildsym-legacy.h: New file.
4260         * buildsym-legacy.c: New file, from buildsym.c.
4261         * go32-nat.c: Include buildsym-legacy.h.
4262         * dwarf2read.c: Include buildsym-legacy.h.
4263         * dbxread.c: Include buildsym-legacy.h.
4264         * cp-namespace.c: Include buildsym-legacy.h.
4265         * coffread.c: Include buildsym-legacy.h.
4266         * buildsym.h: Move some contents to buildsym-legacy.h.
4267         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4268         buildsym-legacy.c.
4269         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4270
4271 2018-07-20  Tom Tromey  <tom@tromey.com>
4272
4273         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4274         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4275         (buildsym_compunit::buildsym_compunit)
4276         (buildsym_compunit::~buildsym_compunit)
4277         (buildsym_compunit::get_macro_table): Define.
4278
4279 2018-07-20  Tom Tromey  <tom@tromey.com>
4280
4281         * buildsym.c (reset_symtab_globals): Remove.
4282         (buildsym_compunit::end_symtab_from_static_block): Update.
4283         (buildsym_compunit::augment_type_symtab): Update.
4284         (end_symtab_from_static_block): Call free_buildsym_compunit.
4285         (augment_type_symtab, end_symtab, end_expandable_symtab):
4286         Likewise.
4287
4288 2018-07-20  Tom Tromey  <tom@tromey.com>
4289
4290         * arch-utils.c: Do not include buildsym.h.
4291         * mipsread.c: Do not include buildsym.h.
4292         * machoread.c: Do not include buildsym.h.
4293         * elfread.c: Do not include buildsym.h.
4294
4295 2018-07-20  Tom Tromey  <tom@tromey.com>
4296
4297         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4298         initialization.
4299         (buildsym_compunit): Add new constructor.
4300         (struct buildsym_compunit) <get_last_source_file, finish_block,
4301         record_block_range, start_subfile, patch_subfile_names,
4302         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4303         set_last_source_start_addr, get_last_source_start_addr,
4304         get_local_using_directives, set_local_using_directives,
4305         get_global_using_directives, outermost_context_p,
4306         get_current_context_stack, get_context_stack_depth,
4307         get_current_subfile, get_local_symbols, get_file_symbols,
4308         get_global_symbols, record_debugformat, record_producer,
4309         push_context, pop_context, end_symtab_get_static_block,
4310         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4311         New public methods.
4312         <record_pending_block, finish_block_internal, make_blockvector,
4313         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4314         private methods.
4315         Update all users.
4316
4317 2018-05-22  Tom Tromey  <tom@tromey.com>
4318
4319         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4320         parameter.
4321         (finish_block_internal): Update.
4322
4323 2018-07-20  Tom Tromey  <tom@tromey.com>
4324
4325         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4326         parameter.
4327         (finish_block_internal): Update.
4328
4329 2018-07-20  Tom Tromey  <tom@tromey.com>
4330
4331         * buildsym.h (EXTERN): Don't define or undef.
4332         * buildsym.c (EXTERN): Don't define.
4333
4334 2018-07-20  Tom Tromey  <tom@tromey.com>
4335
4336         * buildsym.c: Remove TODO comment.
4337
4338 2018-07-20  Tom Tromey  <tom@tromey.com>
4339
4340         * coffread.c (coff_symtab_read): Update.
4341         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4342         (xcoff_new_init): Update.
4343         * mipsread.c (mipscoff_new_init): Update.
4344         * mdebugread.c (mdebug_build_psymtabs): Update.
4345         * elfread.c (elf_new_init): Update.
4346         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4347         Update.
4348         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4349         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4350         (stabsect_build_psymtabs): Update.
4351         * buildsym.h (buildsym_init): Don't declare.
4352         * buildsym.c: Update comment.
4353         (prepare_for_building): Remove.
4354         (start_symtab, restart_symtab): Update.
4355         (reset_symtab_globals): Update comment.
4356         (buildsym_init): Remove.
4357
4358 2018-07-20  Tom Tromey  <tom@tromey.com>
4359
4360         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4361         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4362         (read_enum_type, common_block_start, common_block_end)
4363         (cleanup_undefined_types_1, finish_global_stabs): Update.
4364         * mdebugread.c (psymtab_to_symtab_1): Update.
4365         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4366         (read_lexical_block_scope, new_symbol): Update.
4367         * dbxread.c (process_one_symbol): Update.
4368         * coffread.c (coff_symtab_read, process_coff_symbol)
4369         (coff_read_enum_type): Update.
4370         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4371         declare.
4372         (get_local_symbols, get_file_symbols, get_global_symbols): New
4373         functions.
4374         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4375         m_global_symbols.
4376         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4377         (~scoped_free_pendings): Update.
4378         (finish_block, prepare_for_building, reset_symtab_globals)
4379         (end_symtab_get_static_block, end_symtab_with_blockvector)
4380         (augment_type_symtab, push_context): Update.
4381         (get_local_symbols, get_file_symbols, get_global_symbols): New
4382         functions.
4383         (buildsym_init): Update.
4384
4385 2018-07-20  Tom Tromey  <tom@tromey.com>
4386
4387         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4388         (process_full_type_unit): Likewise.
4389         (dwarf2_start_symtab): Set list_in_scope.
4390
4391 2018-07-20  Tom Tromey  <tom@tromey.com>
4392
4393         * dwarf2read.c (process_psymtab_comp_unit_reader)
4394         (build_type_psymtabs_reader): Do not set list_in_scope.
4395
4396 2018-07-20  Tom Tromey  <tom@tromey.com>
4397
4398         * buildsym.c (free_pendings): Remove.
4399         (add_symbol_to_list, scoped_free_pendings)
4400         (finish_block_internal, buildsym_init): Update.
4401
4402 2018-07-20  Tom Tromey  <tom@tromey.com>
4403
4404         * xcoffread.c (read_xcoff_symtab): Update.
4405         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4406         Update.
4407         * dbxread.c (process_one_symbol): Update.
4408         * coffread.c (coff_symtab_read): Update.
4409         * buildsym.h (finish_block): Update.
4410         * buildsym.c (finish_block): Remove "listhead" argument.
4411         (end_symtab_get_static_block): Update.
4412
4413 2018-07-20  Tom Tromey  <tom@tromey.com>
4414
4415         * buildsym.h (class scoped_free_pendings): Remove constructor.
4416         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4417         method.
4418         <m_pending_block_obstack, m_pending_blocks>: New members.
4419         (pending_block_obstack, pending_blocks): Remove.
4420         (scoped_free_pendings::scoped_free_pendings): Default.
4421         (~scoped_free_pendings): Update.
4422         (free_pending_blocks): Remove.
4423         (finish_block_internal, record_pending_block, make_blockvector)
4424         (end_symtab_get_static_block, augment_type_symtab, push_context)
4425         (buildsym_init): Update.
4426
4427 2018-07-20  Tom Tromey  <tom@tromey.com>
4428
4429         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4430         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4431         members.
4432         (pending_addrmap, pending_addrmap_obstack)
4433         (pending_addrmap_interesting): Remove.
4434         (scoped_free_pendings, record_block_range, make_blockvector)
4435         (prepare_for_building, reset_symtab_globals, buildsym_init):
4436         Update.
4437
4438 2018-07-20  Tom Tromey  <tom@tromey.com>
4439
4440         * xcoffread.c (process_linenos): Update.
4441         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4442         * mdebugread.c (psymtab_to_symtab_1): Update.
4443         * dwarf2read.c (setup_type_unit_groups)
4444         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4445         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4446         * dbxread.c (process_one_symbol): Update.
4447         * coffread.c (coff_symtab_read, enter_linenos)
4448         (process_coff_symbol): Update.
4449         * buildsym.h (current_subfile): Don't declare.
4450         (get_current_subfile): Declare.
4451         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4452         member.
4453         (start_subfile, free_buildsym_compunit, push_subfile)
4454         (prepare_for_building, start_symtab): Update.
4455         (get_current_subfile): New function.
4456
4457 2018-07-20  Tom Tromey  <tom@tromey.com>
4458
4459         * coffread.c (coff_symtab_read): Update.
4460         * xcoffread.c (read_xcoff_symtab): Update.
4461         * dwarf2read.c (new_symbol): Update.
4462         (read_func_scope, read_lexical_block_scope): Update.
4463         * dbxread.c (process_one_symbol): Update.
4464         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4465         (outermost_context_p): Remove macro.
4466         (outermost_context_p, get_current_context_stack)
4467         (get_context_stack_depth): Declare.
4468         (pop_context): Return struct context_stack.
4469         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4470         member.
4471         (context_stack_size): Remove.
4472         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4473         (prepare_for_building, end_symtab_get_static_block)
4474         (augment_type_symtab, push_context): Update.
4475         (pop_context): Return struct context_stack.
4476         (outermost_context_p, get_current_context_stack)
4477         (get_context_stack_depth): New functions.
4478         (buildsym_init): Update.
4479
4480 2018-07-20  Tom Tromey  <tom@tromey.com>
4481
4482         * rust-exp.y: Now a pure parser.  Update all rules.
4483         (%union): Move earlier.
4484         (current_parser, work_obstack): Remove globals.
4485         (rust_parser, ~rust_parser): Update.
4486         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4487         lex_character, lex_number, lex_string, lex_identifier,
4488         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4489         convert_name, convert_params_to_expression,
4490         convert_ast_to_expression, ast_basic_type, ast_operation,
4491         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4492         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4493         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4494         ast_array_type, ast_slice_type, ast_reference_type,
4495         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4496         (rust_parse): Update.
4497         (rustyyerror, rustyylex): Add parser parameter.
4498         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4499         (rust_lex_stringish_test, rust_lex_test_sequence)
4500         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4501         (rust_lex_test_push_back, rust_lex_tests): Update.
4502
4503 2018-07-19  Pedro Alves  <palves@redhat.com>
4504
4505         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4506         gdb::unique_xmalloc_ptr.
4507         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4508         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4509         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4510         copy-initialization.
4511         * guile/scm-pretty-print.c (ppscm_print_children): Use
4512         gdb::unique_xmalloc_ptr instead of cleanups.
4513         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4514         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4515         gdb::unique_xmalloc_ptr.
4516         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4517         Adjust to use gdb::unique_xmalloc_ptr.
4518         * guile/scm-utils.c (extract_arg): Adjust.
4519         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4520         gdb::unique_xmalloc_ptr instead of a cleanup.
4521
4522 2018-07-19  Tom Tromey  <tom@tromey.com>
4523
4524         * utils.c (do_value_free_to_mark)
4525         (make_cleanup_value_free_to_mark): Remove.
4526         * utils.h (make_cleanup_value_free_to_mark): Remove.
4527
4528 2018-07-19  Pedro Alves  <palves@redhat.com>
4529
4530         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4531         forwarding reference.
4532
4533 2018-07-18  Pedro Alves  <palves@redhat.com>
4534
4535         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4536         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4537         cleanup.
4538
4539 2018-07-18  Pedro Alves  <palves@redhat.com>
4540
4541         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4542         exceptions.
4543         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4544         (gdbscm_wrap): New.
4545         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4546         directly instead of a cleanup.
4547         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4548         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
4549         (vlscm_binop_gdbthrow): New, factored out from ...
4550         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
4551         (vlscm_rich_compare): Use gdbscm_wrap.
4552         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
4553         instead of a cleanup.
4554         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
4555         cleanup.
4556         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4557         Use xfree directly instead of a cleanup.
4558         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
4559         Adjust to use gdbscm_wrap and scoped_value_mark.
4560         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
4561         (gdbscm_value_address, gdbscm_value_dereference)
4562         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
4563         scoped_value_mark.
4564         (gdbscm_value_dynamic_type): Use scoped_value_mark.
4565         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
4566         scoped_value_mark.
4567         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
4568         gdbscm_wrap and scoped_value_mark.
4569         (gdbscm_value_to_string): Use xfree directly instead of a
4570         cleanup.  Move 'buffer' unique_ptr to TRY scope.
4571         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
4572         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
4573         scoped_value_mark.
4574         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
4575         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
4576         scoped_value_mark.
4577         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
4578         gdbscm_wrap.
4579
4580 2018-07-18  Tom de Vries  <tdevries@suse.de>
4581
4582         * findvar.c (default_read_var_value): Also resolve dynamic type for
4583         LOC_OPTIMIZED_OUT vars.
4584
4585 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
4586
4587         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
4588         decoding.
4589
4590 2018-07-17  Tom Tromey  <tom@tromey.com>
4591
4592         * guile/scm-param.c (pascm_set_func, pascm_show_func)
4593         (compute_enum_list, pascm_set_param_value_x)
4594         (gdbscm_parameter_value): Update.
4595         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
4596         (gdbscm_scm_to_host_string): Update.
4597         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
4598         Update.
4599         * guile/scm-cmd.c (cmdscm_add_completion): Update.
4600         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
4601         * guile/scm-string.c (gdbscm_scm_to_string): Return
4602         unique_xmalloc_ptr.
4603         (gdbscm_scm_to_host_string): Likewise.
4604
4605 2018-07-17  Tom Tromey  <tom@tromey.com>
4606
4607         * guile/guile.c (gdbscm_eval_from_control_command): Update.
4608         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
4609         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
4610         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
4611         unique_xmalloc_ptr.
4612
4613 2018-07-17  Tom Tromey  <tom@tromey.com>
4614
4615         * guile/scm-param.c (pascm_signal_setshow_error): Update.
4616         * guile/guile-internal.h (gdbscm_exception_message_to_string):
4617         Update.
4618         * guile/scm-cmd.c (cmdscm_function): Update.
4619         * guile/scm-pretty-print.c
4620         (ppscm_print_exception_unless_memory_error): Update.
4621         * guile/scm-exception.c (gdbscm_exception_message_to_string):
4622         Return unique_xmalloc_ptr.
4623
4624 2018-07-17  Tom Tromey  <tom@tromey.com>
4625
4626         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
4627         Use string_printf.
4628
4629 2018-07-17  Jim Wilson  <jimw@sifive.com>
4630
4631         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
4632         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
4633         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
4634         unecessary braces after EF_RISCV_RVC test.  Delete call to
4635         set_gdbarch_decr_pc_after_break.
4636
4637         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
4638         RISCV_LAST_FP_REGNUM + 1.
4639         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
4640
4641 2018-07-17  Tom Tromey  <tom@tromey.com>
4642
4643         * configure.ac: Remove --disable-gdbcli.
4644         * configure: Rebuild.
4645         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
4646         (SUBDIR_CLI_CFLAGS): Remove.
4647         (SFILES): Use SUBDIR_CLI_SRCS.
4648         (COMMON_OBS): Use SUBDIR_CLI_OBS.
4649
4650 2018-07-17  Tom Tromey  <tom@tromey.com>
4651
4652         PR gdb/18624:
4653         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
4654
4655 2018-07-16  Jim Wilson  <jimw@sifive.com>
4656
4657         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
4658
4659 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4660
4661         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
4662         variable.
4663         (libunwind_frame_sniffer): Likewise.
4664         (libunwind_frame_prev_register): Likewise.
4665         (libunwind_sigtramp_frame_sniffer): Likewise.
4666         * ia64-tdep.c (ia64_access_reg): Likewise.
4667         (ia64_access_rse_reg): Likewise.
4668         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
4669         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
4670
4671 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4672
4673         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
4674
4675 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4676
4677         * remote-sim.c (gdbsim_target::close,
4678         gdbsim_target::mourn_inferior): Remove unused variables.
4679
4680 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
4681
4682         * ia64-tdep.c (ktab_buf): New global.
4683         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
4684         (get_kernel_table): Adjust.
4685
4686 2018-07-16  Tom Tromey  <tom@tromey.com>
4687
4688         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
4689         * dwarf2read.c (using_directives, new_symbol): Use
4690         outermost_context_p.
4691         * dbxread.c (process_one_symbol): Use outermost_context_p.
4692         * coffread.c (coff_symtab_read): Use outermost_context_p.
4693
4694 2018-07-16  Tom Tromey  <tom@tromey.com>
4695
4696         * dwarf2read.c (using_directives, read_func_scope)
4697         (read_lexical_block_scope): Update.
4698         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
4699         * buildsym.h (local_using_directives, global_using_directives):
4700         Don't declare.
4701         (get_local_using_directives, set_local_using_directives)
4702         (get_global_using_directives): Declare.
4703         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
4704         m_global_using_directives>: New members.
4705         (finish_block_internal, prepare_for_building)
4706         (reset_symtab_globals, end_symtab_get_static_block)
4707         (push_context): Update.
4708         (get_local_using_directives, set_local_using_directives)
4709         (get_global_using_directives): New functions.
4710         (buildsym_init): Update.
4711
4712 2018-07-16  Tom Tromey  <tom@tromey.com>
4713
4714         * xcoffread.c (xcoff_initial_scan): Don't call
4715         free_pending_blocks.
4716         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
4717         * buildsym.h (class scoped_free_pendings): Add constructor.
4718         (free_pending_blocks): Don't declare.
4719         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
4720         (free_pending_blocks): Now static.
4721
4722 2018-07-16  Tom Tromey  <tom@tromey.com>
4723
4724         * buildsym.h (push_subfile, pop_subfile): Update declarations.
4725         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
4726         member.
4727         (struct subfile_stack): Remove.
4728         (subfile_stack): Remove.
4729         (push_subfile, pop_subfile, buildsym_init): Update.
4730
4731 2018-07-16  Tom Tromey  <tom@tromey.com>
4732
4733         * buildsym.c (push_subfile): Use gdb_assert.
4734         (pop_subfile): Use gdb_assert.
4735
4736 2018-07-16  Tom Tromey  <tom@tromey.com>
4737
4738         * buildsym.h (merge_symbol_lists): Remove.
4739         * buildsym.c (merge_symbol_lists): Remove.
4740
4741 2018-07-16  Tom Tromey  <tom@tromey.com>
4742
4743         * stabsread.c (scan_file_globals): Update comment.
4744         * stabsread.h (scan_file_globals): Move from buildsym.h.
4745         * buildsym.h (scan_file_globals): Move to stabsread.h.
4746
4747 2018-07-16  Tom Tromey  <tom@tromey.com>
4748
4749         * xcoffread.c (xcoff_new_init): Update.
4750         * mipsread.c (mipscoff_new_init): Update.
4751         * mdebugread.c (mdebug_build_psymtabs): Update.
4752         * elfread.c (elf_new_init): Update.
4753         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
4754         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
4755         * buildsym.h (buildsym_new_init): Don't declare.
4756         * buildsym.c (buildsym_new_init): Remove.
4757
4758 2018-07-16  Tom Tromey  <tom@tromey.com>
4759
4760         * stabsread.h (within_function): Move from buildsym.h.
4761         * stabsread.c (start_stabs): Clear within_function.
4762         * coffread.c (coff_start_symtab): Clear within_function.
4763         * buildsym.h (within_function): Move to stabsread.h.
4764         * buildsym.c (prepare_for_building): Update.
4765
4766 2018-07-16  Tom Tromey  <tom@tromey.com>
4767
4768         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
4769         * dwarf2read.c (dwarf2_start_symtab): Don't set
4770         processing_gcc_compilation.
4771         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
4772
4773 2018-07-16  Tom Tromey  <tom@tromey.com>
4774
4775         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
4776         (next_symbol_text_func): Move from buildsym.h.
4777         * stabsread.c (hashname): Move from buildsym.c.
4778         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
4779         (next_symbol_text_func, hashname): Move to stabsread.h.
4780         * buildsym.c: Don't include bcache.h
4781         (hashname): Move to stasbread.c.
4782
4783 2018-07-16  Tom Tromey  <tom@tromey.com>
4784
4785         * buildsym.h (context_stack_size): Don't declare.
4786         * buildsym.c (context_stack_size): New global.
4787
4788 2018-07-16  Tom Tromey  <tom@tromey.com>
4789
4790         * dbxread.c (processing_acc_compilation): New global.
4791         * buildsym.h (processing_acc_compilation): Don't declare.
4792
4793 2018-07-16  Tom Tromey  <tom@tromey.com>
4794
4795         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
4796         * dbxread.c (read_ofile_symtab): Update.
4797         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
4798         * buildsym.h (last_source_start_addr): Remove.
4799         (set_last_source_start_addr, get_last_source_start_addr):
4800         Declare.
4801         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
4802         parameter.
4803         (struct buildsym_compunit) <m_last_source_start_addr>: New
4804         member.
4805         (prepare_for_building): Remove start_addr parameter.
4806         (start_symtab, restart_symtab, end_symtab_get_static_block)
4807         (end_symtab_with_blockvector): Update.
4808         (set_last_source_start_addr, get_last_source_start_addr): New
4809         functions.
4810
4811 2018-07-16  Tom Tromey  <tom@tromey.com>
4812
4813         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
4814         member.
4815         (have_line_numbers): Remove.
4816         (record_line, prepare_for_building, end_symtab_get_static_block)
4817         (augment_type_symtab): Update.
4818
4819 2018-07-16  Tom Tromey  <tom@tromey.com>
4820
4821         * buildsym.c (~buildsym_compunit): Free the macro table.
4822         (struct buildsym_compunit) <get_macro_table, release_macros>: New
4823         methods.
4824         <m_pending_macros>: New member.
4825         (pending_macros): Remove.
4826         (~scoped_free_pendings, get_macro_table, prepare_for_building)
4827         (reset_symtab_globals, end_symtab_get_static_block)
4828         (end_symtab_with_blockvector, augment_type_symtab)
4829         (buildsym_init): Update.
4830
4831 2018-07-16  Tom Tromey  <tom@tromey.com>
4832
4833         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
4834         parameter.
4835         (buildsym_compunit::set_last_source_file): New method.
4836         <m_last_source_file>: New member.
4837         (prepare_for_building): Remove "name" parameter.
4838         (start_symtab, restart_symtab, reset_symtab_globals): Update.
4839         (last_source_file): Remove.
4840         (set_last_source_file, get_last_source_file): Update.
4841
4842 2018-07-16  Tom Tromey  <tom@tromey.com>
4843
4844         * buildsym.c (prepare_for_building): Add assert.
4845
4846 2018-07-16  Tom Tromey  <tom@tromey.com>
4847
4848         * buildsym.c (~buildsym_compunit): Update.
4849         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
4850         (start_subfile, patch_subfile_names)
4851         (end_symtab_with_blockvector): Update.
4852
4853 2018-07-16  Tom Tromey  <tom@tromey.com>
4854
4855         * buildsym.c (struct buildsym_compunit): Add constructor,
4856         destructor, initializers.
4857         (start_buildsym_compunit): Remove.
4858         (free_buildsym_compunit): Use "delete".
4859         (start_symtab, restart_symtab): Use "new".
4860
4861 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
4862
4863         * symfile.c (set_objfile_default_section_offset): Remove struct
4864         keyword.
4865
4866 2018-07-14  Stafford Horne  <shorne@gmail.com>
4867
4868         * (Responsible Maintainers): Add myself as or1k maintainer.
4869
4870 2018-07-13  Tom Tromey  <tom@tromey.com>
4871
4872         * symfile.c (set_objfile_default_section_offset): Use extra braces
4873         around initializer.
4874
4875 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
4876
4877         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
4878         non-branching basr.
4879
4880 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4881
4882         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4883         unittests/cli-utils-selftests.c
4884         * unittests/cli-utils-selftests.c: New file.
4885
4886 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4887
4888         * NEWS: Mention new commands. Mention change to 'thread apply'.
4889
4890 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4891
4892         * thread.c (thr_try_catch_cmd): New function.
4893         (thread_apply_all_command): Handle qcs flags.
4894         (thread_apply_command): Handle qcs flags.
4895         (taas_command): New function.
4896         (tfaas_command): New function.
4897         (_initialize_thread): Update to setup the new commands 'taas
4898         and 'tfaas'. Change doc string for 'thread apply'.
4899
4900 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4901
4902         * stack.c: (trailing_outermost_frame): New function, mostly
4903         extracted from backtrace_command_1.
4904         (leading_innermost_frame): New function.
4905         (backtrace_command_1): Update to call trailing_outermost_frame.
4906         (frame_apply_command_count): New function.
4907         (frame_apply_level_command): New function.
4908         (frame_apply_all_command): New function.
4909         (frame_apply_command): New function.
4910         (faas_command): New function.
4911         (frame_cmd_list): New variable.
4912         (_initialize_stack): Update to setup the new commands 'frame apply'
4913         and 'faas'.
4914
4915 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4916
4917         * cli-utils.c (number_or_range_parser::get_number): Only handle
4918         numbers or convenience var as numbers.
4919         (parse_flags): New function.
4920         (parse_flags_qcs): New function.
4921         (number_or_range_parser::finished): Ensure parsing end is detected
4922         before end of string.
4923         * cli-utils.h (parse_flags): New function.
4924         (parse_flags_qcs): New function.
4925         (number_or_range_parser): Remove m_finished bool.
4926         (number_or_range_parser::skip_range): Set m_in_range to false.
4927
4928 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
4929
4930         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
4931         on Windows.
4932
4933 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4934             Jan Kratochvil  <jan.kratochvil@redhat.com>
4935             Paul Fertser  <fercerpav@gmail.com>
4936             Tsutomu Seki  <sekiriki@gmail.com>
4937             Pedro Alves  <palves@redhat.com>
4938
4939         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4940         'unittests/parse-connection-spec-selftests.c'.
4941         (COMMON_SFILES): Add 'common/netstuff.c'.
4942         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
4943         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
4944         * common/netstuff.c: New file.
4945         * common/netstuff.h: New file.
4946         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
4947         (wait_for_connect): Update comment.  New parameter
4948         'gdb::optional<int> sock' instead of 'struct serial *scb'.
4949         Use 'sock' directly instead of 'scb->fd'.
4950         (try_connect): New function, with code from 'net_open'.
4951         (net_open): Rewrite main loop to deal with multiple
4952         sockets/addresses.  Handle IPv6-style hostnames; implement
4953         support for IPv6 connections.
4954         * unittests/parse-connection-spec-selftests.c: New file.
4955
4956 2018-07-11  Pedro Alves  <palves@redhat.com>
4957
4958         PR gdb/23377
4959         * remote.c (remote_target::remote_detach_pid): Call
4960         set_current_process.
4961
4962 2018-07-11  Pedro Alves  <palves@redhat.com>
4963
4964         * h8300-tdep.c (h8300_gdbarch_init): Remove
4965         set_gdbarch_ecoff_reg_to_regnum calls.
4966
4967 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4968
4969         PR c++/23373
4970         * c-typeprint.c (c_type_print_base_struct_union): Don't print
4971         offsets/sizes for static members of a class/struct.
4972
4973 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
4974
4975         * target-descriptions.c (tdesc_register_bitsize): Rename.
4976         * target-descriptions.h (tdesc_register_bitsize): Likewise.
4977         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
4978         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
4979
4980 2018-07-10  Tom Tromey  <tom@tromey.com>
4981
4982         * breakpoint.c (moribund_locations): Now static and a
4983         std::vector.
4984         (breakpoint_init_inferior, moribund_breakpoint_here_p)
4985         (build_bpstat_chain, update_global_location_list)
4986         (breakpoint_retire_moribund): Update.
4987         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
4988         VEC.
4989
4990 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4991
4992         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
4993         (riscv_register_reggroup_p): Use new function, remove unneeded
4994         parenthesis.
4995         (riscv_push_dummy_call): Extend assert to compare against xlen or
4996         flen based on register type.
4997
4998 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4999
5000         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5001
5002 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5003
5004         * remote.c (show_hardware_watchpoint_limit): New function.
5005         (show_hardware_watchpoint_length_limit): New function.
5006         (show_hardware_breakpoint_limit): New function.
5007         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5008         where appropriate, update help text.
5009
5010 2018-07-09  Tom Tromey  <tom@tromey.com>
5011
5012         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5013         (CLIBS): Don't mention NAT_CLIBS.
5014
5015 2018-07-09  Tom Tromey  <tom@tromey.com>
5016
5017         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5018         (LIBGDB_OBS, clean mostlyclean): Update.
5019         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5020
5021 2018-07-09  Tom Tromey  <tom@tromey.com>
5022
5023         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5024         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5025         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5026
5027 2018-07-09  Tom Tromey  <tom@tromey.com>
5028
5029         * Makefile.in (ALLDEPFILES): Remove exec.c.
5030         (COMMON_OBS): Remove exec.o.
5031         (COMMON_SFILES): Add exec.c.
5032
5033 2018-07-09  Tom Tromey  <tom@tromey.com>
5034
5035         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5036
5037 2018-07-09  Tom Tromey  <tom@tromey.com>
5038
5039         * Makefile.in (clean mostlyclean): Remove stamp-version.
5040         (version.c): Depend on stamp-version.
5041         (stamp-version): New rule, from version.c rule.
5042
5043 2018-07-09  Tom Tromey  <tom@tromey.com>
5044
5045         * Makefile.in (init.c): Depend on stamp-init.
5046         (stamp-init): New rule, from init.c rule.
5047         (clean mostlyclean): Remove stamp-init.
5048
5049 2018-07-09  Tom Tromey  <tom@tromey.com>
5050
5051         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5052         SUBDIR_GCC_COMPILE_SRCS.
5053
5054 2018-07-09  Tom Tromey  <tom@tromey.com>
5055
5056         * Makefile.in (init.c): Remove some unused sed rules.
5057
5058 2018-07-09  Tom Tromey  <tom@tromey.com>
5059
5060         * Makefile.in (TSOBS): Remove.
5061         (INIT_FILES): Update.
5062         (LIBGDB_OBS): Update.
5063         (COMMON_SFILES): Add inflow.c.
5064         (SFILES): Remove inflow.c.
5065
5066 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5067
5068         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5069
5070 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5071
5072         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5073         get_saveloc_name, is_signal_frame_name, step_name,
5074         init_remote_name, create_addr_space_name,
5075         destroy_addr_space_name, search_unwind_table_name,
5076         find_dyn_list_name): Constify.
5077
5078 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5079
5080         * darwin-nat.c (darwin_pthread_kill): New function.
5081         (darwin_resume_thread): Use darwin_pthread_kill.
5082
5083 2018-07-05  Tom de Vries  <tdevries@suse.de>
5084
5085         * macroexp.c (macro_buffer) <operator=>: New member function.
5086
5087 2018-07-04  Tom Tromey  <tom@tromey.com>
5088
5089         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5090
5091 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5092
5093         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5094         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5095         * maint.c: Likewise.
5096         * top.c: Likewise.
5097
5098 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5099
5100         * NEWS: Create a new section for the next release branch.
5101         Rename the section of the current branch, now that it has
5102         been cut.
5103
5104 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5105
5106         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5107         * version.in: Bump version to 8.2.50.DATE-git.
5108
5109 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5110             Pedro Alves  <palves@redhat.com>
5111
5112         * linux-nat.c (linux_init_ptrace): Rename to ...
5113         (linux_init_ptrace_procfs): ... this.  Call
5114         linux_proc_init_warnings.
5115         (linux_nat_target::post_attach)
5116         (linux_nat_target::post_startup_inferior): Adjust.
5117         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5118         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5119
5120 2018-07-04  Tom de Vries  <tdevries@suse.de>
5121
5122         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5123         check ...
5124         (read_comp_unit_head): ... here.
5125
5126 2018-07-03  Tom Tromey  <tom@tromey.com>
5127
5128         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5129         (stop_tracing, tstatus_command)
5130         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5131         (print_one_static_tracepoint_marker): Update.
5132         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5133         std::vector.
5134         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5135         VEC.
5136         (all_tracepoints, static_tracepoints_here): Return std::vector.
5137
5138 2018-07-03  Tom Tromey  <tom@tromey.com>
5139
5140         * common/ptid.c (ptid_equal): Remove.
5141         * common/ptid.h (ptid_equal): Don't declare.
5142         * ada-tasks.c: Update.
5143         * breakpoint.c: Update.
5144         * common/agent.c: Update.
5145         * corelow.c: Update.
5146         * darwin-nat-info.c: Update.
5147         * darwin-nat.c: Update.
5148         * dcache.c: Update.
5149         * dtrace-probe.c: Update.
5150         * dummy-frame.c: Update.
5151         * fbsd-nat.c: Update.
5152         * frame.c: Update.
5153         * gdbthread.h: Update.
5154         * gnu-nat.c: Update.
5155         * go32-nat.c: Update.
5156         * inf-loop.c: Update.
5157         * inf-ptrace.c: Update.
5158         * infcall.c: Update.
5159         * infcmd.c: Update.
5160         * inflow.c: Update.
5161         * infrun.c: Update.
5162         * linux-fork.c: Update.
5163         * linux-nat.c: Update.
5164         * linux-thread-db.c: Update.
5165         * mi/mi-cmd-var.c: Update.
5166         * mi/mi-interp.c: Update.
5167         * mi/mi-main.c: Update.
5168         * nto-procfs.c: Update.
5169         * ppc-linux-tdep.c: Update.
5170         * procfs.c: Update.
5171         * python/py-inferior.c: Update.
5172         * python/py-record-btrace.c: Update.
5173         * python/py-record.c: Update.
5174         * ravenscar-thread.c: Update.
5175         * regcache.c: Update.
5176         * remote-sim.c: Update.
5177         * remote.c: Update.
5178         * sol-thread.c: Update.
5179         * solib.c: Update.
5180         * target.c: Update.
5181         * tui/tui-stack.c: Update.
5182         * varobj.c: Update.
5183         * windows-nat.c: Update.
5184         * windows-tdep.c: Update.
5185
5186 2018-07-03  Tom Tromey  <tom@tromey.com>
5187
5188         * common/ptid.c (ptid_match): Remove.
5189         * common/ptid.h (ptid_match): Don't declare.
5190         * fbsd-nat.c: Update.
5191         * infcmd.c: Update.
5192         * infrun.c: Update.
5193         * linux-nat.c: Update.
5194         * record-btrace.c: Update.
5195         * regcache.c: Update.
5196         * remote.c: Update.
5197
5198 2018-07-03  Tom Tromey  <tom@tromey.com>
5199
5200         * common/ptid.c (ptid_tid_p): Remove.
5201         * common/ptid.h (ptid_tid_p): Don't declare.
5202         * sol-thread.c: Update.
5203
5204 2018-07-03  Tom Tromey  <tom@tromey.com>
5205
5206         * common/ptid.c (ptid_lwp_p): Remove.
5207         * common/ptid.h (ptid_lwp_p): Don't declare.
5208         * fbsd-nat.c: Update.
5209         * linux-nat.c: Update.
5210         * nat/linux-procfs.c: Update.
5211         * nat/x86-linux-dregs.c: Update.
5212         * sol-thread.c: Update.
5213
5214 2018-07-03  Tom Tromey  <tom@tromey.com>
5215
5216         * common/ptid.c (ptid_is_pid): Remove.
5217         * common/ptid.h (ptid_is_pid): Don't declare.
5218         * infrun.c: Update.
5219         * linux-nat.c: Update.
5220         * mi/mi-interp.c: Update.
5221         * remote.c: Update.
5222         * thread.c: Update.
5223
5224 2018-07-03  Tom Tromey  <tom@tromey.com>
5225
5226         * common/ptid.c (ptid_get_tid): Remove.
5227         * common/ptid.h (ptid_get_tid): Don't declare.
5228         * ada-tasks.c: Update.
5229         * aix-thread.c: Update.
5230         * bsd-uthread.c: Update.
5231         * darwin-nat.c: Update.
5232         * fbsd-nat.c: Update.
5233         * i386-darwin-nat.c: Update.
5234         * infrun.c: Update.
5235         * linux-tdep.c: Update.
5236         * nto-procfs.c: Update.
5237         * ppc-ravenscar-thread.c: Update.
5238         * python/py-infthread.c: Update.
5239         * ravenscar-thread.c: Update.
5240         * sol-thread.c: Update.
5241         * sparc-ravenscar-thread.c: Update.
5242         * windows-nat.c: Update.
5243
5244 2018-07-03  Tom Tromey  <tom@tromey.com>
5245
5246         * common/ptid.c (ptid_get_lwp): Remove.
5247         * common/ptid.h (ptid_get_lwp): Don't declare.
5248         * aarch64-linux-nat.c: Update.
5249         * ada-tasks.c: Update.
5250         * aix-thread.c: Update.
5251         * amd64-linux-nat.c: Update.
5252         * arm-linux-nat.c: Update.
5253         * corelow.c: Update.
5254         * fbsd-nat.c: Update.
5255         * fbsd-tdep.c: Update.
5256         * gnu-nat.c: Update.
5257         * i386-cygwin-tdep.c: Update.
5258         * i386-gnu-nat.c: Update.
5259         * i386-linux-nat.c: Update.
5260         * ia64-linux-nat.c: Update.
5261         * inf-ptrace.c: Update.
5262         * infrun.c: Update.
5263         * linux-fork.c: Update.
5264         * linux-nat.c: Update.
5265         * linux-tdep.c: Update.
5266         * linux-thread-db.c: Update.
5267         * mips-linux-nat.c: Update.
5268         * nat/aarch64-linux-hw-point.c: Update.
5269         * nat/aarch64-linux.c: Update.
5270         * nat/linux-btrace.c: Update.
5271         * nat/linux-osdata.c: Update.
5272         * nat/linux-procfs.c: Update.
5273         * nat/x86-linux-dregs.c: Update.
5274         * obsd-nat.c: Update.
5275         * ppc-fbsd-nat.c: Update.
5276         * ppc-linux-nat.c: Update.
5277         * procfs.c: Update.
5278         * python/py-infthread.c: Update.
5279         * ravenscar-thread.c: Update.
5280         * remote.c: Update.
5281         * s390-linux-nat.c: Update.
5282         * sol-thread.c: Update.
5283         * sol2-tdep.c: Update.
5284         * spu-linux-nat.c: Update.
5285         * x86-linux-nat.c: Update.
5286         * xtensa-linux-nat.c: Update.
5287
5288 2018-07-03  Tom Tromey  <tom@tromey.com>
5289
5290         * common/ptid.c (ptid_get_pid): Remove.
5291         * common/ptid.h (ptid_get_pid): Don't declare.
5292         * aarch64-linux-nat.c: Update.
5293         * ada-lang.c: Update.
5294         * aix-thread.c: Update.
5295         * alpha-bsd-nat.c: Update.
5296         * amd64-fbsd-nat.c: Update.
5297         * amd64-linux-nat.c: Update.
5298         * arm-linux-nat.c: Update.
5299         * arm-nbsd-nat.c: Update.
5300         * auxv.c: Update.
5301         * break-catch-syscall.c: Update.
5302         * breakpoint.c: Update.
5303         * bsd-uthread.c: Update.
5304         * corelow.c: Update.
5305         * ctf.c: Update.
5306         * darwin-nat.c: Update.
5307         * fbsd-nat.c: Update.
5308         * fbsd-tdep.c: Update.
5309         * gcore.c: Update.
5310         * gnu-nat.c: Update.
5311         * hppa-nbsd-nat.c: Update.
5312         * hppa-obsd-nat.c: Update.
5313         * i386-fbsd-nat.c: Update.
5314         * ia64-linux-nat.c: Update.
5315         * inf-ptrace.c: Update.
5316         * infcmd.c: Update.
5317         * inferior.c: Update.
5318         * inferior.h: Update.
5319         * inflow.c: Update.
5320         * infrun.c: Update.
5321         * linux-fork.c: Update.
5322         * linux-nat.c: Update.
5323         * linux-tdep.c: Update.
5324         * linux-thread-db.c: Update.
5325         * m68k-bsd-nat.c: Update.
5326         * mi/mi-interp.c: Update.
5327         * mi/mi-main.c: Update.
5328         * mips-linux-nat.c: Update.
5329         * mips-nbsd-nat.c: Update.
5330         * mips64-obsd-nat.c: Update.
5331         * nat/aarch64-linux-hw-point.c: Update.
5332         * nat/aarch64-linux.c: Update.
5333         * nat/linux-btrace.c: Update.
5334         * nat/linux-osdata.c: Update.
5335         * nat/linux-procfs.c: Update.
5336         * nat/x86-linux-dregs.c: Update.
5337         * nto-procfs.c: Update.
5338         * obsd-nat.c: Update.
5339         * ppc-linux-nat.c: Update.
5340         * ppc-nbsd-nat.c: Update.
5341         * ppc-obsd-nat.c: Update.
5342         * proc-service.c: Update.
5343         * procfs.c: Update.
5344         * python/py-inferior.c: Update.
5345         * python/py-infthread.c: Update.
5346         * ravenscar-thread.c: Update.
5347         * record.c: Update.
5348         * remote-sim.c: Update.
5349         * remote.c: Update.
5350         * rs6000-nat.c: Update.
5351         * s390-linux-nat.c: Update.
5352         * sh-nbsd-nat.c: Update.
5353         * sol-thread.c: Update.
5354         * sparc-nat.c: Update.
5355         * sparc64-tdep.c: Update.
5356         * spu-linux-nat.c: Update.
5357         * spu-tdep.c: Update.
5358         * target-debug.h: Update.
5359         * target.c: Update.
5360         * thread.c: Update.
5361         * tid-parse.c: Update.
5362         * tracefile-tfile.c: Update.
5363         * vax-bsd-nat.c: Update.
5364         * windows-nat.c: Update.
5365         * x86-linux-nat.c: Update.
5366         * x86-nat.c: Update.
5367
5368 2018-07-03  Tom Tromey  <tom@tromey.com>
5369
5370         * common/ptid.c (pid_to_ptid): Remove.
5371         * common/ptid.h (pid_to_ptid): Don't declare.
5372         * aix-thread.c: Update.
5373         * arm-linux-nat.c: Update.
5374         * common/ptid.c: Update.
5375         * common/ptid.h: Update.
5376         * corelow.c: Update.
5377         * ctf.c: Update.
5378         * darwin-nat.c: Update.
5379         * fbsd-nat.c: Update.
5380         * fork-child.c: Update.
5381         * gnu-nat.c: Update.
5382         * go32-nat.c: Update.
5383         * inf-ptrace.c: Update.
5384         * infcmd.c: Update.
5385         * inferior.c: Update.
5386         * infrun.c: Update.
5387         * linux-fork.c: Update.
5388         * linux-nat.c: Update.
5389         * nat/aarch64-linux-hw-point.c: Update.
5390         * nat/fork-inferior.c: Update.
5391         * nat/x86-linux-dregs.c: Update.
5392         * nto-procfs.c: Update.
5393         * obsd-nat.c: Update.
5394         * procfs.c: Update.
5395         * progspace.c: Update.
5396         * remote.c: Update.
5397         * rs6000-nat.c: Update.
5398         * s390-linux-nat.c: Update.
5399         * sol-thread.c: Update.
5400         * spu-linux-nat.c: Update.
5401         * target.c: Update.
5402         * top.c: Update.
5403         * tracefile-tfile.c: Update.
5404         * windows-nat.c: Update.
5405
5406 2018-07-03  Tom Tromey  <tom@tromey.com>
5407
5408         * common/ptid.h (ptid_build): Don't declare.
5409         * common/ptid.c (ptid_build): Remove.
5410         * aix-thread.c: Update.
5411         * bsd-kvm.c: Update.
5412         * bsd-uthread.c: Update.
5413         * common/agent.c: Update.
5414         * common/ptid.c: Update.
5415         * common/ptid.h: Update.
5416         * corelow.c: Update.
5417         * darwin-nat.c: Update.
5418         * fbsd-nat.c: Update.
5419         * gnu-nat.c: Update.
5420         * linux-fork.c: Update.
5421         * linux-nat.c: Update.
5422         * linux-thread-db.c: Update.
5423         * nat/linux-osdata.c: Update.
5424         * nat/linux-procfs.c: Update.
5425         * nto-procfs.c: Update.
5426         * obsd-nat.c: Update.
5427         * proc-service.c: Update.
5428         * procfs.c: Update.
5429         * ravenscar-thread.c: Update.
5430         * remote-sim.c: Update.
5431         * remote.c: Update.
5432         * sol-thread.c: Update.
5433         * target.c: Update.
5434         * windows-nat.c: Update.
5435
5436 2018-07-03  Tom Tromey  <tom@tromey.com>
5437
5438         * infrun.c (follow_exec): Use exit_inferior_silent.
5439         * inferior.c (exit_inferior_num_silent): Remove.
5440         * inferior.h (exit_inferior_num_silent): Don't declare.
5441
5442 2018-07-03  Tom Tromey  <tom@tromey.com>
5443
5444         PR cli/23340:
5445         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5446         inferior_ptid on error.
5447
5448 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5449             Simon Marchi  <simon.marchi@polymtl.ca>
5450
5451         PR tdep/8282
5452         * disasm.h (gdb_disassembler): Add
5453         `m_disassembler_options_holder'. member
5454         * disasm.c (get_all_disassembler_options): New function.
5455         (gdb_disassembler::gdb_disassembler): Use it.
5456         (gdb_buffered_insn_length_init_dis): Likewise.
5457         (gdb_buffered_insn_length): Adjust accordingly.
5458         (set_disassembler_options): Handle options with arguments.
5459         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5460         line if showing options with descriptions.
5461         (disassembler_options_completer): Adapt to using the
5462         `disasm_options_and_args_t' structure.
5463         * mips-tdep.c (mips_disassembler_options): New variable.
5464         (mips_disassembler_options_o32): Likewise.
5465         (mips_disassembler_options_n32): Likewise.
5466         (mips_disassembler_options_n64): Likewise.
5467         (gdb_print_insn_mips): Don't set `disassembler_options'.
5468         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5469         functions.
5470         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5471         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5472         `gdbarch_disassembler_options_implicit' and
5473         `gdbarch_valid_disassembler_options'.
5474         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5475         `disasm_options_and_args_t' structure.
5476         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5477         method.
5478         (valid_disassembler_options): Switch from `disasm_options_t' to
5479         the `disasm_options_and_args_t' structure.
5480         * NEWS: Document `set disassembler-options' support for the MIPS
5481         target.
5482         * gdbarch.h: Regenerate.
5483         * gdbarch.c: Regenerate.
5484
5485 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5486
5487         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5488
5489 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5490
5491         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5492         parameter in call to amd64_target_description.
5493         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5494         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5495         (amd64fbsd_init_abi): Likewise.
5496         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5497         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5498         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5499         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5500
5501 2018-06-29  Pedro Alves  <palves@redhat.com>
5502
5503         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5504         "segments" parameter.
5505         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5506         (_initialize_amd64_tdep): Update call to
5507         amd64_create_target_description.
5508         (amd64_target_description): Add "segments" parameter.  Adjust
5509         the implementation to use it.
5510         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5511         call to amd64_create_target_description.
5512         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5513         * gdb/arch/amd64.h (amd64_create_target_description): Add
5514         "segments" register.
5515         * gdb/arch/amd64.c (amd64_create_target_description): Add
5516         "segments" parameter.  Call create_feature_i386_64bit_segments
5517         only if SEGMENTS is true.
5518         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5519         call to amd64_create_target_description.
5520
5521 2018-06-29  Pedro Alves  <palves@redhat.com>
5522
5523         * thread.c (thread_target_id_str): New, factored out from ...
5524         (print_thread_info_1): ... here.  Use it to compute the max
5525         "Target Id" column width.
5526
5527 2018-06-29  Pedro Alves  <palves@redhat.com>
5528
5529         * remote.c (remote_target::extra_thread_info): Delete
5530         'display_buf' and 'n' locals.  from the cache, regardless of
5531         packet mechanims is in use.  Use cache for qThreadExtra and qP
5532         methods too.
5533
5534 2018-06-29  Pedro Alves  <palves@redhat.com>
5535
5536         * blockframe.c (find_pc_sect_containing_function): New function.
5537         * breakpoint.c (print_breakpoint_location): Don't call
5538         find_pc_sect_function.
5539         * linespec.c (create_sals_line_offset): Record the location's
5540         symbol in the sal.
5541         * linespec.c (convert_address_location_to_sals): Fill in sal's
5542         symbol with find_pc_sect_containing_function.
5543         * symtab.c (find_function_start_sal): Rename to ...
5544         (find_function_start_sal_1): ... this.
5545         (find_function_start_sal): Reimplement as wrapper around
5546         find_function_start_sal_1, and use
5547         find_pc_sect_containing_function to fill in the sal's symbol.
5548         (find_function_start_sal(symbol*, bool)): Adjust.
5549         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
5550         comments.
5551         (find_pc_sect_containing_function): Declare.
5552
5553 2018-06-29  Pedro Alves  <palves@redhat.com>
5554
5555         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
5556         true if the the location has no symbol.
5557
5558 2018-06-28  Tom Tromey  <tom@tromey.com>
5559
5560         * NEWS: Mention --enable-codesign.
5561         * silent-rules.mk (ECHO_SIGN): New variable.
5562         * configure.ac: Add --enable-codesign.
5563         * configure: Rebuild.
5564         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
5565         (gdb$(EXEEXT)): Optionally invoke codesign.
5566
5567 2018-06-28  Pedro Alves  <palves@redhat.com>
5568
5569         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
5570         comments.
5571         (switch_to_thread_no_regs): Adjust comment.
5572         * infcmd.c (stop_pc): Delete.
5573         (post_create_inferior, info_program_command): Replace references
5574         to stop_pc with references to thread_info->suspend.stop_pc.
5575         * inferior.h (stop_pc): Delete declaration.
5576         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
5577         (handle_inferior_event_1, handle_signal_stop)
5578         (process_event_stop_test, keep_going_stepped_thread)
5579         (handle_step_into_function, handle_step_into_function_backward)
5580         (print_stop_location): Replace references to stop_pc with
5581         references to thread_info->suspend.stop_pc.
5582         (struct infcall_suspend_state) <stop_pc>: Delete field.
5583         (save_infcall_suspend_state, restore_infcall_suspend_state):
5584         Remove references to inf_stat->stop_pc.
5585         * linux-fork.c (fork_load_infrun_state): Likewise.
5586         * record-btrace.c (record_btrace_set_replay): Likewise.
5587         * record-full.c (record_full_goto_entry): Likewise.
5588         * remote.c (print_one_stopped_thread): Likewise.
5589         * target.c (target_resume): Extend comment.
5590         * thread.c (set_executing_thread): New.
5591         (set_executing): Use it.
5592         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
5593         Remove references to stop_pc.
5594
5595 2018-06-28  Pedro Alves  <palves@redhat.com>
5596
5597         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
5598         Moving fetching stop_pc until after ecs->event_thread is refreshed.
5599
5600 2018-06-28  Tom Tromey  <tom@tromey.com>
5601
5602         * coffread.c (coff_symfile_finish): Update.
5603         * xcoffread.c (xcoff_symfile_finish): Update.
5604         * elfread.c (elf_symfile_finish): Update.
5605         * symfile.h (dwarf2_free_objfile): Don't declare.
5606         * dwarf2read.c (_initialize_dwarf2_read): Use
5607         register_objfile_data_with_cleanup.
5608         (dwarf2_free_objfile): Now static.  Change signature.
5609
5610 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5611
5612         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
5613         option "-o" to add-symbol-file-load to add an offset to each
5614         section's load address.
5615         * symfile.c (set_objfile_default_section_offset): New function.
5616
5617 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5618
5619         * symfile.c (add_symbol_file_command): Make sure that sections
5620         with the same name are sorted in the same order.
5621
5622 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5623
5624         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
5625         require the second argument.  If omitted, load sections at the
5626         addresses specified in the file.
5627
5628 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5629
5630         * symfile.c (symbol_file_command, symbol_file_add_main_1)
5631         (_initialize_symfile): Add option "-o" to symbol-file to add an
5632         offset to each section of the symbol file.
5633
5634 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5635
5636         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
5637
5638 2018-06-27  Tom Tromey  <tom@tromey.com>
5639
5640         * stack.c (_initialize_stack): Update "func" help text.
5641
5642 2018-06-27  Tom Tromey  <tom@tromey.com>
5643
5644         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
5645         std::vector.
5646         (unwind_infopy_str, pyuw_create_unwind_info)
5647         (unwind_infopy_add_saved_register, pyuw_sniffer)
5648         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
5649         Update.
5650         (struct saved_reg): Add constructor.
5651         <value>: Now a gdbpy_ref<>.
5652
5653 2018-06-27  Tom Tromey  <tom@tromey.com>
5654
5655         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
5656
5657 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5658
5659         * gdb-gdb.py.in: Format using autopep8.
5660
5661 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5662
5663         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
5664         (type_lookup_function): Recognize CORE_ADDR values.
5665
5666 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5667
5668         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
5669         print tag_name.
5670
5671 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5672
5673         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
5674         <__lt__>: Add.
5675
5676 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5677
5678         * gdb-gdb.py: Move to...
5679         * gdb-gdb.py.in: ... here.
5680         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
5681         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
5682         dependencies.
5683         (distclean): Remove gdb-gdb.py when cleaning.
5684         (gdb-gdb.py, gdb-gdb.gdb): New rules.
5685         * configure: Re-generate.
5686
5687 2018-06-27  Pedro Alves  <palves@redhat.com>
5688
5689         * proc-service.c (get_ps_regcache): New.
5690         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
5691         (ps_lsetfpregs): Use it.
5692
5693 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
5694
5695         PR gdb/21695
5696         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
5697         (dwarf_decode_lines_1): Adjust.
5698
5699 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5700
5701         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
5702         override.
5703         <info_proc>: Likewise.
5704
5705 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
5706
5707         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
5708         to windows_fetch_one_register, and only handle the case of
5709         fetching one register.  Move the code that reloads the context
5710         and iterates over all registers if R is negative to...
5711         (windows_nat_target::fetch_registers): ... here.
5712         (do_windows_store_inferior_registers): Rename to
5713         windows_store_one_register, and only handle the case of storing
5714         one register.  Move the code that handles the case where r is
5715         negative to...
5716         (windows_nat_target::store_registers) ... here.
5717
5718 2018-06-26  Tom Tromey  <tom@tromey.com>
5719
5720         PR rust/22574:
5721         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
5722         * rust-lang.c (rust_print_struct_def): Add podata parameter.
5723         Update.
5724         (rust_internal_print_type): Add podata parameter.
5725         (rust_print_type): Update.
5726
5727 2018-06-26  Tom Tromey  <tom@tromey.com>
5728
5729         * typeprint.h (struct print_offset_data) <update, finish,
5730         maybe_print_hole>: New methods.
5731         <indentation>: New constant.
5732         * typeprint.c (print_offset_data::indentation): Define.
5733         (print_offset_data::maybe_print_hole, print_offset_data::update)
5734         (print_offset_data::finish): Move from c-typeprint.c and rename.
5735         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
5736         (print_spaces_filtered_with_print_options): Update.
5737         (c_print_type_union_field_offset, maybe_print_hole)
5738         (c_print_type_struct_field_offset): Move to typeprint.c and
5739         rename.
5740         (c_type_print_base_struct_union): Update.
5741
5742 2018-06-25  Pedro Alves  <palves@redhat.com>
5743
5744         * gdbthread.h (thread_info_ref, delete_thread)
5745         (delete_thread_silent, first_thread_of_inferior)
5746         (any_thread_of_inferior, switch_to_thread)
5747         (enable_thread_stack_temporaries)
5748         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5749         (get_last_thread_stack_temporary)
5750         (value_in_thread_stack_temporaries, can_access_registers_thread):
5751         Spell out "struct thread_info" instead of just "thread_info".
5752         * inferior.h (notice_new_inferior): Likewise.
5753
5754 2018-06-25  Pedro Alves  <palves@redhat.com>
5755
5756         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5757         pass thread_info pointer to delete_thread.
5758         (windows_nat_target::detach): Pass inferior pointer to
5759         detach_inferior.
5760         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
5761         delete_thread.
5762         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
5763         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
5764         and pass a thread_info pointer to delete_thread.
5765         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
5766         pass thread_info pointer to delete_thread.
5767         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
5768         delete_thread_silent call.
5769         * procfs.c (procfs_target::detach): Pass inferior pointer to
5770         detach_inferior.
5771         (procfs_target::wait): Pass thread_info pointer to delete_thread.
5772         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
5773         delete_thread_silent call.
5774         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5775         pass thread_info pointer to delete_thread.
5776         (windows_nat_target::detach): Pass inferior pointer to
5777         delete_inferior.
5778
5779 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5780
5781         * regcache.c (readable_regcache::read_part): Fix asserts.
5782         (reg_buffer::raw_collect_part): New function.
5783         (regcache::write_part): Fix asserts.
5784         (reg_buffer::raw_supply_part): New function.
5785         (regcache::transfer_regset_register): New helper function.
5786         (regcache::transfer_regset): Call new functions.
5787         (regcache_supply_regset): Use gdb_byte*.
5788         (regcache::supply_regset): Likewise.
5789         (regcache_collect_regset): Likewise.
5790         (regcache::collect_regset): Likewise.
5791         * regcache.h (reg_buffer::raw_collect_part): New declaration.
5792         (reg_buffer::raw_supply_part): Likewise.
5793         (regcache::transfer_regset_register): Likewise.
5794         (regcache::transfer_regset): Use gdb_byte*.
5795
5796 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5797
5798         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
5799
5800 2018-06-21  Pedro Alves  <palves@redhat.com>
5801
5802         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
5803         instead of a ptid_t.  All callers adjusted.
5804         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
5805         adjusted.
5806         (print_ada_task_info, display_current_task_id, task_command_1):
5807         Adjust.
5808         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
5809         inferior_thread.
5810         (breakpoint_kind): Adjust.
5811         (remove_breakpoints_pid): Rename to ...
5812         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
5813         pointer.  All callers adjusted.
5814         (bpstat_clear_actions): Use inferior_thread.
5815         (get_bpstat_thread): New.
5816         (bpstat_do_actions): Use it.
5817         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
5818         to take a thread_info pointer.  All callers adjusted.
5819         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
5820         (breakpoint_re_set_thread): Use inferior_thread.
5821         * breakpoint.h (struct inferior): Forward declare.
5822         (bpstat_stop_status): Update.
5823         (remove_breakpoints_pid): Delete.
5824         (remove_breakpoints_inf): New.
5825         * bsd-uthread.c (bsd_uthread_target::wait)
5826         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
5827         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
5828         (maint_btrace_packet_history_cmd)
5829         (maint_btrace_clear_packet_history_cmd): Adjust.
5830         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
5831         inferior_thread.
5832         * cli/cli-interp.c: Include "inferior.h".
5833         * common/refcounted-object.h (struct
5834         refcounted_object_ref_policy): New.
5835         * compile/compile-object-load.c: Include gdbthread.h.
5836         (store_regs): Use inferior_thread.
5837         * corelow.c (core_target::close): Use current_inferior.
5838         (core_target_open): Adjust to use first_thread_of_inferior and use
5839         the current inferior.
5840         * ctf.c (ctf_target::close): Adjust to use current_inferior.
5841         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
5842         <thread>: ... this new field.  All references adjusted.
5843         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
5844         Take a thread_info pointer instead of a ptid_t.
5845         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
5846         (dummy_frame_discard, register_dummy_frame_dtor): Take a
5847         thread_info pointer instead of a ptid_t.
5848         * elfread.c: Include "inferior.h".
5849         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
5850         Use inferior_thread.
5851         * eval.c (evaluate_subexp): Likewise.
5852         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
5853         inferior_thread.
5854         * gdb_proc_service.h (struct thread_info): Forward declare.
5855         (struct ps_prochandle) <ptid>: Delete, replaced by ...
5856         <thread>: ... this new field.  All references adjusted.
5857         * gdbarch.h, gdbarch.c: Regenerate.
5858         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
5859         'thread' parameter.  All implementations and callers adjusted.
5860         * gdbthread.h (thread_info) <set_running>: New method.
5861         (delete_thread, delete_thread_silent): Take a thread_info pointer
5862         instead of a ptid.
5863         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
5864         (first_thread_of_process): Delete, replaced by ...
5865         (first_thread_of_inferior): ... this new function.  All callers
5866         adjusted.
5867         (any_live_thread_of_process): Delete, replaced by ...
5868         (any_live_thread_of_inferior): ... this new function.  All callers
5869         adjusted.
5870         (switch_to_thread, switch_to_no_thread): Declare.
5871         (is_executing): Delete.
5872         (enable_thread_stack_temporaries): Update comment.
5873         <enable_thread_stack_temporaries>: Take a thread_info pointer
5874         instead of a ptid_t.  Incref the thread.
5875         <~enable_thread_stack_temporaries>: Decref the thread.
5876         <m_ptid>: Delete
5877         <m_thr>: New.
5878         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5879         (get_last_thread_stack_temporary)
5880         (value_in_thread_stack_temporaries, can_access_registers_thread):
5881         Take a thread_info pointer instead of a ptid_t.  All callers
5882         adjusted.
5883         * infcall.c (get_call_return_value): Use inferior_thread.
5884         (run_inferior_call): Work with thread pointers instead of ptid_t.
5885         (call_function_by_hand_dummy): Work with thread pointers instead
5886         of ptid_t.  Use thread_info_ref.
5887         * infcmd.c (proceed_thread_callback): Access thread's state
5888         directly.
5889         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
5890         access thread's state directly.
5891         (continue_command): Use inferior_thread.
5892         (info_program_command): Use find_thread_ptid and access thread
5893         state directly.
5894         (proceed_after_attach_callback): Use thread state directly.
5895         (notice_new_inferior): Take a thread_info pointer instead of a
5896         ptid_t.  All callers adjusted.
5897         (exit_inferior): Take an inferior pointer instead of a pid.  All
5898         callers adjusted.
5899         (exit_inferior_silent): New.
5900         (detach_inferior): Delete.
5901         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
5902         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
5903         (detach_inferior_command, kill_inferior_command): Use
5904         find_inferior_id instead of valid_gdb_inferior_id and
5905         gdb_inferior_id_to_pid.
5906         (inferior_command): Use inferior and thread pointers.
5907         * inferior.h (struct thread_info): Forward declare.
5908         (notice_new_inferior): Take a thread_info pointer instead of a
5909         ptid_t.  All callers adjusted.
5910         (detach_inferior): Delete declaration.
5911         (exit_inferior, exit_inferior_silent): Take an inferior pointer
5912         instead of a pid.  All callers adjusted.
5913         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
5914         (valid_gdb_inferior_id): Delete.
5915         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
5916         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
5917         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
5918         ...
5919         <inf>: ... this new field.
5920         <step_ptid>: Delete, replaced by ...
5921         <step_thread>: ... this new field.
5922         (get_displaced_stepping_state): Take an inferior pointer instead
5923         of a pid.  All callers adjusted.
5924         (displaced_step_in_progress_any_inferior): Adjust.
5925         (displaced_step_in_progress_thread): Take a thread pointer instead
5926         of a ptid_t.  All callers adjusted.
5927         (displaced_step_in_progress, add_displaced_stepping_state): Take
5928         an inferior pointer instead of a pid.  All callers adjusted.
5929         (get_displaced_step_closure_by_addr): Adjust.
5930         (remove_displaced_stepping_state): Take an inferior pointer
5931         instead of a pid.  All callers adjusted.
5932         (displaced_step_prepare_throw, displaced_step_prepare)
5933         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
5934         All callers adjusted.
5935         (start_step_over): Adjust.
5936         (infrun_thread_ptid_changed): Remove bit updating ptids in the
5937         displaced step queue.
5938         (do_target_resume): Adjust.
5939         (fetch_inferior_event): Use inferior_thread.
5940         (context_switch, get_inferior_stop_soon): Take an
5941         execution_control_state pointer instead of a ptid_t.  All callers
5942         adjusted.
5943         (switch_to_thread_cleanup): Delete.
5944         (stop_all_threads): Use scoped_restore_current_thread.
5945         * inline-frame.c: Include "gdbthread.h".
5946         (inline_state) <inline_state>: Take a thread pointer instead of a
5947         ptid_t.  All callers adjusted.
5948         <ptid>: Delete, replaced by ...
5949         <thread>: ... this new field.
5950         (find_inline_frame_state): Take a thread pointer instead of a
5951         ptid_t.  All callers adjusted.
5952         (skip_inline_frames, step_into_inline_frame)
5953         (inline_skipped_frames, inline_skipped_symbol): Take a thread
5954         pointer instead of a ptid_t.  All callers adjusted.
5955         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
5956         (inline_skipped_frames, inline_skipped_symbol): Likewise.
5957         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
5958         pointers directly.
5959         * linux-nat.c (get_detach_signal): Likewise.
5960         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
5961         (thread_db_notice_clone): Adjust.
5962         (thread_db_find_new_threads_silently)
5963         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
5964         a thread pointer instead of a ptid_t.  All callers adjusted.
5965         * mi/mi-cmd-var.c: Include "inferior.h".
5966         (mi_cmd_var_update_iter): Update to use thread pointers.
5967         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
5968         inferior directly.
5969         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
5970         out to ...
5971         (mi_output_running): ... this new function.
5972         (mi_on_resume_1): Adjust to use it.
5973         (mi_user_selected_context_changed): Adjust to use inferior_thread.
5974         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
5975         directly.
5976         (interrupt_thread_callback): : Adjust to use thread and inferior
5977         pointers.
5978         * proc-service.c: Include "gdbthread.h".
5979         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
5980         * progspace-and-thread.c: Include "inferior.h".
5981         * progspace.c: Include "inferior.h".
5982         * python/py-exitedevent.c (create_exited_event_object): Adjust to
5983         hold a reference to an inferior_object.
5984         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
5985         inferior_thread.
5986         * python/py-inferior.c (struct inferior_object): Give the type a
5987         tag name instead of a typedef.
5988         (python_on_normal_stop): No need to check if the current thread is
5989         listed.
5990         (inferior_to_inferior_object): Change return type to
5991         inferior_object.  All callers adjusted.
5992         (find_thread_object): Delete, bits factored out to ...
5993         (thread_to_thread_object): ... this new function.
5994         * python/py-infthread.c (create_thread_object): Use
5995         inferior_to_inferior_object.
5996         (thpy_is_stopped): Use thread pointer directly.
5997         (gdbpy_selected_thread): Use inferior_thread.
5998         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
5999         field, replaced with ...
6000         <thread>: ... this new field.  All users adjusted.
6001         (btpy_insn_or_gap_new): Drop const.
6002         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6003         callers adjusted.
6004         * python/py-record.c: Include "gdbthread.h".
6005         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6006         a ptid_t.  All callers adjusted.
6007         (gdbpy_current_recording): Use inferior_thread.
6008         * python/py-record.h (recpy_record_object) <ptid>: Delete
6009         field, replaced with ...
6010         <thread>: ... this new field.  All users adjusted.
6011         (recpy_element_object) <ptid>: Delete
6012         field, replaced with ...
6013         <thread>: ... this new field.  All users adjusted.
6014         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6015         a ptid_t.  All callers adjusted.
6016         * python/py-threadevent.c: Include "gdbthread.h".
6017         (get_event_thread): Use thread_to_thread_object.
6018         * python/python-internal.h (struct inferior_object): Forward
6019         declare.
6020         (find_thread_object, find_inferior_object): Delete declarations.
6021         (thread_to_thread_object, inferior_to_inferior_object): New
6022         declarations.
6023         * record-btrace.c: Include "inferior.h".
6024         (require_btrace_thread): Use inferior_thread.
6025         (record_btrace_frame_sniffer)
6026         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6027         (get_thread_current_frame): Use scoped_restore_current_thread and
6028         switch_to_thread.
6029         (get_thread_current_frame): Use thread pointer directly.
6030         (record_btrace_replay_at_breakpoint): Use thread's inferior
6031         pointer directly.
6032         * record-full.c: Include "inferior.h".
6033         * regcache.c: Include "gdbthread.h".
6034         (get_thread_arch_regcache): Use the inferior's address space
6035         directly.
6036         (get_thread_regcache, registers_changed_thread): New.
6037         * regcache.h (get_thread_regcache(thread_info *thread)): New
6038         overload.
6039         (registers_changed_thread): New.
6040         (remote_target) <remote_detach_1>: Swap order of parameters.
6041         (remote_add_thread): <remote_add_thread>: Return the new thread.
6042         (get_remote_thread_info(ptid_t)): New overload.
6043         (remote_target::remote_notice_new_inferior): Use thread pointers
6044         directly.
6045         (remote_target::process_initial_stop_replies): Use
6046         thread_info::set_running.
6047         (remote_target::remote_detach_1, remote_target::detach)
6048         (extended_remote_target::detach): Adjust.
6049         * stack.c (frame_show_address): Use inferior_thread.
6050         * target-debug.h (target_debug_print_thread_info_pp): New.
6051         * target-delegates.c: Regenerate.
6052         * target.c (default_thread_address_space): Delete.
6053         (memory_xfer_partial_1): Use current_inferior.
6054         (target_detach): Use current_inferior.
6055         (target_thread_address_space): Delete.
6056         (generic_mourn_inferior): Use current_inferior.
6057         * target.h (struct target_ops) <thread_address_space>: Delete.
6058         (target_thread_address_space): Delete.
6059         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6060         pointers directly.
6061         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6062         thread pointer instead of a ptid_t.  Adjust all callers.
6063         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6064         (first_thread_of_process): Delete, replaced by ...
6065         (first_thread_of_inferior): ... this new function.  All callers
6066         adjusted.
6067         (any_thread_of_process): Rename to ...
6068         (any_thread_of_inferior): ... this, and take an inferior pointer.
6069         (any_live_thread_of_process): Rename to ...
6070         (any_live_thread_of_inferior): ... this, and take an inferior
6071         pointer.
6072         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6073         (value_in_thread_stack_temporaries)
6074         (get_last_thread_stack_temporary): Take a thread pointer instead
6075         of a ptid_t.  Adjust all callers.
6076         (thread_info::set_running): New.
6077         (validate_registers_access): Use inferior_thread.
6078         (can_access_registers_ptid): Rename to ...
6079         (can_access_registers_thread): ... this, and take a thread
6080         pointer.
6081         (print_thread_info_1): Adjust to compare thread pointers instead
6082         of ptids.
6083         (switch_to_no_thread, switch_to_thread): Make extern.
6084         (scoped_restore_current_thread::~scoped_restore_current_thread):
6085         Use m_thread pointer directly.
6086         (scoped_restore_current_thread::scoped_restore_current_thread):
6087         Use inferior_thread.
6088         (thread_command): Use thread pointer directly.
6089         (thread_num_make_value_helper): Use inferior_thread.
6090         * top.c (execute_command): Use inferior_thread.
6091         * tui/tui-interp.c: Include "inferior.h".
6092         * varobj.c (varobj_create): Use inferior_thread.
6093         (value_of_root_1): Use find_thread_global_id instead of
6094         global_thread_id_to_ptid.
6095
6096 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6097
6098         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6099         possible.
6100         (regcache::write_part): Likewise.
6101         (readable_regcache::cooked_read_part): Update comment.
6102         (readable_regcache::cooked_write_part): Likewise.
6103         * regcache.h: (readable_regcache::read_part): Likewise.
6104         (regcache::write_part): Likewise.
6105
6106 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6107             Dirk Schubert  <dirk.schubert@arm.com>
6108
6109         * aarch64-linux-nat.c (post_attach): New.
6110         (aarch64_linux_nat_target::post_attach): Override post_attach to
6111         record the number of hardware debug registers.
6112
6113 2018-06-20  Tom Tromey  <tom@tromey.com>
6114
6115         * python/py-param.c (add_setshow_generic): Make parameters const.
6116         (parmpy_init): Update.
6117
6118 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6119
6120         * regcache.h (regcache_cooked_read_ftype): Rename to...
6121         (register_read_ftype): ...this, change type to function_view.
6122         (class reg_buffer) <save>: Remove src parameter.
6123         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6124         parameter non-const in first overload.  Remove src parameter in
6125         second overload.
6126         * regcache.c (do_cooked_read): Remove.
6127         (readonly_detached_regcache::readonly_detached_regcache): Make
6128         parameter non-const, adjust call to other constructor.
6129         (reg_buffer::save): Remove src parameter.
6130         * frame.c (do_frame_register_read): Remove.
6131         (frame_save_as_regcache): Use lambda function.
6132         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6133         parameter to ppu2spu_data *.
6134         (ppu2spu_sniffer): Use lambda function.
6135
6136 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6137
6138         * record-full.c (record_full_target::insert_breakpoint): Remove
6139         "struct" keyword, add const.
6140
6141 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6142
6143         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6144         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6145         * configure.ac: Remove AC_PREREQ, add missing quoting.
6146         * gnulib/configure.ac: Modernize usage of
6147         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6148         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6149         (AUTOMAKE_VERSION): Bump to 1.15.1.
6150         * configure: Re-generate.
6151         * config.in: Re-generate.
6152         * aclocal.m4: Re-generate.
6153         * gnulib/aclocal.m4: Re-generate.
6154         * gnulib/config.in: Re-generate.
6155         * gnulib/configure: Re-generate.
6156         * gnulib/import/Makefile.in: Re-generate.
6157
6158 2018-06-19  Pedro Alves  <palves@redhat.com>
6159
6160         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6161         (lookup_minimal_symbol_by_pc_section): ... here with
6162         gdb_assert_not_reached added.
6163
6164 2018-06-19  Pedro Alves  <palves@redhat.com>
6165
6166         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6167         parameter with a block parameter.  Compare location's block symbol
6168         with the frame's block instead of addresses.
6169         (skip_inline_frames): Pass the current block instead of the
6170         frame's address.  Break out as soon as we determine the frame
6171         should not be skipped.
6172
6173 2018-06-18  Tom Tromey  <tom@tromey.com>
6174
6175         * solib-aix.c (solib_aix_get_section_offsets): Return
6176         unique_xmalloc_ptr.
6177         (solib_aix_solib_create_inferior_hook): Update.
6178
6179 2018-06-18  Tom Tromey  <tom@tromey.com>
6180
6181         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6182
6183 2018-06-18  Tom Tromey  <tom@tromey.com>
6184
6185         * solib-frv.c (frv_relocate_main_executable): Use
6186         unique_xmalloc_ptr.
6187         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6188         unique_xmalloc_ptr.
6189
6190 2018-06-18  Tom Tromey  <tom@tromey.com>
6191
6192         * objfiles.h (inhibit_section_map_updates): Update.
6193         (resume_section_map_updates, resume_section_map_updates_cleanup):
6194         Remove.
6195         * solib-svr4.c (svr4_handle_solib_event): Update.
6196         * objfiles.c (inhibit_section_map_updates): Return
6197         scoped_restore_tmpl<int>.
6198         (resume_section_map_updates, resume_section_map_updates_cleanup):
6199         Remove.
6200
6201 2018-06-18  Tom Tromey  <tom@tromey.com>
6202
6203         * valprint.h (read_string): Update.
6204         * valprint.c (read_string): Change type of "buffer".
6205         (val_print_string): Update.
6206         * python/py-value.c (valpy_string): Update.
6207         * language.h (struct language_defn) <la_get_string>: Change
6208         type of "buffer".
6209         (default_get_string, c_get_string): Update.
6210         * language.c (default_get_string): Change type of "buffer".
6211         * guile/scm-value.c (gdbscm_value_to_string): Update.
6212         * c-lang.c (c_get_string): Change type of "buffer".
6213
6214 2018-06-18  Tom Tromey  <tom@tromey.com>
6215
6216         * ser-mingw.c (struct pipe_state_destroyer): New.
6217         (pipe_state_up): New typedef.
6218         (cleanup_pipe_state): Remove.
6219         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6220
6221 2018-06-18  Tom Tromey  <tom@tromey.com>
6222
6223         * rust-lang.h (rust_yyerror): Don't declare.
6224         * rust-lang.c (rust_language_defn): Update.
6225         * rust-exp.y (yyerror): Now static.
6226         * parse.c (parse_exp_in_context_1): Update.
6227         * p-lang.h (p_yyerror): Don't declare.
6228         * p-lang.c (p_language_defn): Update.
6229         * p-exp.y (yyerror): Now static.
6230         * opencl-lang.c (opencl_language_defn): Update.
6231         * objc-lang.c (objc_language_defn): Update.
6232         * m2-lang.h (m2_yyerror): Don't declare.
6233         * m2-lang.c (m2_language_defn): Update.
6234         * m2-exp.y (yyerror): Now static.
6235         * language.h (struct language_defn) <la_error>: Remove.
6236         * language.c (unk_lang_error): Remove.
6237         (unknown_language_defn, auto_language_defn): Remove.
6238         * go-lang.h (go_yyerror): Don't declare.
6239         * go-lang.c (go_language_defn): Update.
6240         * go-exp.y (yyerror): Now static.
6241         * f-lang.h (f_yyerror): Don't declare.
6242         * f-lang.c (f_language_defn): Update.
6243         * f-exp.y (yyerror): Now static.
6244         * d-lang.h (d_yyerror): Don't declare.
6245         * d-lang.c (d_language_defn): Update.
6246         * d-exp.y (yyerror): Now static.
6247         * c-lang.h (c_yyerror): Don't declare.
6248         * c-lang.c (c_language_defn, cplus_language_defn)
6249         (asm_language_defn, minimal_language_defn): Update.
6250         * c-exp.y (yyerror): Now static.
6251         * ada-lang.h (ada_yyerror): Don't declare.
6252         * ada-lang.c (ada_language_defn): Update.
6253         * ada-exp.y (yyerror): Now static.
6254
6255 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6256
6257         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6258         (store_sveregs_to_thread): Likewise.
6259         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6260         (aarch64_linux_store_inferior_registers): Likewise.
6261         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6262         function.
6263         (aarch64_sve_regs_copy_to_regcache): Likewise.
6264         (aarch64_sve_regs_copy_from_regcache): Likewise.
6265         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6266         declaration.
6267         (aarch64_sve_regs_copy_to_regcache): Likewise.
6268         (aarch64_sve_regs_copy_from_regcache): Likewise.
6269         (sve_context): Structure from Linux headers.
6270         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6271         (SVE_SIG_ZREG_SIZE): Likewise.
6272         (SVE_SIG_PREG_SIZE): Likewise.
6273         (SVE_SIG_FFR_SIZE): Likewise.
6274         (SVE_SIG_REGS_OFFSET): Likewise.
6275         (SVE_SIG_ZREGS_OFFSET): Likewise.
6276         (SVE_SIG_ZREG_OFFSET): Likewise.
6277         (SVE_SIG_ZREGS_SIZE): Likewise.
6278         (SVE_SIG_PREGS_OFFSET): Likewise.
6279         (SVE_SIG_PREG_OFFSET): Likewise.
6280         (SVE_SIG_PREGS_SIZE): Likewise.
6281         (SVE_SIG_FFR_OFFSET): Likewise.
6282         (SVE_SIG_REGS_SIZE): Likewise.
6283         (SVE_SIG_CONTEXT_SIZE): Likewise.
6284         (SVE_PT_REGS_MASK): Likewise.
6285         (SVE_PT_REGS_FPSIMD): Likewise.
6286         (SVE_PT_REGS_SVE): Likewise.
6287         (SVE_PT_VL_INHERIT): Likewise.
6288         (SVE_PT_VL_ONEXEC): Likewise.
6289         (SVE_PT_REGS_OFFSET): Likewise.
6290         (SVE_PT_FPSIMD_OFFSET): Likewise.
6291         (SVE_PT_FPSIMD_SIZE): Likewise.
6292         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6293         (SVE_PT_SVE_PREG_SIZE): Likewise.
6294         (SVE_PT_SVE_FFR_SIZE): Likewise.
6295         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6296         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6297         (__SVE_SIG_TO_PT): Likewise.
6298         (SVE_PT_SVE_OFFSET): Likewise.
6299         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6300         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6301         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6302         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6303         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6304         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6305         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6306         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6307         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6308         (SVE_PT_SVE_SIZE): Likewise.
6309         (SVE_PT_SIZE): Likewise.
6310         (HAS_SVE_STATE): New define.
6311
6312 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6313
6314         * nat/aarch64-sve-linux-sigcontext.h: New file.
6315         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6316         new files.
6317         (SVE_VQ_MIN): Likewise.
6318         (SVE_VQ_MAX): Likewise.
6319         (SVE_VL_MIN): Likewise.
6320         (SVE_VL_MAX): Likewise.
6321         (SVE_NUM_ZREGS): Likewise.
6322         (SVE_NUM_PREGS): Likewise.
6323         (sve_vl_valid): Likewise.
6324         (struct user_sve_header): Likewise.
6325
6326 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6327             Richard Bunt <Richard.Bunt@arm.com>
6328
6329         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6330         was requested by GDB.
6331
6332 2018-06-15  Tom de Vries  <tdevries@suse.de>
6333
6334         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6335
6336 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6337
6338         * gnulib/update-gnulib.sh: Print expected versions of
6339         autoconf/aclocal.
6340
6341 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6342
6343         * arch-utils.c (default_type_align): Use type_length_units.
6344         * gdbtypes.c (type_align): Use type_length_units.
6345
6346 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6347
6348         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6349         of 'define' command.
6350
6351 2018-06-14  Tom de Vries  <tdevries@suse.de>
6352
6353         PR cli/22573
6354         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6355         get_no_prettyformat_print_options.
6356
6357 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6358
6359         * sparc-nat.h: Include target.h.
6360         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6361         <fetch_registers>: Remove this argument in function call.
6362         <store_registers>: Remove this argument in function call, remove
6363         extra semicolon.
6364         <low_forget_process>: Call sparc64_forget_process instead of
6365         sparc_forget_process.
6366
6367 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6368
6369         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6370         (procfs_target::make_corefile_notes): Adjust to new
6371         target_read_alloc return type.
6372
6373 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6374             Stephen Roberts  <stephen.roberts@arm.com>
6375
6376         PR gdb/22882
6377         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6378         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6379         Move should_notify_stop local into more inner scope.
6380
6381 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6382             Stephen Roberts  <stephen.roberts@arm.com>
6383
6384         PR gdb/22882
6385         * infrun.c (resume_1): Add call to mark_async_event_handler.
6386
6387 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6388
6389         * infrun.c (do_target_wait): Change old version of $pc printed.
6390
6391 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6392
6393         * dwarf2read.c (read_index_from_section): Rename to...
6394         (read_gdb_index_from_section): ... this, update all callers.
6395         (dwarf2_read_index): Rename to...
6396         (dwarf2_read_gdb_index): ... this, update all callers.
6397
6398 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6399
6400         * gdb/hppa-linux-nat.c
6401         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6402         hppa_linux_nat_target::fetch_registers.
6403
6404 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6405
6406         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6407         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6408         (AARCH64_DWARF_SVE_FFR): Likewise.
6409         (AARCH64_DWARF_SVE_P0): Likewise.
6410         (AARCH64_DWARF_SVE_Z0): Likewise.
6411
6412 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6413
6414         * common/common-regcache.h (raw_compare): New function.
6415         * regcache.c (regcache::raw_compare): Likewise.
6416         * regcache.h (regcache::raw_compare): New declaration.
6417
6418 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6419
6420         * common/common-regcache.h (reg_buffer_common): New structure.
6421         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6422         (reg_buffer::raw_supply): Likewise.
6423         (reg_buffer::raw_supply_integer): Likewise.
6424         (reg_buffer::raw_supply_zeroed): Likewise.
6425         (reg_buffer::raw_collect): Likewise.
6426         (reg_buffer::raw_collect_integer): Likewise.
6427         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6428         (reg_buffer::raw_supply): Likewise.
6429         (reg_buffer::raw_supply_integer): Likewise.
6430         (reg_buffer::raw_supply_zeroed): Likewise.
6431         (reg_buffer::raw_collect): Likewise.
6432         (reg_buffer::raw_collect_integer): Likewise.
6433
6434 2018-06-10  Tom Tromey  <tom@tromey.com>
6435
6436         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6437         (class remote_state) <stop_reply_queue>: Now std::vector.
6438         (remote_state::~remote_state)
6439         (remote_target::stop_reply_queue_length): Update.
6440         (struct queue_iter_param, remove_child_of_pending_fork)
6441         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6442         (check_pending_event_prevents_wildcard_vcont_callback)
6443         (remove_stop_reply_for_inferior)
6444         (remove_stop_reply_of_remote_state)
6445         (remote_notif_remove_once_on_match)
6446         (stop_reply_match_ptid_and_ws)
6447         (remote_kill_child_of_pending_fork): Remove.
6448         (remote_target::remove_new_fork_children)
6449         (remote_target::check_pending_events_prevent_wildcard_vcont)
6450         (remote_target::discard_pending_stop_replies)
6451         (remote_target::discard_pending_stop_replies_in_queue)
6452         (remote_target::remote_notif_remove_queued_reply)
6453         (remote_target::queued_stop_reply)
6454         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6455         (remote_target::wait, remote_target::kill_new_fork_children)
6456         (remote_target::async): Update.
6457
6458 2018-06-10  Tom Tromey  <tom@tromey.com>
6459
6460         * record-full.c (record_full_arch_list_cleanups): Remove.
6461         (record_full_message): Use try/catch.
6462         (record_full_wait_cleanups): Remove.
6463         (record_full_wait_1): Use try/catch.
6464         (record_full_restore): Likewise.
6465
6466 2018-06-10  Tom Tromey  <tom@tromey.com>
6467
6468         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6469         declare VEC.  Add constructor.
6470         <in_target_beneath>: Now bool.
6471         (record_full_breakpoints): Now a std::vector, static.
6472         (record_full_sync_record_breakpoints)
6473         (record_full_init_record_breakpoints)
6474         (record_full_target::insert_breakpoint)
6475         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6476
6477 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6478
6479         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6480         * serial.c (serial_interface_lookup): Remove struct keyword.
6481
6482 2018-06-10  Tom Tromey  <tom@tromey.com>
6483
6484         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6485         method.
6486         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6487         a method.
6488         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6489         method.
6490         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6491         "beneath" as a method.
6492         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6493         Use "beneath" as a method.
6494
6495 2018-06-10  Tom Tromey  <tom@tromey.com>
6496
6497         * tracefile.c (struct trace_file_writer_deleter): New.
6498         <operator()>: Rename from trace_file_writer_xfree.
6499         (trace_file_writer_up): New typedef.
6500         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6501
6502 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6503
6504         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6505         <m_registers, m_register_status>: Change type to
6506         std::unique_ptr.
6507         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6508         XCNEWVEC.
6509
6510 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6511
6512         * common/common-regcache.h (enum register_status): Add
6513         underlying type "signed char".
6514         * regcache.h (reg_buffer) <m_register_status>: Change type to
6515         register_status *.
6516         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6517         register_status instead of signed char.
6518         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6519         (reg_buffer::get_register_status): Remove cast.
6520         (readable_regcache::raw_read): Remove cast.
6521         (readable_regcache::cooked_read): Remove cast.
6522
6523 2018-06-09  Tom Tromey  <tom@tromey.com>
6524
6525         * source.c (reverse_search_command, forward_search_command): Use
6526         scoped_fd.
6527
6528 2018-06-09  Tom Tromey  <tom@tromey.com>
6529
6530         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6531         (serial_ops_list): Now static, std::vector.
6532         (serial_interface_lookup, serial_add_interface): Update.
6533
6534 2018-06-09  Tom Tromey  <tom@tromey.com>
6535
6536         * dwarf2read.c (process_cu_includes): Update.
6537         (process_full_comp_unit): Update.
6538         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6539         std::vector.
6540
6541 2018-06-08  Paul Koning  <paul_koning@dell.com>
6542
6543         PR gdb/23252
6544
6545         * python/python.c (do_start_initialization):
6546         Avoid call to internal Python API.
6547         (init__gdb_module): New function.
6548
6549 2018-06-08  Gary Benson <gbenson@redhat.com>
6550
6551         * linux-thread-db.c (valprint.h): New include.
6552         (struct check_thread_db_info): New structure.
6553         (check_thread_db_on_load, tdb_testinfo): New static globals.
6554         (check_thread_db, check_thread_db_callback): New functions.
6555         (try_thread_db_load_1): Run integrity checks if requested.
6556         (maintenance_check_libthread_db): New function.
6557         (_initialize_thread_db): Register "maint check libthread-db"
6558         and "maint set/show check-libthread-db".
6559         * NEWS: Mention the above new commands.
6560
6561 2018-06-08  Tom Tromey  <tom@tromey.com>
6562
6563         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
6564         now a method.
6565
6566 2018-06-08  Tom Tromey  <tom@tromey.com>
6567
6568         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
6569
6570 2018-06-08  Tom Tromey  <tom@tromey.com>
6571
6572         * common/btrace-common.h (struct btrace_data): Add constructor,
6573         destructor, move assignment operator.
6574         <empty, clear, fini>: New methods.
6575         <format>: Initialize.
6576         (btrace_data_init, btrace_data_fini, btrace_data_clear)
6577         (btrace_data_empty): Don't declare.
6578         * common/btrace-common.c (btrace_data_init): Remove.
6579         (btrace_data::fini): Rename from btrace_data_fini.
6580         (btrace_data::empty): Rename from btrace_data_empty.
6581         (btrace_data::clear): Rename from btrace_data_clear.  Return
6582         bool.
6583         * btrace.h (make_cleanup_btrace_data): Don't declare.
6584         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
6585         (parse_xml_btrace): Update.
6586         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
6587         (maint_btrace_clear_packet_history_cmd): Update.
6588
6589 2018-06-07  Pedro Alves  <palves@redhat.com>
6590
6591         * target.h (target_ops) <beneath>: Now a method.  All references
6592         updated.
6593         (class target_stack): New.
6594         * target.c (g_target_stack): New.
6595         (g_current_top_target): Delete.
6596         (current_top_target): Get the top target out of g_target_stack.
6597         (target_stack::push, target_stack::unpush): New.
6598         (push_target, unpush_target): Reimplement.
6599         (target_is_pushed): Reimplement in terms of g_target_stack.
6600         (target_ops::beneath, target_stack::find_beneath): New.
6601
6602 2018-06-07  Pedro Alves  <palves@redhat.com>
6603
6604         * target.h (find_target_beneath): Delete declaration.
6605         * target.c (find_target_beneath): Delete definition.
6606         * aix-thread.c: All callers of find_target_beneath adjusted to
6607         call target_ops::beneath instead.
6608         * bsd-uthread.c: Likewise.
6609         * linux-thread-db.c: Likewise.
6610         * ravenscar-thread.c: Likewise.
6611         * sol-thread.c: Likewise.
6612         * spu-multiarch.c: Likewise.
6613
6614 2018-06-07  Pedro Alves  <palves@redhat.com>
6615
6616         * target.h (target_ops) <beneath>: Now a method.  All references
6617         updated.
6618         (target_ops) <m_beneath>: New.
6619         * target.c (target_ops::beneath): New.
6620         * corelow.c: Adjust all references to target_ops::beneath.
6621         * linux-thread-db.c: Likewise.
6622         * make-target-delegates: Likewise.
6623         * record-btrace.c: Likewise.
6624         * record-full.c: Likewise.
6625         * remote.c: Likewise.
6626         * target.c: Likewise.
6627         * target-delegates.c: Regenerate.
6628
6629 2018-06-07  Pedro Alves  <palves@redhat.com>
6630
6631         * target.h (target_stack): Delete.
6632         (current_top_target): Declare function.
6633         * target.c (target_stack): Delete.
6634         (g_current_top_target): New.
6635         (current_top_target): New function.
6636         * auxv.c: Use current_top_target instead of target_stack
6637         throughout.
6638         * avr-tdep.c: Likewise.
6639         * breakpoint.c: Likewise.
6640         * corefile.c: Likewise.
6641         * elfread.c: Likewise.
6642         * eval.c: Likewise.
6643         * exceptions.c: Likewise.
6644         * frame.c: Likewise.
6645         * gdbarch-selftests.c: Likewise.
6646         * gnu-v3-abi.c: Likewise.
6647         * ia64-tdep.c: Likewise.
6648         * ia64-vms-tdep.c: Likewise.
6649         * infcall.c: Likewise.
6650         * infcmd.c: Likewise.
6651         * infrun.c: Likewise.
6652         * linespec.c: Likewise.
6653         * linux-tdep.c: Likewise.
6654         * minsyms.c: Likewise.
6655         * ppc-linux-nat.c: Likewise.
6656         * ppc-linux-tdep.c: Likewise.
6657         * procfs.c: Likewise.
6658         * regcache.c: Likewise.
6659         * remote.c: Likewise.
6660         * rs6000-tdep.c: Likewise.
6661         * s390-linux-nat.c: Likewise.
6662         * s390-tdep.c: Likewise.
6663         * solib-aix.c: Likewise.
6664         * solib-darwin.c: Likewise.
6665         * solib-dsbt.c: Likewise.
6666         * solib-spu.c: Likewise.
6667         * solib-svr4.c: Likewise.
6668         * solib-target.c: Likewise.
6669         * sparc-tdep.c: Likewise.
6670         * sparc64-tdep.c: Likewise.
6671         * spu-tdep.c: Likewise.
6672         * symfile.c: Likewise.
6673         * symtab.c: Likewise.
6674         * target-descriptions.c: Likewise.
6675         * target-memory.c: Likewise.
6676         * target.c: Likewise.
6677         * target.h: Likewise.
6678         * tracefile-tfile.c: Likewise.
6679         * tracepoint.c: Likewise.
6680         * valops.c: Likewise.
6681         * valprint.c: Likewise.
6682         * value.c: Likewise.
6683         * windows-tdep.c: Likewise.
6684         * mi/mi-main.c: Likewise.
6685
6686 2018-06-07  Tom Tromey  <tom@tromey.com>
6687
6688         * valprint.h (build_address_symbolic): Declare.
6689         * printcmd.c (print_address_symbolic): Update.
6690         (build_address_symbolic): Change "name" and "filename" to
6691         std::string.
6692         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
6693         Update.
6694         * defs.h (build_address_symbolic): Remove declaration.
6695
6696 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
6697
6698         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
6699         (aarch64_vnv_type): Add function.
6700         (aarch64_pseudo_register_name): Add V regs for SVE.
6701         (aarch64_pseudo_register_type): Likewise.
6702         (aarch64_pseudo_register_reggroup_p): Likewise.
6703         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
6704         (aarch64_pseudo_read_value): Add V regs for SVE.
6705         (aarch64_pseudo_write_2): Use V0 offset for SVE
6706         (aarch64_pseudo_write): Add V regs for SVE.
6707         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
6708
6709 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
6710
6711         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
6712         (sve_vl_from_vq): Likewise.
6713
6714 2018-06-05  Tom Tromey  <tom@tromey.com>
6715
6716         * cli/cli-cmds.c (show_version): Update.
6717         * top.c (print_gdb_version): Add "interactive" parameter.
6718         Update.
6719         * main.c (captured_main_1): Update.
6720         * top.h (print_gdb_version): Add "interactive" parameter and a
6721         comment.
6722
6723 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
6724
6725         * common/enum-flags.h: Add trailing semicolon to example in
6726         comment.
6727
6728 2018-06-05  Tom Tromey  <tom@tromey.com>
6729
6730         PR cli/12326:
6731         * NEWS: Add entry about pager.
6732         * utils.c (pagination_disabled_for_command): New global.
6733         (prompt_for_continue): Allow "c" response to prompt.
6734         (reinitialize_more_filter): Clear
6735         pagination_disabled_for_command.
6736         (fputs_maybe_filtered): Check pagination_disabled_for_command.
6737
6738 2018-06-04  Tom Tromey  <tom@tromey.com>
6739
6740         * ada-lang.h (ada_lookup_symbol_list): Update.
6741         * ada-lang.c (resolve_subexp): Update.
6742         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
6743         parameter.
6744         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
6745         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
6746         results parameter to std::vector.
6747         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
6748         Update.
6749         * ada-exp.y (block_lookup): Update.
6750         (select_possible_type_sym): Change type of syms.  Remove nsyms
6751         parameter.
6752         (write_var_or_type, write_name_assoc): Update.
6753
6754 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
6755
6756         * windows-nat.c (windows_nat_target::xfer_partial): Return
6757         TARGET_XFER_E_IO if we need to delegate to the target beneath
6758         but BENEATH is NULL.
6759
6760 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
6761
6762         * Makefile.in (config.status): Add configure.nat as a
6763         dependency.
6764
6765 2018-06-04  Tom Tromey  <tom@tromey.com>
6766
6767         * cp-name-parser.y (cpname_state): Add method declarations.
6768         (HANDLE_QUAL): Update.
6769         (cpname_state::d_grab, cpname_state::fill_comp)
6770         (cpname_state::make_operator, cpname_state::make_dtor)
6771         (cpname_state::make_builtin_type, cpname_state::make_name)
6772         (cpname_state::d_qualify, cpname_state::d_int_type)
6773         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
6774         (%union): Move earlier.
6775
6776 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6777
6778         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
6779
6780 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6781
6782         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
6783         (aarch64_pseudo_write_1): Likewise.
6784         (aarch64_pseudo_read_value): Use helper.
6785         (aarch64_pseudo_write): Likewise.
6786
6787 2018-06-04  Pedro Alves  <palves@redhat.com>
6788
6789         * darwin-nat.c (darwin_ops): Delete.
6790         (darwin_attach_pid): Use get_native_target.
6791
6792 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6793
6794         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
6795         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
6796
6797 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6798
6799         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
6800         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
6801         (aarch64_gdbarch_init): Check for SVE.
6802         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
6803
6804 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6805
6806         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
6807         * aarch64-tdep.h (aarch64_read_description): Likewise.
6808         * arch/aarch64.c (aarch64_create_target_description): Likewise.
6809         * arch/aarch64.h (aarch64_create_target_description): Likewise.
6810         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
6811         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
6812         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
6813
6814 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
6815
6816         * value.c (value_fetch_lazy_bitfield): New.
6817         (value_fetch_lazy_memory): New.
6818         (value_fetch_lazy_register): New.
6819         (value_fetch_lazy): Factor out to smaller functions.
6820
6821 2018-06-01  Tom Tromey  <tom@tromey.com>
6822
6823         * cp-name-parser.y (backslashable, represented): Now const.
6824
6825 2018-06-01  Tom Tromey  <tom@tromey.com>
6826
6827         * cp-name-parser.y: Include parser-defs.h.
6828         (parser_fprintf): Remove declaration.
6829
6830 2018-06-01  Tom Tromey  <tom@tromey.com>
6831
6832         * cp-name-parser.y: Use %pure-parser, %lex-param, and
6833         %parse-param.
6834         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
6835         (global_result): Remove globals.
6836         (struct cpname_state): New.
6837         (yyparse): Don't declare.
6838         (yylex, yyerror): Move declarations after %union.
6839         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
6840         (make_name): Add state parameter.
6841         Update all callers.
6842         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
6843         parameter.
6844         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
6845         Update.
6846         (yylex): Add lvalp, state parameters.
6847         (yyerror): Add state parameter.
6848         (cp_demangled_name_to_comp): Update.
6849
6850 2018-06-01  Tom Tromey  <tom@tromey.com>
6851
6852         * cp-name-parser.y (parser_fprintf): Declare.
6853         (GDB_YY_REMAP_PREFIX): Define.
6854         Include yy-remap.h.  Don't redefine yy* identifiers.
6855
6856 2018-06-01  Tom Tromey  <tom@tromey.com>
6857
6858         * python/py-type.c (typy_legacy_template_argument): Update.
6859         * cp-support.h (cp_demangled_name_to_comp): Update.
6860         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
6861         parameter to be a "std::string *".
6862         (main): Update.
6863
6864 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
6865
6866         * ada-lex.l: Include "diagnostics.h" instead of
6867         "common/diagnostics.h".
6868         * unittests/environ-selftests.c: Likewise.
6869         * common/diagnostics.h: Moved to ../include.
6870
6871 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
6872
6873         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
6874         to language_mode_manual while calling breakpoint_re_set_one.
6875
6876 2018-06-01  Tom Tromey  <tom@tromey.com>
6877
6878         * valops.c (value_cast_structs, destructor_name_p): Update.
6879         * symtab.c (gdb_mangle_name): Update.
6880         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
6881         Update.
6882         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
6883         (pascal_object_print_value_fields, pascal_object_print_value):
6884         Update.
6885         * p-typeprint.c (pascal_type_print_derivation_info): Update.
6886         * linespec.c (find_methods): Update.
6887         * gdbtypes.h (type_name_no_tag): Remove.
6888         (type_name_or_error): Rename from type_name_no_tag_or_error.
6889         * gdbtypes.c (type_name_no_tag): Remove.
6890         (type_name_or_error): Rename from type_name_no_tag_or_error.
6891         (lookup_struct_elt_type, check_typedef): Update.
6892         * expprint.c (print_subexp_standard): Update.
6893         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
6894         * d-namespace.c (d_lookup_nested_symbol): Update.
6895         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
6896         (cp_print_class_member): Update.
6897         * cp-namespace.c (cp_lookup_nested_symbol): Update.
6898         * completer.c (add_struct_fields): Update.
6899         * c-typeprint.c (cp_type_print_derivation_info)
6900         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
6901         Update.
6902         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
6903         (ada_prefer_type, ada_is_exception_sym): Update.
6904
6905 2018-06-01  Tom Tromey  <tom@tromey.com>
6906
6907         * valops.c (enum_constant_from_type, value_namespace_elt)
6908         (value_maybe_namespace_elt): Update.
6909         * valarith.c (find_size_for_pointer_math): Update.
6910         * target-descriptions.c (make_gdb_type): Update.
6911         * symmisc.c (print_symbol): Update.
6912         * stabsread.c (define_symbol, read_type)
6913         (complain_about_struct_wipeout, add_undefined_type)
6914         (cleanup_undefined_types_1): Update.
6915         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
6916         (rust_range_type_p, val_print_struct, rust_print_struct_def)
6917         (rust_internal_print_type, rust_composite_type)
6918         (rust_evaluate_funcall, rust_evaluate_subexp)
6919         (rust_inclusive_range_type_p): Update.
6920         * python/py-type.c (typy_get_tag): Update.
6921         * p-typeprint.c (pascal_type_print_base): Update.
6922         * mdebugread.c (parse_symbol, parse_type): Update.
6923         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
6924         Update.
6925         * guile/scm-type.c (gdbscm_type_tag): Update.
6926         * go-lang.c (sixg_string_p): Update.
6927         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
6928         Update.
6929         * gdbtypes.h (struct main_type) <tag_name>: Remove.
6930         (TYPE_TAG_NAME): Remove.
6931         * gdbtypes.c (type_name_no_tag): Simplify.
6932         (check_typedef, check_types_equal, recursive_dump_type)
6933         (copy_type_recursive, arch_composite_type): Update.
6934         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
6935         in summary mode when needed.
6936         * eval.c (evaluate_funcall): Update.
6937         * dwarf2read.c (fixup_go_packaging, read_structure_type)
6938         (process_structure_scope, read_enumeration_type)
6939         (read_namespace_type, read_module_type, determine_prefix): Update.
6940         * cp-support.c (inspect_type): Update.
6941         * coffread.c (process_coff_symbol, decode_base_type): Update.
6942         * c-varobj.c (c_is_path_expr_parent): Update.
6943         * c-typeprint.c (c_type_print_base_struct_union): Update.
6944         (c_type_print_base_1): Update.  Print struct/class/union/enum in
6945         summary when using C language.
6946         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
6947         (gen_maybe_namespace_elt): Update.
6948         * ada-lang.c (ada_type_name): Simplify.
6949         (empty_record, ada_template_to_fixed_record_type_1)
6950         (template_to_static_fixed_type)
6951         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
6952
6953 2018-06-01  Tom Tromey  <tom@tromey.com>
6954
6955         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
6956         c_print_type.
6957         * c-typeprint.c (c_print_type_1): Add "language" parameter.
6958         (c_print_type): Update.
6959         (c_print_type): New overload.
6960         (c_type_print_varspec_prefix, c_type_print_args)
6961         (c_type_print_varspec_suffix, c_print_type_no_offsets)
6962         (c_type_print_base_struct_union, c_type_print_base_1)
6963         (cp_type_print_method_args): Add "language" parameter.
6964         (c_type_print_base): Update.
6965         * c-lang.h (c_print_type): Add new overload.
6966
6967 2018-06-01  Tom Tromey  <tom@tromey.com>
6968
6969         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
6970         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
6971
6972 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
6973
6974         * aarch64-tdep.c (aarch64_sve_register_names): New const
6975         var.
6976         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
6977         (AARCH64_SVE_Z_REGS_NUM): New define.
6978         (AARCH64_SVE_P_REGS_NUM): Likewise.
6979         (AARCH64_SVE_NUM_REGS): Likewise.
6980
6981 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
6982
6983         * nat/linux-ptrace.h [__alpha__]
6984         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
6985         definitions.
6986
6987 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
6988
6989         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
6990         the endianness selected.
6991         * NEWS: Document `set endian auto' mode operation update.
6992
6993 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6994
6995         * Makefile.in: Add new header.
6996         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
6997         (sve_vl_from_vg): Likewise.
6998         (sve_vq_from_vl): Likewise.
6999         (sve_vl_from_vq): Likewise.
7000         (sve_vq_from_vg): Likewise.
7001         (sve_vg_from_vq): Likewise.
7002         * configure.nat: Add new c file.
7003         * nat/aarch64-sve-linux-ptrace.c: New file.
7004         * nat/aarch64-sve-linux-ptrace.h: New file.
7005
7006 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7007
7008         * aarch64-linux-nat.c (aarch64_linux_read_description):
7009         Add parmeter zero.
7010         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7011         Likewise.
7012         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7013         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7014         (aarch64_gdbarch_init): Add parmeter zero.
7015         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7016         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7017         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7018         parmeter.
7019         * doc/gdb.texinfo: Describe SVE feature
7020         * features/aarch64-sve.c: New file.
7021
7022 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7023
7024         PR gdb/23210
7025         * gdbarch.sh (significant_addr_bit): Default to zero when
7026         not set by target architecture.
7027         * gdbarch.c: Re-generated.
7028         * utils.c (address_significant): Update.
7029
7030 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7031
7032         * stack.c (func_command): Remove trailing newline in call to error.
7033
7034 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7035
7036         * regcache.h (regcache_raw_collect): Remove, update callers to
7037         use regcache::raw_collect.
7038         * regcache.c (regcache_raw_collect): Remove.
7039
7040 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7041
7042         * regcache.h (regcache_raw_supply): Remove, update callers to
7043         use detached_regcache::raw_supply.
7044         * regcache.c (regcache_raw_supply): Remove.
7045
7046 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7047
7048         * regcache.h (regcache_cooked_write_part): Remove, update
7049         callers to use regcache::cooked_write_part.
7050         * regcache.c (regcache_cooked_write_part): Remove.
7051
7052 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7053
7054         * regcache.h (regcache_cooked_read_part): Remove, update callers
7055         to use readable_regcache::cooked_read_part.
7056         * regcache.c (regcache_cooked_read_part): Remove.
7057
7058 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7059
7060         * regcache.h (regcache_cooked_read_value): Remove, update
7061         callers to use readable_regcache::cooked_read_value.
7062         * regcache.c (regcache_cooked_read_value): Remove.
7063
7064 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7065
7066         * regcache.h (regcache_cooked_write): Remove, update callers to
7067         use regcache::cooked_write.
7068         * regcache.c (regcache_cooked_write): Remove.
7069
7070 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7071
7072         * regcache.h (regcache_invalidate): Remove, update callers to
7073         use detached_regcache::invalidate instead.
7074         * regcache.c (regcache_invalidate): Remove.
7075
7076 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7077
7078         * regcache.h (regcache_raw_write_part): Remove, update callers
7079         to use regcache::raw_write_part instead.
7080         * regcache.c (regcache_raw_write_part): Remove.
7081
7082 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7083
7084         * regcache.h (regcache_raw_read_part): Remove, update callers to
7085         use readable_regcache::raw_read_part instead.
7086         * regcache.c (regcache_raw_read_part): Remove.
7087
7088 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7089
7090         * regcache.h (regcache_cooked_read): Remove, update callers to
7091         use readable_regcache::cooked_read instead.
7092         * regcache.c (regcache_cooked_read): Remove.
7093
7094 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7095
7096         * regcache.h (regcache_raw_write): Remove, update callers to use
7097         regcache::raw_write instead.
7098         * regcache.c (regcache_raw_write): Remove.
7099
7100 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7101
7102         * regcache.h (regcache_raw_read): Remove, update callers to use
7103         readable_regcache::raw_read instead.
7104         * regcache.c (regcache_raw_read): Remove.
7105
7106 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7107
7108         * regcache.h (regcache_raw_update): Remove, update callers to
7109         use readable_regcache::raw_update instead.
7110         * regcache.c (regcache_raw_update): Remove.
7111
7112 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7113
7114         * regcache.h (regcache_register_status): Remove, update callers
7115         to use reg_buffer::get_register_status directly instead.
7116         * regcache.c (regcache_register_status): Remove.
7117
7118 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7119
7120         * regcache.h (regcache_get_ptid): Remove, update all callers to
7121         call regcache::ptid instead.
7122         * regcache.c (regcache_get_ptid): Remove.
7123
7124 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7125
7126         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7127
7128 2018-05-30  Pedro Alves  <palves@redhat.com>
7129
7130         * common/common-exceptions.h (exception_rethrow): Use
7131         ATTRIBUTE_NORETURN.
7132
7133 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7134
7135         * breakpoint.c (print_solib_event, check_status_catch_solib):
7136         Remove struct keyword in range-based for loops.
7137         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7138         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7139         Likewise.
7140         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7141         Likewise.
7142         * symfile.c (addr_info_make_relative): Likewise.
7143         * thread.c (value_in_thread_stack_temporaries): Likewise.
7144
7145 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7146
7147         PR gdb/16841
7148         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7149         aggregate type to get its real type before accessing it.
7150
7151 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7152
7153         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7154         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7155         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7156         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7157         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7158         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7159         * printcmd.c (info_address_command): Likewise.
7160
7161 2018-05-29  Tom Tromey  <tom@tromey.com>
7162
7163         * windows-nat.c (handle_exception): Update fall-through comment.
7164
7165 2018-05-29  Tom Tromey  <tom@tromey.com>
7166
7167         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7168         (struct program_space) <added_solibs>: Now a std::vector.
7169         * breakpoint.c (print_solib_event): Update.
7170         (check_status_catch_solib): Update.
7171         * progspace.c (clear_program_space_solib_cache): Update.
7172         * solib.c (update_solib_list): Update.
7173
7174 2018-05-29  Tom Tromey  <tom@tromey.com>
7175
7176         * python/py-type.c (typy_richcompare): Update.
7177         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7178         * gdbtypes.h (types_deeply_equal): Return bool.
7179         (types_equal): Likewise.
7180         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7181         declare VEC.
7182         (check_types_equal): Change worklist to std::vector.  Return
7183         bool.
7184         (struct type_equality_entry): Add constructor.
7185         (compare_maybe_null_strings): Return bool.
7186         (check_types_worklist): Return bool.  Change worklist to
7187         std::vector.
7188         (types_deeply_equal): Use std::vector.
7189         (types_equal): Return bool.
7190         (compare_maybe_null_strings): Simplify.
7191
7192 2018-05-29  Tom Tromey  <tom@tromey.com>
7193
7194         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7195
7196 2018-05-29  Tom Tromey  <tom@tromey.com>
7197
7198         * objc-lang.h: Don't include cp-support.h.
7199         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7200         declare VEC.
7201
7202 2018-05-27  Tom Tromey  <tom@tromey.com>
7203
7204         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7205
7206 2018-05-25  Tom Tromey  <tom@tromey.com>
7207
7208         * value.c (value::location): Initialize.
7209
7210 2018-05-25  Tom Tromey  <tom@tromey.com>
7211
7212         * dbxread.c (init_bincl_list): Remove.
7213         (bincl_list): Now a std::vector.
7214         (bincls_allocated, next_bincl): Remove.
7215         (free_bincl_list, do_free_bincl_list_cleanup)
7216         (make_cleanup_free_bincl_list): Remove.
7217         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7218         unique_xmalloc_ptr.
7219         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7220         (struct header_file_location): Add constructor.
7221         (add_bincl_to_list): Remove.
7222
7223 2018-05-25  Tom Tromey  <tom@tromey.com>
7224
7225         * tui/tui.c (tui_enable): Update.
7226         * mi/mi-interp.c (mi_interp::init): Update.
7227         * interps.h (class interp) <name>: New method.
7228         <m_name>: Rename from name.
7229         (~scoped_restore_interp): Update.
7230         * interps.c (interp::interp): Update.
7231         (interp_add, interp_set, interp_lookup_existing)
7232         (current_interp_named_p): Update.
7233
7234 2018-05-25  Tom Tromey  <tom@tromey.com>
7235
7236         * interps.c (interp_name): Remove.
7237         * mi/mi-interp.c (mi_interp::init): Update.
7238         * interps.h (interp_name): Remove.
7239         (~scoped_restore_interp): Update.
7240         * tui/tui.c (tui_enable): Update.
7241
7242 2018-05-25  Tom Tromey  <tom@tromey.com>
7243
7244         * utils.c (fputs_maybe_filtered): Update.
7245         * linespec.c (decode_line_full): Update.
7246         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7247         (mi_print_breakpoint_for_event, mi_solib_loaded)
7248         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7249         (mi_user_selected_context_changed): Update.
7250         * mi/mi-main.c (mi_execute_command): Update.
7251         * cli/cli-script.c (execute_control_command): Update.
7252         * python/python.c (execute_gdb_command): Update.
7253         * solib.c (info_sharedlibrary_command): Update.
7254         * interps.c (interp_ui_out): Remove.
7255         * interps.h (interp_ui_out): Remove.
7256
7257 2018-05-25  Tom Tromey  <tom@tromey.com>
7258
7259         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7260         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7261         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7262
7263 2018-05-25  Tom Tromey  <tom@tromey.com>
7264
7265         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7266         * interps.c (interp_exec): Use scoped_restore.
7267
7268 2018-05-25  Tom Tromey  <tom@tromey.com>
7269
7270         * remote.c (remote_target::remote_file_get): Use
7271         gdb::byte_vector.
7272         (remote_target::remote_file_put): Likewise.
7273
7274 2018-05-25  Tom Tromey  <tom@tromey.com>
7275
7276         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7277         a std::string.
7278         (get_pe_section_index, add_pe_exported_sym): Update.
7279         (read_pe_exported_syms): Use gdb::def_vector.
7280
7281 2018-05-25  Tom Tromey  <tom@tromey.com>
7282
7283         * frame.c (remove_prev_frame): Remove.
7284         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7285
7286 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7287
7288         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7289         Remove prototypes.
7290         * mips-linux-nat.c (supply_fpregset): Always call
7291         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7292         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7293         `mips_fill_fpregset'.
7294         * mips-linux-tdep.c (mips_supply_fpregset)
7295         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7296         (mips_fill_fpregset_wrapper): Remove functions.
7297         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7298         (mips_linux_fpregset): Remove variable.
7299         (mips_linux_iterate_over_regset_sections): Use
7300         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7301         (mips_linux_o32_sigframe_init): Remove comment.
7302
7303 2018-05-25  Pedro Alves  <palves@redhat.com>
7304
7305         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7306         (struct readahead_cache, struct packet_reg, struct
7307         remote_arch_state, class remote_state): Move higher up in the
7308         file.
7309         (remote_target::m_remote_state): Now an object instead of a pointer.
7310         (remote_target::get_remote_state): Adjust.
7311
7312 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7313
7314         * stack.c (select_and_print_frame): Delete.
7315         (struct function_bounds): Move struct within function.
7316         (func_command): Most content moved into new function
7317         find_frame_for_function, use new function, print result, add
7318         function comment.
7319         (find_frame_for_function): New function, now returns a result.
7320
7321 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7322
7323         * stack.c (iterate_over_block_arg_vars): Fix comment.
7324         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7325
7326 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7327
7328         PR gdb/23203
7329         * frame.c
7330         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7331         Define.
7332         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7333         Define.
7334         * frame.h (class scoped_restore_selected_frame): New class.
7335         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7336         of any exception, use scoped_restore_selected_frame to restore the
7337         frame instead.
7338
7339 2018-05-24  Pedro Alves  <palves@redhat.com>
7340
7341         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7342         override.
7343
7344 2018-05-23  Tom Tromey  <tom@tromey.com>
7345
7346         * complaints.c (struct complaints): Remove.
7347         (symfile_complaint_book): Remove.
7348         (series): New global.
7349         (complaint_internal): Update.
7350         (clear_complaints): Update.
7351
7352 2018-05-23  Tom Tromey  <tom@tromey.com>
7353
7354         * complaints.c (counters): New global.
7355         (struct complain): Remove.
7356         (struct complaints) <root>: Remove.
7357         (complaint_sentinel): Remove.
7358         (symfile_complaint_book): Update.
7359         (find_complaint) Remove.
7360         (complaint_internal, clear_complaints): Update.
7361
7362 2018-05-23  Tom Tromey  <tom@tromey.com>
7363
7364         * complaints.c (struct complain) <file, line>: Remove.
7365         (find_complaint): Remove file, line parameters.
7366         (complaint_internal): Update.
7367
7368 2018-05-23  Tom Tromey  <tom@tromey.com>
7369
7370         * complaints.c (vcomplaint): Remove.
7371         (complaint_internal) Merge in contents of vcomplaint.
7372
7373 2018-05-23  Tom Tromey  <tom@tromey.com>
7374
7375         * complaints.c (struct complaints) <explanation>: Remove.
7376         (symfile_explanations): Remove.
7377         (symfile_complaint_book): Update.
7378         (vcomplaint): Update.
7379         (struct explanation): Remove.
7380
7381 2018-05-23  Tom Tromey  <tom@tromey.com>
7382
7383         * complaints.c (symfile_complaints): Remove.
7384         (complaint_internal): Remove "complaints" parameter.
7385         (clear_complaints, vcomplaint): Remove "c" parameter.
7386         (get_complaints): Remove.
7387         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7388         (dwarf2_debug_line_missing_file_complaint)
7389         (dwarf2_debug_line_missing_end_sequence_complaint)
7390         (dwarf2_complex_location_expr_complaint)
7391         (dwarf2_const_value_length_mismatch_complaint)
7392         (dwarf2_section_buffer_overflow_complaint)
7393         (dwarf2_macro_malformed_definition_complaint)
7394         (dwarf2_invalid_attrib_class_complaint)
7395         (create_addrmap_from_index, dw2_symtab_iter_next)
7396         (dw2_expand_marked_cus)
7397         (dw2_debug_names_iterator::find_vec_in_debug_names)
7398         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7399         (create_debug_type_hash_table, init_cutu_and_read_dies)
7400         (partial_die_parent_scope, add_partial_enumeration)
7401         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7402         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7403         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7404         (create_cus_hash_table, create_dwp_hash_table)
7405         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7406         (dwarf2_rnglists_process, dwarf2_ranges_process)
7407         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7408         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7409         (handle_struct_member_die, process_structure_scope)
7410         (read_array_type, read_common_block, read_module_type)
7411         (read_tag_pointer_type, read_typedef, read_base_type)
7412         (read_subrange_type, load_partial_dies, partial_die_info::read)
7413         (partial_die_info::read, partial_die_info::read)
7414         (partial_die_info::read, read_checked_initial_length_and_offset)
7415         (dwarf2_string_attr, read_formatted_entries)
7416         (dwarf_decode_line_header)
7417         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7418         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7419         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7420         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7421         (get_signatured_type, get_DW_AT_signature_type)
7422         (decode_locdesc, file_file_name, consume_improper_spaces)
7423         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7424         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7425         (dwarf2_symbol_mark_computed, set_die_type)
7426         (read_attribute_value): Update.
7427         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7428         Update.
7429         * dbxread.c (unknown_symtype_complaint)
7430         (lbrac_mismatch_complaint, repeated_header_complaint)
7431         (set_namestring, function_outside_compilation_unit_complaint)
7432         (read_dbx_symtab, process_one_symbol): Update.
7433         * gdbtypes.c (stub_noname_complaint): Update.
7434         * windows-nat.c (handle_unload_dll): Update.
7435         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7436         (decode_base_type): Update.
7437         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7438         (eb_complaint, record_include_begin, record_include_end)
7439         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7440         (process_xcoff_symbol, read_symbol)
7441         (function_outside_compilation_unit_complaint)
7442         (scan_xcoff_symtab): Update.
7443         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7444         * buildsym.c (finish_block_internal, make_blockvector)
7445         (end_symtab_get_static_block, augment_type_symtab): Update.
7446         * dtrace-probe.c (dtrace_process_dof)
7447         (dtrace_static_probe_ops::get_probes): Update.
7448         * complaints.h (struct complaint): Don't declare.
7449         (symfile_complaints): Remove.
7450         (complaint_internal): Remove "complaints" parameter.
7451         (complaint): Likewise.
7452         (clear_complaints): Likewise.
7453         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7454         (reread_symbols): Update.
7455         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7456         (dwarf2_frame_cache, decode_frame_entry): Update.
7457         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7458         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7459         (info_selectors_command): Update.
7460         * macrotab.c (macro_include, check_for_redefinition)
7461         (macro_undef): Update.
7462         * objfiles.c (filter_overlapping_sections): Update.
7463         * stabsread.c (invalid_cpp_abbrev_complaint)
7464         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7465         (define_symbol, error_type, read_type, rs6000_builtin_type)
7466         (stabs_method_name_from_physname, read_member_functions)
7467         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7468         (attach_fields_to_type, complain_about_struct_wipeout)
7469         (read_range_type, read_args, common_block_start)
7470         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7471         Update.
7472         * mdebugread.c (index_complaint, unknown_ext_complaint)
7473         (basic_type_complaint, bad_tag_guess_complaint)
7474         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7475         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7476         (parse_procedure, parse_lines)
7477         (function_outside_compilation_unit_complaint)
7478         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7479         (bad_tag_guess_complaint, reg_value_complaint): Update.
7480         * cp-support.c (demangled_name_complaint): Update.
7481         * macroscope.c (sal_macro_scope): Update.
7482         * dwarf-index-write.c (class debug_names): Update.
7483
7484 2018-05-23  Tom Tromey  <tom@tromey.com>
7485
7486         * complaints.c (clear_complaints): Remove "noisy" parameter.
7487         * complaints.h (clear_complaints): Update.
7488         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7489         (reread_symbols): Update.
7490
7491 2018-05-23  Tom Tromey  <tom@tromey.com>
7492
7493         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7494         SUBSEQUENT_MESSAGE.
7495         (vcomplaint, clear_complaints): Update.
7496         (symfile_explanations): Remove some messages.
7497
7498 2018-05-23  Tom Tromey  <tom@tromey.com>
7499
7500         * complaints.c (internal_complaint): Remove.
7501         * complaints.h (internal_complaint): Remove.
7502
7503 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7504
7505         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7506
7507 2018-05-22  Pedro Alves  <palves@redhat.com>
7508
7509         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7510         (remote_fileio_badfd, remote_fileio_return_errno)
7511         (remote_fileio_return_success, remote_fileio_func_open)
7512         (remote_fileio_func_open, remote_fileio_func_close)
7513         (remote_fileio_func_read, remote_fileio_func_write)
7514         (remote_fileio_func_lseek, remote_fileio_func_rename)
7515         (remote_fileio_func_unlink, remote_fileio_func_stat)
7516         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7517         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7518         remote_target parameter.
7519         (remote_fio_func_map) <func>: Add remote_target parameter.
7520         (do_remote_fileio_request, remote_fileio_request):
7521         * remote-fileio.h (remote_fileio_request):
7522         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7523         remote_target parameter.
7524         (remote_notif_process, handle_notification): Adjust to pass down
7525         the remote.
7526         (remote_notif_state_allocate): Add remote_target parameter.  Save
7527         it.
7528         * remote-notif.h (struct remote_target): Forward declare.
7529         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7530         remote_target parameter.
7531         (struct remote_notif_state) <remote>: New field.
7532         (remote_notif_ack, remote_notif_parse): Add remote_target
7533         parameter.
7534         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7535         remote_target parameter.
7536         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7537         (threads_listing_context, rmt_thread_action, protocol_feature)
7538         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7539         (packet_result, struct threads_listing_context, remote_state):
7540         Move definitions and declarations higher up.
7541         (remote_target) <~remote_target>: Declare.
7542         (remote_download_command_source, remote_file_put, remote_file_get)
7543         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7544         (remote_hostio_pread_vFile, remote_hostio_send_command)
7545         (remote_hostio_set_filesystem, remote_hostio_open)
7546         (remote_hostio_close, remote_hostio_unlink, remote_state)
7547         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7548         (get_memory_write_packet_size, get_memory_read_packet_size)
7549         (append_pending_thread_resumptions, remote_detach_1)
7550         (append_resumption, remote_resume_with_vcont)
7551         (add_current_inferior_and_thread, wait_ns, wait_as)
7552         (process_stop_reply, remote_notice_new_inferior)
7553         (process_initial_stop_replies, remote_add_thread)
7554         (btrace_sync_conf, remote_btrace_maybe_reopen)
7555         (remove_new_fork_children, kill_new_fork_children)
7556         (discard_pending_stop_replies, stop_reply_queue_length)
7557         (check_pending_events_prevent_wildcard_vcont)
7558         (discard_pending_stop_replies_in_queue, stop_reply)
7559         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
7560         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
7561         (remote_interrupt_as, remote_interrupt_ns)
7562         (remote_get_noisy_reply, remote_query_attached)
7563         (remote_add_inferior, remote_current_thread, get_current_thread)
7564         (set_thread, set_general_thread, set_continue_thread)
7565         (set_general_process, write_ptid)
7566         (remote_unpack_thread_info_response, remote_get_threadinfo)
7567         (parse_threadlist_response, remote_get_threadlist)
7568         (remote_threadlist_iterator, remote_get_threads_with_ql)
7569         (remote_get_threads_with_qxfer)
7570         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
7571         (get_offsets, remote_check_symbols, remote_supported_packet)
7572         (remote_query_supported, remote_packet_size)
7573         (remote_serial_quit_handler, remote_detach_pid)
7574         (remote_vcont_probe, remote_resume_with_hc)
7575         (send_interrupt_sequence, interrupt_query)
7576         (remote_notif_get_pending_events, fetch_register_using_p)
7577         (send_g_packet, process_g_packet, fetch_registers_using_g)
7578         (store_register_using_P, store_registers_using_G)
7579         (set_remote_traceframe, check_binary_download)
7580         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
7581         (remote_xfer_live_readonly_partial, remote_read_bytes)
7582         (remote_send_printf, remote_flash_write, readchar)
7583         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
7584         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
7585         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
7586         (extended_remote_disable_randomization, extended_remote_run)
7587         (send_environment_packet, extended_remote_environment_support)
7588         (extended_remote_set_inferior_cwd, remote_write_qxfer)
7589         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
7590         (packet_command): Now methods of ...
7591         (remote_target): ... this class.
7592         (m_remote_state) <remote_target>: New field.
7593         (struct remote_state) <stop_reply_queue,
7594         remote_async_inferior_event_token, wait_forever_enabled_p>: New
7595         fields.
7596         (remote_state::remote_state): Allocate stop_reply_queue.
7597         (remote_state): Delete global.
7598         (get_remote_state_raw): Delete.
7599         (remote_target::get_remote_state): Allocate m_remote_state on
7600         demand.
7601         (get_current_remote_target): New.
7602         (remote_ops, extended_remote_ops): Delete.
7603         (wait_forever_enabled_p, remote_async_inferior_event_token):
7604         Delete, moved to struct remote_state.
7605         (remote_target::close): Delete self.  Destruction bits split to
7606         ...
7607         (remote_target::~remote_target): ... this.
7608         (show_memory_packet_size): Adjust to use
7609         get_current_remote_target.
7610         (struct protocol_feature) <func>: Add remote_target parameter.
7611         All callers adjusted.
7612         (curr_quit_handler_target): New.
7613         (remote_serial_quit_handler): Reimplement.
7614         (remote_target::open_1): Adjust to use get_current_remote_target.
7615         Heap-allocate remote_target/extended_remote_target instances.
7616         (vcont_builder::vcont_builder): Add remote_target parameter, and
7617         save it in m_remote.  All callers adjusted.
7618         (vcont_builder::m_remote): New field.
7619         (vcont_builder::restart, vcont_builder::flush)
7620         (vcont_builder::push_action): Use it.
7621         (remote_target::commit_resume): Use it.
7622         (struct queue_iter_param) <remote>: New field.
7623         (remote_target::remove_new_fork_children): Fill in 'remote' field.
7624         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
7625         (check_pending_event_prevents_wildcard_vcont_callback)
7626         (remote_target::check_pending_events_prevent_wildcard_vcont)
7627         (remote_target::discard_pending_stop_replies)
7628         (remote_target::discard_pending_stop_replies_in_queue)
7629         (remote_target::remote_notif_remove_queued_reply): Fill in
7630         'remote' field.
7631         (remote_notif_get_pending_events): New.
7632         (remote_target::readchar, remote_target::remote_serial_write):
7633         Save/restore curr_quit_handler_target.
7634         (putpkt): New.
7635         (kill_new_fork_children): Fill in 'remote' field.
7636         (packet_command): Use get_current_remote_target, defer to
7637         remote_target method of same name.
7638         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
7639         parameter, and save it in m_remote.  All callers adjusted.
7640         (scoped_remote_fd::release): Use m_remote.
7641         (scoped_remote_fd::m_remote): New field.
7642         (remote_file_put, remote_file_get, remote_file_delete): Use
7643         get_current_remote_target, defer to remote_target method of same
7644         name.
7645         (remote_btrace_reset): Add remote_state paremeter.  Update all
7646         callers.
7647         (remote_async_inferior_event_handler). Pass down 'data'.
7648         (remote_new_objfile): Use get_current_remote_target.
7649         (remote_target::vcont_r_supported): New.
7650         (set_range_stepping): Use get_current_remote_target and
7651         remote_target::vcont_r_supported.
7652         (_initialize_remote): Don't allocate 'remote_state' and
7653         'stop_reply_queue' globals.
7654         * remote.h (struct remote_target): Forward declare.
7655         (getpkt, putpkt, remote_notif_get_pending_events): Add
7656         'remote_target' parameter.
7657
7658 2018-05-22  Pedro Alves  <palves@redhat.com>
7659
7660         * remote.c (vcont_builder): Now a class.  Make all data members
7661         private.
7662         (vcont_builder) <vcont_builder, restart, flush, push_action>:
7663         Declare methods.
7664         (vcont_builder_restart): Rename to ...
7665         (vcont_builder::restart): ... this.
7666         (vcont_builder_flush): Rename to ...
7667         (vcont_builder::flush): ... this.
7668         (vcont_builder_push_action): Rename to ...
7669         (vcont_builder::push_action): ... this.
7670         (remote_target::commit_resume): Adjust.
7671
7672 2018-05-22  Pedro Alves  <palves@redhat.com>
7673
7674         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
7675         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
7676         (get_fixed_memory_packet_size): New.
7677         (get_memory_packet_size): Use it.
7678         (set_memory_packet_size): Don't override the config size with
7679         DEFAULT_MAX_MEMORY_PACKET_SIZE.
7680         (show_memory_packet_size): Use get_fixed_memory_packet_size.
7681         Don't refer to get_memory_packet_size if not connected to a remote
7682         target.  Show "(default)" if configured size is 0.
7683
7684 2018-05-22  Pedro Alves  <palves@redhat.com>
7685
7686         * remote.c (remote_target::mourn_inferior): Move
7687         discard_pending_stop_replies call here from ...
7688         (_initialize_remote): ... here.
7689
7690 2018-05-22  Pedro Alves  <palves@redhat.com>
7691
7692         * remote.c (compare_section_command): Remove set_general_process
7693         call.
7694
7695 2018-05-22  Pedro Alves  <palves@redhat.com>
7696
7697         * remote.c (struct packet_reg, struct remote_arch_state):
7698         Move higher up in the file.
7699         (remote_state) <m_arch_states>: Store remote_arch_state values
7700         instead of remote_arch_state pointers.
7701         (remote_state::get_remote_arch_state): Adjust.
7702
7703 2018-05-22  Pedro Alves  <palves@redhat.com>
7704
7705         * remote.c: Include <unordered_map>.
7706         (remote_state): Now a class.
7707         (remote_state) <get_remote_arch_state>: Declare method.
7708         <get_remote_arch_state>: New field.
7709         (remote_arch_state) <remote_arch_state>: Declare ctor.
7710         <regs>: Now a unique_ptr.
7711         (remote_gdbarch_data_handle): Delete.
7712         (get_remote_arch_state): Delete.
7713         (remote_state::get_remote_arch_state): New.
7714         (get_remote_state): Adjust to call remote_state's
7715         get_remote_arch_state method.
7716         (init_remote_state): Delete, bits factored out to ...
7717         (remote_arch_state::remote_arch_state): ... this new method.
7718         (get_remote_packet_size, get_memory_packet_size)
7719         (process_g_packet, remote_target::fetch_registers)
7720         (remote_target::prepare_to_store, store_registers_using_G)
7721         (remote_target::store_registers, remote_target::get_trace_status):
7722         Adjust to call remote_state's method.
7723         (_initialize_remote): Remove reference to
7724         remote_gdbarch_data_handle.
7725
7726 2018-05-22  Pedro Alves  <palves@redhat.com>
7727
7728         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
7729         pread>: New method declarations.
7730         (remote_target::open_1): Adjust.
7731         (readahead_cache_invalidate): Rename to ...
7732         (readahead_cache::invalidate): ... this, and adjust to be a class
7733         method.
7734         (readahead_cache_invalidate_fd): Rename to ...
7735         (readahead_cache::invalidate_fd): ... this, and adjust to be a
7736         class method.
7737         (remote_hostio_pwrite): Adjust.
7738         (remote_hostio_pread_from_cache): Rename to ...
7739         (readahead_cache::pread): ... this, and adjust to be a class
7740         method.
7741         (remote_hostio_close): Adjust.
7742
7743 2018-05-22  Pedro Alves  <palves@redhat.com>
7744
7745         * remote.c (remote_hostio_close_cleanup): Delete.
7746         (class scoped_remote_fd): New.
7747         (remote_file_put, remote_file_get): Use it.
7748
7749 2018-05-22  Pedro Alves  <palves@redhat.com>
7750
7751         (struct vCont_action_support): Use bool and initialize all fields.
7752         (struct readahead_cache): Initialize all fields.
7753         (remote_state): Use bool and initialize all fields.
7754         (remote_state::remote_state, remote_state::~remote_state): New.
7755         (new_remote_state): Delete.
7756         (_initialize_remote): Use new to allocate remote_state.
7757
7758 2018-05-22  Pedro Alves  <palves@redhat.com>
7759             張俊芝  <zjz@zjz.name>
7760
7761         PR gdb/22973
7762         * c-exp.y: Include "c-support.h".
7763         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
7764         of tolower.  Use c_ident_is_alpha to scan names.
7765         * c-lang.c: Include "c-support.h".
7766         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
7767         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
7768         * c-support.h: New file, with bits factored out from ...
7769         * cp-name-parser.y: ... this file.
7770         Include "c-support.h".
7771         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
7772         c-support.h and renamed.
7773         (symbol_end, yylex): Adjust.
7774
7775 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7776
7777         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
7778         parameter type to CORE_ADDR.
7779         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
7780         parameter type in declaration to CORE_ADDR.
7781         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
7782         target_auxv_search to get AT_HWCAP and use the result to get the
7783         target description.
7784         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
7785         to CORE_ADDR. Remove the cast of the return value to unsigned
7786         long. Fix error predicate of target_auxv_search.
7787         (ppc_linux_nat_target::read_description): Change the type of the
7788         hwcap variable to CORE_ADDR.
7789
7790 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7791
7792         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
7793         if the size of fpscr is larger than 32 bits.
7794
7795 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7796
7797         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
7798         (ppc32_linux_vsxregmap): New global.
7799         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
7800         regcache_supply_regset, and regcache_collect_regset.
7801         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
7802         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
7803         (fetch_vsx_register, store_vsx_register): Remove.
7804         (fetch_vsx_registers): Add regno parameter. Get regset using
7805         ppc_linux_vsxregset. Use regset to supply registers.
7806         (store_vsx_registers): Add regno parameter. Get regset using
7807         ppc_linux_vsxregset. Use regset to collect registers.
7808         (fetch_register): Call fetch_vsx_registers instead of
7809         fetch_vsx_register.
7810         (store_register): Call store_vsx_registers instead of
7811         store_vsx_register.
7812         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
7813         new regno parameter.
7814         (store_ppc_registers): Call store_vsx_registers with -1 for the
7815         new regno parameter.
7816         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
7817         (ppc_collect_vsxregset): Remove.
7818
7819 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7820
7821         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
7822         offset fields.
7823         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
7824         for vector register offset fields.
7825         (ppc64_fbsd_reg_offsets): Likewise.
7826         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7827         to vector register offset fields.
7828         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7829         to vector register offset fields.
7830         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
7831         vector register offset fields.
7832         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
7833         initializers for vector register offset fields.
7834         (rs6000_aix64_reg_offsets): Likewise.
7835         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
7836         (ppc_supply_vrregset): Remove.
7837         (ppc_collect_vrregset): Remove.
7838         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
7839         (ppc_linux_vrregset) : New function.
7840         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
7841         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
7842         (ppc32_linux_vrregset): Remove.
7843         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
7844         and use result instead of ppc32_linux_vrregset.
7845         (ppc32_linux_reg_offsets): Remove initializers for vector register
7846         offset fields.
7847         (ppc64_linux_reg_offsets): Likewise.
7848         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
7849         * ppc-linux-nat.c: Include regset.h.
7850         (gdb_vrregset_t): Adjust comment to account for little-endian
7851         mode.
7852         (supply_vrregset, fill_vrregset): Remove.
7853         (fetch_altivec_register, store_altivec_register): Remove.
7854         (fetch_altivec_registers): Add regno parameter. Get regset using
7855         ppc_linux_vrregset. Use regset to supply registers.
7856         (store_altivec_registers): Add regno parameter. Get regset using
7857         ppc_linux_vrregset. Use regset to collect registers.
7858         (fetch_register): Call fetch_altivec_registers instead of
7859         fetch_altivec_register.
7860         (store_register): Call store_altivec_registers instead of
7861         store_altivec_register.
7862         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
7863         the new regno parameter.
7864         (store_ppc_registers): Call store_altivec_registers with -1 for
7865         the new regno parameter.
7866
7867 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7868
7869         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
7870         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
7871         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
7872         (gdb_vrregset_t): Change array type size to
7873         PPC_LINUX_SIZEOF_VRREGSET.
7874         (gdb_vsxregset_t): Change array type size to
7875         PPC_LINUX_SIZEOF_VSXREGSET.
7876         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
7877         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
7878         PPC_LINUX_SIZEOF_VSXREGSET.
7879
7880 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7881
7882         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
7883         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
7884         nat/ppc-linux.c.
7885         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
7886         ppc_linux_target_wordsize with tid.
7887         (ppc_linux_nat_target::read_description): Call ppc_linux_target
7888         wordsize with tid.
7889         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
7890         (ppc64_64bit_inferior_p): Add static and inline specifiers.
7891         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
7892         tid parameter. Remove static specifier.
7893         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
7894         (ppc_linux_target_wordsize): New declaration.
7895
7896 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7897
7898         * arch/ppc-linux-common.c: New file.
7899         * arch/ppc-linux-common.h: New file.
7900         * arch/ppc-linux-tdesc.h: New file.
7901         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
7902         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
7903         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
7904         arch/ppc-linux-tdesc.h.
7905         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
7906         arch/ppc-linux-tdesc.h.
7907         (ppc_linux_nat_target::read_description): Remove target
7908         description matching code. Fill a ppc_linux_features struct and
7909         call ppc_linux_match_description with it. Move comment about ISA
7910         2.05 to ppc-linux-common.c.
7911         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
7912         arch/ppc-linux-tdesc.h.
7913         (ppc_linux_core_read_description): Remove target description
7914         matching code. Fill a ppc_linux_features struct and call
7915         ppc_linux_match_description with it.
7916         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
7917         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
7918         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
7919         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
7920         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
7921         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
7922         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
7923         (tdesc_powerpc_e500l): Remove.
7924
7925 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
7926
7927         * ada-lang.c (catch_assert_command): Pass empty string instead
7928         of NULL for excep_string argument.
7929
7930 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7931
7932         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
7933         the width of the requested register exceeds the width of the
7934         `ptrace' data type.
7935
7936 2018-05-21  Tom Tromey  <tom@tromey.com>
7937
7938         * printcmd.c (output_command): Remove.
7939         (output_command_const): Rename to output_command.
7940         * valprint.h (output_command): Rename from output_command_const.
7941         * tracepoint.c (trace_dump_actions): Call output_command.
7942
7943 2018-05-21  Tom Tromey  <tom@tromey.com>
7944
7945         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
7946         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
7947         * ada-lang.h (create_ada_exception_catchpoint): Update.
7948         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
7949         std::string.
7950         (create_excep_cond_exprs, ~ada_catchpoint)
7951         (should_stop_exception, print_one_exception)
7952         (print_mention_exception, print_recreate_exception): Update.
7953         (ada_get_next_arg): Remove.
7954         (catch_ada_exception_command_split): Use std::string.  Change type
7955         of "excep_string", "cond_string".
7956         (catch_ada_exception_command): Update.
7957         (create_ada_exception_catchpoint): Change type of excep_string.
7958         (ada_exception_sal): Remove excep_string parameter.
7959         (~ada_catchpoint): Remove.
7960
7961 2018-05-21  Tom Tromey  <tom@tromey.com>
7962
7963         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
7964         cleanup.
7965
7966 2018-05-21  Tom Tromey  <tom@tromey.com>
7967
7968         * ada-lang.c (ada_exception_message_1, ada_exception_message):
7969         Return unique_xmalloc_ptr.
7970         (print_it_exception): Update.
7971
7972 2018-05-21  Tom Tromey  <tom@tromey.com>
7973
7974         * tracepoint.c (trace_dump_actions): Use std::string.
7975
7976 2018-05-21  Tom Tromey  <tom@tromey.com>
7977
7978         * symfile.c (reread_symbols): Use std::string for original_name.
7979
7980 2018-05-21  Tom Tromey  <tom@tromey.com>
7981
7982         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
7983         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
7984         constructor.
7985
7986 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
7987
7988         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
7989         instance to...
7990         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
7991         * objfiles.c (get_objfile_bfd_data): Allocate
7992         objfile_per_bfd_storage with obstack_new when allocating on
7993         obstack.
7994
7995 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7996
7997         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
7998         OBSTACK_ZALLOC.
7999         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8000         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8001         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8002         (add_pending): Likewise.
8003         (parse_symbol): Likewise.
8004         (parse_partial_symbols): Likewise.
8005         (psymtab_to_symtab_1): Likewise.
8006         (new_psymtab): Likewise.
8007         (elfmdebug_build_psymtabs): Likewise.
8008         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8009         * objfiles.c (get_objfile_bfd_data): Likewise.
8010         (objfile_register_static_link): Likewise.
8011         * psymtab.c (allocate_psymtab): Likewise.
8012         * stabsread.c (read_member_functions): Likewise.
8013         * xcoffread.c (xcoff_end_psymtab): Likewise.
8014
8015 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8016
8017         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8018         compiler supports std::is_trivially_constructible.
8019         * common/poison.h: Include obstack.h.
8020         (IsMallocable): Define to is_trivially_constructible if the
8021         compiler supports it, define to true_type otherwise.
8022         (xobnew): New.
8023         (XOBNEW): Redefine.
8024         (xobnewvec): New.
8025         (XOBNEWVEC): Redefine.
8026         * gdb_obstack.h (obstack_zalloc): New.
8027         (OBSTACK_ZALLOC): Redefine.
8028         (obstack_calloc): New.
8029         (OBSTACK_CALLOC): Redefine.
8030         (obstack_new): New.
8031         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8032         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8033         gdbarch.c.
8034         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8035         obstack_calloc/obstack_zalloc.
8036         (gdbarch_obstack_zalloc): Remove.
8037         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8038
8039 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8040
8041         * stack.c (backtrace_command_1): Remove useless variable int i.
8042
8043 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8044
8045         * stack.c (print_frame_info): Fix comment.
8046
8047 2018-05-18  Tom Tromey  <tom@tromey.com>
8048
8049         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8050         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8051         (~dwarf2_per_objfile): Update
8052         (dwarf2_get_dwz_file): Use new.
8053         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8054         unique_ptr.
8055
8056 2018-05-18  Tom Tromey  <tom@tromey.com>
8057
8058         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8059         unique_ptr.
8060         * dwarf2read.c (struct dwp_file): Add constructor and
8061         initializers.
8062         (open_and_init_dwp_file): Return a unique_ptr.
8063         (dwarf2_per_objfile, create_dwp_hash_table)
8064         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8065         (lookup_dwo_unit_in_dwp): Update.
8066         (open_and_init_dwp_file, get_dwp_file): Update.
8067
8068 2018-05-18  Tom Tromey  <tom@tromey.com>
8069
8070         * dwarf2read.c (dwarf2_per_objfile): Update.
8071         (struct mapped_index): Add initializers.
8072         (dwarf2_read_index): Use new.
8073         (dw2_symtab_iter_init): Update.
8074         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8075         unique_ptr.
8076
8077 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8078
8079         * dwarf2read.c (mapped_index) <total_size>: Remove.
8080
8081 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8082
8083         * unittests/format_pieces-selftests.c (test_format_specifier):
8084         Add ARI comments.
8085
8086 2018-05-18  Tom Tromey  <tom@tromey.com>
8087
8088         * c-typeprint.c (maybe_print_hole): New function.
8089         (c_print_type_struct_field_offset): Update.
8090         (c_type_print_base_struct_union): Call maybe_print_hole.
8091
8092 2018-05-17  Keith Seitz  <keiths@redhat.com>
8093
8094         * breakpoint.c (build_bpstat_chain): New function, moved from
8095         bpstat_stop_status.
8096         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8097         If no stop chain is passed, call build_bpstat_chain to build it.
8098         * breakpoint.h (build_bpstat_chain): Declare.
8099         (bpstat_stop_status): Move documentation here from breakpoint.c.
8100         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8101         build the stop chain and pass it to skip_inline_frames.
8102         Pass this stop chain to bpstat_stop_status.
8103         * inline-frame.c: Include breakpoint.h.
8104         (stopped_by_user_bp_inline_frame): New function.
8105         (skip_inline_frames): Add parameter `stop_chain'.
8106         Move documention to inline-frame.h.
8107         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8108         whether the frame should be elided.
8109         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8110         Add moved documentation and update for new parameter.
8111
8112 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8113
8114         PR cli/14975
8115         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8116         unittests/format_pieces-selftests.c.
8117         * common/format.h (format_piece) <operator==>: New.
8118         (format_pieces) <operator[]>: Remove.
8119         * common/format.c (format_pieces::format_pieces): Handle \e.
8120         * unittests/format_pieces-selftests.c: New.
8121
8122 2018-05-17  Tom Tromey  <tom@tromey.com>
8123
8124         PR symtab/23010:
8125         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8126         (dw2_instantiate_symtab): Add skip_partial parameter.
8127         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8128         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8129         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8130         (dw2_expand_symtabs_matching_one)
8131         (dw2_find_pc_sect_compunit_symtab)
8132         (dw2_debug_names_lookup_symbol)
8133         (dw2_debug_names_expand_symtabs_for_function): Update.
8134         (init_cutu_and_read_dies): Add skip_partial parameter.
8135         (process_psymtab_comp_unit, build_type_psymtabs_1)
8136         (process_skeletonless_type_unit, load_partial_comp_unit)
8137         (psymtab_to_symtab_1): Update.
8138         (load_full_comp_unit): Add skip_partial parameter.
8139         (process_imported_unit_die, dwarf2_read_addr_index)
8140         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8141         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8142         (read_signatured_type): Update.
8143
8144 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8145
8146         * value.c (release_value): Remove unused variable.
8147         (record_latest_value): Likewise.
8148         (access_value_history): Likewise.
8149         (preserve_values): Likewise.
8150
8151 2018-05-17  Tom Tromey  <tom@tromey.com>
8152
8153         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8154         Initialize.
8155
8156 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8157
8158         PR gdb/22286
8159         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8160         Also handle registers whose width is not a multiple of
8161         PTRACE_TYPE_RET.
8162         (linux_nat_trad_target::store_register): Likewise.
8163
8164 2018-05-16  Tom Tromey  <tom@tromey.com>
8165
8166         * gdbcore.h (core_bfd): Redefine.
8167         * corelow.c (core_target::close): Update.
8168         (core_target_open): Update.
8169         * progspace.h (struct program_space) <cbfd>: Now a
8170         gdb_bfd_ref_ptr.
8171
8172 2018-05-16  Tom Tromey  <tom@tromey.com>
8173
8174         PR cli/19551:
8175         * symfile-add-flags.h (enum symfile_add_flags)
8176         <SYMFILE_NOT_FILENAME>: New constant.
8177         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8178         objfile name from BFD.
8179         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8180         * minidebug.c (find_separate_debug_file_in_section): Put
8181         ".gnu_debugdata" into BFD's file name.
8182
8183 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8184
8185         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8186         Remove.
8187
8188 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8189
8190         PR binutils/21446
8191         * aarch64-tdep.c (aarch64_analyze_prologue,
8192         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8193         Indicate not interested in errors.
8194
8195 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8196
8197         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8198         Supply the MIPS_ZERO_REGNUM register.
8199
8200 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8201
8202         * mips-tdep.c (mask_address_var): Make variable static.
8203
8204 2018-05-14  Tom Tromey  <tom@tromey.com>
8205
8206         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8207
8208 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8209
8210         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8211         FXSAVE_ADDR for the mxcsr register.
8212
8213 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8214
8215         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8216
8217 2018-05-11  Pedro Alves  <palves@redhat.com>
8218
8219         * corelow.c (core_target) <core_target>: No longer inline.
8220         Initialize m_core_gdbarch, m_core_vec and build the section table
8221         here.
8222         <~core_target>: New.
8223         <core_gdbarch, get_core_register_section>: New methods.
8224         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8225         factored out from ...
8226         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8227         (core_ops): Delete.
8228         (sniff_core_bfd): Add gdbarch parameter.
8229         (core_close): Delete, merged into ...
8230         (core_target::close): ... here.  Delete self.
8231         (core_close_cleanup): Delete.
8232         (core_target_open): Allocate a core_target on the heap.  Use a
8233         unique_ptr instead of a cleanup.  Bits moved into the core_target
8234         ctor.  Adjust to use core_target methods instead of globals.
8235         (get_core_register_section): Rename to ...
8236         (core_target::get_core_register_section): ... this and adjust.
8237         (struct get_core_registers_cb_data): New.
8238         (get_core_registers_cb): Use it.  Use bool.
8239         (core_target::fetch_registers, core_target::files_info)
8240         (core_target::xfer_partial, core_target::read_description)
8241         (core_target::pid_to, core_target::thread_name): Adjust to
8242         reference class fields instead of globals.
8243         * target.h (struct target_ops_deleter, target_ops_up): New.
8244
8245 2018-05-11  Pedro Alves  <palves@redhat.com>
8246
8247         * corefile.c (core_file_command): Move to corelow.c.
8248         * corelow.c (the_core_target): Delete.
8249         (core_file_command): Moved from corefile.c.  Check exec_bfd
8250         instead of the_core_target.  Use target_detach instead of calling
8251         into the_core_target directly.
8252         (maybe_say_no_core_file_now): New.
8253         (core_target::detach): Use it.
8254         (_initialize_corelow): Remove references to the_core_target.
8255         * gdbcore.h (the_core_target): Delete.
8256
8257 2018-05-11  Tom Tromey  <tromey@redhat.com>
8258             Pedro Alves  <palves@redhat.com>
8259
8260         * corefile.c (core_bfd): Remove.
8261         * gdbcore.h (core_bfd): Now a macro.
8262         * progspace.h (struct program_space) <cbfd>: New field.
8263
8264 2018-05-11  Tom Tromey  <tom@tromey.com>
8265
8266         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8267         gdb::def_vector.
8268
8269 2018-05-10  Tom Tromey  <tom@tromey.com>
8270
8271         * configure: Rebuild.
8272         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8273
8274 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8275
8276         PR server/23158:
8277         * regformats/regdat.sh: Adjust script, following the addition
8278         of the new expedite_regs parameter to init_target_desc.
8279
8280 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8281     
8282         PR gdb/23127
8283         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8284         set_gdbarch_significant_addr_bit.
8285         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8286         set_gdbarch_significant_addr_bit.
8287         * utils.c (address_significant): Update to sign extend addr.
8288
8289 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8290
8291         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8292         (xtensa_linux_init_abi): Limit tdep->num_regs by
8293         tdep->num_nopriv_regs.
8294         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8295         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8296         not initialized.
8297
8298 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8299
8300         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8301
8302 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8303
8304         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8305         (I387_MXCSR_INIT_VAL): New constant.
8306         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8307         buffer if it was supplied by the inferior.
8308         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8309         (i387_xsave_get_clear_bv): New function.
8310         (i387_supply_xsave): Only read x87 control registers from the
8311         xsave buffer if the feature is enabled, and the state will have
8312         been written, otherwise, provide a suitable default.
8313         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8314         including x87 control registers.  Update control registers if they
8315         have changed from the default value, and mark features as enabled
8316         as required.
8317         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8318
8319 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8320
8321         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8322
8323 2018-05-07  Tom Tromey  <tom@tromey.com>
8324
8325         * configure: Rebuild.
8326         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8327
8328 2018-05-07  Tom Tromey  <tom@tromey.com>
8329
8330         PR tdep/20362:
8331         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8332         bit.  Use correct value for VDIV.
8333
8334 2018-05-04  Tom Tromey  <tom@tromey.com>
8335
8336         * configure: Rebuild.
8337         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8338
8339 2018-05-04  Tom Tromey  <tom@tromey.com>
8340
8341         * linux-record.c (record_linux_system_call) <case
8342         RECORD_SYS_RECVFROM>: Add "break".
8343
8344 2018-05-04  Tom Tromey  <tom@tromey.com>
8345
8346         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8347         Add missing "break".
8348         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8349         Add missing "break".
8350
8351 2018-05-04  Tom Tromey  <tom@tromey.com>
8352
8353         * rs6000-tdep.c (ppc_process_record_op4)
8354         (ppc_process_record_op63): Add fall-through comment.
8355
8356 2018-05-04  Tom Tromey  <tom@tromey.com>
8357
8358         * i386-tdep.c (i386_process_record): Add fall-through comment.
8359
8360 2018-05-04  Tom Tromey  <tom@tromey.com>
8361
8362         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8363         comment.
8364
8365 2018-05-04  Tom Tromey  <tom@tromey.com>
8366
8367         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8368         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8369         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8370         comment.
8371         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8372         comment.
8373         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8374         comment.
8375
8376 2018-05-04  Tom Tromey  <tom@tromey.com>
8377
8378         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8379
8380 2018-05-04  Tom Tromey  <tom@tromey.com>
8381
8382         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8383         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8384         * symfile.c (section_is_mapped): Fix fall-through comment.
8385         * stabsread.c (define_symbol, read_member_functions): Fix
8386         fall-through comment.
8387         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8388         comment.
8389         * remote.c (remote_wait_as): Fix fall-through comment.
8390         * p-exp.y (yylex): Fix fall-through comment.
8391         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8392         comment.
8393         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8394         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8395         * jv-exp.y (yylex): Fix fall-through comment.
8396         * go-exp.y (lex_one_token): Fix fall-through comment.
8397         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8398         fall-through comment.
8399         * f-exp.y (yylex): Fix fall-through comment.
8400         * dwarf2read.c (process_die): Fix fall-through comments.
8401         * dbxread.c (process_one_symbol): Fix fall-through comment.
8402         * d-exp.y (lex_one_token): Fix fall-through comment.
8403         * cp-name-parser.y (yylex): Fix fall-through comment.
8404         * coffread.c (coff_symtab_read): Fix fall-through comment.
8405         * c-exp.y (lex_one_token): Fix fall-through comment.
8406         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8407         comment.
8408         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8409         comment.
8410
8411 2018-05-04  Tom Tromey  <tom@tromey.com>
8412
8413         PR python/22730:
8414         * NEWS: Mention gdb.execute change.
8415         * gdbcmd.h (execute_control_command): Don't declare.
8416         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8417         execute_control_commands, execute_control_commands_to_string.
8418         * cli/cli-script.h (execute_control_commands)
8419         (execute_control_commands_to_string): Declare.
8420         (execute_control_command): Add from_tty parameter.
8421         * cli/cli-script.c (execute_control_commands)
8422         (execute_control_commands_to_string): New functions.
8423         (execute_user_command): Use execute_control_commands.
8424         (execute_control_command_1): Add "from_tty" parameter.  Update.
8425         (execute_control_command): Likewise.
8426
8427 2018-05-04  Tom Tromey  <tom@tromey.com>
8428
8429         PR python/22731:
8430         * NEWS: Mention that breakpoint commands are writable.
8431         * python/py-breakpoint.c (bppy_set_commands): New function.
8432         (breakpoint_object_getset) <"commands">: Use it.
8433
8434 2018-05-04  Tom Tromey  <tom@tromey.com>
8435
8436         * tracepoint.c (actions_command): Update.
8437         * mi/mi-cmd-break.c (mi_command_line_array)
8438         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8439         (mi_read_next_line): Remove.
8440         (mi_cmd_break_commands): Update.
8441         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8442         function_view.
8443         * cli/cli-script.c (get_command_line): Update.
8444         (process_next_line): Use function_view.  Constify.
8445         (recurse_read_control_structure, read_command_lines)
8446         (read_command_lines_1): Change argument types to function_view.
8447         (do_define_command, document_command): Update.
8448         * breakpoint.h (check_tracepoint_command): Don't declare.
8449         * breakpoint.c (check_tracepoint_command): Remove.
8450         (commands_command_1, create_tracepoint_from_upload): Update.
8451
8452 2018-05-04  Tom Tromey  <tom@tromey.com>
8453
8454         PR gdb/11750:
8455         * cli/cli-script.h (enum command_control_type) <define_control>:
8456         New constant.
8457         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8458         (build_command_line, execute_control_command_1)
8459         (process_next_line): Likewise.
8460         (do_define_command): New function, extracted from define_command.
8461         (define_command): Use it.
8462
8463 2018-05-04  Tom Tromey  <tom@tromey.com>
8464
8465         * tracepoint.c (actions_command): Update.
8466         * cli/cli-script.h (read_command_lines): Update.
8467         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8468         (MAX_TMPBUF): Remove define.
8469         (define_command): Use string_printf.
8470         (document_command): Likewise.
8471         * breakpoint.c (commands_command_1): Update.
8472
8473 2018-05-04  Tom Tromey  <tom@tromey.com>
8474
8475         * top.c (execute_command): Update.
8476         * cli/cli-script.h (print_command_lines): Now varargs.
8477         * cli/cli-script.c (print_command_lines): Now varargs.
8478         (execute_control_command_1) <case while_control, case if_control>:
8479         Update.
8480
8481 2018-05-04  Tom Tromey  <tom@tromey.com>
8482
8483         * tracepoint.c (all_tracepoint_actions): Rename from
8484         all_tracepoint_actions_and_cleanup.  Change return type.
8485         (actions_command, encode_actions_1, encode_actions)
8486         (trace_dump_actions, tdump_command): Update.
8487         * remote.c (remote_download_command_source): Update.
8488         * python/python.c (gdbpy_eval_from_control_command)
8489         (python_command, python_interactive_command): Update.
8490         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8491         * guile/guile.c (guile_command)
8492         (gdbscm_eval_from_control_command, guile_command): Update.
8493         * compile/compile.c (compile_code_command)
8494         (compile_print_command, compile_to_object): Update.
8495         * cli/cli-script.h (struct command_lines_deleter): New.
8496         (counted_command_line): New typedef.
8497         (struct command_line): Add constructor, destructor.
8498         <body_list>: Remove.
8499         <body_list_0, body_list_1>: New members.
8500         (command_line_up): Remove typedef.
8501         (read_command_lines, read_command_lines_1, get_command_line):
8502         Update.
8503         (copy_command_lines): Don't declare.
8504         * cli/cli-script.c (build_command_line): Use "new".
8505         (get_command_line): Return counted_command_line.
8506         (print_command_lines, execute_user_command)
8507         (execute_control_command_1, while_command, if_command): Update.
8508         (realloc_body_list): Remove.
8509         (process_next_line, recurse_read_control_structure): Update.
8510         (read_command_lines, read_command_lines_1): Return counted_command_line.
8511         (free_command_lines): Use "delete".
8512         (copy_command_lines): Remove.
8513         (define_command, document_command, show_user_1): Update.
8514         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8515         a counted_command_line.
8516         * breakpoint.h (counted_command_line): Remove typedef.
8517         (breakpoint_set_commands): Update.
8518         * breakpoint.c (check_no_tracepoint_commands)
8519         (validate_commands_for_breakpoint): Update.
8520         (breakpoint_set_commands): Change commands to be a
8521         counted_command_line.
8522         (commands_command_1, update_dprintf_command_list)
8523         (create_tracepoint_from_upload): Update.
8524
8525 2018-05-04  Tom Tromey  <tom@tromey.com>
8526
8527         * cli/cli-decode.h (cmd_list_element): New constructor.
8528         (~cmd_list_element): New destructor.
8529         (struct cmd_list_element): Add initializers.
8530         * cli/cli-decode.c (do_add_cmd): Use "new".
8531         (delete_cmd): Use "delete".
8532
8533 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8534             Pedro Alves <palves@redhat.com>
8535
8536         PR breakpoints/19806 and support for PR external/20207.
8537         * NEWS: Mention Aarch64 watchpoint improvements.
8538         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8539         watchpoints and PR external/20207 watchpoints.
8540         * nat/aarch64-linux-hw-point.c
8541         (kernel_supports_any_contiguous_range): New.
8542         (aarch64_watchpoint_offset): New.
8543         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8544         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8545         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8546         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8547         next_addr_orig_p.  Support PR external/20207 watchpoints.
8548         (aarch64_downgrade_regs): New.
8549         (aarch64_dr_state_insert_one_point): New parameters offset and
8550         addr_orig.
8551         (aarch64_dr_state_remove_one_point): Likewise.
8552         (aarch64_handle_breakpoint): Update caller.
8553         (aarch64_handle_aligned_watchpoint): Likewise.
8554         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
8555         aligned_offset.
8556         (aarch64_linux_set_debug_regs): Remove const from state.  Call
8557         aarch64_downgrade_regs.
8558         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
8559         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
8560         (DR_CONTROL_MASK): ... this.
8561         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
8562         (unsigned int aarch64_watchpoint_offset): New prototype.
8563         (aarch64_linux_set_debug_regs): Remove const from state.
8564         * utils.c (align_up, align_down): Move to ...
8565         * common/common-utils.c (align_up, align_down): ... here.
8566         * utils.h (align_up, align_down): Move to ...
8567         * common/common-utils.h (align_up, align_down): ... here.
8568
8569 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
8570
8571         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
8572         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
8573         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
8574         Re-implement to match the ABI as summarized in GCC's
8575         gcc/config/sparc/sparc.c.  All callers updated.
8576         (sparc32_store_arguments): Remove assertion.
8577
8578 2018-05-04  Tom Tromey  <tom@tromey.com>
8579
8580         * printcmd.c: Don't include tui.h.
8581         (decode_format): Use skip_spaces.
8582
8583 2018-05-04  Tom Tromey  <tom@tromey.com>
8584
8585         PR gdb/22619:
8586         * printcmd.c (last_count): New global.
8587         (x_command): Use saved count when repeating.
8588
8589 2018-05-04  Tom Tromey  <tom@tromey.com>
8590
8591         * nto-procfs.c (do_closedir_cleanup): Remove.
8592         (procfs_pidlist): Use gdb_dir_up.
8593         * procfs.c (do_closedir_cleanup): Remove.
8594         (proc_update_threads): Use gdb_dir_up.
8595         * common/filestuff.h (struct gdb_dir_deleter): New.
8596         (gdb_dir_up): New typedef.
8597
8598 2018-05-04  Tom Tromey  <tom@tromey.com>
8599
8600         * ada-lang.c (print_mention_exception): Use std::string.
8601
8602 2018-05-04  Tom Tromey  <tom@tromey.com>
8603
8604         * ada-lang.c (create_excep_cond_exprs): Update.
8605         (ada_exception_catchpoint_cond_string): Use std::string.
8606
8607 2018-05-04  Tom Tromey  <tom@tromey.com>
8608
8609         * ada-lang.c (xget_renaming_scope): Return std::string.
8610         (old_renaming_is_invisible): Update.
8611
8612 2018-05-04  Tom Tromey  <tom@tromey.com>
8613
8614         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
8615         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
8616
8617 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
8618
8619         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
8620
8621 2018-05-04  Tom Tromey  <tom@tromey.com>
8622
8623         * remote.c (remote_query_supported_append): Change type.
8624         (remote_check_symbols): Update.
8625
8626 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
8627
8628         PR gdb/11420
8629         * configure.ac: Prepend libpython.
8630         * python/python-config.py: Likewise.
8631         * configure: Regenerate.
8632
8633 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
8634
8635         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
8636
8637 2018-05-03  Pedro Alves  <palves@redhat.com>
8638
8639         * s390-linux-nat.c
8640         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
8641         override.  Write 'true' instead of '1'.
8642         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
8643         declaration.
8644
8645 2018-05-02  Pedro Alves  <palves@redhat.com>
8646
8647         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
8648         add_inf_child_target.
8649         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
8650         add_inf_child_target.
8651         * aix-thread.c (aix_thread_target_info): New.
8652         (aix_thread_target) <shortname, longname, doc>: Delete.
8653         <info>: New.
8654         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
8655         add_inf_child_target.
8656         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
8657         add_inf_child_target.
8658         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
8659         add_inf_child_target.
8660         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
8661         add_inf_child_target.
8662         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
8663         add_inf_child_target.
8664         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
8665         add_inf_child_target.
8666         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
8667         add_inf_child_target.
8668         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
8669         add_inf_child_target.
8670         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
8671         add_inf_child_target.
8672         * bfd-target.c (target_bfd_target_info): New.
8673         (target_bfd) <shortname, longname, doc>: Delete.
8674         <info>: New.
8675         * bsd-kvm.c (bsd_kvm_target_info): New.
8676         (bsd_kvm_target) <shortname, longname, doc>: Delete.
8677         <info>: New.
8678         (bsd_kvm_target::open): Rename to ...
8679         (bsd_kvm_target_open): ... this.  Adjust.
8680         * bsd-uthread.c (bsd_uthread_target_info): New.
8681         (bsd_uthread_target) <shortname, longname, doc>: Delete.
8682         <info>: New.
8683         * corefile.c (core_file_command): Adjust.
8684         * corelow.c (core_target_info): New.
8685         (core_target) <shortname, longname, doc>: Delete.
8686         <info>: New.
8687         (core_target::open): Rename to ...
8688         (core_target_open): ... this.  Adjust.
8689         * ctf.c (ctf_target_info): New.
8690         (ctf_target) <shortname, longname, doc>: Delete.
8691         <info>: New.
8692         (ctf_target::open): Rename to ...
8693         (ctf_target_open): ... this.
8694         (_initialize_ctf): Adjust.
8695         * exec.c (exec_target_info): New.
8696         (exec_target) <shortname, longname, doc>: Delete.
8697         <info>: New.
8698         (exec_target::open): Rename to ...
8699         (exec_target_open): ... this.
8700         * gdbcore.h (core_target_open): Declare.
8701         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
8702         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
8703         add_inf_child_target.
8704         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
8705         add_inf_child_target.
8706         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
8707         add_inf_child_target.
8708         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
8709         add_inf_child_target.
8710         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
8711         add_inf_child_target.
8712         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
8713         add_inf_child_target.
8714         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
8715         add_inf_child_target.
8716         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
8717         add_inf_child_target.
8718         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
8719         add_inf_child_target.
8720         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
8721         add_inf_child_target.
8722         * inf-child.c (inf_child_target_info): New.
8723         (inf_child_target::info): New.
8724         (inf_child_open_target): Remove 'target' parameter.  Use
8725         get_native_target instead.
8726         (inf_child_target::open): Delete.
8727         (add_inf_child_target): New.
8728         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
8729         Delete.
8730         <info>: New.
8731         (add_inf_child_target): Declare.
8732         (inf_child_open_target): Declare.
8733         * linux-thread-db.c (thread_db_target_info): New.
8734         (thread_db_target) <shortname, longname, doc>: Delete.
8735         <info>: New.
8736         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
8737         add_inf_child_target.
8738         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
8739         add_inf_child_target.
8740         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
8741         add_inf_child_target.
8742         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
8743         add_inf_child_target.
8744         * make-target-delegates (print_class): Adjust.
8745         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
8746         add_inf_child_target.
8747         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
8748         add_inf_child_target.
8749         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
8750         add_inf_child_target.
8751         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
8752         add_inf_child_target.
8753         * nto-procfs.c (nto_native_target_info): New.
8754         (nto_procfs_target_native) <shortname, longname, doc>:
8755         Delete.
8756         <info>: New.
8757         (nto_procfs_target_info): New.
8758         (nto_procfs_target_procfs) <shortname, longname, doc>:
8759         Delete.
8760         <info>: New.
8761         (init_procfs_targets): Adjust.
8762         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
8763         add_inf_child_target.
8764         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
8765         add_inf_child_target.
8766         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
8767         add_inf_child_target.
8768         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
8769         add_inf_child_target.
8770         * ravenscar-thread.c (ravenscar_target_info): New.
8771         (ravenscar_thread_target) <shortname, longname, doc>:
8772         Delete.
8773         <info>: New.
8774         * record-btrace.c (record_btrace_target_info):
8775         (record_btrace_target) <shortname, longname, doc>: Delete.
8776         <info>: New.
8777         (record_btrace_target::open): Rename to ...
8778         (record_btrace_target_open): ... this.  Adjust.
8779         * record-full.c (record_longname, record_doc): New.
8780         (record_full_base_target) <shortname, longname, doc>: Delete.
8781         <info>: New.
8782         (record_full_target_info): New.
8783         (record_full_target): <shortname>: Delete.
8784         <info>: New.
8785         (record_full_core_open_1, record_full_open_1): Update comments.
8786         (record_full_base_target::open): Rename to ...
8787         (record_full_open): ... this.
8788         (cmd_record_full_restore): Update.
8789         (_initialize_record_full): Update.
8790         * remote-sim.c (remote_sim_target_info): New.
8791         (gdbsim_target) <shortname, longname, doc>: Delete.
8792         <info>: New.
8793         (gdbsim_target::open): Rename to ...
8794         (gdbsim_target_open): ... this.
8795         (_initialize_remote_sim): Adjust.
8796         * remote.c (remote_doc): New.
8797         (remote_target_info): New.
8798         (remote_target) <shortname, longname, doc>: Delete.
8799         <info>: New.
8800         (extended_remote_target_info): New.
8801         (extended_remote_target) <shortname, longname, doc>: Delete.
8802         <info>: New.
8803         (remote_target::open_1): Make static.  Adjust.
8804         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
8805         * s390-linux-nat.c (_initialize_s390_nat): Use
8806         add_inf_child_target.
8807         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
8808         add_inf_child_target.
8809         * sol-thread.c (thread_db_target_info): New.
8810         (sol_thread_target) <shortname, longname, doc>: Delete.
8811         <info>: New.
8812         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
8813         add_inf_child_target.
8814         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
8815         add_inf_child_target.
8816         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
8817         add_inf_child_target.
8818         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
8819         add_inf_child_target.
8820         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
8821         add_inf_child_target.
8822         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
8823         add_inf_child_target.
8824         * spu-linux-nat.c (_initialize_spu_nat): Use
8825         add_inf_child_target.
8826         * spu-multiarch.c (spu_multiarch_target_info): New.
8827         (spu_multiarch_target) <shortname, longname, doc>: Delete.
8828         <info>: New.
8829         * target-delegates.c: Regenerate.
8830         * target.c: Include <unordered_map>.
8831         (target_ops_p): Delete.
8832         (DEF_VEC_P(target_ops_p)): Delete.
8833         (target_factories): New.
8834         (test_target_info): New.
8835         (test_target_ops::info): New.
8836         (open_target): Adjust to use target_factories.
8837         (add_target_with_completer): Rename to ...
8838         (add_target): ... this.  Change prototype.  Register target_info
8839         and open callback in target_factories.  Register target_info in
8840         command context instead of target_ops.
8841         (add_target): Delete old implementation.
8842         (add_deprecated_target_alias): Change prototype.  Adjust.
8843         (the_native_target): New.
8844         (set_native_target, get_native_target): New.
8845         (find_default_run_target): Use the_native_target.
8846         (find_attach_target, find_run_target): Simplify.
8847         (target_ops::open): Delete.
8848         (dummy_target_info): New.
8849         (dummy_target::shortname, dummy_target::longname)
8850         (dummy_target::doc): Delete.
8851         (dummy_target::info): New.
8852         (debug_target::shortname, debug_target::longname)
8853         (debug_target::doc): Delete.
8854         (debug_target::info): New.
8855         * target.h (struct target_info): New.
8856         (target_ops::~target_ops): Add comment.
8857         (target_ops::info): New.
8858         (target_ops::shortname, target_ops::longname, target_ops::doc): No
8859         longer virtual.  Implement in terms of target_info.
8860         (set_native_target, get_native_target): Declare.
8861         (target_open_ftype): New.
8862         (add_target, add_target_with_completer)
8863         (add_deprecated_target_alias): Change prototype.
8864         (test_target) <shortname, longname, doc>: Delete.
8865         <info>: New.
8866         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
8867         add_inf_child_target.
8868         * tracefile-tfile.c (tfile_target_info): New.
8869         (tfile_target) <shortname, longname, doc>: Delete.
8870         <info>: New.
8871         (tfile_target::open): Rename to ...
8872         (tfile_target_open): ... this.
8873         (_initialize_tracefile_tfile): Adjust.
8874         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
8875         add_inf_child_target.
8876         * windows-nat.c (_initialize_windows_nat): Use
8877         add_inf_child_target.
8878         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
8879         add_inf_child_target.
8880
8881 2018-05-02  Pedro Alves  <palves@redhat.com>
8882
8883         * linux-nat.h (linux_nat_target) <low_new_thread,
8884         low_delete_thread, low_new_fork, low_forget_process,
8885         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
8886         New virtual methods.
8887         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8888         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
8889         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
8890         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8891         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
8892         Delete.
8893         * linux-fork.c (delete_fork): Adjust to call low method.
8894         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
8895         (linux_nat_new_fork, linux_nat_forget_process_hook)
8896         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
8897         (linux_nat_status_is_event):
8898         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
8899         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
8900         to call low method.
8901         (sigtrap_is_event): Rename to ...
8902         (linux_nat_target::low_status_is_event): ... this.
8903         (linux_nat_set_status_is_event): Delete.
8904         (save_stop_reason, linux_nat_wait_1)
8905         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
8906         low methods.
8907         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8908         (linux_nat_set_new_fork, linux_nat_set_forget_process)
8909         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8910         (linux_nat_set_prepare_to_resume): Delete.
8911         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
8912         low virtual methods.
8913         * amd64-linux-nat.c: Likewise.
8914         * arm-linux-nat.c: Likewise.
8915         * i386-linux-nat.c: Likewise.
8916         * ia64-linux-nat.c: Likewise.
8917         * mips-linux-nat.c: Likewise.
8918         * ppc-linux-nat.c: Likewise.
8919         * s390-linux-nat.c: Likewise.
8920         * sparc64-linux-nat.c: Likewise.
8921         * x86-linux-nat.c: Likewise.
8922         * x86-linux-nat.h: Include "nat/x86-linux.h".
8923         (x86_linux_nat_target) <low_new_fork, low_forget_process,
8924         low_prepare_to_resume, low_new_thread, low_delete_thread>:
8925         Override methods.
8926
8927 2018-05-02  Pedro Alves  <palves@redhat.com>
8928
8929         * target.h (target_ops)
8930         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
8931         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
8932         stopped_by_watchpoint, have_continuable_watchpoint,
8933         stopped_data_address, watchpoint_addr_within_range,
8934         can_accel_watchpoint_condition, can_run, thread_alive,
8935         has_all_memory, has_memory, has_stack, has_registers,
8936         has_execution, can_async_p, is_async_p, supports_non_stop,
8937         always_non_stop_p, can_execute_reverse, supports_multi_process,
8938         supports_enable_disable_tracepoint,
8939         supports_disable_randomization, supports_string_tracing,
8940         supports_evaluation_of_breakpoint_conditions,
8941         can_run_breakpoint_commands, filesystem_is_local,
8942         can_download_tracepoint, get_trace_state_variable_value,
8943         set_trace_notes, get_tib_address, use_agent, can_use_agent,
8944         record_is_replaying, record_will_replay,
8945         augmented_libraries_svr4_read>: Adjust to return bool.
8946         * aarch64-linux-nat.c: All implementations adjusted.
8947         * aix-thread.c: All implementations adjusted.
8948         * arm-linux-nat.c: All implementations adjusted.
8949         * breakpoint.c: All implementations adjusted.
8950         * bsd-kvm.c: All implementations adjusted.
8951         * bsd-uthread.c: All implementations adjusted.
8952         * corelow.c: All implementations adjusted.
8953         * ctf.c: All implementations adjusted.
8954         * darwin-nat.c: All implementations adjusted.
8955         * darwin-nat.h: All implementations adjusted.
8956         * exec.c: All implementations adjusted.
8957         * fbsd-nat.c: All implementations adjusted.
8958         * fbsd-nat.h: All implementations adjusted.
8959         * gnu-nat.c: All implementations adjusted.
8960         * gnu-nat.h: All implementations adjusted.
8961         * go32-nat.c: All implementations adjusted.
8962         * ia64-linux-nat.c: All implementations adjusted.
8963         * inf-child.c: All implementations adjusted.
8964         * inf-child.h: All implementations adjusted.
8965         * inf-ptrace.c: All implementations adjusted.
8966         * inf-ptrace.h: All implementations adjusted.
8967         * linux-nat.c: All implementations adjusted.
8968         * linux-nat.h: All implementations adjusted.
8969         * mips-linux-nat.c: All implementations adjusted.
8970         * nto-procfs.c: All implementations adjusted.
8971         * ppc-linux-nat.c: All implementations adjusted.
8972         * procfs.c: All implementations adjusted.
8973         * ravenscar-thread.c: All implementations adjusted.
8974         * record-btrace.c: All implementations adjusted.
8975         * record-full.c: All implementations adjusted.
8976         * remote-sim.c: All implementations adjusted.
8977         * remote.c: All implementations adjusted.
8978         * s390-linux-nat.c: All implementations adjusted.
8979         * sol-thread.c: All implementations adjusted.
8980         * spu-multiarch.c: All implementations adjusted.
8981         * target-delegates.c: All implementations adjusted.
8982         * target.c: All implementations adjusted.
8983         * target.h: All implementations adjusted.
8984         * tracefile-tfile.c: All implementations adjusted.
8985         * tracefile.c: All implementations adjusted.
8986         * tracefile.h: All implementations adjusted.
8987         * windows-nat.c: All implementations adjusted.
8988         * x86-linux-nat.h: All implementations adjusted.
8989         * x86-nat.h: All implementations adjusted.
8990
8991 2018-05-02  Pedro Alves  <palves@redhat.com>
8992
8993         * make-target-delegates (scan_target_h): Don't trim lines here.
8994         Replace sequences of tabs and/or whitespace with a single
8995         whitespace.
8996         (top level, parsing methods): Trim each line before processing it
8997         here.
8998
8999 2018-05-02  Pedro Alves  <palves@redhat.com>
9000             John Baldwin  <jhb@freebsd.org>
9001
9002         * target.h (enum strata) <debug_stratum>: New.
9003         (struct target_ops) <all delegation methods>: Replace by C++
9004         virtual methods, and drop "to_" prefix.  All references updated
9005         throughout.
9006         <to_shortname, to_longname, to_doc, to_data,
9007         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9008         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9009         virtual methods.  All references updated throughout.
9010         <can_attach, supports_terminal_ours, can_create_inferior,
9011         get_thread_control_capabilities, attach_no_wait>: New
9012         virtual methods.
9013         <insert_breakpoint, remove_breakpoint>: Now
9014         TARGET_DEFAULT_NORETURN methods.
9015         <info_proc>: Now returns bool.
9016         <to_magic>: Delete.
9017         (OPS_MAGIC): Delete.
9018         (current_target): Delete.  All references replaced by references
9019         to ...
9020         (target_stack): ... this.  New.
9021         (target_shortname, target_longname): Adjust.
9022         (target_can_run): Now a function declaration.
9023         (default_child_has_all_memory, default_child_has_memory)
9024         (default_child_has_stack, default_child_has_registers)
9025         (default_child_has_execution): Remove target_ops parameter.
9026         (complete_target_initialization): Delete.
9027         (memory_breakpoint_target): New template class.
9028         (test_target_ops): Refactor as a C++ class with virtual methods.
9029         * make-target-delegates (NAME_PART): Tighten.
9030         (POINTER_PART, CP_SYMBOL): New.
9031         (SIMPLE_RETURN_PART): Reimplement.
9032         (VEC_RETURN_PART): Expect less.
9033         (RETURN_PART, VIRTUAL_PART): New.
9034         (METHOD): Adjust to C++ virtual methods.
9035         (scan_target_h): Remove reference to C99.
9036         (dname): Output "target_ops::" prefix.
9037         (write_function_header): Adjust to output a C++ class method.
9038         (write_declaration): New.
9039         (write_delegator): Adjust to output a C++ class method.
9040         (tdname): Output "dummy_target::" prefix.
9041         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9042         method.
9043         (tdefault_names, debug_names): Delete.
9044         (return_types, tdefaults, styles, argtypes_array): New.
9045         (top level): All methods are delegators.
9046         (print_class): New.
9047         (top level): Print dummy_target and debug_target classes.
9048         * target-delegates.c: Regenerate.
9049         * target-debug.h (target_debug_print_enum_info_proc_what)
9050         (target_debug_print_thread_control_capabilities)
9051         (target_debug_print_thread_info_p): New.
9052         * target.c (dummy_target): Delete.
9053         (the_dummy_target, the_debug_target): New.
9054         (target_stack): Now extern.
9055         (set_targetdebug): Push/unpush debug target.
9056         (default_child_has_all_memory, default_child_has_memory)
9057         (default_child_has_stack, default_child_has_registers)
9058         (default_child_has_execution): Remove target_ops parameter.
9059         (complete_target_initialization): Delete.
9060         (add_target_with_completer): No longer call
9061         complete_target_initialization.
9062         (target_supports_terminal_ours): Use regular delegation.
9063         (update_current_target): Delete.
9064         (push_target): No longer check magic number.  Don't call
9065         update_current_target.
9066         (unpush_target): Don't call update_current_target.
9067         (target_is_pushed): No longer check magic number.
9068         (target_require_runnable): Skip for all stratums over
9069         process_stratum.
9070         (target_ops::info_proc): New.
9071         (target_info_proc): Use find_target_at and
9072         find_default_run_target.
9073         (target_supports_disable_randomization): Use regular delegation.
9074         (target_get_osdata): Use find_target_at.
9075         (target_ops::open, target_ops::close, target_ops::can_attach)
9076         (target_ops::attach, target_ops::can_create_inferior)
9077         (target_ops::create_inferior, target_ops::can_run)
9078         (target_can_run): New.
9079         (default_fileio_target): Use regular delegation.
9080         (target_ops::fileio_open, target_ops::fileio_pwrite)
9081         (target_ops::fileio_pread, target_ops::fileio_fstat)
9082         (target_ops::fileio_close, target_ops::fileio_unlink)
9083         (target_ops::fileio_readlink): New.
9084         (target_fileio_open_1, target_fileio_unlink)
9085         (target_fileio_readlink): Always call the target method.  Handle
9086         FILEIO_ENOSYS.
9087         (return_zero, return_zero_has_execution): Delete.
9088         (init_dummy_target): Delete.
9089         (dummy_target::dummy_target, dummy_target::shortname)
9090         (dummy_target::longname, dummy_target::doc)
9091         (debug_target::debug_target, debug_target::shortname)
9092         (debug_target::longname, debug_target::doc): New.
9093         (target_supports_delete_record): Use regular delegation.
9094         (setup_target_debug): Delete.
9095         (maintenance_print_target_stack): Skip debug_stratum.
9096         (initialize_targets): Instantiate the_dummy_target and
9097         the_debug_target.
9098         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9099         use target_stack.
9100         (target_auxv_search, fprint_target_auxv): Adjust.
9101         (info_auxv_command): Adjust to use target_stack.
9102         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9103         * exceptions.c (print_flush): Handle a NULL target_stack.
9104         * regcache.c (target_ops_no_register): Refactor as class with
9105         virtual methods.
9106
9107         * exec.c (exec_target): New class.
9108         (exec_ops): Now an exec_target.
9109         (exec_open, exec_close_1, exec_get_section_table)
9110         (exec_xfer_partial, exec_files_info, exec_has_memory)
9111         (exec_make_note_section): Refactor as exec_target methods.
9112         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9113         Delete.
9114         (exec_target::find_memory_regions): New.
9115         (_initialize_exec): Don't call init_exec_ops.
9116         * gdbcore.h (exec_file_clear): Delete.
9117
9118         * corefile.c (core_target): Delete.
9119         (core_file_command): Adjust.
9120         * corelow.c (core_target): New class.
9121         (the_core_target): New.
9122         (core_close): Remove target_ops parameter.
9123         (core_close_cleanup): Adjust.
9124         (core_target::close): New.
9125         (core_open, core_detach, get_core_registers, core_files_info)
9126         (core_xfer_partial, core_thread_alive, core_read_description)
9127         (core_pid_to_str, core_thread_name, core_has_memory)
9128         (core_has_stack, core_has_registers, core_info_proc): Rework as
9129         core_target methods.
9130         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9131         (_initialize_corelow): Initialize the_core_target.
9132         * gdbcore.h (core_target): Delete.
9133         (the_core_target): New.
9134
9135         * ctf.c: (ctf_target): New class.
9136         (ctf_ops): Now a ctf_target.
9137         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9138         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9139         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9140         methods.
9141         (init_ctf_ops): Delete.
9142         (_initialize_ctf): Don't call it.
9143         * tracefile-tfile.c (tfile_target): New class.
9144         (tfile_ops): Now a tfile_target.
9145         (tfile_open, tfile_close, tfile_files_info)
9146         (tfile_get_tracepoint_status, tfile_trace_find)
9147         (tfile_fetch_registers, tfile_xfer_partial)
9148         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9149         Refactor as tfile_target methods.
9150         (tfile_xfer_partial_features): Remove target_ops parameter.
9151         (init_tfile_ops): Delete.
9152         (_initialize_tracefile_tfile): Don't call it.
9153         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9154         (tracefile_has_stack, tracefile_has_registers)
9155         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9156         tracefile_target methods.
9157         (init_tracefile_ops): Delete.
9158         (tracefile_target::tracefile_target): New.
9159         * tracefile.h: Include "target.h".
9160         (tracefile_target): New class.
9161         (init_tracefile_ops): Delete.
9162
9163         * spu-multiarch.c (spu_multiarch_target): New class.
9164         (spu_ops): Now a spu_multiarch_target.
9165         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9166         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9167         (spu_search_memory, spu_mourn_inferior): Refactor as
9168         spu_multiarch_target methods.
9169         (init_spu_ops): Delete.
9170         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9171         complete_target_initialization.
9172
9173         * ravenscar-thread.c (ravenscar_thread_target): New class.
9174         (ravenscar_ops): Now a ravenscar_thread_target.
9175         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9176         (ravenscar_thread_alive, ravenscar_pid_to_str)
9177         (ravenscar_fetch_registers, ravenscar_store_registers)
9178         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9179         (ravenscar_stopped_by_hw_breakpoint)
9180         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9181         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9182         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9183         methods.
9184         (init_ravenscar_thread_ops): Delete.
9185         (_initialize_ravenscar): Remove references to
9186         init_ravenscar_thread_ops and complete_target_initialization.
9187
9188         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9189         (bsd_uthread_target): New class.
9190         (bsd_uthread_ops): Now a bsd_uthread_target.
9191         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9192         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9193         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9194         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9195         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9196         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9197         (bsd_uthread_target): Delete function.
9198         (_initialize_bsd_uthread): Remove reference to
9199         complete_target_initialization.
9200
9201         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9202         (target_bfd): ... this new class.
9203         (target_bfd_xfer_partial, target_bfd_get_section_table)
9204         (target_bfd_close): Refactor as target_bfd methods.
9205         (target_bfd::~target_bfd): New.
9206         (target_bfd_reopen): Adjust.
9207         (target_bfd::close): New.
9208
9209         * record-btrace.c (record_btrace_target): New class.
9210         (record_btrace_ops): Now a record_btrace_target.
9211         (record_btrace_open, record_btrace_stop_recording)
9212         (record_btrace_disconnect, record_btrace_close)
9213         (record_btrace_async, record_btrace_info)
9214         (record_btrace_insn_history, record_btrace_insn_history_range)
9215         (record_btrace_insn_history_from, record_btrace_call_history)
9216         (record_btrace_call_history_range)
9217         (record_btrace_call_history_from, record_btrace_record_method)
9218         (record_btrace_is_replaying, record_btrace_will_replay)
9219         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9220         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9221         (record_btrace_store_registers, record_btrace_prepare_to_store)
9222         (record_btrace_to_get_unwinder)
9223         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9224         (record_btrace_commit_resume, record_btrace_wait)
9225         (record_btrace_stop, record_btrace_can_execute_reverse)
9226         (record_btrace_stopped_by_sw_breakpoint)
9227         (record_btrace_supports_stopped_by_sw_breakpoint)
9228         (record_btrace_stopped_by_hw_breakpoint)
9229         (record_btrace_supports_stopped_by_hw_breakpoint)
9230         (record_btrace_update_thread_list, record_btrace_thread_alive)
9231         (record_btrace_goto_begin, record_btrace_goto_end)
9232         (record_btrace_goto, record_btrace_stop_replaying_all)
9233         (record_btrace_execution_direction)
9234         (record_btrace_prepare_to_generate_core)
9235         (record_btrace_done_generating_core): Refactor as
9236         record_btrace_target methods.
9237         (init_record_btrace_ops): Delete.
9238         (_initialize_record_btrace): Remove reference to
9239         init_record_btrace_ops.
9240         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9241         the execution_direction global.
9242         (record_full_base_target, record_full_target)
9243         (record_full_core_target): New classes.
9244         (record_full_ops): Now a record_full_target.
9245         (record_full_core_ops): Now a record_full_core_target.
9246         (record_full_target::detach, record_full_target::disconnect)
9247         (record_full_core_target::disconnect)
9248         (record_full_target::mourn_inferior, record_full_target::kill):
9249         New.
9250         (record_full_open, record_full_close, record_full_async): Refactor
9251         as methods of the record_full_base_target class.
9252         (record_full_resume, record_full_commit_resume): Refactor
9253         as methods of the record_full_target class.
9254         (record_full_wait, record_full_stopped_by_watchpoint)
9255         (record_full_stopped_data_address)
9256         (record_full_stopped_by_sw_breakpoint)
9257         (record_full_supports_stopped_by_sw_breakpoint)
9258         (record_full_stopped_by_hw_breakpoint)
9259         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9260         methods of the record_full_base_target class.
9261         (record_full_store_registers, record_full_xfer_partial)
9262         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9263         Refactor as methods of the record_full_target class.
9264         (record_full_can_execute_reverse, record_full_get_bookmark)
9265         (record_full_goto_bookmark, record_full_execution_direction)
9266         (record_full_record_method, record_full_info, record_full_delete)
9267         (record_full_is_replaying, record_full_will_replay)
9268         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9269         (record_full_stop_replaying): Refactor as methods of the
9270         record_full_base_target class.
9271         (record_full_core_resume, record_full_core_kill)
9272         (record_full_core_fetch_registers)
9273         (record_full_core_prepare_to_store)
9274         (record_full_core_store_registers, record_full_core_xfer_partial)
9275         (record_full_core_insert_breakpoint)
9276         (record_full_core_remove_breakpoint)
9277         (record_full_core_has_execution): Refactor
9278         as methods of the record_full_core_target class.
9279         (record_full_base_target::supports_delete_record): New.
9280         (init_record_full_ops): Delete.
9281         (init_record_full_core_ops): Delete.
9282         (record_full_save): Refactor as method of the
9283         record_full_base_target class.
9284         (_initialize_record_full): Remove references to
9285         init_record_full_ops and init_record_full_core_ops.
9286
9287         * remote.c (remote_target, extended_remote_target): New classes.
9288         (remote_ops): Now a remote_target.
9289         (extended_remote_ops): Now an extended_remote_target.
9290         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9291         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9292         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9293         (remote_pass_signals, remote_set_syscall_catchpoint)
9294         (remote_program_signals, )
9295         (remote_thread_always_alive): Remove target_ops parameter.
9296         (remote_thread_alive, remote_thread_name)
9297         (remote_update_thread_list, remote_threads_extra_info)
9298         (remote_static_tracepoint_marker_at)
9299         (remote_static_tracepoint_markers_by_strid)
9300         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9301         (remote_open): Refactor as methods of remote_target.
9302         (extended_remote_open, extended_remote_detach)
9303         (extended_remote_attach, extended_remote_post_attach):
9304         (extended_remote_supports_disable_randomization)
9305         (extended_remote_create_inferior): : Refactor as method of
9306         extended_remote_target.
9307         (remote_set_permissions, remote_open_1, remote_detach)
9308         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9309         (remote_resume, remote_commit_resume, remote_stop)
9310         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9311         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9312         (remote_prepare_to_store, remote_store_registers)
9313         (remote_flash_erase, remote_flash_done, remote_files_info)
9314         (remote_kill, remote_mourn, remote_insert_breakpoint)
9315         (remote_remove_breakpoint, remote_insert_watchpoint)
9316         (remote_watchpoint_addr_within_range)
9317         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9318         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9319         (remote_supports_stopped_by_sw_breakpoint)
9320         (remote_stopped_by_hw_breakpoint)
9321         (remote_supports_stopped_by_hw_breakpoint)
9322         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9323         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9324         (remote_verify_memory): Refactor as methods of remote_target.
9325         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9326         parameter.
9327         (remote_xfer_partial, remote_get_memory_xfer_limit)
9328         (remote_search_memory, remote_rcmd, remote_memory_map)
9329         (remote_pid_to_str, remote_get_thread_local_address)
9330         (remote_get_tib_address, remote_read_description): Refactor as
9331         methods of remote_target.
9332         (remote_target::fileio_open, remote_target::fileio_pwrite)
9333         (remote_target::fileio_pread, remote_target::fileio_close): New.
9334         (remote_hostio_readlink, remote_hostio_fstat)
9335         (remote_filesystem_is_local, remote_can_execute_reverse)
9336         (remote_supports_non_stop, remote_supports_disable_randomization)
9337         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9338         (remote_supports_enable_disable_tracepoint)
9339         (remote_supports_string_tracing)
9340         (remote_can_run_breakpoint_commands, remote_trace_init)
9341         (remote_download_tracepoint, remote_can_download_tracepoint)
9342         (remote_download_trace_state_variable, remote_enable_tracepoint)
9343         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9344         (remote_trace_start, remote_get_trace_status)
9345         (remote_get_tracepoint_status, remote_trace_stop)
9346         (remote_trace_find, remote_get_trace_state_variable_value)
9347         (remote_save_trace_data, remote_get_raw_trace_data)
9348         (remote_set_disconnected_tracing, remote_core_of_thread)
9349         (remote_set_circular_trace_buffer, remote_traceframe_info)
9350         (remote_get_min_fast_tracepoint_insn_len)
9351         (remote_set_trace_buffer_size, remote_set_trace_notes)
9352         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9353         (remote_disable_btrace, remote_teardown_btrace)
9354         (remote_read_btrace, remote_btrace_conf)
9355         (remote_augmented_libraries_svr4_read, remote_load)
9356         (remote_pid_to_exec_file, remote_can_do_single_step)
9357         (remote_execution_direction, remote_thread_handle_to_thread_info):
9358         Refactor as methods of remote_target.
9359         (init_remote_ops, init_extended_remote_ops): Delete.
9360         (remote_can_async_p, remote_is_async_p, remote_async)
9361         (remote_thread_events, remote_upload_tracepoints)
9362         (remote_upload_trace_state_variables): Refactor as methods of
9363         remote_target.
9364         (_initialize_remote): Remove references to init_remote_ops and
9365         init_extended_remote_ops.
9366
9367         * remote-sim.c (gdbsim_target): New class.
9368         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9369         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9370         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9371         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9372         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9373         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9374         Refactor as methods of gdbsim_target.
9375         (gdbsim_ops): Now a gdbsim_target.
9376         (init_gdbsim_ops): Delete.
9377         (gdbsim_cntrl_c): Adjust.
9378         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9379
9380         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9381         (the_amd64_linux_nat_target): New.
9382         (amd64_linux_fetch_inferior_registers)
9383         (amd64_linux_store_inferior_registers): Refactor as methods of
9384         amd64_linux_nat_target.
9385         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9386         * i386-linux-nat.c: Don't include "linux-nat.h".
9387         (i386_linux_nat_target): New class.
9388         (the_i386_linux_nat_target): New.
9389         (i386_linux_fetch_inferior_registers)
9390         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9391         as methods of i386_linux_nat_target.
9392         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9393         * inf-child.c (inf_child_ops): Delete.
9394         (inf_child_fetch_inferior_registers)
9395         (inf_child_store_inferior_registers): Delete.
9396         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9397         methods of inf_child_target.
9398         (inf_child_target::supports_terminal_ours)
9399         (inf_child_target::terminal_init)
9400         (inf_child_target::terminal_inferior)
9401         (inf_child_target::terminal_ours_for_output)
9402         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9403         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9404         New.
9405         (inf_child_open, inf_child_disconnect, inf_child_close)
9406         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9407         (inf_child_post_startup_inferior, inf_child_can_run)
9408         (inf_child_pid_to_exec_file): Refactor as methods of
9409         inf_child_target.
9410         (inf_child_follow_fork): Delete.
9411         (inf_child_target::can_create_inferior)
9412         (inf_child_target::can_attach): New.
9413         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9414         (inf_child_target::has_stack, inf_child_target::has_registers)
9415         (inf_child_target::has_execution): New.
9416         (inf_child_fileio_open, inf_child_fileio_pwrite)
9417         (inf_child_fileio_pread, inf_child_fileio_fstat)
9418         (inf_child_fileio_close, inf_child_fileio_unlink)
9419         (inf_child_fileio_readlink, inf_child_use_agent)
9420         (inf_child_can_use_agent): Refactor as methods of
9421         inf_child_target.
9422         (return_zero, inf_child_target): Delete.
9423         (inf_child_target::inf_child_target): New.
9424         * inf-child.h: Include "target.h".
9425         (inf_child_target): Delete function prototype.
9426         (inf_child_target): New class.
9427         (inf_child_open_target, inf_child_mourn_inferior)
9428         (inf_child_maybe_unpush_target): Delete.
9429         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9430         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9431         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9432         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9433         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9434         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9435         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9436         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9437         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9438         methods of inf_ptrace_target.
9439         (inf_ptrace_target): Delete function.
9440         * inf-ptrace.h: Include "inf-child.h".
9441         (inf_ptrace_target): Delete function declaration.
9442         (inf_ptrace_target): New class.
9443         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9444         * linux-nat.c (linux_target): New.
9445         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9446         (linux_nat_target::~linux_nat_target): New.
9447         (linux_child_post_attach, linux_child_post_startup_inferior)
9448         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9449         (linux_child_remove_fork_catchpoint)
9450         (linux_child_insert_vfork_catchpoint)
9451         (linux_child_remove_vfork_catchpoint)
9452         (linux_child_insert_exec_catchpoint)
9453         (linux_child_remove_exec_catchpoint)
9454         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9455         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9456         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9457         (linux_nat_stopped_data_address)
9458         (linux_nat_stopped_by_sw_breakpoint)
9459         (linux_nat_supports_stopped_by_sw_breakpoint)
9460         (linux_nat_stopped_by_hw_breakpoint)
9461         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9462         (linux_nat_kill, linux_nat_mourn_inferior)
9463         (linux_nat_xfer_partial, linux_nat_thread_alive)
9464         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9465         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9466         (linux_child_static_tracepoint_markers_by_strid)
9467         (linux_nat_is_async_p, linux_nat_can_async_p)
9468         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9469         (linux_nat_supports_multi_process)
9470         (linux_nat_supports_disable_randomization, linux_nat_async)
9471         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9472         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9473         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9474         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9475         methods of linux_nat_target.
9476         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9477         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9478         parameter.
9479         (check_stopped_by_watchpoint): Adjust.
9480         (linux_xfer_partial): Delete.
9481         (linux_target_install_ops, linux_target, linux_nat_add_target):
9482         Delete.
9483         (linux_nat_target::linux_nat_target): New.
9484         * linux-nat.h: Include "inf-ptrace.h".
9485         (linux_nat_target): New.
9486         (linux_target, linux_target_install_ops, linux_nat_add_target):
9487         Delete function declarations.
9488         (linux_target): Declare global.
9489         * linux-thread-db.c (thread_db_target): New.
9490         (thread_db_target::thread_db_target): New.
9491         (thread_db_ops): Delete.
9492         (the_thread_db_target): New.
9493         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9494         (thread_db_update_thread_list, thread_db_pid_to_str)
9495         (thread_db_extra_thread_info)
9496         (thread_db_thread_handle_to_thread_info)
9497         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9498         (thread_db_resume): Refactor as methods of thread_db_target.
9499         (init_thread_db_ops): Delete.
9500         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9501         * x86-linux-nat.c: Don't include "linux-nat.h".
9502         (super_post_startup_inferior): Delete.
9503         (x86_linux_nat_target::~x86_linux_nat_target): New.
9504         (x86_linux_child_post_startup_inferior)
9505         (x86_linux_read_description, x86_linux_enable_btrace)
9506         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9507         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9508         methods of x86_linux_nat_target.
9509         (x86_linux_create_target): Delete.  Bits folded ...
9510         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9511         pointer.
9512         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9513         (x86_linux_nat_target): New class.
9514         (x86_linux_create_target): Delete.
9515         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9516         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9517         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9518         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9519         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9520         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9521         make extern.
9522         (x86_use_watchpoints): Delete.
9523         * x86-nat.h: Include "breakpoint.h" and "target.h".
9524         (x86_use_watchpoints): Delete.
9525         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9526         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9527         (x86_insert_watchpoint, x86_remove_watchpoint)
9528         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9529         (x86_stopped_by_hw_breakpoint): New declarations.
9530         (x86_nat_target): New template class.
9531
9532         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9533         (the_ppc_linux_nat_target): New.
9534         (ppc_linux_fetch_inferior_registers)
9535         (ppc_linux_can_use_hw_breakpoint)
9536         (ppc_linux_region_ok_for_hw_watchpoint)
9537         (ppc_linux_ranged_break_num_registers)
9538         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9539         (ppc_linux_insert_mask_watchpoint)
9540         (ppc_linux_remove_mask_watchpoint)
9541         (ppc_linux_can_accel_watchpoint_condition)
9542         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9543         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9544         (ppc_linux_watchpoint_addr_within_range)
9545         (ppc_linux_masked_watch_num_registers)
9546         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9547         (ppc_linux_read_description): Refactor as methods of
9548         ppc_linux_nat_target.
9549         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
9550
9551         * procfs.c (procfs_xfer_partial): Delete forward declaration.
9552         (procfs_target): New class.
9553         (the_procfs_target): New.
9554         (procfs_target): Delete function.
9555         (procfs_auxv_parse, procfs_attach, procfs_detach)
9556         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
9557         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
9558         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
9559         (procfs_create_inferior, procfs_update_thread_list)
9560         (procfs_thread_alive, procfs_pid_to_str)
9561         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
9562         (procfs_stopped_data_address, procfs_insert_watchpoint)
9563         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
9564         (proc_find_memory_regions, procfs_info_proc)
9565         (procfs_make_note_section): Refactor as methods of procfs_target.
9566         (_initialize_procfs): Adjust.
9567         * sol-thread.c (sol_thread_target): New class.
9568         (sol_thread_ops): Now a sol_thread_target.
9569         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
9570         (sol_thread_fetch_registers, sol_thread_store_registers)
9571         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
9572         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
9573         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
9574         (init_sol_thread_ops): Delete.
9575         (_initialize_sol_thread): Adjust.  Remove references to
9576         init_sol_thread_ops and complete_target_initialization.
9577
9578         * windows-nat.c (windows_nat_target): New class.
9579         (windows_fetch_inferior_registers)
9580         (windows_store_inferior_registers, windows_resume, windows_wait)
9581         (windows_attach, windows_detach, windows_pid_to_exec_file)
9582         (windows_files_info, windows_create_inferior)
9583         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
9584         (windows_close, windows_pid_to_str, windows_xfer_partial)
9585         (windows_get_tib_address, windows_get_ada_task_ptid)
9586         (windows_thread_name, windows_thread_alive): Refactor as
9587         windows_nat_target methods.
9588         (do_initial_windows_stuff): Adjust.
9589         (windows_target): Delete function.
9590         (_initialize_windows_nat): Adjust.
9591
9592         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
9593         (darwin_mourn_inferior, darwin_kill_inferior)
9594         (darwin_create_inferior, darwin_attach, darwin_detach)
9595         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
9596         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
9597         (darwin_supports_multi_process): Refactor as darwin_nat_target
9598         methods.
9599         (darwin_resume_to, darwin_files_info): Delete.
9600         (_initialize_darwin_inferior): Rename to ...
9601         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
9602         * darwin-nat.h: Include "inf-child.h".
9603         (darwin_nat_target): New class.
9604         (darwin_complete_target): Delete.
9605         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
9606         (darwin_target): New.
9607         (i386_darwin_fetch_inferior_registers)
9608         (i386_darwin_store_inferior_registers): Refactor as methods of
9609         darwin_nat_target.
9610         (darwin_complete_target): Delete, with ...
9611         (_initialize_i386_darwin_nat): ... bits factored out here.
9612
9613         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
9614         (the_alpha_linux_nat_target): New.
9615         (alpha_linux_register_u_offset): Refactor as
9616         alpha_linux_nat_target method.
9617         (_initialize_alpha_linux_nat): Adjust.
9618         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
9619         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9620         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
9621         methods of linux_nat_trad_target.
9622         (linux_trad_target): Delete.
9623         * linux-nat-trad.h (linux_trad_target): Delete function.
9624         (linux_nat_trad_target): New class.
9625         * mips-linux-nat.c (mips_linux_nat_target): New class.
9626         (super_fetch_registers, super_store_registers, super_close):
9627         Delete.
9628         (the_mips_linux_nat_target): New.
9629         (mips64_linux_regsets_fetch_registers)
9630         (mips64_linux_regsets_store_registers)
9631         (mips64_linux_fetch_registers, mips64_linux_store_registers)
9632         (mips_linux_register_u_offset, mips_linux_read_description)
9633         (mips_linux_can_use_hw_breakpoint)
9634         (mips_linux_stopped_by_watchpoint)
9635         (mips_linux_stopped_data_address)
9636         (mips_linux_region_ok_for_hw_watchpoint)
9637         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
9638         (mips_linux_close): Refactor as methods of mips_linux_nat.
9639         (_initialize_mips_linux_nat): Adjust to C++ification.
9640
9641         * aix-thread.c (aix_thread_target): New class.
9642         (aix_thread_ops): Now an aix_thread_target.
9643         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
9644         (aix_thread_fetch_registers, aix_thread_store_registers)
9645         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
9646         (aix_thread_thread_alive, aix_thread_pid_to_str)
9647         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
9648         Refactor as methods of aix_thread_target.
9649         (init_aix_thread_ops): Delete.
9650         (_initialize_aix_thread): Remove references to init_aix_thread_ops
9651         and complete_target_initialization.
9652         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
9653         (rs6000_nat_target): New class.
9654         (the_rs6000_nat_target): New.
9655         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
9656         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
9657         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
9658         (super_create_inferior): Delete.
9659         (_initialize_rs6000_nat): Adjust to C++ification.
9660
9661         * arm-linux-nat.c (arm_linux_nat_target): New class.
9662         (the_arm_linux_nat_target): New.
9663         (arm_linux_fetch_inferior_registers)
9664         (arm_linux_store_inferior_registers, arm_linux_read_description)
9665         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
9666         (arm_linux_remove_hw_breakpoint)
9667         (arm_linux_region_ok_for_hw_watchpoint)
9668         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
9669         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
9670         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
9671         arm_linux_nat_target.
9672         (_initialize_arm_linux_nat): Adjust to C++ification.
9673
9674         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
9675         (the_aarch64_linux_nat_target): New.
9676         (aarch64_linux_fetch_inferior_registers)
9677         (aarch64_linux_store_inferior_registers)
9678         (aarch64_linux_child_post_startup_inferior)
9679         (aarch64_linux_read_description)
9680         (aarch64_linux_can_use_hw_breakpoint)
9681         (aarch64_linux_insert_hw_breakpoint)
9682         (aarch64_linux_remove_hw_breakpoint)
9683         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
9684         (aarch64_linux_region_ok_for_hw_watchpoint)
9685         (aarch64_linux_stopped_data_address)
9686         (aarch64_linux_stopped_by_watchpoint)
9687         (aarch64_linux_watchpoint_addr_within_range)
9688         (aarch64_linux_can_do_single_step): Refactor as methods of
9689         aarch64_linux_nat_target.
9690         (super_post_startup_inferior): Delete.
9691         (_initialize_aarch64_linux_nat): Adjust to C++ification.
9692
9693         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
9694         (the_hppa_linux_nat_target): New.
9695         (hppa_linux_fetch_inferior_registers)
9696         (hppa_linux_store_inferior_registers): Refactor as methods of
9697         hppa_linux_nat_target.
9698         (_initialize_hppa_linux_nat): Adjust to C++ification.
9699
9700         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
9701         (the_ia64_linux_nat_target): New.
9702         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
9703         (ia64_linux_stopped_data_address)
9704         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
9705         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
9706         ia64_linux_nat_target methods.
9707         (super_xfer_partial): Delete.
9708         (_initialize_ia64_linux_nat): Adjust to C++ification.
9709
9710         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
9711         (the_m32r_linux_nat_target): New.
9712         (m32r_linux_fetch_inferior_registers)
9713         (m32r_linux_store_inferior_registers): Refactor as
9714         m32r_linux_nat_target methods.
9715         (_initialize_m32r_linux_nat): Adjust to C++ification.
9716
9717         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
9718         (the_m68k_linux_nat_target): New.
9719         (m68k_linux_fetch_inferior_registers)
9720         (m68k_linux_store_inferior_registers): Refactor as
9721         m68k_linux_nat_target methods.
9722         (_initialize_m68k_linux_nat): Adjust to C++ification.
9723
9724         * s390-linux-nat.c (s390_linux_nat_target): New class.
9725         (the_s390_linux_nat_target): New.
9726         (s390_linux_fetch_inferior_registers)
9727         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
9728         (s390_insert_watchpoint, s390_remove_watchpoint)
9729         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
9730         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
9731         (s390_auxv_parse, s390_read_description): Refactor as methods of
9732         s390_linux_nat_target.
9733         (_initialize_s390_nat): Adjust to C++ification.
9734
9735         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
9736         (the_sparc_linux_nat_target): New.
9737         (_initialize_sparc_linux_nat): Adjust to C++ification.
9738         * sparc-nat.c (sparc_fetch_inferior_registers)
9739         (sparc_store_inferior_registers): Remove target_ops parameter.
9740         * sparc-nat.h (sparc_fetch_inferior_registers)
9741         (sparc_store_inferior_registers): Remove target_ops parameter.
9742         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
9743         (the_sparc64_linux_nat_target): New.
9744         (_initialize_sparc64_linux_nat): Adjust to C++ification.
9745
9746         * spu-linux-nat.c (spu_linux_nat_target): New class.
9747         (the_spu_linux_nat_target): New.
9748         (spu_child_post_startup_inferior, spu_child_post_attach)
9749         (spu_child_wait, spu_fetch_inferior_registers)
9750         (spu_store_inferior_registers, spu_xfer_partial)
9751         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
9752         methods.
9753         (_initialize_spu_nat): Adjust to C++ification.
9754
9755         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
9756         (the_tilegx_linux_nat_target): New.
9757         (fetch_inferior_registers, store_inferior_registers):
9758         Refactor as methods.
9759         (_initialize_tile_linux_nat): Adjust to C++ification.
9760
9761         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
9762         (the_xtensa_linux_nat_target): New.
9763         (xtensa_linux_fetch_inferior_registers)
9764         (xtensa_linux_store_inferior_registers): Refactor as
9765         xtensa_linux_nat_target methods.
9766         (_initialize_xtensa_linux_nat): Adjust to C++ification.
9767
9768         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
9769         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
9770         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
9771         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
9772         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
9773         (fbsd_stopped_by_sw_breakpoint)
9774         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
9775         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
9776         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
9777         (fbsd_post_startup_inferior, fbsd_post_attach)
9778         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
9779         (fbsd_set_syscall_catchpoint)
9780         (super_xfer_partial, super_resume, super_wait)
9781         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
9782         (fbsd_handle_debug_trap): Remove target_ops parameter.
9783         (fbsd_nat_add_target): Delete.
9784         * fbsd-nat.h: Include "inf-ptrace.h".
9785         (fbsd_nat_add_target): Delete.
9786         (USE_SIGTRAP_SIGINFO): Define.
9787         (fbsd_nat_target): New class.
9788
9789         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
9790         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
9791         (amd64bsd_target): Delete.
9792         * amd64-bsd-nat.h: New file.
9793         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
9794         "x86-bsd-nat.h".
9795         (amd64_fbsd_nat_target): New class.
9796         (the_amd64_fbsd_nat_target): New.
9797         (amd64fbsd_read_description): Refactor as method of
9798         amd64_fbsd_nat_target.
9799         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9800         (_initialize_amd64fbsd_nat): Adjust to C++ification.
9801         * amd64-nat.h (amd64bsd_target): Delete function declaration.
9802         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
9803         (i386bsd_store_inferior_registers): Remove target_ops parameter.
9804         (i386bsd_target): Delete.
9805         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
9806         (i386bsd_fetch_inferior_registers)
9807         (i386bsd_store_inferior_registers): Declare.
9808         (i386_bsd_nat_target): New class.
9809         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
9810         (the_i386_fbsd_nat_target): New.
9811         (i386fbsd_resume, i386fbsd_read_description): Refactor as
9812         i386_fbsd_nat_target methods.
9813         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9814         (_initialize_i386fbsd_nat): Adjust to C++ification.
9815         * x86-bsd-nat.c (super_mourn_inferior): Delete.
9816         (x86bsd_mourn_inferior, x86bsd_target): Delete.
9817         (_initialize_x86_bsd_nat): Adjust to C++ification.
9818         * x86-bsd-nat.h: Include "x86-nat.h".
9819         (x86bsd_target): Delete declaration.
9820         (x86bsd_nat_target): New class.
9821
9822         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
9823         (the_aarch64_fbsd_nat_target): New.
9824         (aarch64_fbsd_fetch_inferior_registers)
9825         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
9826         aarch64_fbsd_nat_target.
9827         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
9828         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
9829         (the_alpha_bsd_nat_target): New.
9830         (alphabsd_fetch_inferior_registers)
9831         (alphabsd_store_inferior_registers): Refactor as
9832         alpha_bsd_nat_target methods.
9833         (_initialize_alphabsd_nat): Refactor as methods of
9834         alpha_bsd_nat_target.
9835         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
9836         (the_amd64_nbsd_nat_target): New.
9837         (_initialize_amd64nbsd_nat): Adjust to C++ification.
9838         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
9839         (the_amd64_obsd_nat_target): New.
9840         (_initialize_amd64obsd_nat): Adjust to C++ification.
9841         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
9842         (the_arm_fbsd_nat_target): New.
9843         (arm_fbsd_fetch_inferior_registers)
9844         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
9845         (_initialize_arm_fbsd_nat): Refactor as methods of
9846         arm_fbsd_nat_target.
9847         (_initialize_arm_fbsd_nat): Adjust to C++ification.
9848         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
9849         (the_arm_netbsd_nat_target): New.
9850         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
9851         arm_netbsd_nat_target.
9852         (_initialize_arm_netbsd_nat): Adjust to C++ification.
9853         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
9854         (the_hppa_nbsd_nat_target): New.
9855         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
9856         hppa_nbsd_nat_target methods.
9857         (_initialize_hppanbsd_nat): Adjust to C++ification.
9858         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
9859         (the_hppa_obsd_nat_target): New.
9860         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
9861         methods of hppa_obsd_nat_target.
9862         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
9863         add_target.
9864         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
9865         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
9866         add_target.
9867         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
9868         (_initialize_i386obsd_nat): Use add_target.
9869         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
9870         (the_m68k_bsd_nat_target): New.
9871         (m68kbsd_fetch_inferior_registers)
9872         (m68kbsd_store_inferior_registers): Refactor as methods of
9873         m68k_bsd_nat_target.
9874         (_initialize_m68kbsd_nat): Adjust to C++ification.
9875         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
9876         (the_mips_fbsd_nat_target): New.
9877         (mips_fbsd_fetch_inferior_registers)
9878         (mips_fbsd_store_inferior_registers): Refactor as methods of
9879         mips_fbsd_nat_target.
9880         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
9881         add_target.
9882         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
9883         (the_mips_nbsd_nat_target): New.
9884         (mipsnbsd_fetch_inferior_registers)
9885         (mipsnbsd_store_inferior_registers): Refactor as methods of
9886         mips_nbsd_nat_target.
9887         (_initialize_mipsnbsd_nat): Adjust to C++ification.
9888         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
9889         (the_mips64_obsd_nat_target): New.
9890         (mips64obsd_fetch_inferior_registers)
9891         (mips64obsd_store_inferior_registers): Refactor as methods of
9892         mips64_obsd_nat_target.
9893         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
9894         add_target.
9895         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
9896         nbsd_nat_target.
9897         * nbsd-nat.h: Include "inf-ptrace.h".
9898         (nbsd_nat_target): New class.
9899         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
9900         (obsd_wait): Refactor as methods of obsd_nat_target.
9901         (obsd_add_target): Delete.
9902         * obsd-nat.h: Include "inf-ptrace.h".
9903         (obsd_nat_target): New class.
9904         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
9905         (the_ppc_fbsd_nat_target): New.
9906         (ppcfbsd_fetch_inferior_registers)
9907         (ppcfbsd_store_inferior_registers): Refactor as methods of
9908         ppc_fbsd_nat_target.
9909         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
9910         add_target.
9911         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
9912         (the_ppc_nbsd_nat_target): New.
9913         (ppcnbsd_fetch_inferior_registers)
9914         (ppcnbsd_store_inferior_registers): Refactor as methods of
9915         ppc_nbsd_nat_target.
9916         (_initialize_ppcnbsd_nat): Adjust to C++ification.
9917         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
9918         (the_ppc_obsd_nat_target): New.
9919         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
9920         methods of ppc_obsd_nat_target.
9921         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
9922         add_target.
9923         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
9924         (the_sh_nbsd_nat_target): New.
9925         (shnbsd_fetch_inferior_registers)
9926         (shnbsd_store_inferior_registers): Refactor as methods of
9927         sh_nbsd_nat_target.
9928         (_initialize_shnbsd_nat): Adjust to C++ification.
9929         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
9930         (inf_ptrace_xfer_partial): Delete.
9931         (sparc_xfer_partial, sparc_target): Delete.
9932         * sparc-nat.h (sparc_fetch_inferior_registers)
9933         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
9934         (sparc_target): Delete function declaration.
9935         (sparc_target): New template class.
9936         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
9937         (_initialize_sparcnbsd_nat): Adjust to C++ification.
9938         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
9939         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
9940         add_target.
9941         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
9942         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
9943         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
9944         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
9945         add_target.
9946         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
9947         (the_vax_bsd_nat_target): New.
9948         (vaxbsd_fetch_inferior_registers)
9949         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
9950         methods.
9951         (_initialize_vaxbsd_nat): Adjust to C++ification.
9952
9953         * bsd-kvm.c (bsd_kvm_target): New class.
9954         (bsd_kvm_ops): Now a bsd_kvm_target.
9955         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
9956         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
9957         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
9958         bsd_kvm_target.
9959         (bsd_kvm_return_one): Delete.
9960         (bsd_kvm_add_target): Adjust to C++ification.
9961
9962         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
9963         (nto_procfs_target_procfs): New classes.
9964         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
9965         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
9966         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
9967         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
9968         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
9969         (procfs_remove_hw_breakpoint, procfs_resume)
9970         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
9971         (procfs_kill_inferior, procfs_store_registers)
9972         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
9973         as methods of nto_procfs_target.
9974         (nto_procfs_ops): Now an nto_procfs_target_procfs.
9975         (nto_native_ops): Delete.
9976         (procfs_open, procfs_native_open): Delete.
9977         (nto_native_ops): Now an nto_procfs_target_native.
9978         (init_procfs_targets): Adjust to C++ification.
9979         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
9980         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
9981         Refactor as methods of nto_procfs_target.
9982
9983         * go32-nat.c (go32_nat_target): New class.
9984         (the_go32_nat_target): New.
9985         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
9986         (go32_store_registers, go32_xfer_partial, go32_files_info)
9987         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
9988         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
9989         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
9990         (go32_pid_to_str): Refactor as methods of go32_nat_target.
9991         (go32_target): Delete.
9992         (_initialize_go32_nat): Adjust to C++ification.
9993
9994         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
9995         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
9996         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
9997         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
9998         gnu_nat_target.
9999         (gnu_target): Delete.
10000         * gnu-nat.h (gnu_target): Delete.
10001         (gnu_nat_target): New class.
10002         * i386-gnu-nat.c (gnu_base_target): New.
10003         (i386_gnu_nat_target): New class.
10004         (the_i386_gnu_nat_target): New.
10005         (_initialize_i386gnu_nat): Adjust to C++ification.
10006
10007 2018-05-02  Pedro Alves  <palves@redhat.com>
10008
10009         * bfd-target.c (target_bfd_xclose): Rename to ...
10010         (target_bfd_close): ... this.
10011         (target_bfd_reopen): Adjust.
10012         * target.c (target_close): Remove references to to_xclose.
10013         * target.h (target_ops::to_xclose): Delete.
10014         (target_ops::to_close): Update comments.
10015
10016 2018-05-02  Pedro Alves  <palves@redhat.com>
10017
10018         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10019         "linux-nat.h".
10020         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10021         * inf-ptrace.c (inf_ptrace_register_u_offset)
10022         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10023         (inf_ptrace_store_register, inf_ptrace_store_registers)
10024         (inf_ptrace_trad_target): Move to ...
10025         * linux-nat-trad.c: ... this new file.
10026         * linux-nat-trad.h: New file.
10027         * linux-nat.c (linux_target_install_ops): Make extern.
10028         (linux_trad_target): Delete.
10029         * linux-nat.h (linux_trad_target): Delete declaration.
10030         (linux_target_install_ops): Declare.
10031         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10032         "linux-nat.h".
10033
10034 2018-05-02  Pedro Alves  <palves@redhat.com>
10035
10036         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10037         procfs_target/add_target here.
10038         * procfs.c (procfs_target): Make static.
10039         (_initialize_procfs): Call add_target here.
10040         * procfs.h (struct target_ops): Remove forward declaration.
10041         (procfs_target): Remove declaration.
10042         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10043
10044 2018-05-02  Pedro Alves  <palves@redhat.com>
10045
10046         * procfs.c (procfs_stopped_by_watchpoint)
10047         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10048         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10049         Forward declare.
10050         (procfs_use_watchpoints): Delete, move contents...
10051         (procfs_target): ... here.
10052         * procfs.h (procfs_use_watchpoints): Delete declaration.
10053         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10054         procfs_use_watchpoints.
10055         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10056         procfs_use_watchpoints.
10057
10058 2018-05-02  Tom Tromey  <tom@tromey.com>
10059
10060         PR python/20084:
10061         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10062         and var_zuinteger_unlimited.
10063         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10064         and PARAM_ZUINTEGER_UNLIMITED.
10065         (set_parameter_value): Handle var_zuinteger and
10066         var_zuinteger_unlimited.
10067         (add_setshow_generic): Likewise.
10068         (parmpy_init): Likewise.
10069
10070 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10071
10072         PR rust/23124
10073         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10074         pointer is not null before dereferencing it.
10075
10076 2018-04-30  Tom Tromey  <tom@tromey.com>
10077
10078         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10079         is_mi_like_p.
10080
10081 2018-04-30  Tom Tromey  <tom@tromey.com>
10082
10083         * breakpoint.c (mention): Remove use of is_mi_like_p.
10084         (print_mention_ranged_breakpoint): Likewise.
10085         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10086         of is_mi_like_p.
10087
10088 2018-04-30  Tom Tromey  <tom@tromey.com>
10089
10090         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10091
10092 2018-04-30  Tom Tromey  <tom@tromey.com>
10093
10094         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10095         (info_spu_event_command): Remove some uses of is_mi_like_p.
10096
10097 2018-04-30  Tom Tromey  <tom@tromey.com>
10098
10099         * python/py-framefilter.c (py_print_single_arg)
10100         (enumerate_locals, py_print_args, py_print_frame): Remove some
10101         uses of is_mi_like_p.
10102
10103 2018-04-30  Tom Tromey  <tom@tromey.com>
10104
10105         * ui-out.c: Update.
10106         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10107         * ui-out.h (ui_out::is_mi_like_p): Now const.
10108         (ui_out::do_is_mi_like_p): Now const.
10109         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10110
10111 2018-04-30  Tom Tromey  <tom@tromey.com>
10112
10113         * varobj.c (varobj_set_visualizer): Use new_reference.
10114         * python/python.c (gdbpy_decode_line): Use new_reference.
10115         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10116         new_reference.
10117
10118 2018-04-30  Tom Tromey  <tom@tromey.com>
10119
10120         * varobj.c (install_new_value): Use new_reference.
10121         * value.h (value_incref): Return void.  Swap intro comment with
10122         value_decref.
10123         * value.c (set_value_parent): Use new_reference.
10124         (value_incref): Return void.  Update intro comment.
10125         (release_value): Use new_reference.
10126         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10127
10128 2018-04-30  Tom Tromey  <tom@tromey.com>
10129
10130         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10131         * gdb_bfd.h (new_bfd_ref): Remove.
10132         (gdb_bfd_open): Update comment.
10133         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10134         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10135         (gdb_bfd_fdopenr): Use new_reference.
10136         * exec.c (exec_file_attach): Use new_reference.
10137
10138 2018-04-30  Tom Tromey  <tom@tromey.com>
10139
10140         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10141         method.
10142
10143 2018-04-30  Tom Tromey  <tom@tromey.com>
10144
10145         * jit.c (jit_read_code_entry): Use type_align.
10146         * i386-tdep.c (i386_gdbarch_init): Don't call
10147         set_gdbarch_long_long_align_bit.
10148         * gdbarch.sh: Remove long_long_align_bit.
10149         * gdbarch.c, gdbarch.h: Rebuild.
10150         * arc-tdep.c (arc_type_align): New function.
10151         (arc_gdbarch_init): Use arc_type_align.  Don't call
10152         set_gdbarch_long_long_align_bit.
10153
10154 2018-04-30  Tom Tromey  <tom@tromey.com>
10155
10156         * rust-lang.c (rust_type_alignment): Remove.
10157         (rust_composite_type): Use type_align.
10158
10159 2018-04-30  Tom Tromey  <tom@tromey.com>
10160
10161         * NEWS: Mention Type.align.
10162         * python/py-type.c (typy_get_alignof): New function.
10163         (type_object_getset): Add "alignof".
10164
10165 2018-04-30  Tom Tromey  <tom@tromey.com>
10166
10167         PR exp/17095:
10168         * NEWS: Update.
10169         * std-operator.def (UNOP_ALIGNOF): New operator.
10170         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10171         New.
10172         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10173         * c-lang.c (c_op_print_tab): Add alignof.
10174         * c-exp.y (ALIGNOF): New token.
10175         (exp): Add "ALIGNOF" production.
10176         (ident_tokens): Add _Alignof and alignof.
10177
10178 2018-04-30  Tom Tromey  <tom@tromey.com>
10179
10180         * i386-tdep.c (i386_type_align): New function.
10181         (i386_gdbarch_init): Update.
10182         * gdbarch.sh (type_align): New method.
10183         * gdbarch.c, gdbarch.h: Rebuild.
10184         * arch-utils.h (default_type_align): Declare.
10185         * arch-utils.c (default_type_align): New function.
10186         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10187         (struct type) <align_log2>: New field.
10188         <instance_flags>: Now a bitfield.
10189         (TYPE_RAW_ALIGN): New macro.
10190         (type_align, type_raw_align, set_type_align): Declare.
10191         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10192         functions.
10193         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10194         (get_alignment, maybe_set_alignment): New functions.
10195         (read_structure_type, read_enumeration_type, read_array_type)
10196         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10197         (read_subrange_type, read_base_type): Set type alignment.
10198
10199 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10200
10201         * dwarf2read.c (read_index_from_section): Use bool.
10202
10203 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10204
10205         PR gdb/22950
10206         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10207         with #ifdef.
10208
10209 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10210
10211         PR build/22873
10212         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10213         last step, and do it atomically.
10214
10215 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10216
10217         * compile/compile-c-types.c (convert_int, convert_float):
10218         Update for C FE v1.
10219
10220 2018-04-27  Tom Tromey  <tom@tromey.com>
10221
10222         PR rust/22545:
10223         * rust-lang.c (rust_inclusive_range_type_p): New function.
10224         (rust_range): Handle inclusive ranges.
10225         (rust_compute_range): Likewise.
10226         * rust-exp.y (struct rust_op) <inclusive>: New field.
10227         (DOTDOTEQ): New constant.
10228         (range_expr): Add "..=" productions.
10229         (operator_tokens): Add "..=" token.
10230         (ast_range): Add "inclusive" parameter.
10231         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10232         ranges.
10233         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10234         bounds values.
10235         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10236         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10237         Update comments.
10238         * expprint.c (print_subexp_standard): Handle new bounds values.
10239         (dump_subexp_body_standard): Likewise.
10240
10241 2018-04-27  Tom Tromey  <tom@tromey.com>
10242
10243         * configure: Rebuild.
10244         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10245         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10246         "OVERRIDE".
10247         (class symbol_needs_eval_context): Likewise.
10248         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10249         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10250         "virtual".
10251         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10252         "override".
10253         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10254         * aarch64-tdep.c (instruction_reader::read): Use "override".
10255         (instruction_reader_test::read): Likewise.
10256         * arm-tdep.c (instruction_reader::read): Use "override".
10257         (instruction_reader_thumb::read): Likewise.
10258
10259 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10260
10261         PR remote/9665
10262         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10263         instead of remote_send.
10264         (remote_send): Remove.
10265
10266 2018-04-26  Pedro Alves  <palves@redhat.com>
10267
10268         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10269         find_function_start_sal instead of find_pc_line.
10270
10271 2018-04-26  Pedro Alves  <palves@redhat.com>
10272
10273         * breakpoint.c (set_breakpoint_location_function): Handle
10274         mst_data_gnu_ifunc.
10275         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10276         * elfread.c (elf_symtab_read): Give data symbols with
10277         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10278         (elf_rel_plt_read): Update comment.
10279         * linespec.c (convert_linespec_to_sals): Handle
10280         mst_data_gnu_ifunc.
10281         (minsym_found): Handle mst_data_gnu_ifunc.
10282         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10283         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10284         * parse.c (find_minsym_type_and_address): Handle
10285         mst_data_gnu_ifunc.
10286         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10287         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10288         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10289         comment.
10290         <mst_data_gnu_ifunc>: New enumerator.
10291
10292 2018-04-26  Pedro Alves  <palves@redhat.com>
10293
10294         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10295         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10296         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10297         Handle it.
10298         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10299         (lookup_minimal_symbol_by_pc): Adjust.
10300         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10301         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10302         * minsyms.h (lookup_msym_prefer): New enum.
10303         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10304         parameter by a lookup_msym_prefer parameter.
10305
10306 2018-04-26  Pedro Alves  <palves@redhat.com>
10307
10308         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10309         ends in "@plt" instead of looking at the symbol's section.
10310
10311 2018-04-26  Pedro Alves  <palves@redhat.com>
10312
10313         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10314         all references.
10315         (find_pc_partial_function_gnu_ifunc): Rename to ...
10316         (find_pc_partial_function): ... this, and remove references to
10317         'is_gnu_ifunc_p'.
10318         (find_pc_partial_function): Delete old implementation.
10319         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10320
10321 2018-04-26  Pedro Alves  <palves@redhat.com>
10322
10323         * linespec.c (struct bound_minimal_symbol_search_key): New.
10324         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10325         skip first line if we found a GNU ifunc minimal symbol by name.
10326         (compare_msymbols): Change parameters to work with a destructured
10327         lhs minsym.
10328         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10329         functions.
10330
10331 2018-04-26  Pedro Alves  <palves@redhat.com>
10332
10333         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10334         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10335         address/name.
10336         (add_location_to_breakpoint): Store the minsym and the objfile in
10337         the breakpoint location.
10338         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10339         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10340         Record the minsym in the sal.
10341         * symtab.h (symtab_and_line) <msymbol>: New field.
10342
10343 2018-04-26  Pedro Alves  <palves@redhat.com>
10344
10345         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10346         unless we actually resolved the ifunc.
10347
10348 2018-04-26  Pedro Alves  <palves@redhat.com>
10349
10350         * c-exp.y (variable production): Prefer ifunc minsyms over
10351         regular function symbols.
10352         * symtab.c (find_gnu_ifunc): New function.
10353         * minsyms.h (lookup_msym_prefer): New enum.
10354         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10355         parameter by a lookup_msym_prefer parameter.
10356         * symtab.h (find_gnu_ifunc): New declaration.
10357
10358 2018-04-26  Pedro Alves  <palves@redhat.com>
10359
10360         * blockframe.c (find_gnu_ifunc_target_type): New function.
10361         (find_function_type): New.
10362         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10363         return a value with a memory address.
10364         (eval_call): For calls to GNU ifunc functions, try to find the
10365         type of the target function from the type that the resolver
10366         returns.
10367         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10368         symbols.
10369         * infcall.c (find_function_return_type): Delete.
10370         (find_function_addr): Add 'function_type' parameter.  For calls to
10371         GNU ifunc functions, try to find the type of the target function
10372         from the type that the resolver returns, and return it via
10373         FUNCTION_TYPE.
10374         (call_function_by_hand_dummy): Adjust to use the function type
10375         returned by find_function_addr.
10376         (find_function_addr): Add 'function_type' parameter and move
10377         description here.
10378         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10379         declarations.
10380
10381 2018-04-26  Pedro Alves  <palves@redhat.com>
10382
10383         * c-exp.y (variable production): Skip finding an alias for ifunc
10384         symbols.
10385
10386 2018-04-26  Pedro Alves  <palves@redhat.com>
10387
10388         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10389
10390 2018-04-25  Pedro Alves  <palves@redhat.com>
10391
10392         * infcmd.c (kill_command): Print the pid as string, not the whole
10393         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10394         message.
10395         * remote.c (remote_detach_1): Print the pid as string, not the
10396         whole thread's ptid.
10397
10398 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10399             Sergio Durigan Junior  <sergiodj@redhat.com>
10400             Pedro Alves  <palves@redhat.com>
10401
10402         * infcmd.c (kill_command): Print message when inferior has
10403         been killed.
10404         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10405         '1'.
10406         (add_inferior): Improve message printed when
10407         'print_inferior_events' is on.
10408         (exit_inferior): Remove message printed when
10409         'print_inferior_events' is on.
10410         (detach_inferior): Improve message printed when
10411         'print_inferior_events' is on.
10412         (initialize_inferiors): Use 'add_inferior_silent' to set
10413         'current_inferior_'.
10414         * inferior.h (print_inferior_events): Declare here as
10415         'extern'.
10416         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10417         '[Detaching...]' messages when 'print_inferior_events' is on.
10418         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10419         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10420         'Detaching after fork from child...', replace it by '... from
10421         parent...'.
10422         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10423         prefix/suffix when printing 'Detaching...' messages.  Print
10424         them when 'print_inferior_events' is on.
10425         * remote.c (remote_detach_1): Print message when detaching
10426         from inferior and '!is_fork_parent'.
10427
10428 2018-04-24  Tom Tromey  <tom@tromey.com>
10429
10430         * cli-out.h: Reindent.
10431
10432 2018-04-24  Tom Tromey  <tom@tromey.com>
10433
10434         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10435         (cli_ui_out::do_field_string): Use fputs_filtered.
10436         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10437
10438 2018-04-23  Tom Tromey  <tom@tromey.com>
10439
10440         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10441         gdb::unique_xmalloc_ptr.
10442
10443 2018-04-23  Tom Tromey  <tom@tromey.com>
10444
10445         * configure: Rebuild.
10446
10447 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10448
10449         PR gdb/23095
10450         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10451         prepare_for_testing.  Set normal_bp to r_debug_state if target
10452         is bsd.
10453
10454 2018-04-21  Pedro Alves  <palves@redhat.com>
10455             Rajendra SY  <rajendra.sy@gmail.com>
10456
10457         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10458         * remote.c (extended_remote_attach): In all-stop mode, mark the
10459         thread as executing.
10460
10461 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10462
10463         * thread.c (thread_apply_all_command): Fix comment.
10464         (thread_command): Fix comment.
10465
10466 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10467
10468         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10469         parameter.
10470         * features/aarch64-core.c (create_feature_aarch64_core):
10471         Regenerate.
10472         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10473         Likewise.
10474         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10475         Likewise.
10476         * features/i386/32bit-avx512.c
10477         (create_feature_i386_32bit_avx512): Likewise.
10478         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10479         Likewise.
10480         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10481         Likewise.
10482         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10483         Likewise.
10484         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10485         Likewise.
10486         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10487         Likewise.
10488         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10489         Likewise.
10490         * features/i386/64bit-avx512.c
10491         (create_feature_i386_64bit_avx512): Likewise.
10492         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10493         Likewise.
10494         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10495         Likewise.
10496         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10497         Likewise.
10498         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10499         Likewise.
10500         * features/i386/64bit-segments.c
10501         (create_feature_i386_64bit_segments): Likewise.
10502         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10503         Likewise.
10504         * features/i386/x32-core.c
10505         (create_feature_i386_x32_core): Likewise.
10506         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10507         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10508         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10509         * target-descriptions.c: In generated code, don't pass xml
10510         filename.
10511
10512 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10513
10514         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10515         (print_xml_feature::visit_post): Likewise.
10516         (print_xml_feature::visit): Likewise.
10517         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10518         (print_xml_feature): Add new class.
10519         * regformats/regdat.sh: Null xmltarget on feature targets.
10520         * target-descriptions.c (struct target_desc): Add xmltarget.
10521         (maintenance_check_tdesc_xml_convert): Add unittest function.
10522         (tdesc_get_features_xml): Add function to get xml.
10523         (maintenance_check_xml_descriptions): Test xml generation.
10524         * xml-tdesc.c (string_read_description_xml): Add function.
10525         * xml-tdesc.h (string_read_description_xml): Add declaration.
10526
10527 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10528
10529         * features/Makefile: Add feature marker to targets with new style
10530         target descriptions.
10531         * regformats/aarch64.dat: Regenerate.
10532         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10533         * regformats/i386/amd64-avx-linux.dat: Likewise.
10534         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10535         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10536         * regformats/i386/amd64-linux.dat: Likewise.
10537         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10538         * regformats/i386/amd64.dat: Likewise.
10539         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10540         * regformats/i386/i386-avx-linux.dat: Likewise.
10541         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10542         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10543         * regformats/i386/i386-linux.dat: Likewise.
10544         * regformats/i386/i386-mmx-linux.dat: Likewise.
10545         * regformats/i386/i386-mpx-linux.dat: Likewise.
10546         * regformats/i386/i386.dat: Likewise.
10547         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10548         * regformats/i386/x32-avx-linux.dat: Likewise.
10549         * regformats/i386/x32-linux.dat: Likewise.
10550         * regformats/tic6x-c62x-linux.dat: Likewise.
10551         * regformats/tic6x-c64x-linux.dat: Likewise.
10552         * regformats/tic6x-c64xp-linux.dat: Likewise.
10553         * regformats/regdat.sh: Parse feature marker.
10554
10555 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10556
10557         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
10558         (tdesc_osabi_name): Likewise.
10559         * target-descriptions.c (tdesc_architecture_name): Add new
10560         function.
10561         (tdesc_osabi_name): Likewise.
10562
10563 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10564
10565         * common/tdesc.c (tdesc_predefined_type): Move to here.
10566         (tdesc_named_type): Likewise.
10567         (tdesc_create_vector): Likewise.
10568         (tdesc_create_struct): Likewise.
10569         (tdesc_set_struct_size): Likewise.
10570         (tdesc_create_union): Likewise.
10571         (tdesc_create_flags): Likewise.
10572         (tdesc_create_enum): Likewise.
10573         (tdesc_add_field): Likewise.
10574         (tdesc_add_typed_bitfield): Likewise.
10575         (tdesc_add_bitfield): Likewise.
10576         (tdesc_add_flag): Likewise.
10577         (tdesc_add_enum_value): Likewise.
10578         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
10579         (struct tdesc_type_vector): Likewise.
10580         (struct tdesc_type_field): Likewise.
10581         (struct tdesc_type_with_fields): Likewise.
10582         (tdesc_create_enum): Add declaration.
10583         (tdesc_add_typed_bitfield): Likewise.
10584         (tdesc_add_enum_value): Likewise.
10585         * target-descriptions.c (tdesc_type_field): Move from here.
10586         (tdesc_type_builtin): Likewise.
10587         (tdesc_type_vector): Likewise.
10588         (tdesc_type_with_fields): Likewise.
10589         (tdesc_predefined_types): Likewise.
10590         (tdesc_named_type): Likewise.
10591         (tdesc_create_vector): Likewise.
10592         (tdesc_create_struct): Likewise.
10593         (tdesc_set_struct_size): Likewise.
10594         (tdesc_create_union): Likewise.
10595         (tdesc_create_flags): Likewise.
10596         (tdesc_create_enum): Likewise.
10597         (tdesc_add_field): Likewise.
10598         (tdesc_add_typed_bitfield): Likewise.
10599         (tdesc_add_bitfield): Likewise.
10600         (tdesc_add_flag): Likewise.
10601         (tdesc_add_enum_value): Likewise.
10602         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
10603         (tdesc_add_typed_bitfield): Likewise.
10604         (tdesc_add_enum_value): Likewise.
10605
10606 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10607
10608         * common/tdesc.c (tdesc_feature::accept): Move to here.
10609         (tdesc_feature::operator==): Likewise.
10610         (tdesc_create_reg): Likewise.
10611         * common/tdesc.h (tdesc_type_kind): Likewise.
10612         (struct tdesc_type): Likewise.
10613         (struct tdesc_feature): Likewise.
10614         * regformats/regdat.sh: Create a feature.
10615         * target-descriptions.c (tdesc_type_kind): Move from here.
10616         (tdesc_type): Likewise.
10617         (tdesc_type_up): Likewise.
10618         (tdesc_feature): Likewise.
10619         (tdesc_create_reg): Likewise.
10620
10621 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10622
10623         * Makefile.in: Add arch/tdesc.c
10624         * common/tdesc.c: New file.
10625         * common/tdesc.h (tdesc_element_visitor): Move to here.
10626         (tdesc_element): Likewise.
10627         (tdesc_reg): Likewise.
10628         (tdesc_reg_up): Likewise.
10629         * regformats/regdef.h (reg): Add offset to constructors.
10630         * target-descriptions.c (tdesc_element_visitor): Move from here.
10631         (tdesc_element): Likewise.
10632         (tdesc_reg): Likewise.
10633         (tdesc_reg_up): Likewise.
10634
10635 2018-04-17  Tom Tromey  <tom@tromey.com>
10636
10637         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
10638         discriminant field.
10639
10640 2018-04-17  Tom Tromey  <tom@tromey.com>
10641
10642         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
10643
10644 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10645
10646         * symtab.c (print_symbol_info): Skip printing filename and line
10647         number when `last' is NULL.
10648         (symtab_symbol_info): Use empty string instead of NULL for first
10649         invocation of print_symbol_info.
10650         (rbreak_command): Pass NULL to `last' parameter of
10651         print_symbol_info.
10652
10653 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
10654
10655         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
10656         instead of nullptr.
10657
10658 2018-04-16  Pedro Alves  <palves@redhat.com>
10659
10660         * MAINTAINERS (sh): Remove.
10661         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
10662         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
10663         (ALLDEPFILES): Remove sh64-tdep.c.
10664         * NEWS: Mentions that support for SH-5/SH64 is removed.
10665         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
10666         (sh*-*-openbsd*): Ditto.
10667         (sh64-*-elf*): Remove.
10668         (sh*): Remove.
10669         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
10670         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
10671         * sh-tdep.c: No longer include "sh64-tdep.h".
10672         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
10673         * sh64-tdep.c, sh64-tdep.h: Remove files.
10674
10675 2018-04-16  Pedro Alves  <palves@redhat.com>
10676
10677         * MAINTAINERS: Remove m88k.
10678         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
10679         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
10680         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
10681         * NEWS: Mention that support for m88k was removed.
10682         * configure.host (m88*-*-*): Remove support.
10683         * configure.nat (m88k-*-*): Remove support.
10684         * configure.tgt (m88*-*-openbsd*): Remove.
10685         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
10686
10687 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
10688
10689         * configure.tgt (x86_tobjs): New variable.
10690         (amd64_tobjs, i386_tobjs): Use it.
10691
10692 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10693
10694         * symtab.c (print_symbol_info): Precede the symbol definition by
10695         the line number when available.
10696         * NEWS: Advertise this enhancement.
10697
10698 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10699
10700         * NEWS (New options): announce set/show record btrace cpu.
10701         * btrace.c: Include record-btrace.h.
10702         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
10703         the vendor is unknown.
10704         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
10705         Maybe overwrite the btrace configuration's cpu.
10706         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
10707         (btrace_fetch): Add cpu parameter.  Update callers.
10708         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
10709         Maybe overwrite the btrace configuration's cpu.  Skip enabling
10710         errata workarounds if the vendor is unknown.
10711         * python/py-record-btrace.c: Include record-btrace.h.
10712         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
10713         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
10714         * record-btrace.c (record_btrace_cpu_state_kind): New.
10715         (record_btrace_cpu): New.
10716         (set_record_btrace_cpu_cmdlist): New.
10717         (record_btrace_get_cpu): New.
10718         (require_btrace_thread, record_btrace_info)
10719         (record_btrace_resume_thread): Call record_btrace_get_cpu.
10720         (cmd_set_record_btrace_cpu_none): New.
10721         (cmd_set_record_btrace_cpu_auto): New.
10722         (cmd_set_record_btrace_cpu): New.
10723         (cmd_show_record_btrace_cpu): New.
10724         (_initialize_record_btrace): Initialize set/show record btrace cpu
10725         commands.
10726         * record-btrace.h (record_btrace_get_cpu): New.
10727
10728 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10729
10730         * record.c (set_record_command): Fix typo in message.
10731
10732 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10733
10734         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
10735
10736 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10737
10738         * infrun.c (process_event_stop_test): Call
10739         gdbarch_in_indirect_branch_thunk.
10740         * gdbarch.sh (in_indirect_branch_thunk): New.
10741         * gdbarch.c: Regenerated.
10742         * gdbarch.h: Regenerated.
10743         * x86-tdep.h: New.
10744         * x86-tdep.c: New.
10745         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
10746         (HFILES_NO_SRCDIR): Add x86-tdep.h.
10747         (ALLDEPFILES): Add x86-tdep.c.
10748         * arch-utils.h (default_in_indirect_branch_thunk): New.
10749         * arch-utils.c (default_in_indirect_branch_thunk): New.
10750         * i386-tdep: Include x86-tdep.h.
10751         (i386_in_indirect_branch_thunk): New.
10752         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
10753         function.
10754         * amd64-tdep: Include x86-tdep.h.
10755         (amd64_in_indirect_branch_thunk): New.
10756         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
10757
10758 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
10759
10760         PR gdb/23053
10761         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
10762         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
10763         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
10764         regression.
10765
10766 2018-04-12  Tom Tromey  <tom@tromey.com>
10767
10768         * rust-lang.c (rust_print_struct_def): Remove univariant code.
10769         (rust_evaluate_subexp): Likewise.
10770
10771 2018-04-12  Pedro Alves  <palves@redhat.com>
10772
10773         * procfs.c (procfs_detach): Make forward declaration's prototype
10774         match definition's protototype.
10775         (proc_get_LDT_entry): Remove stale do_cleanups call.
10776
10777 2018-04-12  Pedro Alves  <palves@redhat.com>
10778
10779         * target.h (target_ops::to_has_exited): Delete.
10780         (target_has_exited): Delete.
10781         * target-delegates.c: Regenerate.
10782
10783 2018-04-11  Pedro Alves  <palves@redhat.com>
10784
10785         * target.c (fileio_fh_t::t): Add comment.
10786         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10787         (target_fileio_close): Handle a NULL target.
10788         (invalidate_fileio_fh): New.
10789         (target_close): Call it.
10790         * remote.c (remote_hostio_send_command): No longer check whether
10791         remote_desc is open.
10792
10793 2018-04-11  Pedro Alves  <palves@redhat.com>
10794
10795         * target.c (fileio_fh_t): Make it a named struct instead of a
10796         typedef.
10797         (fileio_fh_t::is_closed): New method.
10798         (DEF_VEC_O (fileio_fh_t)): Remove.
10799         (fileio_fhandles): Now a std::vector.
10800         (is_closed_fileio_fh): Delete.
10801         (acquire_fileio_fd): Adjust.  Rename parameters.
10802         (release_fileio_fd): Adjust.
10803         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
10804         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10805         (target_fileio_close): Adjust.
10806
10807 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
10808
10809         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
10810         index.
10811
10812 2018-04-10  Pedro Alves  <palves@redhat.com>
10813
10814         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
10815         (scoped_finish_thread_state): New class.
10816         * infcmd.c (run_command_1): Use it instead of finish_thread_state
10817         cleanup.
10818         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
10819         (fetch_inferior_event, normal_stop): Likewise.
10820         * thread.c (finish_thread_state_cleanup): Delete.
10821
10822 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10823             Pedro Alves  <palves@redhat.com>
10824
10825         * value.c: Include "selftest.h" and "common/array-view.h".
10826         (struct range) <operator ==>: New.
10827         (test_ranges_contain): New.
10828         (check_ranges_vector): New.
10829         (test_insert_into_bit_range_vector): New.
10830         (_initialize_values): Register selftests.
10831         * common/array-view.h (operator==, operator!=): New.
10832
10833 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10834
10835         * common/gdb_vecs.h (unordered_remove): Add overload that takes
10836         an iterator.
10837         * inline-frame.c: Include <algorithm>.
10838         (struct inline_state): Add constructor.
10839         (inline_state_s): Remove.
10840         (DEF_VEC_O(inline_state_s)): Remove.
10841         (inline_states): Change type to std::vector.
10842         (find_inline_frame_state): Adjust to std::vector.
10843         (allocate_inline_frame_state): Remove.
10844         (clear_inline_frame_state): Adjust to std::vector.
10845         (skip_inline_frames): Adjust to std::vector.
10846
10847 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10848
10849         * tracepoint.h (struct trace_state_variable): Add constructor.
10850         <name>: Change type to std::string.
10851         * tracepoint.c (tsv_s): Remove.
10852         (DEF_VEC_O(tsv_s)): Remove.
10853         (tvariables): Change to std::vector.
10854         (create_trace_state_variable): Adjust to std::vector.
10855         (find_trace_state_variable): Likewise.
10856         (find_trace_state_variable_by_number): Likewise.
10857         (delete_trace_state_variable): Likewise.
10858         (trace_variable_command): Adjust to std::string.
10859         (delete_trace_variable_command): Likewise.
10860         (tvariables_info_1): Adjust to std::vector.
10861         (save_trace_state_variables): Likewise.
10862         (start_tracing): Likewise.
10863         (merge_uploaded_trace_state_variables): Adjust to std::vector
10864         and std::string.
10865         * target.h (struct target_ops)
10866         <to_download_trace_state_variable>: Pass reference to
10867         trace_state_variable.
10868         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
10869         * target-delegates.c: Re-generate.
10870         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
10871         (mi_tsv_deleted): Likewise.
10872         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
10873         * remote.c (remote_download_trace_state_variable): Change
10874         pointer to reference and adjust.
10875         * make-target-delegates (parse_argtypes): Handle references.
10876         (write_function_header): Likewise.
10877         (munge_type): Likewise.
10878
10879 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10880
10881         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10882         string_view-selftests.c.
10883         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
10884         testsuite.
10885         * unittests/basic_string_view/cons/char/1.cc: Likewise.
10886         * unittests/basic_string_view/cons/char/2.cc: Likewise.
10887         * unittests/basic_string_view/cons/char/3.cc: Likewise.
10888         * unittests/basic_string_view/element_access/char/1.cc:
10889         Likewise.
10890         * unittests/basic_string_view/element_access/char/empty.cc:
10891         Likewise.
10892         * unittests/basic_string_view/element_access/char/front_back.cc:
10893         Likewise.
10894         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
10895         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
10896         Likewise.
10897         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
10898         Likewise.
10899         * unittests/basic_string_view/modifiers/swap/char/1.cc:
10900         Likewise.
10901         * unittests/basic_string_view/operations/compare/char/1.cc:
10902         Likewise.
10903         * unittests/basic_string_view/operations/compare/char/13650.cc:
10904         Likewise.
10905         * unittests/basic_string_view/operations/copy/char/1.cc:
10906         Likewise.
10907         * unittests/basic_string_view/operations/data/char/1.cc:
10908         Likewise.
10909         * unittests/basic_string_view/operations/find/char/1.cc:
10910         Likewise.
10911         * unittests/basic_string_view/operations/find/char/2.cc:
10912         Likewise.
10913         * unittests/basic_string_view/operations/find/char/3.cc:
10914         Likewise.
10915         * unittests/basic_string_view/operations/find/char/4.cc:
10916         Likewise.
10917         * unittests/basic_string_view/operations/rfind/char/1.cc:
10918         Likewise.
10919         * unittests/basic_string_view/operations/rfind/char/2.cc:
10920         Likewise.
10921         * unittests/basic_string_view/operations/rfind/char/3.cc:
10922         Likewise.
10923         * unittests/basic_string_view/operations/substr/char/1.cc:
10924         Likewise.
10925         * unittests/basic_string_view/operators/char/2.cc: Likewise.
10926         * unittests/string_view-selftests.c: New file.
10927
10928 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10929
10930         * unittests/basic_string_view/capacity/1.cc: New file.
10931         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
10932         * unittests/basic_string_view/cons/char/1.cc: New file.
10933         * unittests/basic_string_view/cons/char/2.cc: New file.
10934         * unittests/basic_string_view/cons/char/3.cc: New file.
10935         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
10936         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
10937         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
10938         * unittests/basic_string_view/element_access/char/1.cc: New file.
10939         * unittests/basic_string_view/element_access/char/2.cc: New file.
10940         * unittests/basic_string_view/element_access/char/empty.cc: New file.
10941         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
10942         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
10943         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
10944         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
10945         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
10946         * unittests/basic_string_view/include.cc: New file.
10947         * unittests/basic_string_view/inserters/char/1.cc: New file.
10948         * unittests/basic_string_view/inserters/char/2.cc: New file.
10949         * unittests/basic_string_view/inserters/char/3.cc: New file.
10950         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
10951         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
10952         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
10953         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
10954         * unittests/basic_string_view/literals/types.cc: New file.
10955         * unittests/basic_string_view/literals/values.cc: New file.
10956         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
10957         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
10958         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
10959         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
10960         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
10961         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
10962         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
10963         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
10964         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
10965         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
10966         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
10967         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
10968         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
10969         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
10970         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
10971         * unittests/basic_string_view/operations/data/char/1.cc: New file.
10972         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
10973         * unittests/basic_string_view/operations/find/char/1.cc: New file.
10974         * unittests/basic_string_view/operations/find/char/2.cc: New file.
10975         * unittests/basic_string_view/operations/find/char/3.cc: New file.
10976         * unittests/basic_string_view/operations/find/char/4.cc: New file.
10977         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
10978         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
10979         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
10980         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
10981         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
10982         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
10983         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
10984         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
10985         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
10986         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
10987         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
10988         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
10989         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
10990         * unittests/basic_string_view/operators/char/2.cc: New file.
10991         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
10992         * unittests/basic_string_view/range_access/char/1.cc: New file.
10993         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
10994         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
10995         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
10996         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
10997         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
10998         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
10999         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11000         * unittests/basic_string_view/typedefs.cc: New file.
11001         * unittests/basic_string_view/types/1.cc: New file.
11002
11003 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11004
11005         * common/gdb_string_view.h: Remove libstdc++ implementation
11006         details, adjust to gdb reality.
11007         * common/gdb_string_view.tcc: Likewise.
11008         * cli/cli-script.c (struct string_view): Remove.
11009         (user_args) <m_args>: Change element type to gdb::string_view.
11010         (user_args::insert_args): Adjust.
11011
11012 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11013
11014         * common/gdb_string_view.h: New file.
11015         * common/gdb_string_view.tcc: New file.
11016
11017 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11018
11019         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11020         * configure: Re-generate.
11021
11022 2018-04-09  Pedro Alves  <palves@redhat.com>
11023
11024         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11025         (set_target_gdbarch): Call
11026         gdb::observers::architecture_changed.notify instead of
11027         observer_notify_architecture_changed.
11028
11029 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11030
11031         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11032         (do_restore_current_traceframe_cleanup): Remove.
11033         (restore_current_traceframe_cleanup_dtor): Remove.
11034         (make_cleanup_restore_current_traceframe): Remove.
11035         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11036         New.
11037         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11038         * infrun.c (fetch_inferior_event): Use
11039         scoped_restore_current_traceframe.
11040
11041 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11042
11043         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11044         Remove.
11045         <n_allocated_type_units>: Remove.
11046         <all_type_units>: Change to std::vector.
11047         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11048         to std::vector change.
11049         (dwarf2_per_objfile::get_cutu): Likewise.
11050         (dwarf2_per_objfile::get_tu): Likewise.
11051         (create_signatured_type_table_from_index): Likewise.
11052         (create_signatured_type_table_from_debug_names): Likewise.
11053         (dw2_symtab_iter_next): Likewise.
11054         (dw2_print_stats): Likewise.
11055         (dw2_expand_all_symtabs): Likewise.
11056         (dw2_expand_marked_cus): Likewise.
11057         (dw2_debug_names_iterator::next): Likewise.
11058         (dwarf2_initialize_objfile): Likewise.
11059         (add_signatured_type_cu_to_table): Likewise.
11060         (create_all_type_units): Likewise.
11061         (add_type_unit): Likewise.
11062         (struct tu_abbrev_offset): Add constructor.
11063         (build_type_psymtabs_1): Adjust to std::vector change.
11064         (print_tu_stats): Likewise.
11065         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11066         (write_debug_names): Likewise.
11067
11068 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11069
11070         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11071         Make an std::vector.
11072         <n_comp_units>: Remove.
11073         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11074         to std::vector change.
11075         (dwarf2_per_objfile::get_cutu): Likewise.
11076         (dwarf2_per_objfile::get_cu): Likewise.
11077         (create_cus_from_index): Likewise.
11078         (create_addrmap_from_index): Likewise.
11079         (create_addrmap_from_aranges): Likewise.
11080         (dwarf2_read_index): Likewise.
11081         (dw2_find_last_source_symtab): Likewise.
11082         (dw2_map_symtabs_matching_filename): Likewise.
11083         (dw2_symtab_iter_next): Likewise.
11084         (dw2_print_stats): Likewise.
11085         (dw2_expand_all_symtabs): Likewise.
11086         (dw2_expand_symtabs_with_fullname): Likewise.
11087         (dw2_expand_marked_cus): Likewise.
11088         (dw2_map_symbol_filenames): Likewise.
11089         (create_cus_from_debug_names): Likewise.
11090         (dwarf2_read_debug_names): Likewise.
11091         (dw2_debug_names_iterator::next): Likewise.
11092         (dwarf2_initialize_objfile): Likewise.
11093         (set_partial_user): Likewise.
11094         (dwarf2_build_psymtabs_hard): Likewise.
11095         (read_comp_units_from_section): Remove arguments, adjust to
11096         std::vector change.
11097         (create_all_comp_units): Adjust to std::vector and
11098         read_comp_units_from_section changes.
11099         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11100         change.
11101         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11102         (psyms_seen_size): Likewise.
11103         (write_gdbindex): Likewise.
11104         (write_debug_names): Likewise.
11105
11106 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11107
11108         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11109         with dwarf2_per_objfile.
11110         (create_cus_from_index): Likewise.
11111         (create_signatured_type_table_from_index): Likewise.
11112         (dwarf2_read_index): Likewise.
11113         (dwarf2_initialize_objfile): Likewise.
11114         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11115         per_cu rather than get_dwarf2_per_objfile.
11116
11117 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11118
11119         * dwarf2read.h (struct signatured_type): Forward declare.
11120         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11121         New methods.
11122         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11123         (dw2_get_cutu): ...this.
11124         (dwarf2_per_objfile::get_cu): Rename from...
11125         (dw2_get_cu): ...this.
11126         (dwarf2_per_objfile::get_tu): New.
11127         (create_addrmap_from_index): Adjust.
11128         (create_addrmap_from_aranges): Adjust.
11129         (dw2_find_last_source_symtab): Adjust.
11130         (dw2_map_symtabs_matching_filename): Adjust.
11131         (dw2_symtab_iter_next): Adjust.
11132         (dw2_print_stats): Adjust.
11133         (dw2_expand_all_symtabs): Adjust.
11134         (dw2_expand_symtabs_with_fullname): Adjust.
11135         (dw2_expand_marked_cus): Adjust.
11136         (dw_expand_symtabs_matching_file_matcher): Adjust.
11137         (dw2_map_symbol_filenames): Adjust.
11138         (dw2_debug_names_iterator::next): Adjust.
11139         (dwarf2_initialize_objfile): Adjust.
11140         (set_partial_user): Adjust.
11141         (dwarf2_build_psymtabs_hard): Adjust.
11142
11143 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11144
11145         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11146         Remove unused variables.
11147         (dw2_map_symtabs_matching_filename): Likewise.
11148         (dwarf2_record_block_ranges): Likewise.
11149         (dwarf2_read_addr_index): Likewise.
11150         (follow_die_offset): Likewise.
11151
11152 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11153
11154         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11155         to symbol_file_add_main.
11156
11157 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11158
11159         PR mi/22299
11160         * mi/mi-console.c (do_fputc_async_safe): New.
11161         (mi_console_file::write_async_safe): New.
11162         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11163         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11164         New.
11165         * ui-file.c (ui_file::putstrn): Adjust call to
11166         fputstrn_unfiltered.
11167         * utils.c (printchar): Replace do_fputs and do_fprintf
11168         parameters by do_fputc.
11169         (fputstr_filtered): Adjust call to printchar.
11170         (fputstr_unfiltered): Likewise.
11171         (fputstrn_filtered): Likewise.
11172         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11173         printchar.
11174         * utils.h (do_fputc_ftype): New typedef.
11175         (fputstrn_unfiltered): Add do_fputc parameter.
11176
11177 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11178
11179         * regformats/i386/i386-avx.dat: Remove.
11180
11181 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11182
11183         PR gdb/22979
11184         * amd64-tdep.c (amd64_none_init_abi): New function.
11185         (amd64_x32_none_init_abi): New function.
11186         (_initialize_amd64_tdep): Register handlers for x86-64 and
11187         x64_32 with GDB_OSABI_NONE.
11188         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11189         GDB_OSABI_NONE osabi.
11190
11191 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11192
11193         PR gdb/22980
11194         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11195         GDB_OSABI_NONE.
11196         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11197         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11198
11199 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11200
11201         * common/byte-vector.h (char_vector): New type.
11202         * target.h (target_read_alloc): Return
11203         gdb::optional<byte_vector>.
11204         (target_read_stralloc): Return gdb::optional<char_vector>.
11205         (target_get_osdata): Return gdb::optional<char_vector>.
11206         * target.c (target_read_alloc_1): Templatize.  Replacement
11207         manual memory management with vector.
11208         (target_read_alloc): Change return type, adjust.
11209         (target_read_stralloc): Change return type, adjust.
11210         (target_get_osdata): Change return type, adjust.
11211         * auxv.c (struct auxv_info) <length>: Remove.
11212         <data>: Change type to gdb::optional<byte_vector>.
11213         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11214         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11215         (target_auxv_search): Adjust.
11216         (fprint_target_auxv): Adjust.
11217         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11218         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11219         (linux_make_corefile_notes): Adjust.
11220         * osdata.c (get_osdata): Adjust.
11221         * remote.c (remote_get_threads_with_qxfer): Adjust.
11222         (remote_memory_map): Adjust.
11223         (remote_traceframe_info): Adjust.
11224         (btrace_read_config): Adjust.
11225         (remote_read_btrace): Adjust.
11226         (remote_pid_to_exec_file): Adjust.
11227         * solib-aix.c (solib_aix_get_library_list): Adjust.
11228         * solib-dsbt.c (decode_loadmap): Don't free buf.
11229         (dsbt_get_initial_loadmaps): Adjust.
11230         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11231         * solib-target.c (solib_target_current_sos): Adjust.
11232         * tracepoint.c (sdata_make_value): Adjust.
11233         * xml-support.c (xinclude_start_include): Adjust.
11234         (xml_fetch_content_from_file): Adjust.
11235         * xml-support.h (xml_fetch_another): Change return type.
11236         (xml_fetch_content_from_file): Change return type.
11237         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11238         * xml-tdesc.c (file_read_description_xml): Adjust.
11239         (fetch_available_features_from_target): Change return type.
11240         (target_fetch_description_xml): Adjust.
11241         (target_read_description_xml): Adjust.
11242
11243 2018-04-06  Tom Tromey  <tom@tromey.com>
11244
11245         * value.c (~value): Update.
11246         (struct value) <contents>: Now unique_xmalloc_ptr.
11247         (value_contents_bits_eq, allocate_value_contents)
11248         (value_contents_raw, value_contents_all_raw)
11249         (value_contents_for_printing, value_contents_for_printing_const)
11250         (set_value_enclosing_type): Update.
11251
11252 2018-04-06  Tom Tromey  <tom@tromey.com>
11253
11254         * value.c (range_s): Remove typedef, VEC.
11255         (struct range): Add operator<.
11256         (range_lessthan): Remove.
11257         (ranges_contain): Change type.
11258         (~value): Update.
11259         (struct value) <unavailable, optimized_out>: Now std::vector.
11260         (value_entirely_available)
11261         (value_entirely_covered_by_range_vector)
11262         (value_entirely_unavailable, value_entirely_optimized_out):
11263         Update.
11264         (insert_into_bit_range_vector): Change argument type.
11265         (find_first_range_overlap): Likewise.
11266         (struct ranges_and_idx, value_contents_bits_eq)
11267         (require_not_optimized_out, require_available): Update.
11268         (ranges_copy_adjusted): Change argument types.
11269         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11270
11271 2018-04-06  Tom Tromey  <tom@tromey.com>
11272
11273         * value.c (~value): Update.
11274         (struct value) <parent>: Now a value_ref_ptr.
11275         (value_parent, set_value_parent, value_address, value_copy):
11276         Update.
11277
11278 2018-04-06  Tom Tromey  <tom@tromey.com>
11279
11280         * value.c (struct value): Add constructor, destructor, and member
11281         initializers.
11282         (allocate_value_lazy, value_decref): Update.
11283
11284 2018-04-06  Tom Tromey  <tom@tromey.com>
11285
11286         * value.c (struct value) <released, next>: Remove.
11287         (all_values): Now a std::vector.
11288         (allocate_value_lazy): Update.
11289         (value_next): Remove.
11290         (value_mark, value_free_to_mark, release_value)
11291         (value_release_to_mark): Update.
11292
11293 2018-04-06  Tom Tromey  <tom@tromey.com>
11294
11295         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11296         (free_value_chain): Remove.
11297         * value.c (free_value_chain): Remove.
11298         (value_release_to_mark): Return a std::vector.
11299         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11300         std::vector.
11301         (check_condition): Update.
11302         * eval.c (fetch_subexp_value): Change "val_chain" to a
11303         std::vector.
11304         * breakpoint.c (update_watchpoint): Update.
11305         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11306
11307 2018-04-06  Tom Tromey  <tom@tromey.com>
11308
11309         * value.h (free_all_values): Remove.
11310         * value.c (free_all_values): Remove.
11311
11312 2018-04-06  Tom Tromey  <tom@tromey.com>
11313
11314         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11315         (value_history_chain, value_history_count): Remove.
11316         (value_history): New global.
11317         (record_latest_value, access_value_history, show_values)
11318         (preserve_values): Update.
11319
11320 2018-04-06  Tom Tromey  <tom@tromey.com>
11321
11322         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11323         * varobj.c (varobj_set_display_format, varobj_set_value)
11324         (install_default_visualizer, construct_visualizer)
11325         (install_new_value, ~varobj, varobj_get_value_type)
11326         (my_value_of_variable, varobj_editable_p): Update.
11327         * c-varobj.c (c_describe_child, c_value_of_variable)
11328         (cplus_number_of_children, cplus_describe_child): Update.
11329         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11330         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11331         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11332
11333 2018-04-06  Tom Tromey  <tom@tromey.com>
11334
11335         * printcmd.c (last_examine_address): Change type to
11336         value_ref_ptr.
11337         (do_examine, x_command): Update.
11338
11339 2018-04-06  Tom Tromey  <tom@tromey.com>
11340
11341         * value.c (release_value): Update.
11342         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11343         (struct bpstats) <val>: Now a value_ref_ptr.
11344         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11345         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11346         (~watchpoint, print_it_watchpoint, watch_command_1)
11347         (invalidate_bp_value_on_memory_change): Update.
11348
11349 2018-04-06  Tom Tromey  <tom@tromey.com>
11350
11351         * varobj.c (varobj_clear_saved_item)
11352         (update_dynamic_varobj_children, install_new_value, ~varobj):
11353         Update.
11354         * value.h (value_incref): Move declaration earlier.
11355         (value_decref): Rename from value_free.
11356         (struct value_ref_policy): New.
11357         (value_ref_ptr): New typedef.
11358         (struct value_deleter): Remove.
11359         (gdb_value_up): Remove typedef.
11360         (release_value): Change return type.
11361         (release_value_or_incref): Remove.
11362         * value.c (set_value_parent): Update.
11363         (value_incref): Change return type.
11364         (value_decref): Rename from value_free.
11365         (value_free_to_mark, free_all_values, free_value_chain): Update.
11366         (release_value): Return value_ref_ptr.
11367         (release_value_or_incref): Remove.
11368         (record_latest_value, set_internalvar, clear_internalvar):
11369         Update.
11370         * stack.c (info_frame_command): Don't call value_free.
11371         * python/py-value.c (valpy_dealloc, valpy_new)
11372         (value_to_value_object): Update.
11373         * printcmd.c (do_examine): Update.
11374         * opencl-lang.c (lval_func_free_closure): Update.
11375         * mi/mi-main.c (register_changed_p): Don't call value_free.
11376         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11377         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11378         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11379         value_free.
11380         * guile/scm-value.c (vlscm_free_value_smob)
11381         (vlscm_scm_from_value): Update.
11382         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11383         (frame_unwind_register_unsigned, get_frame_register_bytes)
11384         (put_frame_register_bytes): Don't call value_free.
11385         * findvar.c (address_from_register): Don't call value_free.
11386         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11387         * dwarf2loc.c (entry_data_value_free_closure)
11388         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11389         (dwarf2_evaluate_loc_desc_full): Update.
11390         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11391         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11392         (~watchpoint, watch_command_1)
11393         (invalidate_bp_value_on_memory_change): Update.
11394         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11395
11396 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11397
11398         PR gdb/23022
11399         * warning.m4: Add -Wno-error=deprecated-register.
11400         * configure: Re-generate.
11401
11402 2018-04-05  Tom Tromey  <tom@tromey.com>
11403
11404         * linespec.h: Remove include of "vec.h".
11405
11406 2018-04-05  Tom Tromey  <tom@tromey.com>
11407
11408         * linespec.c (typep): Remove typedef.
11409         (find_methods, find_superclass_methods): Take a std::vector.
11410         (find_method): Use std::vector.
11411
11412 2018-04-05  Tom Tromey  <tom@tromey.com>
11413
11414         * utils.c (compare_strings): Remove.
11415         * utils.h (compare_strings): Remove.
11416         * objc-lang.h (find_imps): Update.
11417         * objc-lang.c (find_methods): Take a std::vector.
11418         (uniquify_strings, find_imps): Likewise.
11419         * linespec.c (find_methods): Take a std::vector.
11420         (decode_objc): Use std::vector.
11421         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11422         a std::vector.
11423         (find_method, find_function_symbols): Use std::vector.
11424
11425 2018-04-05  Tom Tromey  <tom@tromey.com>
11426
11427         * completer.c (completion_tracker::completion_tracker): Remove
11428         cast.
11429         (completion_tracker::discard_completions): Likewise.
11430         * breakpoint.c (ambiguous_names_p): Remove cast.
11431         * ada-lang.c (_initialize_ada_language): Remove cast.
11432         * utils.h (streq): Update.
11433         (streq_hash): Add new declaration.
11434         * utils.c (streq): Return bool.
11435         (streq_hash): New function.
11436
11437 2018-04-05  Tom Tromey  <tom@tromey.com>
11438
11439         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11440         Remove a string copy.
11441
11442 2018-04-05  Tom Tromey  <tom@tromey.com>
11443
11444         * linespec.c (filter_results): Use std::vector.
11445         (decode_line_2, decode_line_full): Update.
11446
11447 2018-04-05  Tom Tromey  <tom@tromey.com>
11448
11449         * linespec.c (canonical_to_fullform): Return std::string.
11450         (filter_results): Update.
11451         (struct decode_line_2_item): Add constructor.
11452         <fullform, displayform>: Now std::string.
11453         (decode_line_2_compare_items): Now a std::sort comparator.
11454         (decode_line_2): Update.
11455
11456 2018-04-05  Tom Tromey  <tom@tromey.com>
11457
11458         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11459         (unexpected_linespec_error): Update.
11460         (linespec_parse_basic, parse_linespec): Update.
11461
11462 2018-04-05  Tom Tromey  <tom@tromey.com>
11463
11464         * linespec.c (linespec_parse_basic): Reindent.
11465
11466 2018-04-05  Tom Tromey  <tom@tromey.com>
11467
11468         * minsyms.h (iterate_over_minimal_symbols): Update.
11469         * minsyms.c (iterate_over_minimal_symbols): Take a
11470         gdb::function_view.
11471         * linespec.c (struct collect_minsyms): Remove.
11472         (compare_msyms): Now a std::sort comparator.
11473         (add_minsym): Add parameters.
11474         (search_minsyms_for_name): Update.  Use std::vector.
11475
11476 2018-04-03  Tom Tromey  <tom@tromey.com>
11477
11478         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11479         gdb::byte_vector.
11480
11481 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11482
11483         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11484
11485 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11486
11487         PR gdb/16959
11488         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11489         printing static type.
11490
11491 2018-04-01  Tom Tromey  <tom@tromey.com>
11492
11493         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11494         (rs6000_xfer_shared_libraries): Update.
11495
11496 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11497
11498         * common/gdb_vecs.h (char_ptr): Remove.
11499         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11500
11501 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11502
11503         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11504         with std::vector.
11505         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11506
11507 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11508
11509         * tracepoint.h (struct uploaded_tp): Initialize fields.
11510         <actions, step_actions, cmd_strings>: Change type to
11511         std::vector<char *>.
11512         * tracepoint.c (get_uploaded_tp): Allocate with new.
11513         (free_uploaded_tps): Free with delete.
11514         (parse_tracepoint_definition): Adjust to std::vector change.
11515         * breakpoint.c (read_uploaded_action): Likewise.
11516         (create_tracepoint_from_upload): Likewise.
11517         * ctf.c (ctf_write_uploaded_tp): Likewise.
11518         (SET_ARRAY_FIELD): Likewise.
11519         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11520
11521 2018-03-30  Tom Tromey  <tom@tromey.com>
11522
11523         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11524         std::unique_ptr.
11525         (svr4_keep_data_in_core): Update.
11526         (svr4_read_so_list): Update.
11527
11528 2018-03-30  Tom Tromey  <tom@tromey.com>
11529
11530         * windows-nat.c (handle_output_debug_string, handle_exception):
11531         Update.
11532         * target.h (target_read_string): Update.
11533         * target.c (target_read_string): Change "string" to
11534         unique_xmalloc_ptr.
11535         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11536         Update.
11537         * solib-frv.c (frv_current_sos): Update.
11538         * solib-dsbt.c (dsbt_current_sos): Update.
11539         * solib-darwin.c (darwin_current_sos): Update.
11540         * linux-thread-db.c (inferior_has_bug): Update.
11541         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11542         Update.  Remove alloca.
11543         * ada-lang.c (ada_main_name): Update.
11544
11545 2018-03-30  Tom Tromey  <tom@tromey.com>
11546
11547         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11548         (struct dwo_file_deleter): New.
11549         (dwo_file_up): New typedef.
11550         (open_and_init_dwo_file): Use dwo_file_up.
11551         (free_dwo_file_cleanup): Remove.
11552
11553 2018-03-30  Tom Tromey  <tom@tromey.com>
11554
11555         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
11556         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
11557
11558 2018-03-30  Tom Tromey  <tom@tromey.com>
11559
11560         * dwarf2read.c (class free_cached_comp_units): New class.
11561         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
11562         (free_cached_comp_units): Remove function.
11563
11564 2018-03-30  Tom Tromey  <tom@tromey.com>
11565
11566         * utils.h (make_cleanup_unpush_target): Remove.
11567         * inf-ptrace.c (struct target_unpusher): New.
11568         (target_unpush_up) New typedef.
11569         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
11570         target_unpush_up.
11571         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
11572
11573 2018-03-27  Tom Tromey  <tom@tromey.com>
11574
11575         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
11576
11577 2018-03-27  Pedro Alves  <palves@redhat.com>
11578             Tom Tromey  <tom@tromey.com>
11579
11580         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
11581         destructor.  Now a class.
11582         (gdb_readline_wrapper_cleanup): Remove function.
11583         (gdb_readline_wrapper): Remove cleanups.
11584
11585 2018-03-27  Tom Tromey  <tom@tromey.com>
11586
11587         * typeprint.h (struct type_print_options) <local_typedefs,
11588         global_typedefs>: Remove "struct" keyword.
11589         (class typedef_hash_table): New class.
11590         (recursively_update_typedef_hash, add_template_parameters)
11591         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
11592         (find_typedef_in_hash): Don't declare.
11593         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
11594         (typedef_hash_table::recursively_update): Rename from
11595         recursively_update_typedef_hash.  Now a member.
11596         (typedef_hash_table::add_template_parameters): Rename from
11597         add_template_parameters.  Now a member.
11598         (typedef_hash_table::typedef_hash_table): Now a constructor;
11599         rename from create_typedef_hash.
11600         (typedef_hash_table::~typedef_hash_table): Now a destructor;
11601         rename from free_typedef_hash.
11602         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
11603         (do_free_global_table): Remove.
11604         (typedef_hash_table::typedef_hash_table): New constructor; renamed
11605         from copy_type_recursive.
11606         (create_global_typedef_table): Remove.
11607         (typedef_hash_table::find_global_typedef): Now a member of
11608         typedef_hash_table.
11609         (typedef_hash_table::find_typedef): Rename from
11610         find_typedef_in_hash; now a member.
11611         (whatis_exp): Update.
11612         * extension.h (struct ext_lang_type_printers): Add constructor and
11613         destructor.
11614         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
11615         declare.
11616         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
11617         Now a constructor; rename from start_ext_lang_type_printers.
11618         (ext_lang_type_printers): Now a destructor; rename from
11619         free_ext_lang_type_printers.
11620         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
11621         Update.
11622         (c_type_print_base_struct_union): Update.  Remove cleanups.
11623
11624 2018-03-27  Tom Tromey  <tom@tromey.com>
11625
11626         * dwarf-index-write.c: Include <cmath>.
11627
11628 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11629
11630         * NEWS: Add entry describing new "set|show varsize-limit" command.
11631         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
11632         command.
11633         * printcmd.c (_initialize_printcmd): Add "set var" alias of
11634         "set variable".
11635
11636 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
11637
11638         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
11639         dwarf-index-write.c
11640         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
11641         * dwarf-index-common.c: New file.
11642         * dwarf-index-common.h: New file.
11643         * dwarf-index-write.c: New file.
11644         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
11645         (struct dwarf2_section_info): Move from here.
11646         (dwarf2_section_info_def): Likewise.
11647         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
11648         (offset_type): Likewise.
11649         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
11650         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
11651         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
11652         (byte_swap): Likewise.
11653         (MAYBE_SWAP): Likewise.
11654         (dwarf2_per_cu_ptr): Likewise.
11655         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
11656         (struct tu_stats): Likewise.
11657         (struct dwarf2_per_objfile): Likewise.
11658         (struct dwarf2_per_cu_data): Likewise.
11659         (struct signatured_type): Likewise.
11660         (sig_type_ptr): Likewise.
11661         (DEF_VEC_P (sig_type_ptr)): Likewise.
11662         (INDEX4_SUFFIX): Likewise.
11663         (INDEX5_SUFFIX): Likewise.
11664         (DEBUG_STR_SUFFIX): Likewise.
11665         (dwarf2_read_section): Make non-static.
11666         (mapped_index_string_hash): Move from here.
11667         (dwarf5_djb_hash): Likewise.
11668         (file_write): Likewise.
11669         (class data_buf): Likewise.
11670         (struct symtab_index_entry): Likewise.
11671         (struct mapped_symtab): Likewise.
11672         (find_slot): Likewise.
11673         (hash_expand): Likewise.
11674         (add_index_entry): Likewise.
11675         (uniquify_cu_indices): Likewise.
11676         (class c_str_view): Likewise.
11677         (class c_str_view_hasher): Likewise.
11678         (class vector_hasher): Likewise.
11679         (write_hash_table): Likewise.
11680         (psym_index_map): Likewise.
11681         (struct addrmap_index_data): Likewise.
11682         (add_address_entry): Likewise.
11683         (add_address_entry_worker): Likewise.
11684         (write_address_map): Likewise.
11685         (symbol_kind): Likewise.
11686         (write_psymbols): Likewise.
11687         (struct signatured_type_index_data): Likewise.
11688         (write_one_signatured_type): Likewise.
11689         (recursively_count_psymbols): Likewise.
11690         (recursively_write_psymbols): Likewise.
11691         (class debug_names): Likewise.
11692         (check_dwarf64_offsets): Likewise.
11693         (psyms_seen_size): Likewise.
11694         (write_gdbindex): Likewise.
11695         (write_debug_names): Likewise.
11696         (assert_file_size): Likewise.
11697         (write_psymtabs_to_index): Likewise.
11698         (save_gdb_index_command): Likewise.
11699         (_initialize_dwarf2_read): Don't register the "save gdb-index"
11700         command.
11701         * dwarf2read.h: New file.
11702
11703 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11704
11705         PR gdb/22670
11706         * dwarf2read.c (dwarf2_physname): Do not return the demangled
11707         symbol name if the CU's language stores symbol names in linkage
11708         format.
11709         * language.h (struct language_defn)
11710         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
11711         all instances of this struct.
11712
11713 2018-03-26  Tom Tromey  <tom@tromey.com>
11714
11715         * stack.c (backtrace_command_1): Remove verbose code.
11716
11717 2018-03-26  Tom Tromey  <tom@tromey.com>
11718
11719         * python/py-framefilter.c (py_print_type): Don't catch
11720         exceptions.  Return void.
11721         (py_print_value): Likewise.
11722         (py_print_single_arg): Likewise.
11723         (enumerate_args): Don't catch exceptions.
11724         (py_print_args): Likewise.
11725         (py_print_frame): Likewise.
11726         (gdbpy_apply_frame_filter): Catch exceptions here.
11727
11728 2018-03-26  Tom Tromey  <tom@tromey.com>
11729
11730         * stack.c (_initialize_stack): Remove trailing newlines from help
11731         text.  Add "Usage" line to "backtrace" help.
11732
11733 2018-03-26  Tom Tromey  <tom@tromey.com>
11734
11735         PR python/16486:
11736         * python/py-framefilter.c (py_print_args): Call wrap_hint.
11737
11738 2018-03-26  Tom Tromey  <tom@tromey.com>
11739
11740         * python/py-framefilter.c (py_print_single_arg): Return
11741         EXT_LANG_BT_ERROR from catch.
11742
11743 2018-03-26  Tom Tromey  <tom@tromey.com>
11744
11745         PR backtrace/15584:
11746         * stack.c (backtrace_command_1): Move some code into no-filters
11747         "if".
11748
11749 2018-03-26  Tom Tromey  <tom@tromey.com>
11750
11751         * python/py-framefilter.c (throw_quit_or_print_exception): New
11752         function.
11753         (gdbpy_apply_frame_filter): Use it.
11754
11755 2018-03-26  Tom Tromey  <tom@tromey.com>
11756
11757         PR cli/17716:
11758         * python/py-framefilter.c (py_print_type, py_print_value)
11759         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
11760         RETURN_MASK_ERROR.
11761
11762 2018-03-26  Tom Tromey  <tom@tromey.com>
11763
11764         * python/py-framefilter.c (enumerate_args): Use
11765         gdb::unique_xmalloc_ptr.
11766
11767 2018-03-26  Tom Tromey  <tom@tromey.com>
11768
11769         * python/py-framefilter.c (py_print_frame): Return
11770         EXT_LANG_BT_OK.
11771         (gdbpy_apply_frame_filter): Update comment.
11772         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
11773         Remove.
11774         <EXT_LANG_BT_NO_FILTERS>: Change value.
11775
11776 2018-03-26  Tom Tromey  <tom@tromey.com>
11777
11778         PR backtrace/15582:
11779         * stack.c (backtrace_command): Parse "hide" argument.
11780         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
11781         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
11782         constant.
11783
11784 2018-03-26  Tom Tromey  <tom@tromey.com>
11785
11786         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
11787         add "flags".
11788         (backtrace_command): Remove "fulltrace", add "flags".
11789
11790 2018-03-26  Tom Tromey  <tom@tromey.com>
11791
11792         * stack.c (backtrace_command): Rewrite command line parsing.
11793
11794 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11795
11796         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
11797
11798 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11799
11800         * filename-seen-cache.h: Add include guard.
11801
11802 2018-03-26  Keith Seitz  <keiths@redhat.com>
11803
11804         * symfile.c (place_section): Remove "struct" from section_addr_info
11805         in comment.
11806         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
11807         "struct" keyword from section_addr_info.
11808
11809 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
11810
11811         * regformats/regdef.h (reg): Add constructors.
11812
11813 2018-03-25  Pedro Alves  <palves@redhat.com>
11814
11815         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
11816         if then/else bodies in var_func_name extraction.
11817
11818 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
11819
11820         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
11821         lookup_minimal_symbol() to find symbol entry.
11822         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
11823
11824 2018-03-23  Keith Seitz  <keiths@redhat.com>
11825
11826         PR c++/22968
11827         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
11828         nested type definitions for C++, too.
11829
11830 2018-03-23  Tom Tromey  <tom@tromey.com>
11831
11832         * machoread.c (struct oso_el): Add a constructor.  Don't define as
11833         a typedef.
11834         (macho_register_oso): Remove.
11835         (macho_symtab_read): Take a std::vector.
11836         (oso_el_compare_name): Now a std::sort comparator.
11837         (macho_symfile_read_all_oso): Take a std::vector.
11838         (macho_symfile_read): Use std::vector.  Remove cleanups.
11839
11840 2018-03-22  Tom Tromey  <tom@tromey.com>
11841
11842         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
11843         (record_full_goto_bookmark): Use std::string.
11844
11845 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11846
11847         PR tdep/18295
11848         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
11849         a single mask.
11850
11851 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11852
11853         * rs6000-tdep.c (store_insn_p): New function.
11854         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
11855         and cr_reg to their unshifted values. Use store_insn_p to
11856         match LR saves using either R1 or fdata->alloca_reg. Use
11857         store_insn_p to match CR saves. Set alloca_reg_offset
11858         when alloca_reg and framep are set. Remove lr_reg shift
11859         when assigning to fdata->lr_register.
11860
11861 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11862
11863         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
11864         command line args instead of emitting a warning.
11865
11866 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11867
11868         * tracepoint.h (struct static_tracepoint_marker): Initialize
11869         fields, define default constructor, move constructor and move
11870         assignment, disable the rest.
11871         <str_id, extra>: Make std::string.
11872         (release_static_tracepoint_marker): Remove.
11873         (free_current_marker): Remove.
11874         * tracepoint.c (free_current_marker): Remove.
11875         (parse_static_tracepoint_marker_definition): Adjust to
11876         std::string, use new hex2str overload.
11877         (release_static_tracepoint_marker): Remove.
11878         (print_one_static_tracepoint_marker): Get marker by reference
11879         and adjust to std::string.
11880         (info_static_tracepoint_markers_command): Adjust to std::vector
11881         changes
11882         * target.h (static_tracepoint_marker_p): Remove typedef.
11883         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
11884         (struct target_ops) <to_static_tracepoint_marker_at>: Return
11885         bool.
11886         <to_static_tracepoint_markers_by_strid>: Return std::vector.
11887         * target-debug.h
11888         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
11889         (target_debug_print_std_vector_static_tracepoint_marker): New.
11890         (target_debug_print_struct_static_tracepoint_marker_p): Rename
11891         to...
11892         (target_debug_print_static_tracepoint_marker_p): ... this.
11893         * target-delegates.c: Re-generate.
11894         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
11895         Make std::string.
11896         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
11897         (decode_static_tracepoint_spec): Adjust to std::vector.
11898         (tracepoint_print_one_detail): Adjust to std::string.
11899         (strace_marker_decode_location): Adjust to std::string.
11900         (update_static_tracepoint): Adjust to std::string, remove call
11901         to release_static_tracepoint_marker.
11902         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
11903         Adjust to std::vector.
11904         * remote.c (remote_static_tracepoint_marker_at): Return bool.
11905         (remote_static_tracepoint_markers_by_strid): Adjust to
11906         std::vector.
11907         * common/rsp-low.h (hex2str): New overload with explicit count
11908         of bytes.
11909         * common/rsp-low.c (hex2str): New overload with explicit count
11910         of bytes.
11911         * unittests/rsp-low-selftests.c (test_hex2str): New function.
11912         (_initialize_rsp_low_selftests): Add test_hex2str test.
11913         * unittests/tracepoint-selftests.c
11914         (test_parse_static_tracepoint_marker_definition): Adjust to
11915         std::string.
11916
11917 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11918
11919         * tracepoint.c (parse_static_tracepoint_marker_definition):
11920         Consider case where the definition is followed by more
11921         definitions.
11922         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11923         tracepoint-selftests.c.
11924         * unittests/tracepoint-selftests.c: New.
11925
11926 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11927
11928         * MAINTAINERS (Write After Approval): Add Pedro Franco de
11929         Carvalho.
11930
11931 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11932
11933         * symtab.c (find_pc_sect_line): fixed indentation.
11934
11935 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11936
11937         * symtab.c (find_pc_sect_line): now uses binary search.
11938
11939 2018-03-19  Tom Tromey  <tom@tromey.com>
11940
11941         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
11942         "IDENT" production.
11943
11944 2018-03-19  Pedro Alves  <palves@redhat.com>
11945             Tom Tromey  <tom@tromey.com>
11946
11947         * unittests/observable-selftests.c: New file.
11948         * common/observable.h: New file.
11949         * observable.h: New file.
11950         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
11951         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
11952         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
11953         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
11954         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
11955         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
11956         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
11957         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
11958         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
11959         python/py-breakpoint.c, python/py-finishbreakpoint.c,
11960         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
11961         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
11962         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
11963         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
11964         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
11965         tui/tui-interp.c, valops.c: Update all users.
11966         * tui/tui-hooks.c (tui_bp_created_observer)
11967         (tui_bp_deleted_observer, tui_bp_modified_observer)
11968         (tui_inferior_exit_observer, tui_before_prompt_observer)
11969         (tui_normal_stop_observer, tui_register_changed_observer):
11970         Remove.
11971         (tui_observers_token): New global.
11972         (attach_or_detach, tui_attach_detach_observers): New functions.
11973         (tui_install_hooks, tui_remove_hooks): Use
11974         tui_attach_detach_observers.
11975         * record-btrace.c (record_btrace_thread_observer): Remove.
11976         (record_btrace_thread_observer_token): New global.
11977         * observer.sh: Remove.
11978         * observer.c: Rename to observable.c.
11979         * observable.c (namespace gdb_observers): Define new objects.
11980         (observer_debug): Move into gdb_observers namespace.
11981         (struct observer, struct observer_list, xalloc_observer_list_node)
11982         (xfree_observer_list_node, generic_observer_attach)
11983         (generic_observer_detach, generic_observer_notify): Remove.
11984         (_initialize_observer): Update.
11985         Don't include observer.inc.
11986         * Makefile.in (generated_files): Remove observer.h, observer.inc.
11987         (clean mostlyclean): Likewise.
11988         (observer.h, observer.inc): Remove targets.
11989         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
11990         (COMMON_SFILES): Use observable.c, not observer.c.
11991         * .gitignore: Remove observer.h.
11992
11993 2018-03-18  Tom Tromey  <tom@tromey.com>
11994
11995         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
11996         gdb::def_vector.
11997         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
11998
11999 2018-03-17  Tom Tromey  <tom@tromey.com>
12000
12001         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12002
12003 2018-03-17  Tom Tromey  <tom@tromey.com>
12004
12005         * target.c (class scoped_target_fd): New.
12006         (target_fileio_close_cleanup): Remove.
12007         (target_fileio_read_alloc_1): Use scoped_target_fd.
12008
12009 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12010
12011         * silent-rules.mk: New.
12012         * Makefile.in: Include silent-rules.mk
12013         (srcdir, VPATH, top_srcdir): Move up.
12014         (COMPILE): Add ECHO_CXX.
12015         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12016         (init.c): Add ECHO_INIT_C.
12017         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12018         (version.c): Add ECHO_GEN.
12019         (printcmd.o): Add ECHO_CXX.
12020         (target-float.o): Add ECHO_CXX.
12021         (ada-exp.o): Add ECHO_CXX.
12022         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12023         (insight$(EXEEXT)): Add ECHO_CXXLD.
12024         * gnulib/configure.ac: Add AM_SILENT_RULES.
12025         * gnulib/aclocal.m4: Re-generate.
12026         * gnulib/configure: Re-generate.
12027         * gnulib/import/Makefile.in: Re-generate.
12028
12029 2018-03-16  Tom Tromey  <tom@tromey.com>
12030
12031         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12032         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12033         * utils.c (do_free_section_addr_info)
12034         (make_cleanup_free_section_addr_info): Remove.
12035         * symfile.h (struct other_sections): Add constructor.
12036         (struct section_addr_info): Remove.
12037         (section_addr_info): New typedef.
12038         (struct sym_fns) <sym_offsets>: Change type of parameter.
12039         (build_section_addr_info_from_objfile)
12040         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12041         (default_symfile_offsets, symbol_file_add)
12042         (symbol_file_add_from_bfd)
12043         (build_section_addr_info_from_section_table): Update.
12044         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12045         * symfile.c (alloc_section_addr_info): Remove.
12046         (build_section_addr_info_from_section_table): Change return type.
12047         Update.
12048         (build_section_addr_info_from_bfd)
12049         (build_section_addr_info_from_objfile): Likewise.
12050         (free_section_addr_info): Remove.
12051         (relative_addr_info_to_section_offsets): Change type of "addrs".
12052         (addrs_section_compar): Now a std::sort comparator.
12053         (addrs_section_sort): Change return type.
12054         (addr_info_make_relative): Change type of "addrs".  Update.
12055         (default_symfile_offsets, syms_from_objfile_1)
12056         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12057         (symbol_file_add_separate): Update.
12058         (symbol_file_add): Change type of "addrs".  Update.
12059         (add_symbol_file_command): Update.  Remove cleanups.
12060         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12061         cleanups.
12062         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12063         * solib.c (solib_read_symbols): Update.
12064         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12065         * machoread.c (macho_symfile_offsets): Update.
12066         * jit.c (jit_bfd_try_read_symtab): Update.
12067
12068 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12069
12070         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12071         unittests/utils-selftests.c.
12072         * unittests/utils-selftests.c: New file.
12073
12074 2018-03-14  Tom Tromey  <tom@tromey.com>
12075
12076         PR cli/14977:
12077         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12078         for NULL.
12079
12080 2018-03-14  Tom Tromey  <tom@tromey.com>
12081
12082         PR cli/19918:
12083         * printcmd.c (printf_pointer): Allow "-" in format.
12084
12085 2018-03-14  Tom Tromey  <tom@tromey.com>
12086
12087         * printcmd.c (_initialize_printcmd): Add usage to printf.
12088
12089 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12090
12091         * MAINTAINERS: Update my email address.
12092
12093 2018-03-13  Tom Tromey  <tom@tromey.com>
12094
12095         * machoread.c (macho_check_dsym): Change filenamep to a
12096         std::string*.
12097         (macho_symfile_read): Update.
12098         * symfile.c (load_command): Use std::string.
12099
12100 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12101
12102         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12103         to error message string.
12104         (riscv_register_name): Use xsnprintf instead of sprintf.
12105         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12106         internal_error.
12107         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12108         error.
12109         (riscv_push_dummy_call): Likewise.
12110
12111 2018-03-12  Tom Tromey  <tom@tromey.com>
12112
12113         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12114         Use gdb::byte_vector.
12115         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12116
12117 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12118
12119         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12120         parameter type to readable_regcache.
12121         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12122         the declaration.
12123
12124 2018-03-11  Tom Tromey  <tom@tromey.com>
12125
12126         * dwarf2read.c (struct nextfield): Add initializers.
12127         (struct nextfnfield): Remove.
12128         (struct fnfieldlist): Add initializers.  Remove "length" and
12129         "head", use std::vector.
12130         (struct decl_field_list): Remove.
12131         (struct field_info): Add initializers.
12132         <fields, baseclasses>: Now std::vector.
12133         <nbaseclasses, nfnfields, typedef_field_list_count,
12134         nested_types_list_count>: Remove.
12135         (dwarf2_add_field, dwarf2_add_type_defn)
12136         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12137         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12138         (process_structure_scope): Update.
12139
12140 2018-03-11  Tom Tromey  <tom@tromey.com>
12141
12142         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12143         for use by std::sort.
12144         (build_type_psymtabs_1): Use std::vector.
12145
12146 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12147
12148         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12149         and LIBMPFR in the printed configuration.
12150
12151 2018-03-08  Tom Tromey  <tom@tromey.com>
12152
12153         * source.c (get_filename_and_charpos): Use scoped_fd.
12154         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12155         (procfs_pidlist): Likewise.
12156         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12157         (iterate_over_mappings): Likewise.
12158
12159 2018-03-08  Tom Tromey  <tom@tromey.com>
12160
12161         * infcall.c (struct call_return_meta_info)
12162         <stack_temporaries_enabled>: Remove.
12163         (get_call_return_value, call_function_by_hand_dummy): Update.
12164         * thread.c (disable_thread_stack_temporaries): Remove.
12165         (enable_thread_stack_temporaries): Remove.
12166         (thread_stack_temporaries_enabled_p): Return bool.
12167         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12168         (get_last_thread_stack_temporary): Update.
12169         * eval.c (evaluate_subexp): Update.
12170         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12171         class, not a function.
12172         (value_ptr, value_vec): Remove typedefs.
12173         (class thread_info) <stack_temporaries_enabled>: Now bool.
12174         <stack_temporaries>: Now a std::vector.
12175         (thread_stack_temporaries_enabled_p)
12176         (value_in_thread_stack_temporaries): Return bool.
12177
12178 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12179
12180         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12181         (getpkt_or_notif_sane_1): Likewise.
12182
12183 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12184
12185         * build-id.c (build_id_to_debug_bfd): Use std::string.
12186
12187 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12188
12189         * build-id.c (find_separate_debug_file_by_buildid): Return
12190         std::string.
12191         * build-id.h (find_separate_debug_file_by_buildid): Return
12192         std::string.
12193         * coffread.c (coff_symfile_read): Adjust to std::string.
12194         * elfread.c (elf_symfile_read): Adjust to std::string.
12195         * symfile.c (separate_debug_file_exists): Change parameter to
12196         std::string.
12197         (find_separate_debug_file): Return std::string.
12198         (find_separate_debug_file_by_debuglink): Return std::string.
12199         * symfile.h (find_separate_debug_file_by_debuglink): Return
12200         std::string.
12201
12202 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12203
12204         * common/xml-utils.c (xml_escape_text): Move code to...
12205         (xml_escape_text_append): ... this new function.
12206         * common/xml-utils.h (xml_escape_text_append): New declaration.
12207         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12208         New function.
12209         (_initialize_xml_utils): register test_xml_escape_text_append as
12210         a selftest.
12211
12212 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12213
12214         * defs.h: Remove MAX_REGISTER_SIZE.
12215         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12216         asserts.
12217         * python/py-unwind.c (pyuw_sniffer): Likewise.
12218
12219 2018-03-07  Tom Tromey  <tom@tromey.com>
12220
12221         * linux-tdep.c (linux_info_proc): Update.
12222         * target.h (struct target_ops) <to_fileio_readlink>: Return
12223         optional<string>.
12224         (target_fileio_readlink): Return optional<string>.
12225         * remote.c (remote_hostio_readlink): Return optional<string>.
12226         * inf-child.c (inf_child_fileio_readlink): Return
12227         optional<string>.
12228         * target.c (target_fileio_readlink): Return optional<string>.
12229
12230 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12231
12232         * regcache.c (cooked_read_test): Add riscv to the list of
12233         architectures that have a save_reggroup.
12234
12235 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12236
12237         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12238         value is not a dynamic class object.
12239
12240 2018-03-06  Tom Tromey  <tom@tromey.com>
12241
12242         * rust-exp.y: Formatting fixes.
12243
12244 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12245
12246         * riscv-tdep.c (riscv_register_name): Remove target description
12247         support.
12248         (riscv_gdbarch_init): Remove target description check.
12249
12250 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12251
12252         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12253         comment.
12254         * riscv-tdep.h: Likewise.
12255
12256 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12257
12258         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12259         (riscv_pseudo_register_write): Delete.
12260         (riscv_gdbarch_init): Remove all use of pseudo registers.
12261
12262 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12263
12264         * record-btrace.c (btrace_print_lines): Replace cleanup
12265         parameter with RAII equivalents.
12266         (btrace_insn_history): Replace cleanup with RAII equivalents.
12267         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12268         make_cleanup_ui_out_tuple_begin_end): Remove.
12269         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12270         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12271         make_cleanup_ui_out_list_begin_end): Remove.
12272
12273 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12274
12275         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12276         parameter types to std::vector.  Use bool.
12277         (record_btrace_wait): Replace VEC(tp_t) with
12278         std::vector<thread_info *>.
12279         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12280
12281 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12282
12283         * record-btrace.c (record_btrace_disable_callback): Remove.
12284         (struct scoped_btrace_disable): New.
12285         (record_btrace_open): Use scoped_btrace_disable.
12286
12287 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12288
12289         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12290         reading values from registers.
12291
12292 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12293
12294         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12295         where appropriate.
12296
12297 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12298
12299         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12300         change parameter type.  Use GDB's print functions, and use
12301         core_addr_to_string where appropriate.
12302         (riscv_push_dummy_call): Use core_addr_to_string where
12303         appropriate, update call to riscv_print_arg_location, and reindent
12304         a few lines.
12305         (riscv_return_value): Update call to riscv_print_arg_location.
12306
12307 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12308             Tim Newsome <tim@sifive.com>
12309             Albert Ou <a0u@eecs.berkeley.edu>
12310             Darius Rad <darius@bluespec.com>
12311
12312         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12313         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12314         (ALLDEPFILES): Add riscv-tdep.c
12315         * configure.tgt: Add riscv support.
12316         * riscv-tdep.c: New file.
12317         * riscv-tdep.h: New file.
12318         * NEWS: Mention new target.
12319         * MAINTAINERS: Add entry for riscv.
12320
12321 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12322
12323         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12324         fields within aggregates.
12325
12326 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12327
12328         * record-btrace.c (btrace_print_lines): Change type of flags to
12329         gdb_disassembly_flags.
12330
12331 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12332
12333         * fbsd-nat.c: Include "inf-ptrace.h".
12334         (USE_SIGTRAP_SIGINFO): Conditionally define.
12335         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12336         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12337         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12338         function.
12339         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12340         Likewise.
12341         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12342         Likewise.
12343         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12344         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12345         "supports_stopped_by_hw_breakpoint" target methods.
12346
12347 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12348
12349         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12350         * fbsd-nat.c (debug_fbsd_nat): New variable.
12351         (show_fbsd_nat_debug): New function.
12352         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12353         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12354
12355 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12356
12357         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12358         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12359         prototype.
12360         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12361         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12362         method.
12363
12364 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12365
12366         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12367         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12368
12369 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12370
12371         * charset.c (struct charset_vector): New.
12372         (charsets): Change type to charset_vector.
12373         (find_charset_names): Adjust.
12374         (add_one): Adjust.
12375         (_initialize_charset): Adjust.
12376
12377 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12378
12379         * progspace.h (struct program_space) <deleted_solibs>: Change
12380         type to std::vector<std::string>.
12381         * progspace.c (clear_program_space_solib_cache): Adjust.
12382         * breakpoint.c (print_solib_event): Adjust.
12383         (check_status_catch_solib): Adjust.
12384         * solib.c (update_solib_list): Adjust.
12385         * ui-out.h (class ui_out) <field_string>: New overload.
12386         * ui-out.c (ui_out::field_string): New overload.
12387
12388 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12389
12390         * progspace.h (struct program_space): Add constructor and
12391         destructor, initialize fields.
12392         (add_program_space): Remove.
12393         * progspace.c (add_program_space): Rename to...
12394         (program_space::program_space): ... this.
12395         (release_program_space): Rename to...
12396         (program_space::~program_space): ... this.
12397         (delete_program_space): Use delete to delete program_space.
12398         (initialize_progspace): Use new to allocate program_space.
12399         * inferior.c (add_inferior_with_spaces): Likewise.
12400         (clone_inferior_command): Likewise.
12401         * infrun.c (follow_fork_inferior): Likewise.
12402         (handle_vfork_child_exec_or_exit): Likewise.
12403
12404 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12405
12406         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12407         (delim_string_to_char_ptr_vec): Return std::vector of
12408         gdb::unique_xmalloc_ptr.
12409         (dirnames_to_char_ptr_vec_append): Take std::vector of
12410         gdb::unique_xmalloc_ptr.
12411         (dirnames_to_char_ptr_vec): Return std::vector of
12412         gdb::unique_xmalloc_ptr.
12413         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12414         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12415         (delim_string_to_char_ptr_vec): Return an std::vector of
12416         gdb::unique_xmalloc_ptr, adjust the code.
12417         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12418         gdb::unique_xmalloc_ptr, adjust the code.
12419         (dirnames_to_char_ptr_vec): Return an std::vector of
12420         gdb::unique_xmalloc_ptr, adjust the code.
12421         * auto-load.c (auto_load_safe_path_vec): Change type to
12422         std::vector of gdb::unique_xmalloc_ptr.
12423         (auto_load_expand_dir_vars): Return an std::vector of
12424         gdb::unique_xmalloc_ptr, adjust the code.
12425         (auto_load_safe_path_vec_update): Adjust.
12426         (filename_is_in_auto_load_safe_path_vec): Adjust.
12427         (auto_load_objfile_script_1): Adjust.
12428         * build-id.c (build_id_to_debug_bfd): Adjust.
12429         * linux-thread-db.c (thread_db_load_search): Adjust.
12430         * source.c (add_path): Adjust.
12431         (openp): Adjust.
12432         * symfile.c (find_separate_debug_file): Adjust.
12433         * utils.c (do_free_char_ptr_vec): Remove.
12434         (make_cleanup_free_char_ptr_vec): Remove.
12435
12436 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12437
12438         PR gdb/22907
12439         * common/pathstuff.c: Conditionally include "<windows.h>".
12440
12441 2018-03-01  Georg Sauthoff  <mail@georg.so>
12442
12443         PR gdb/22888
12444         * gcore.in: Quote variables and switch interpreter to bash.
12445
12446 2018-03-01  Tom Tromey  <tom@tromey.com>
12447
12448         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12449         assertion.  Add assertion for discriminant_index.
12450         (quirk_rust_enum): Use correct base type name in univariant case.
12451
12452 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12453
12454         * record.c (get_call_history_modifiers): Return a
12455         record_print_flags.
12456         (cmd_record_call_history): Adjust.
12457         * record-btrace.c (record_btrace_call_history): Adjust.
12458         (record_btrace_call_history_range): Adjust.
12459         (record_btrace_call_history_from): Adjust.
12460         * target-debug.h (target_debug_print_record_print_flags): New.
12461         * target-delegates.c: Re-generate.
12462         * target.c (target_call_history): Change flags type.
12463         (target_call_history_from): Likewise.
12464         (target_call_history_range): Likewise.
12465         * target.h (struct target_ops) <target_call_history>: Likewise.
12466         (target_call_history_from): Likewise.
12467         (target_call_history_range): Likewise.
12468
12469 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12470             Simon Marchi  <simon.marchi@polymtl.ca>
12471
12472         * common/common-utils.c: Include "sys/stat.h".
12473         (is_regular_file): Move here from "source.c"; change return
12474         type to "bool".
12475         * common/common-utils.h (is_regular_file): New prototype.
12476         * common/pathstuff.c (contains_dir_separator): New function.
12477         * common/pathstuff.h (contains_dir_separator): New prototype.
12478         * source.c: Don't include "sys/stat.h".
12479         (is_regular_file): Move to "common/common-utils.c".
12480
12481 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12482
12483         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12484         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12485         * auto-load.c: Include "common/pathstuff.h".
12486         * common/common-def.h (current_directory): Move here.
12487         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12488         function.
12489         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12490         prototype.
12491         * common/pathstuff.c: New file.
12492         * common/pathstuff.h: New file.
12493         * compile/compile.c: Include "common/pathstuff.h".
12494         * defs.h (current_directory): Move to "common/common-defs.h".
12495         * dwarf2read.c: Include "common/pathstuff.h".
12496         * exec.c: Likewise.
12497         * guile/scm-safe-call.c: Likewise.
12498         * linux-thread-db.c: Likewise.
12499         * main.c: Likewise.
12500         * nto-tdep.c: Likewise.
12501         * objfiles.c: Likewise.
12502         * source.c: Likewise.
12503         * symtab.c: Likewise.
12504         * utils.c: Include "common/pathstuff.h".
12505         (gdb_realpath): Move to "common/pathstuff.c".
12506         (gdb_realpath_keepfile): Likewise.
12507         (gdb_abspath): Likewise.
12508         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12509         (gdb_realpath_keepfile): Likewise.
12510         (gdb_abspath): Likewise.
12511
12512 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12513
12514         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12515         wildcard process pid for super_resume for kernels with a
12516         specific bug.
12517
12518 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12519
12520         * compile/compile.c (get_args): Add additional comments
12521         explaining function.
12522
12523 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12524             Tom Tromey  <tom@tromey.com>
12525
12526         * target.h (memory_write_request_s): Remove typedef.  Don't define
12527         VEC.
12528         (target_write_memory_blocks): Change argument to std::vector.
12529         (struct memory_write_request): Add constructor.
12530         * target-memory.c (compare_block_starting_address): Return bool.
12531         Change argument types.
12532         (claim_memory): Change arguments to use std::vector.
12533         (split_regular_and_flash_blocks, blocks_to_erase)
12534         (compute_garbled_blocks): Likewise.
12535         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12536         (target_write_memory_blocks): Change argument to std::vector.
12537         * symfile.c (struct load_section_data): Add constructor and
12538         destructor.  Use std::vector for "requests".
12539         (struct load_progress_data): Add initializers.
12540         (load_section_callback): Update.  Use "new".
12541         (clear_memory_write_data): Remove.
12542         (generic_load): Update.
12543
12544 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12545
12546         * arch/aarch64.h: Use common/tdesc.h.
12547
12548 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12549
12550         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
12551         architecture with a 64-bit ABI.
12552
12553 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12554
12555         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
12556         ahead of target description loading.
12557
12558 2018-02-26  Tom Tromey  <tom@tromey.com>
12559
12560         * stack.c (backtrace_command_1): Update.
12561         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
12562         of "flags".
12563         * python/py-framefilter.c (py_print_frame)
12564         (gdbpy_apply_frame_filter): Change type of "flags".
12565         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
12566         of "flags".
12567         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
12568         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
12569         * extension.h (enum frame_filter_flag): Rename from
12570         frame_filter_flags.
12571         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
12572         (apply_ext_lang_frame_filter): Change type of "flags".
12573         * extension.c (apply_ext_lang_frame_filter): Change type of
12574         "flags".
12575         * extension-priv.h (struct extension_language_ops)
12576         <apply_frame_filter>: Change type of "flags".
12577
12578 2018-02-26  Tom Tromey  <tom@tromey.com>
12579
12580         PR python/16497:
12581         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
12582         off-by-one in py_end computation.
12583         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
12584         PRINT_MORE_FRAMES.
12585         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
12586         constant.
12587
12588 2018-02-26  Tom Tromey  <tom@tromey.com>
12589
12590         * dwarf2read.c (struct variant_field): New.
12591         (struct nextfield) <variant>: New field.
12592         (dwarf2_add_field): Handle DW_TAG_variant_part.
12593         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
12594         discriminated union.
12595         (read_structure_type): Handle DW_TAG_variant_part.
12596         (handle_struct_member_die): New function, extracted from
12597         process_structure_scope.  Handle DW_TAG_variant.
12598         (process_structure_scope): Handle discriminated unions.  Call
12599         handle_struct_member_die.
12600
12601 2018-02-26  Tom Tromey  <tom@tromey.com>
12602
12603         * rust-lang.h (rust_last_path_segment): Declare.
12604         * rust-lang.c (rust_last_path_segment): Now public.  Change
12605         contract.
12606         (struct disr_info): Remove.
12607         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
12608         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
12609         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
12610         (rust_enum_p, rust_enum_variant): New function.
12611         (rust_underscore_fields): Remove "offset" parameter.
12612         (rust_print_enum): New function.
12613         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
12614         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
12615         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
12616         enums.
12617         (rust_internal_print_type): New function, from rust_print_type.
12618         Remove enum code.
12619         (rust_print_type): Call rust_internal_print_type.
12620         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
12621         Update enum handling.
12622         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
12623         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
12624         (rust_union_quirks): New functions.
12625         (process_full_comp_unit, process_full_type_unit): Call
12626         rust_union_quirks.
12627         (process_structure_scope): Update rust_unions if necessary.
12628
12629 2018-02-26  Tom Tromey  <tom@tromey.com>
12630
12631         * value.h (value_union_variant): Declare.
12632         * valops.c (value_union_variant): New function.
12633         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
12634         (struct discriminant_info): New.
12635         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
12636         enumerator.
12637         (struct main_type) <flag_discriminated_union>: New field.
12638
12639 2018-02-26  Tom Tromey  <tom@tromey.com>
12640
12641         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12642         unittests/unpack-selftests.c.
12643         * unittests/unpack-selftests.c: New file.
12644         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
12645
12646 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12647
12648         * dwarf2read.c (struct partial_die_info) <read>: New method.
12649         (read_partial_die): Remove the declaration.
12650         (load_partial_dies): Update.
12651         (partial_die_info::partial_die_info):
12652         (read_partial_die): Change it to partial_die_info::read.
12653
12654 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12655
12656         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
12657         (fixup_partial_die): Remove declaration.
12658         (scan_partial_symbols): Update.
12659         (partial_die_parent_scope): Likewise.
12660         (partial_die_full_name): Likewise.
12661         (fixup_partial_die): Change it to partial_die_info::fixup.
12662
12663 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12664
12665         * dwarf2read.c (read_partial_die): Update the declaration.
12666         (load_partial_dies): Caller update.
12667         (read_partial_die): Remove one argument abbrev_len.
12668
12669 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12670
12671         * dwarf2read.c (struct partial_die_info): Add ctor, delete
12672         assignment operator.
12673         (load_partial_dies): Use ctor and copy ctor.
12674         (read_partial_die): Update.
12675         (dwarf2_cu::find_partial_die): Use ctor.
12676
12677 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12678
12679         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
12680         (find_partial_die_in_comp_unit): Change it to
12681         dwarf2_cu::find_partial_die.
12682         (find_partial_die): Update.
12683
12684 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12685
12686         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
12687         is NULL.
12688
12689 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12690
12691         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
12692
12693 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
12694
12695         * arch/amd64.h: Use common/tdesc.h.
12696         * arch/i386.c: Likewise.
12697         * arch/i386.h: Likewise.
12698         * arch/tic6x.c: Likewise.
12699         * arch/tdesc.h: Move file from here...
12700         * common/tdesc.h: ...to here.
12701         * features/aarch64-core.c: Regenerate.
12702         * features/aarch64-fpu.c: Regenerate.
12703         * features/i386/32bit-avx.c: Regenerate.
12704         * features/i386/32bit-avx512.c: Regenerate.
12705         * features/i386/32bit-core.c: Regenerate.
12706         * features/i386/32bit-linux.c: Regenerate.
12707         * features/i386/32bit-mpx.c: Regenerate.
12708         * features/i386/32bit-pkeys.c: Regenerate.
12709         * features/i386/32bit-sse.c: Regenerate.
12710         * features/i386/64bit-avx.c: Regenerate.
12711         * features/i386/64bit-avx512.c: Regenerate.
12712         * features/i386/64bit-core.c: Regenerate.
12713         * features/i386/64bit-linux.c: Regenerate.
12714         * features/i386/64bit-mpx.c: Regenerate.
12715         * features/i386/64bit-pkeys.c: Regenerate.
12716         * features/i386/64bit-segments.c: Regenerate.
12717         * features/i386/64bit-sse.c: Regenerate.
12718         * features/i386/x32-core.c: Regenerate.
12719         * features/tic6x-c6xp.c: Regenerate.
12720         * features/tic6x-core.c: Regenerate.
12721         * features/tic6x-gp.c: Regenerate.
12722         * target-descriptions.c: Use common/tdesc.h.
12723         * target-descriptions.h: Likewise.
12724
12725 2018-02-24  Tom Tromey  <tom@tromey.com>
12726
12727         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
12728         (try_thread_db_load_from_dir, thread_db_load_search): Use
12729         std::string.
12730         (info_auto_load_libthread_db_compare): Return bool.  Change
12731         argument types.
12732         (info_auto_load_libthread_db): Use std::vector, std::string.
12733         Remove cleanups.
12734
12735 2018-02-24  Tom Tromey  <tom@tromey.com>
12736
12737         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
12738         std::string.
12739         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
12740         std::string*.
12741         * gdbarch.c: Rebuild.
12742         * gdbarch.h: Rebuild.
12743         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
12744         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
12745         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
12746         std::string*.
12747
12748 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
12749
12750         * gdbtypes.h (sect_offset): Change type to uint64_t.
12751         (sect_offset_str): New function.
12752         * dwarf2read.c (create_addrmap_from_aranges): Use
12753         sect_offset_str.
12754         (error_check_comp_unit_head): Likewise.
12755         (create_debug_type_hash_table): Likewise.
12756         (read_cutu_die_from_dwo): Likewise.
12757         (init_cutu_and_read_dies): Likewise.
12758         (init_cutu_and_read_dies_no_follow): Likewise.
12759         (process_psymtab_comp_unit_reader): Likewise.
12760         (partial_die_parent_scope): Likewise.
12761         (peek_die_abbrev): Likewise.
12762         (process_queue): Likewise.
12763         (dwarf2_physname): Likewise.
12764         (read_namespace_alias): Likewise.
12765         (read_import_statement): Likewise.
12766         (create_dwo_cu_reader): Likewise.
12767         (create_cus_hash_table): Likewise.
12768         (lookup_dwo_cutu): Likewise.
12769         (inherit_abstract_dies): Likewise.
12770         (read_func_scope): Likewise.
12771         (read_call_site_scope): Likewise.
12772         (dwarf2_add_member_fn): Likewise.
12773         (read_common_block): Likewise.
12774         (read_module_type): Likewise.
12775         (read_typedef): Likewise.
12776         (read_subrange_type): Likewise.
12777         (load_partial_dies): Likewise.
12778         (read_partial_die): Likewise.
12779         (find_partial_die): Likewise.
12780         (read_str_index): Likewise.
12781         (dwarf2_string_attr): Likewise.
12782         (build_error_marker_type): Likewise.
12783         (lookup_die_type): Likewise.
12784         (dump_die_shallow): Likewise.
12785         (follow_die_ref): Likewise.
12786         (dwarf2_fetch_die_loc_sect_off): Likewise.
12787         (dwarf2_fetch_constant_bytes): Likewise.
12788         (follow_die_sig): Likewise.
12789         (get_signatured_type): Likewise.
12790         (get_DW_AT_signature_type): Likewise.
12791         (dwarf2_find_containing_comp_unit): Likewise.
12792         (set_die_type): Likewise.
12793
12794 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
12795
12796         * arch/aarch64.c: Include "common-defs.h".
12797         * arch/amd64.c: Likewise.
12798         * arch/i386.c: Likewise.
12799
12800 2018-02-21  Tom Tromey  <tom@tromey.com>
12801
12802         * value.h: (extract_field_op): Update.
12803         * eval.c (extract_field_op): Return a const char *.
12804         * expression.h (parse_expression_for_completion): Update.
12805         * completer.c (complete_expression): Update.
12806         (add_struct_fields): Make fieldname const.
12807         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
12808         (mark_completion_tag, parse_exp_in_context_1): Update.
12809         (parse_expression_for_completion): Change "name" to
12810         unique_xmalloc_ptr*.
12811
12812 2018-02-21  Tom Tromey  <tom@tromey.com>
12813
12814         * infcall.c (call_function_by_hand_dummy): Use std::vector.
12815
12816 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12817
12818         * avr-tdep.c (avr_read_pc): Change parameter type to
12819         readable_regcache.
12820         * gdbarch.sh (read_pc): Likewise.
12821         * gdbarch.c: Re-generated.
12822         * gdbarch.h: Re-generated.
12823         * hppa-tdep.c (hppa_read_pc): Change parameter type to
12824         readable_regcache.
12825         * ia64-tdep.c (ia64_read_pc): Likewise.
12826         * mips-tdep.c (mips_read_pc): Likewise.
12827         * spu-tdep.c (spu_read_pc): Likewise.
12828
12829 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12830
12831         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
12832         * regcache-dump.c: New file.
12833         * regcache.c: Move register_dump to regcache-dump.c.
12834         (maintenance_print_registers): Likewise.
12835         (maintenance_print_raw_registers): Likewise.
12836         (maintenance_print_cooked_registers): Likewise.
12837         (maintenance_print_register_groups): Likewise.
12838         (maintenance_print_remote_registers): Likewise.
12839         (_initialize_regcache): Likewise.
12840         * regcache.h (register_dump): Moved from regcache.c.
12841
12842 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12843
12844         * regcache.c (regcache::regcache): Update.
12845         (regcache::invalidate): Move it to detached_regcache::invalidate.
12846         (get_thread_arch_aspace_regcache): Update.
12847         (regcache::raw_update): Update.
12848         (regcache::cooked_read): Remove some code.
12849         (regcache::cooked_read_value): Likewise.
12850         (regcache::raw_write): Remove assert on m_readonly_p.
12851         (regcache::raw_supply_integer): Move it to
12852         detached_regcache::raw_supply_integer.
12853         (regcache::raw_supply_zeroed): Likewise.
12854         * regcache.h (detached_regcache) <raw_supply_integer>: New
12855         declaration.
12856         <raw_supply_zeroed, invalidate>: Likewise.
12857         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
12858         <invalidate>: Likewise.
12859         <m_readonly_p>: Removed.
12860
12861 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12862
12863         * infcmd.c (get_return_value): Let stop_regs point to
12864         get_current_regcache.
12865         * regcache.c (regcache::regcache): Remove.
12866         (register_dump_reg_buffer): New class.
12867         (regcache_print): Adjust.
12868         * regcache.h (regcache): Remove constructors.
12869
12870 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12871
12872         * regcache.c (class register_dump): New class.
12873         (register_dump_regcache, register_dump_none): New class.
12874         (register_dump_remote, register_dump_groups): New class.
12875         (regcache_print): Update.
12876         * regcache.h (regcache_dump_what): Move it to regcache.c.
12877         (regcache) <dump>: Remove.
12878
12879 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12880
12881         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
12882          reg_buffer_rw *.
12883         (jit_unwind_reg_set_impl): Call raw_supply.
12884         (jit_frame_sniffer): Use reg_buffer_rw.
12885         * record-full.c (record_full_core_regbuf): Change its type.
12886         (record_full_core_open_1): Use reg_buffer_rw.
12887         (record_full_close): Likewise.
12888         (record_full_core_fetch_registers): Use regcache->raw_supply.
12889         (record_full_core_store_registers): Likewise.
12890         * regcache.c (regcache::get_register_status): Move it to
12891         reg_buffer.
12892         (regcache_raw_set_cached_value): Remove.
12893         (regcache::raw_set_cached_value): Remove.
12894         (regcache::raw_write): Call raw_supply.
12895         (regcache::raw_supply): Move it to reg_buffer_rw.
12896         * regcache.h (regcache_raw_set_cached_value): Remove.
12897         (reg_buffer_rw): New class.
12898
12899 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12900
12901         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
12902         readonly_detached_regcache.
12903         (dummy_frame_prev_register): Use regcache->cooked_read.
12904         * frame.c (frame_save_as_regcache): Change return type.
12905         (frame_pop): Update.
12906         * frame.h (frame_save_as_regcache): Update declaration.
12907         * inferior.h (get_infcall_suspend_state_regcache): Update
12908         declaration.
12909         * infrun.c (infcall_suspend_state) <registers>: use
12910         readonly_detached_regcache.
12911         (save_infcall_suspend_state): Don't use regcache_dup.
12912         (get_infcall_suspend_state_regcache): Change return type.
12913         * linux-fork.c (struct fork_info) <savedregs>: Change to
12914         readonly_detached_regcache.
12915         <pc>: New field.
12916         (fork_save_infrun_state): Don't use regcache_dup.
12917         (info_checkpoints_command): Adjust.
12918         * mi/mi-main.c (register_changed_p): Update declaration.
12919         (mi_cmd_data_list_changed_registers): Use
12920         readonly_detached_regcache.
12921         (register_changed_p): Change parameter type to
12922         readonly_detached_regcache.
12923         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
12924         readonly_detached_regcache.
12925         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
12926         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
12927         New.
12928         (regcache::save): Move it to reg_buffer.
12929         (regcache::restore): Change parameter type.
12930         (regcache_dup): Remove.
12931         * regcache.h (reg_buffer) <save>: New method.
12932         (readonly_detached_regcache): New class.
12933         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
12934         readonly_detached_regcache.
12935         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
12936
12937 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12938
12939         * frame.c (frame_save_as_regcache): Use regcache method save.
12940         (frame_pop): Use regcache method restore.
12941         * infrun.c (restore_infcall_suspend_state): Likewise.
12942         * linux-fork.c (fork_load_infrun_state): Likewise.
12943         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
12944         save.
12945         * regcache.c (regcache_save): Remove.
12946         (regcache::restore): More asserts.
12947         (regcache_cpy): Remove.
12948         * regcache.h (regcache_save): Remove the declaration.
12949         (regcache::restore): Move from private to public.
12950         Remove the friend declaration of regcache_cpy.
12951         (regcache_cpy): Remove declaration.
12952
12953 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12954
12955         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
12956         parameter type to 'readable_regcache *'.
12957         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12958         * arm-tdep.c (arm_neon_quad_read): Likewise.
12959         (arm_pseudo_read): Likewise.
12960         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12961         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12962         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12963         * gdbarch.c: Re-generated.
12964         * gdbarch.h: Re-generated.
12965         * gdbarch.sh (pseudo_register_read): Change parameter type to
12966         'readable_regcache *'.
12967         (pseudo_register_read_value): Likewise.
12968         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
12969         (h8300_pseudo_register_read): Likewise.
12970         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
12971         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12972         (i386_pseudo_register_read_into_value): Likewise.
12973         (i386_pseudo_register_read_value): Likewise.
12974         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
12975         declaration.
12976         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
12977         * m32c-tdep.c (m32c_raw_read): Likewise.
12978         (m32c_read_flg): Likewise.
12979         (m32c_banked_register): Likewise.
12980         (m32c_banked_read): Likewise.
12981         (m32c_sb_read): Likewise.
12982         (m32c_part_read): Likewise.
12983         (m32c_cat_read): Likewise.
12984         (m32c_r3r2r1r0_read): Likewise.
12985         (m32c_pseudo_register_read): Likewise.
12986         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12987         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12988         (mep_pseudo_cr64_read): Likewise.
12989         (mep_pseudo_register_read): Likewise.
12990         * mips-tdep.c (mips_pseudo_register_read): Likewise.
12991         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12992         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12993         * regcache.c (regcache::raw_read): Move it to readable_regcache.
12994         (regcache::cooked_read): Likewise.
12995         (regcache::cooked_read_value): Likewise.
12996         (regcache_cooked_read_signed):
12997         (regcache::cooked_read): Likewise.
12998         * regcache.h (readable_regcache): New class.
12999         (regcache): Inherit readable_regcache.  Move some methods to
13000         readable_regcache.
13001         * rl78-tdep.c (rl78_pseudo_register_read): Change
13002         parameter type to 'readable_regcache *'.
13003         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13004         (e500_pseudo_register_read): Change parameter type to
13005         'readable_regcache *'.
13006         (dfp_pseudo_register_read): Likewise.
13007         (vsx_pseudo_register_read): Likewise.
13008         (efpr_pseudo_register_read): Likewise.
13009         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13010         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13011         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13012         (sh64_pseudo_register_read): Likewise.
13013         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13014         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13015         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13016         (spu_pseudo_register_read): Likewise.
13017         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13018         (xtensa_pseudo_register_read): Likewise.
13019
13020 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13021
13022         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13023         (regcache::arch): Move it to reg_buffer::arch.
13024         (regcache::register_buffer): Likewise.
13025         (regcache::assert_regnum): Likewise.
13026         (regcache::num_raw_registers): Likewise.
13027         * regcache.h (reg_buffer): New class.
13028         (regcache): Inherit reg_buffer.
13029
13030 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13031
13032         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13033         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13034
13035 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13036
13037         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13038
13039 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13040
13041         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13042         (SFILES): Remove common/*.c files.
13043         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13044         * common/common.host: Add common reference.
13045         * configure.ac: Likewise.
13046         * configure: Regenerate.
13047
13048 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13049
13050         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13051         (block_initialize_namespace): Use new.
13052         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13053         (dwarf2_free_objfile): Use delete.
13054         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13055         (copy_type_recursive): Use new.
13056         * gdb_obstack.h (allocate_on_obstack): New.
13057
13058 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13059
13060         PR gdb/22849
13061         * inferior.c (exit_inferior_1): Reset inf->control.
13062
13063 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13064
13065         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13066         declaration.
13067
13068 2018-02-14  Pedro Alves  <palves@redhat.com>
13069
13070         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13071         frame_cleanup_after_sniffer on exception.
13072
13073 2018-02-14  Tom Tromey  <tom@tromey.com>
13074
13075         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13076         const.
13077         (solib_bfd_open): Make pathname const.
13078         * solib.c (solib_bfd_open): Make pathname const.
13079         * solib-spu.c (spu_bfd_fopen): Make name const.
13080         (spu_bfd_open): Make pathname const.
13081         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13082         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13083
13084 2018-02-14  Tom Tromey  <tom@tromey.com>
13085
13086         * symfile.c (symfile_bfd_open): Update.
13087         * source.h (openp, source_full_path_of, find_and_open_source):
13088         Change argument type to unique_xmalloc_ptr.
13089         * source.c (openp): Take a unique_xmalloc_ptr.
13090         (source_full_path_of, find_and_open_source): Likewise.
13091         (open_source_file, symtab_to_fullname): Update.
13092         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13093         unique_xmalloc_ptr.
13094         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13095         (exec_file_find): Update.
13096         * psymtab.c (psymtab_to_fullname): Update.
13097         * nto-tdep.h (nto_find_and_open_solib): Update.
13098         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13099         unique_xmalloc_ptr.
13100         * exec.c (exec_file_attach): Update.
13101         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13102         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13103
13104 2018-02-14  Tom Tromey  <tom@tromey.com>
13105
13106         * solib.c: Include source.h.
13107         * nto-tdep.c: Include source.h.
13108         * mi/mi-cmd-env.c: Include source.h.
13109         * infcmd.c: Include source.h.
13110         * exec.c: Include source.h.
13111         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13112         (add_path, directory_switch, source_path, init_source_path): Move
13113         declarations...
13114         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13115         (add_path, directory_switch, source_path, init_source_path):
13116         ...here.
13117
13118 2018-02-14  Tom Tromey  <tom@tromey.com>
13119
13120         * solist.h (exec_file_find, solib_find): Return
13121         unique_xmalloc_ptr.
13122         (solib_bfd_fopen): Take a const char *.
13123         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13124         (exec_file_find, solib_find): Likewise.
13125         (solib_bfd_fopen): Do not take ownership of "pathname".
13126         (solib_bfd_open): Use unique_xmalloc_ptr.
13127         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13128         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13129         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13130         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13131
13132 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13133
13134         * ada-lang.c (name_match_type_from_name): Remove reference to
13135         ada_name_for_lookup in function's documentation.
13136         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13137
13138 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13139
13140         * defs.h (enum openp_flags): New enum.
13141         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13142         Move to enum openp_flags.
13143         (openp_flags): New enum flags.
13144         (openp): Change parameter type to openp_flags.
13145         * source.c (openp): Change parameter type to openp_flags.
13146         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13147         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13148
13149 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13150
13151         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13152         per-command.
13153
13154 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13155
13156         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13157         into...
13158         (class dwarf2_queue_guard): ...the destructor of this new class.
13159         (dw2_do_instantiate_symtab): Create instance of the new class
13160         dwarf2_queue_guard, remove cleanup.
13161
13162 2018-02-09  Tom Tromey  <tom@tromey.com>
13163
13164         * source.c (find_source_lines): Don't reference past the end of
13165         the vector.
13166
13167 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13168
13169         * remote.c (remote_btrace_maybe_reopen): Change error message.
13170         * btrace.c (btrace_enable): Likewise.
13171         (parse_xml_btrace): Likewise.
13172         (parse_xml_btrace_conf): Likewise.
13173
13174 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13175
13176         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13177         (linux_enable_pt, linux_enable_bts): Call
13178         diagnose_perf_event_open_fail.
13179
13180 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13181
13182         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13183         Remove parameter and change return type.  Update callers.  Move it.
13184         (linux_enable_bts, linux_enable_pt): Improve error message.
13185         (linux_enable_pt): Remove zero buffer size check.
13186         (linux_enable_btrace): Improve error messages.  Remove NULL return
13187         check.
13188
13189 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13190
13191         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13192         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13193         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13194         (linux_supports_pt, linux_supports_btrace): Remove.
13195         (linux_enable_bts): Call cpu_supports_bts.
13196         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13197         * remote.c (remote_supports_btrace): Remove.
13198         (init_remote_ops): Remove remote_supports_btrace.
13199         * target-delegates.c: Regenerated.
13200         * target.c (target_supports_btrace): Remove.
13201         * target.h (target_ops) <to_supports_btrace>: Remove
13202         (target_supports_btrace): Remove.
13203         * x86-linux-nat.c (x86_linux_create_target): Remove
13204         linux_supports_btrace.
13205
13206 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13207
13208         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13209         btrace failed.
13210         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13211         exception and use message in own exception.
13212
13213 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13214
13215         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13216         (perf_event_pt_event_type): Use gdb_file_up.
13217         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13218         scoped_fd, and scoped_mmap.
13219
13220 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13221
13222         * common/scoped_mmap.h: New.
13223         * unittests/scoped_mmap-selftest.c: New.
13224         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13225         unittests/scoped_mmap-selftest.c.
13226
13227 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13228
13229         * common/scoped_fd.h: New.
13230         * unittests/scoped_fd-selftest.c: New.
13231         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13232         unittests/scoped_fd-selftest.c.
13233
13234 2018-02-09  Tom Tromey  <tom@tromey.com>
13235
13236         * auto-load.c (auto_load_section_scripts): Use
13237         gdb::unique_xmalloc_ptr.
13238
13239 2018-02-09  Tom Tromey  <tom@tromey.com>
13240
13241         * auto-load.c (execute_script_contents): Use std::string.
13242
13243 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13244
13245         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13246         Python function, rather than a new command.
13247
13248 2018-02-08  Tom Tromey  <tom@tromey.com>
13249
13250         * solib.c (solib_find_1): Use std::string.
13251         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13252
13253 2018-02-08  Tom Tromey  <tom@tromey.com>
13254
13255         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13256
13257 2018-02-08  Tom Tromey  <tom@tromey.com>
13258
13259         * source.c (find_source_lines): Use gdb::def_vector.
13260
13261 2018-02-08  Tom Tromey  <tom@tromey.com>
13262
13263         * macrocmd.c (struct temporary_macro_definition): New.
13264         (macro_define_command): Use temporary_macro_definition.  Remove
13265         cleanups.
13266         (free_macro_definition_ptr): Remove.
13267
13268 2018-02-08  Tom Tromey  <tom@tromey.com>
13269
13270         * macroexp.c (maybe_expand): Use std::string.
13271
13272 2018-02-08  Tom Tromey  <tom@tromey.com>
13273
13274         * macroexp.c (struct macro_buffer): Add initializers for some
13275         members.
13276         (init_buffer, init_shared_buffer, free_buffer)
13277         (free_buffer_return_text): Remove.
13278         (macro_buffer): New constructors.
13279         (~macro_buffer): New destructor.
13280         (macro_buffer::set_shared): New method.
13281         (macro_buffer::resize_buffer, macro_buffer::appendc)
13282         (macro_buffer::appendmem): Now methods, not free functions.
13283         (set_token, append_tokens_without_splicing, stringify)
13284         (macro_stringify): Update.
13285         (gather_arguments): Change return type.  Remove argc_p argument,
13286         add args_ptr argument.  Use std::vector.
13287         (substitute_args): Remove argc argument.  Accept std::vector.
13288         (expand): Update.  Use std::vector.
13289         (scan, macro_expand, macro_expand_next): Update.
13290
13291 2018-02-08  Tom Tromey  <tom@tromey.com>
13292
13293         * symtab.c (default_collect_symbol_completion_matches_break_on):
13294         Use unique_xmalloc_ptr.
13295         * macroscope.h: (sal_macro_scope, user_macro_scope)
13296         (default_macro_scope): Return unique_xmalloc_ptr.
13297         * macroscope.c (sal_macro_scope, user_macro_scope)
13298         (default_macro_scope): Return unique_xmalloc_ptr.
13299         * macroexp.h (macro_expand, macro_expand_once): Return
13300         unique_xmalloc_ptr.
13301         * macroexp.c (macro_expand, macro_expand_once): Return
13302         unique_xmalloc_ptr.
13303         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13304         (info_macro_command, info_macros_command): Use
13305         unique_xmalloc_ptr.
13306         * compile/compile-c-support.c (write_macro_definitions): Use
13307         unique_xmalloc_ptr.
13308         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13309
13310 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13311
13312         * value.c (value_static_field): Assign field type instead of
13313         containing type when returning an optimized out value.
13314
13315 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13316
13317         * ft32-tdep.c (ft32_read_pc): Remove.
13318         (ft32_write_pc): Remove.
13319         (ft32_gdbarch_init): Update.
13320         * m32r-tdep.c (m32r_read_pc): Remove.
13321         (m32r_gdbarch_init): Update.
13322         * mep-tdep.c (mep_read_pc): Remove.
13323         (mep_gdbarch_init): Update.
13324         * microblaze-tdep.c (microblaze_write_pc): Remove.
13325         (microblaze_gdbarch_init): Update.
13326         * mn10300-tdep.c (mn10300_read_pc): Remove.
13327         (mn10300_write_pc): Remove.
13328         (mn10300_gdbarch_init): Update.
13329         * moxie-tdep.c (moxie_read_pc): Remove.
13330         (moxie_write_pc): Remove.
13331         (moxie_gdbarch_init): Update.
13332
13333 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13334
13335         * expprint.c (print_subexp_standard): Handle
13336         OP_F77_UNDETERMINED_ARGLIST.
13337         (dump_subexp_body_standard): Likewise.
13338
13339 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13340
13341         * target-descriptions.c (tdesc_element_visitor) Add empty
13342         implementations.
13343         (tdesc_type): Move make_gdb_type from here.
13344         (tdesc_type_builtin): Likewise.
13345         (tdesc_type_vector): Likewise.
13346         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13347         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13348         (make_gdb_type_union): Likewise.
13349         (make_gdb_type_flags): Likewise.
13350         (make_gdb_type_enum): Likewise.
13351         (make_gdb_type): New function.
13352         (tdesc_register_type): Use static make_gdb_type.
13353
13354 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13355
13356         * infcmd.c (default_print_one_register_info): Align natural-format
13357         column values consistently one under another.
13358         (pad_to_column): New function.
13359
13360 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13361
13362         * dwarf2read.c (dwarf2_physname): Move commment.
13363
13364 2018-02-01  Leszek Swirski  <leszeks@google.com>
13365
13366         * varobj.c (varobj_formatted_print_options): Allow recursive
13367         pretty printing if pretty printing is enabled.
13368
13369 2018-02-01  Leszek Swirski  <leszeks@google.com>
13370
13371         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13372         names after a structop as a filename.
13373
13374 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13375
13376         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13377         (arm_record_coproc_data_proc): Likewise.
13378
13379 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13380
13381         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13382
13383 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13384
13385         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13386         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13387
13388 2018-01-31  Pedro Alves  <palves@redhat.com>
13389
13390         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13391         * inflow.c (child_terminal_save_inferior): Wrap reference to
13392         tcgetpgrp in HAVE_TERMIOS_H.
13393         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13394         _WIN32.
13395         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13396         always iterate over all inferiors.
13397         (gdbsim_cntrl_c): Adjust.
13398         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13399
13400 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13401
13402         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13403         index type is objfile-owned if the element type is as well.
13404
13405 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13406
13407         GDB 8.1 released.
13408
13409 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13410
13411         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13412         "features/s390x-linux64.c".
13413         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13414         s390_linux32 and s390x_linux64.
13415         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13416         default tdesc.
13417         * s390-tdep.c: Include "features/s390-linux32.c" and
13418         "features/s390x-linux64.c".
13419         (s390_tdesc_valid): Add check for tdesc_has_registers.
13420         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13421         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13422         tdesc_s390x_linux64.
13423         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13424         tdesc_s390x_linux64 to...
13425         * s390-tdep.h: ...here.
13426
13427 2018-01-30  Pedro Alves  <palves@redhat.com>
13428
13429         PR gdb/13211
13430         * config.in, configure: Regenerate.
13431         * configure.ac: Check for getpgid.
13432         * go32-nat.c (go32_pass_ctrlc): New.
13433         (go32_target): Install it.
13434         * inf-child.c (inf_child_target): Install
13435         child_terminal_save_inferior, child_pass_ctrlc and
13436         child_interrupt.
13437         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13438         (inf_ptrace_target): No longer install it.
13439         * infcmd.c (interrupt_target_1): Adjust.
13440         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13441         (child_interrupt): Declare.
13442         (inferior::terminal_state): New.
13443         * inflow.c (struct terminal_info): Update comments.
13444         (inferior_process_group): Delete.
13445         (terminal_is_ours): Delete.
13446         (gdb_tty_state): New.
13447         (child_terminal_init): Adjust.
13448         (is_gdb_terminal, sharing_input_terminal_1)
13449         (sharing_input_terminal): New functions.
13450         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13451         Set the process's actual process group in the foreground if
13452         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13453         mark terminal as the inferior's if not sharing GDB's terminal.
13454         Don't check attach_flag.
13455         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13456         pass down a target_terminal_state.
13457         (child_terminal_save_inferior): New, factored out from ...
13458         (child_terminal_ours_1): ... this.  Handle
13459         target_terminal_state::is_ours_for_output.
13460         (child_interrupt, child_pass_ctrlc): New.
13461         (inflow_inferior_exit): Clear the inferior's terminal_state.
13462         (copy_terminal_info): Copy the inferior's terminal state.
13463         (_initialize_inflow): Remove reference to terminal_is_ours.
13464         * inflow.h (inferior_process_group): Delete.
13465         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13466         * procfs.c (procfs_target): Don't install procfs_interrupt.
13467         (procfs_interrupt): Delete.
13468         * remote.c (remote_serial_quit_handler): Adjust.
13469         (remote_interrupt): Remove ptid parameter.  Adjust.
13470         * target-delegates.c: Regenerate.
13471         * target.c: Include "terminal.h".
13472         (target_terminal::terminal_state): Rename to ...
13473         (target_terminal::m_terminal_state): ... this.
13474         (target_terminal::init): Adjust.
13475         (target_terminal::inferior): Adjust to per-inferior
13476         terminal_state.
13477         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13478         (target_terminal::ours, target_terminal::ours_for_output): Use
13479         target_terminal_is_ours_kind.
13480         (target_interrupt): Remove ptid parameter.  Adjust.
13481         (default_target_pass_ctrlc): Adjust.
13482         * target.h (target_ops::to_terminal_save_inferior): New field.
13483         (target_ops::to_interrupt): Remove ptid_t parameter.
13484         (target_interrupt): Remove ptid_t parameter.  Update comment.
13485         (target_pass_ctrlc): Update comment.
13486         * target/target.h (target_terminal_state): New scoped enum,
13487         factored out of ...
13488         (target_terminal::terminal_state): ... here.
13489         (target_terminal::inferior): Update comments.
13490         (target_terminal::restore_inferior): New.
13491         (target_terminal::is_inferior, target_terminal::is_ours)
13492         (target_terminal::is_ours_for_output): Adjust.
13493         (target_terminal::scoped_restore_terminal_state): Adjust to
13494         rename, and call restore_inferior() instead of inferior().
13495         (target_terminal::scoped_restore_terminal_state::m_state): Change
13496         type.
13497         (target_terminal::terminal_state): Rename to ...
13498         (target_terminal::m_terminal_state): ... this and change type.
13499
13500 2018-01-30  Pedro Alves  <palves@redhat.com>
13501
13502         * linux-nat.c (wait_for_signal): New function.
13503         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13504         directly.
13505         (async_terminal_is_ours)
13506         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13507         (linux_nat_add_target): Don't override
13508         to_terminal_inferior/to_terminal_ours.
13509
13510 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13511
13512         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13513
13514 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13515
13516         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13517         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13518         dwarf2_per_objfile_free here.
13519         (dwarf2_per_objfile_free): Remove.
13520         (_initialize_dwarf2_read): Don't register
13521         dwarf2_per_objfile_free as a registry cleanup.
13522
13523 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13524
13525         Avoid compilation errors in MinGW native builds
13526
13527         The error is triggered by including python-internal.h, and the
13528         error message is:
13529
13530              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13531                       from build-gnulib/import/math.h:27,
13532                       from d:/usr/Python26/include/pyport.h:235,
13533                       from d:/usr/Python26/include/Python.h:58,
13534                       from python/python-internal.h:94,
13535                       from python/py-arch.c:24:
13536              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13537         using ::hypot;
13538                 ^~~~~
13539
13540         This happens because Python headers define 'hypot' to expand t
13541         '_hypot' in the Windows builds.
13542         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13543         'hypoth'.  This avoids a compilation error.
13544
13545 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13546
13547         * MAINTAINERS (Write After Approval): Fix ordering.
13548
13549 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13550
13551         * MAINTAINERS (Write After Approval): Add Alan Hayward.
13552
13553 2018-01-26  Alan Modra  <amodra@gmail.com>
13554
13555         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
13556         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
13557         Remove nop.  Make const.  Comment.
13558         (powerpc32_plt_stub_so_2): New.
13559         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
13560         Correct count.  Update uses.
13561         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
13562         Move common code reading PLT entry word.  Correct
13563         powerpc32_plt_stub PLT address calculation.
13564         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
13565         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
13566         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
13567         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
13568         (ppc64_standard_linkage8): Likewise.
13569         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
13570         Correct insns description.
13571         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
13572
13573 2018-01-24  Pedro Alves  <palves@redhat.com>
13574
13575         GCC PR libstdc++/83906
13576         * gdbtypes.c (operator==(const dynamic_prop &,
13577         const dynamic_prop &)): New.
13578         (operator==(const range_bounds &, const range_bounds &)): New.
13579         (check_types_equal): Use them instead of memcmp.
13580         * gdbtypes.h (operator==(const dynamic_prop &,
13581         const dynamic_prop &)): Declare.
13582         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
13583         (operator==(const range_bounds &, const range_bounds &)): Declare.
13584         (operator!=(const range_bounds &, const range_bounds &)): Declare.
13585
13586 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13587
13588         * s390-linux-tdep.c (s390_record_address_mask)
13589         (s390_record_calc_disp_common, s390_record_calc_disp)
13590         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13591         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13592         (s390_process_record): Move to s390-tdep.c.
13593         (s390_linux_init_abi_any): Adjust.
13594         * s390-tdep.c (s390_record_address_mask)
13595         (s390_record_calc_disp_common, s390_record_calc_disp)
13596         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13597         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13598         (s390_process_record): Moved from s390-linux-tdep.c
13599         (s390_gdbarch_init): Adjust.
13600
13601 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13602
13603         * s390-linux-nat.c (s390-tdep.h): New include.
13604         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
13605         (HFILES_NO_SRCDIR): Add s390-tdep.h.
13606         (ALLDEPFILES): Add s390-tdep.c.
13607         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
13608         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
13609         * s390-tdep.h: ...this.  New file.
13610         * s390-linux-tdep.c (s390-tdep.h): New include.
13611         (_initialize_s390_tdep): Rename to...
13612         (_initialize_s390_linux_tdep): ...this and adjust.
13613         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
13614         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
13615         s390-tdep.h.
13616         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
13617         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
13618         (s390_is_partial_instruction, s390_software_single_step)
13619         (is_non_branch_ril, s390_displaced_step_copy_insn)
13620         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
13621         (s390_prologue_data, s390_addr, s390_store, s390_load)
13622         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
13623         (s390_register_call_saved, s390_guess_tracepoint_registers)
13624         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
13625         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
13626         (s390_pseudo_register_name, s390_pseudo_register_type)
13627         (s390_pseudo_register_read, s390_pseudo_register_write)
13628         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
13629         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
13630         (s390_addr_bits_remove, s390_address_class_type_flags)
13631         (s390_address_class_type_flags_to_name)
13632         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
13633         (s390_function_arg_float, s390_function_arg_vector)
13634         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
13635         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
13636         (s390_frame_align, s390_register_return_value, s390_return_value)
13637         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
13638         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
13639         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
13640         (s390_trad_frame_prev_register, s390_unwind_cache)
13641         (s390_prologue_frame_unwind_cache)
13642         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
13643         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
13644         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
13645         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
13646         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
13647         (s390_frame_base_address, s390_local_base_address)
13648         (s390_frame_base, s390_gcc_target_options)
13649         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
13650         (s390_validate_reg_range, s390_tdesc_valid)
13651         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
13652         * s390-tdep.c: ...this.  New file.
13653
13654 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13655
13656         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
13657         (s390_process_record, s390_gdbarch_tdep_alloc)
13658         (s390_linux_init_abi_any): Use/set new hook.
13659
13660 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13661
13662         * s390-linux-tdep.c (osabi.h): New include.
13663         (s390_linux_init_abi_31, s390_linux_init_abi_64)
13664         (s390_linux_init_abi_any): New functions.
13665         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
13666
13667 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13668
13669         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
13670         tdesc_has_registers check
13671
13672 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13673
13674         * s390-linux-tdep.c (s390_tdesc_valid): New function.
13675         (s390_validate_reg_range): New macro.
13676         (s390_gdbarch_init): Adjust.
13677
13678 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13679
13680         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
13681         (s390_gdbarch_tdep_alloc): Adjust.
13682         (s390_gdbarch_init): Adjust.
13683
13684 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13685
13686         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
13687         <have_tdb>: Change type to bool.
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 (s390_abi_kind) <ABI_NONE>: New default field.
13694         (gdbarch_tdep) <have_upper, have_vx>: New fields.
13695         (s390_gdbarch_tdep_alloc): New function.
13696         (s390_gdbarch_init): Allocate tdep at start and use its fields
13697         instead of separate variables.
13698
13699 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13700
13701         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
13702         when looking for cached gdbarch and add comment for remaining.
13703
13704 2018-01-22  Pedro Alves  <palves@redhat.com>
13705             Sergio Durigan Junior  <sergiodj@redhat.com>
13706
13707         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
13708         case.
13709
13710 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
13711
13712         * MAINTAINERS: Update my company e-mail address.
13713
13714 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13715
13716         * regcache.c (cooked_write_test): New function.
13717         (_initialize_regcache): Register the test.
13718
13719 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13720
13721         * ia64-tdep.c (ia64_pseudo_register_read): Call
13722         regcache->cooked_read instead of regcache_cooked_read_unsigned.
13723         * m32c-tdep.c (m32c_cat_read): Likewise.
13724         (m32c_r3r2r1r0_read): Likewise.
13725         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13726         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13727
13728 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13729
13730         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
13731         method raw_read instead of regcache_raw_read.
13732         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13733         * arm-tdep.c (arm_neon_quad_read): Likewise.
13734         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13735         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13736         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13737         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
13738         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13739         (i386_pseudo_register_read_into_value): Likewise.
13740         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13741         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13742         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13743         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
13744         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
13745         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
13746         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13747         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
13748         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
13749
13750 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13751
13752         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
13753         * configure.tgt: Remove target mt.
13754         * mt-tdep.c: Remove.
13755         * regcache.c (cooked_read_test): Remove the check for mt.
13756
13757 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13758
13759         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
13760         instead of gdbarch_pseudo_register_read_value.
13761
13762 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13763
13764         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
13765         language is Ada.
13766
13767 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13768
13769         * linespec.c (create_sals_line_offset): Remove code that preserved
13770         the symtab_and_line's line number.
13771
13772 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13773
13774         * varobj.c (varobj_create): Don't set valid_block when creating a
13775         floating varobj.
13776
13777 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13778
13779         * varobj.c (varobj_create): Remove out of date comment.
13780
13781 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13782
13783         PR mi/20395
13784         * ada-exp.y (write_var_from_sym): Pass extra parameter when
13785         updating innermost block.
13786         * parse.c (innermost_block_tracker::update): Take extra type
13787         parameter, and check types match before updating innermost block.
13788         (write_dollar_variable): Update innermost block for registers.
13789         * parser-defs.h (enum innermost_block_tracker_type): New enum.
13790         (innermost_block_tracker::innermost_block_tracker): Initialise
13791         m_types member.
13792         (innermost_block_tracker::reset): Take type parameter.
13793         (innermost_block_tracker::update): Take type parameter, and pass
13794         type through as needed.
13795         (innermost_block_tracker::m_types): New member.
13796         * varobj.c (varobj_create): Pass type when reseting innermost
13797         block.
13798
13799 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13800
13801         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
13802         * ada-lang.c (resolve_subexp): Likewise.
13803         * breakpoint.c (set_breakpoint_condition) Likewise.
13804         (watch_command_1) Likewise.
13805         * c-exp.y (variable): Likewise.
13806         * d-exp.y (PrimaryExpression): Likewise.
13807         * f-exp.y (variable): Likewise.
13808         * go-exp.y (variable): Likewise.
13809         * m2-exp.y (variable): Likewise.
13810         * objfiles.c (objfile::~objfile): Likewise.
13811         * p-exp.y (variable): Likewise.
13812         * parse.c (innermost_block): Change type.
13813         * parser-defs.h (class innermost_block_tracker): New.
13814         (innermost_block): Change to innermost_block_tracker.
13815         * printcmd.c (display_command): Switch to innermost_block API.
13816         (do_one_display): Likewise.
13817         * rust-exp.y (do_one_display): Likewise.
13818         * symfile.c (clear_symtab_users): Likewise.
13819         * varobj.c (varobj_create): Switch to innermost_block API, replace
13820         use of innermost_block with block stored on varobj object.
13821
13822 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13823
13824         * expression.h (innermost_block): Remove declaration.
13825         * varobj.c: Add 'parser-defs.h' include.
13826
13827 2018-01-19  Tom Tromey  <tom@tromey.com>
13828
13829         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
13830         symbols in the static and global blocks.
13831
13832 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
13833
13834         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
13835         gdb_ptrace.h, and move including gdb_wait.h ...
13836         * nat/linux-ptrace.h: ... to here.
13837
13838 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13839
13840         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
13841         inf_ptrace_detach_success.
13842         (inf_ptrace_detach_success): Add inferior parameter, use it
13843         instead of inferior_ptid, pass it to detach_inferior.
13844         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
13845         parameter.
13846         * inferior.c (detach_inferior): Add overload that takes an
13847         inferior object.
13848         * inferior.h (detach_inferior): Likewise.
13849         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
13850         use inferior_ptid, adjust call to inf_ptrace_detach_success.
13851         * linux-thread-db.c (thread_db_detach): Use inf parameter.
13852
13853 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13854
13855         * target.h (struct target_ops) <to_detach>: Add inferior
13856         parameter.
13857         (target_detach): Likewise.
13858         * target.c (dispose_inferior): Pass inferior down.
13859         (target_detach): Pass inferior down.  Assert that it is equal to
13860         the current inferior.
13861         * aix-thread.c (aix_thread_detach): Pass inferior down.
13862         * corefile.c (core_file_command): Pass current_inferior() down.
13863         * corelow.c (core_detach): Add inferior parameter.
13864         * darwin-nat.c (darwin_detach): Likewise.
13865         * gnu-nat.c (gnu_detach): Likewise.
13866         * inf-ptrace.c (inf_ptrace_detach): Likewise.
13867         * infcmd.c (detach_command): Pass current_inferior() down to
13868         target_detach.
13869         * infrun.c (follow_fork_inferior): Pass parent_inf to
13870         target_detach.
13871         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
13872         target_detach.
13873         * linux-nat.c (linux_nat_detach): Add inferior parameter.
13874         * linux-thread-db.c (thread_db_detach): Likewise.
13875         * nto-procfs.c (procfs_detach): Likewise.
13876         * procfs.c (procfs_detach): Likewise.
13877         * record.c (record_detach): Likewise.
13878         * record.h (struct inferior): Forward-declare.
13879         (record_detach): Add inferior parameter.
13880         * remote-sim.c (gdbsim_detach): Likewise.
13881         * remote.c (remote_detach_1): Likewise.
13882         (remote_detach): Likewise.
13883         (extended_remote_detach): Likewise.
13884         * sol-thread.c (sol_thread_detach): Likewise.
13885         * target-debug.h (target_debug_print_inferior_p): New macro.
13886         * target-delegates.c: Re-generate.
13887         * top.c (kill_or_detach): Pass inferior down to target_detach.
13888         * windows-nat.c (windows_detach): Add inferior parameter.
13889
13890 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13891
13892         * target.h (struct target_ops) <to_detach>: Remove args
13893         parameter.
13894         (target_detach): Likewise.
13895         * target.c (dispose_inferior): Adjust.
13896         (target_detach): Remove args parameter, adjust.
13897         * aix-thread.c (aix_thread_detach): Adjust.
13898         * corefile.c (core_file_command): Adjust.
13899         * corelow.c (core_detach): Adjust.
13900         * darwin-nat.c (darwin_detach): Adjust.
13901         * gnu-nat.c (gnu_detach): Adjust.
13902         * inf-ptrace.c (inf_ptrace_detach): Adjust.
13903         * infcmd.c (detach_command): Adjust
13904         * infrun.c (follow_fork_inferior): Adjust.
13905         (handle_vfork_child_exec_or_exit): Adjust.
13906         * linux-fork.c (linux_fork_detach): Remove args parameter.
13907         * linux-fork.h (linux_fork_detach): Likewise.
13908         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
13909         * linux-thread-db.c (thread_db_detach): Likewise.
13910         * nto-procfs.c (procfs_detach): Likewise.
13911         * procfs.c (procfs_detach): Likewise.
13912         (do_detach): Remove signo parameter.
13913         * record.c (record_detach): Remove args parameter.
13914         * record.h (record_detach): Likewise.
13915         * remote-sim.c (gdbsim_detach): Likewise.
13916         * remote.c (remote_detach_1): Likewise.
13917         (remote_detach): Likewise.
13918         (extended_remote_detach): Likewise.
13919         * sol-thread.c (sol_thread_detach): Likewise.
13920         * target-delegates.c: Re-generate.
13921         * top.c (struct qt_args) <args>: Remove field.
13922         (kill_or_detach): Don't pass args.
13923         (quit_force): Don't set args.
13924         * windows-nat.c (windows_detach): Remove args parameter.
13925
13926 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13927
13928         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
13929         (arm_linux_init_abi): Install it.
13930
13931 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13932
13933         * osabi.c (gdb_osabi_names): Extend the regexp for
13934         arm-linux-gnueabihf.
13935
13936 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13937
13938         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
13939         m_abbrevs.
13940         (abbrev_table::add_abbrev): Update.
13941         (abbrev_table::lookup_abbrev): Update.
13942
13943 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13944
13945         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
13946
13947 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
13948
13949         * compile/compile.c (compile_to_object): Convert "triplet_rx"
13950         to "std::string".
13951
13952 2018-01-17  Tom Tromey  <tom@tromey.com>
13953
13954         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
13955
13956 2018-01-17  Tom Tromey  <tom@tromey.com>
13957
13958         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
13959         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
13960         (create_array_type_with_stride): Update.
13961         * dwarf2read.c (set_die_type): Update.
13962
13963 2018-01-17  Tom Tromey  <tom@tromey.com>
13964
13965         * dwarf2read.c (delayed_method_info): Remove typedef.
13966         (dwarf2_cu::method_info): Now a std::vector.
13967         (add_to_method_list): Update.
13968         (free_delayed_list): Remove.
13969         (compute_delayed_physnames): Update.
13970         (process_full_comp_unit, process_full_type_unit): Clear the method
13971         list.  Remove cleanups.
13972         (psymtab_include_file_name): Add name_holder parameter.  Use
13973         unique_xmalloc_ptr.
13974         (dwarf_decode_lines): Update.
13975
13976 2018-01-17  Tom Tromey  <tom@tromey.com>
13977             Simon Marchi  <simon.marchi@ericsson.com>
13978
13979         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
13980         (dwarf2_per_objfile::free_cached_comp_units)
13981         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13982         (init_cutu_and_read_dies_no_follow): Update.
13983         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
13984         (dwarf2_cu::~dwarf2_cu): New.
13985         (free_heap_comp_unit, free_stack_comp_unit): Remove.
13986         (age_cached_comp_units, free_one_cached_comp_unit): Update.
13987
13988 2018-01-17  Tom Tromey  <tom@tromey.com>
13989             Simon Marchi  <simon.marchi@ericsson.com>
13990
13991         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
13992         (struct die_reader_specs) <abbrev_table>: New member.
13993         (struct abbrev_table): Add constructor.
13994         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
13995         <abbrev_obstack>: Now an auto_obstack.
13996         (abbrev_table_up): New typedef.
13997         (init_cu_die_reader): Add abbrev_table parameter.
13998         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
13999         Add result_dwo_abbrev_table.
14000         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14001         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14002         Update.
14003         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14004         parameter.
14005         (skip_children): Update.
14006         (abbrev_table::alloc_abbrev): Rename from
14007         abbrev_table_alloc_abbrev.
14008         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14009         (abbrev_table::lookup_abbrev): Rename from
14010         abbrev_table_lookup_abbrev.
14011         (abbrev_table_read_table): Return abbrev_table_up.
14012         (abbrev_table_free, abbrev_table_free_cleanup)
14013         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14014         (load_partial_dies): Update.
14015
14016 2018-01-17  Tom Tromey  <tom@tromey.com>
14017
14018         * dwarf2read.c (dwarf2_compute_name): Update comment.
14019         (read_func_scope, read_variable): Update.
14020         (new_symbol): Remove.
14021         (new_symbol_full): Rename to new_symbol.
14022
14023 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14024
14025         PR gdb/16577
14026         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14027         a warning instead of throwing an error, set section size to 0 and return
14028         NULL.
14029         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14030
14031 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14032
14033         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14034         std::string.
14035         (linux_ptrace_attach_fail_reason_string): Likewise.
14036         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14037         Likewise.
14038         (linux_ptrace_attach_fail_reason_string): Likewise.
14039         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14040
14041 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14042
14043         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14044
14045 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14046
14047         PR gdb/21559
14048         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14049         checking for fs_base/gs_base fields in struct user_regs_struct.
14050         * configure: Regenerate.
14051
14052 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14053
14054         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14055         function.
14056         (aarch64_linux_init_abi): Install it to gdbarch hook
14057         gcc_target_options.
14058
14059 2018-01-15  Pedro Alves  <palves@redhat.com>
14060
14061         * common/signals-state-save-restore.c
14062         (save_original_signals_state): Fix typos.
14063
14064 2017-01-12  Tom Tromey  <tom@tromey.com>
14065             Sergio Durigan Junior  <sergiodj@redhat.com>
14066
14067         * Makefile.in (install-only): Install gdb-add-index.
14068
14069 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14070
14071         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14072
14073 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14074
14075         * infrun.c (keep_going_pass_signal): Clear step-over info when
14076         insert_breakpoints fails.
14077
14078 2018-01-11  Pedro Alves  <palves@redhat.com>
14079
14080         PR gdb/22583
14081         * infrun.c (resume): Rename to ...
14082         (resume_1): ... this.
14083         (resume): Reimplement as wrapper around resume_1.
14084
14085 2018-01-11  Pedro Alves  <palves@redhat.com>
14086
14087         PR remote/22597
14088         * remote.c (remote_parse_stop_reply): Default to the last-set
14089         general thread instead of to 'magic_null_ptid'.
14090
14091 2018-01-10  Pedro Alves  <palves@redhat.com>
14092
14093         * language.h (language_get_symbol_name_matcher): Rename ...
14094         (get_symbol_name_matcher): ... this.
14095         * language.c (language_get_symbol_name_matcher): Ditto.
14096         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14097         callers adjusted.
14098
14099 2018-01-10  Pedro Alves  <palves@redhat.com>
14100
14101         PR gdb/22670
14102         * dwarf2read.c
14103         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14104         Adjust to use language_get_symbol_name_matcher instead of
14105         language_defn::la_get_symbol_name_matcher.
14106         * language.c (language_get_symbol_name_matcher): If in Ada mode
14107         and the lookup name is a verbatim match, return Ada's matcher.
14108         * language.h (language_get_symbol_name_matcher): Adjust comment.
14109         (ada_lookup_name_info::verbatim_p):: New method.
14110
14111 2018-01-10  Pedro Alves  <palves@redhat.com>
14112
14113         PR gdb/22670
14114         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14115         minsym's language is language_auto or language_cplus, pass down
14116         language_ada instead.
14117         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14118
14119 2018-01-10  Pedro Alves  <palves@redhat.com>
14120
14121         PR gdb/22670
14122         * minsyms.c (linkage_name_str): New function.
14123         (iterate_over_minimal_symbols): Use it.
14124
14125 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14126
14127         * NEWS: Document that 'info proc' now works on FreeBSD.
14128
14129 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14130
14131         * configure.ac: Check for kinfo_getfile in libutil.
14132         * configure: Regenerate.
14133         * config.in: Regenerate.
14134         * fbsd-nat.c: Include "fbsd-tdep.h".
14135         (fbsd_fetch_cmdline): New.
14136         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14137         rather than calling error.
14138         (fbsd_info_proc): New.
14139         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14140         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14141         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14142
14143 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14144
14145         * fbsd-nat.c (struct free_deleter): Remove.
14146         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14147
14148 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14149
14150         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14151         NULL for an empty pathname.
14152
14153 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14154
14155         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14156         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14157         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14158         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14159         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14160         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14161         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14162         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14163         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14164         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14165         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14166         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14167         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14168         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14169         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14170
14171 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14172
14173         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14174         (gnu_xfer_auxv): New function.
14175         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14176         TARGET_OBJECT_AUXV.
14177
14178 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14179             Simon Marchi  <simon.marchi@ericsson.com>
14180
14181         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14182         common/selftest.c.
14183         (COMMON_OBS): Remove selftest.o.
14184         * configure.ac: Append selftest-arch.c and common/selftest.c to
14185         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14186         * configure: Re-generated.
14187         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14188         GDB_SELF_TEST.
14189         (maintenance_info_selftests): Likewise.
14190
14191 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14192
14193         * ada-valprint.c (val_print_packed_array_elements): Use
14194         proper number of elements when printing an array indexed
14195         by an enumeration type.
14196
14197 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14198
14199         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14200         (dw2_get_file_names_reader): Adjust.
14201         (lookup_dwo_signatured_type): Adjust.
14202         (lookup_dwp_signatured_type): Adjust.
14203         (lookup_signatured_type): Adjust.
14204         (create_type_unit_group): Adjust.
14205         (get_type_unit_group): Adjust.
14206         (process_psymtab_comp_unit_reader): Adjust.
14207         (build_type_psymtabs_reader): Adjust.
14208         (scan_partial_symbols): Adjust.
14209         (add_partial_symbol): Adjust.
14210         (add_partial_subprogram): Adjust.
14211         (peek_die_abbrev): Adjust.
14212         (fixup_go_packaging): Adjust.
14213         (process_imported_unit_die): Adjust.
14214         (dwarf2_compute_name): Adjust.
14215         (dwarf2_physname): Adjust.
14216         (read_import_statement): Adjust.
14217         (handle_DW_AT_stmt_list): Adjust.
14218         (read_file_scope): Adjust.
14219         (read_func_scope): Adjust.
14220         (read_lexical_block_scope): Adjust.
14221         (read_call_site_scope): Adjust.
14222         (read_variable): Adjust.
14223         (dwarf2_rnglists_process): Adjust.
14224         (dwarf2_ranges_process): Adjust.
14225         (dwarf2_ranges_read): Adjust.
14226         (dwarf2_get_pc_bounds): Adjust.
14227         (dwarf2_record_block_ranges): Adjust.
14228         (dwarf2_add_field): Adjust.
14229         (dwarf2_add_member_fn): Adjust.
14230         (read_structure_type): Adjust.
14231         (process_structure_scope): Adjust.
14232         (read_enumeration_type): Adjust.
14233         (read_array_type): Adjust.
14234         (mark_common_block_symbol_computed): Adjust.
14235         (read_common_block): Adjust.
14236         (read_namespace_type): Adjust.
14237         (read_namespace): Adjust.
14238         (read_module_type): Adjust.
14239         (read_tag_pointer_type): Adjust.
14240         (read_tag_ptr_to_member_type): Adjust.
14241         (read_tag_string_type): Adjust.
14242         (read_subroutine_type): Adjust.
14243         (read_typedef): Adjust.
14244         (read_base_type): Adjust.
14245         (attr_to_dynamic_prop): Adjust.
14246         (read_subrange_type): Adjust.
14247         (read_unspecified_type): Adjust.
14248         (dwarf2_read_abbrevs): Adjust.
14249         (load_partial_dies): Adjust.
14250         (read_partial_die): Adjust.
14251         (find_partial_die): Adjust.
14252         (guess_partial_die_structure_name): Adjust.
14253         (fixup_partial_die): Adjust.
14254         (read_attribute_value): Adjust.
14255         (read_addr_index): Adjust.
14256         (read_addr_index_from_leb128): Adjust.
14257         (read_str_index): Adjust.
14258         (dwarf2_string_attr): Adjust.
14259         (get_debug_line_section): Adjust.
14260         (dwarf_decode_line_header): Adjust.
14261         (lnp_state_machine::check_line_address): Adjust.
14262         (dwarf_decode_lines_1): Adjust.
14263         (dwarf_decode_lines): Adjust.
14264         (dwarf2_start_symtab): Adjust.
14265         (var_decode_location): Adjust.
14266         (new_symbol_full): Adjust.
14267         (dwarf2_const_value_data): Adjust.
14268         (dwarf2_const_value_attr): Adjust.
14269         (dwarf2_const_value): Adjust.
14270         (die_type): Adjust.
14271         (die_containing_type): Adjust.
14272         (build_error_marker_type): Adjust.
14273         (lookup_die_type): Adjust.
14274         (guess_full_die_structure_name): Adjust.
14275         (anonymous_struct_prefix): Adjust.
14276         (determine_prefix): Adjust.
14277         (dwarf2_name): Adjust.
14278         (follow_die_ref_or_sig): Adjust.
14279         (follow_die_offset): Adjust.
14280         (follow_die_ref): Adjust.
14281         (follow_die_sig_1): Adjust.
14282         (follow_die_sig): Adjust.
14283         (get_signatured_type): Adjust.
14284         (get_DW_AT_signature_type): Adjust.
14285         (decode_locdesc): Adjust.
14286         (dwarf_decode_macros): Adjust.
14287         (cu_debug_loc_section): Adjust.
14288         (fill_in_loclist_baton): Adjust.
14289         (dwarf2_symbol_mark_computed): Adjust.
14290         (init_one_comp_unit): Don't assign
14291         dwarf2_cu::dwarf2_per_objfile.
14292         (set_die_type): Adjust.
14293
14294 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14295
14296         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14297         <dwarf2_per_objfile>: New field.
14298         (dwarf2_per_objfile): Remove global.
14299         (get_dwarf2_per_objfile): New function.
14300         (set_dwarf2_per_objfile): New function.
14301         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14302         dwarf2_per_objfile.
14303         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14304         (read_abbrev_offset): Likewise.
14305         (read_indirect_string): Likewise.
14306         (read_indirect_line_string): Likewise.
14307         (read_indirect_string_at_offset): Likewise.
14308         (read_indirect_string_from_dwz): Likewise.
14309         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14310         dwarf2_per_objfile.
14311         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14312         (create_all_comp_units): Change objfile parameter to
14313         dwarf2_per_objfile.
14314         (create_all_type_units): Likewise.
14315         (process_queue): Add dwarf2_per_objfile parameter.
14316         (read_and_check_comp_unit_head): Likewise.
14317         (lookup_dwo_unit_in_dwp): Likewise.
14318         (get_dwp_file): Likewise.
14319         (process_cu_includes): Likewise.
14320         (struct free_dwo_file_cleanup_data): New struct.
14321         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14322         set_dwarf2_per_objfile.
14323         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14324         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14325         context, adjust calls.
14326         (dw2_instantiate_symtab): Likewise.
14327         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14328         (dw2_get_cu): Likewise.
14329         (create_cu_from_index_list): Change objfile parameter to
14330         dwarf2_per_objfile.
14331         (create_cus_from_index_list): Get dwarf2_per_objfile from
14332         context, adjust calls.
14333         (create_cus_from_index): Likewise.
14334         (create_signatured_type_table_from_index): Change objfile
14335         parameter to dwarf2_per_objfile.
14336         (create_signatured_type_table_from_debug_names): Change objfile
14337         parameter to dwarf2_per_objfile.
14338         (create_addrmap_from_index): Likewise.
14339         (create_addrmap_from_aranges): Likewise.
14340         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14341         (dw2_setup): Remove.
14342         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14343         context.
14344         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14345         get_dwarf2_per_objfile.
14346         (dw2_forget_cached_source_info): Likewise.
14347         (dw2_map_symtabs_matching_filename): Likewise.
14348         (struct dw2_symtab_iterator) <index>: Remove.
14349         <dwarf2_per_objfile>: New field.
14350         (dw2_symtab_iter_init): Replace index parameter with
14351         dwarf2_per_objfile.
14352         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14353         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14354         (dw2_print_stats): Likewise.
14355         (dw2_dump): Likewise.
14356         (dw2_expand_symtabs_for_function): Likewise.
14357         (dw2_expand_all_symtabs): Likewise.
14358         (dw2_expand_symtabs_with_fullname): Likewise.
14359         (dw2_expand_marked_cus): Replace index and objfile parameters
14360         with dwarf2_per_objfile.
14361         (dw_expand_symtabs_matching_file_matcher): Add
14362         dwarf2_per_objfile parameter and adjust calls.
14363         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14364         adjust calls.
14365         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14366         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14367         adjust calls.
14368         (create_cus_from_debug_names_list): Replace objfile parameter
14369         with dwarf2_per_objfile and adjust calls.
14370         (create_cus_from_debug_names): Likewise.
14371         (dwarf2_read_debug_names): Likewise.
14372         (mapped_debug_names::namei_to_name): Adjust call.
14373         (dw2_debug_names_iterator::next): Likewise.
14374         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14375         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14376         (dw2_debug_names_dump): Likewise.
14377         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14378         (dw2_debug_names_expand_symtabs_matching): Likewise.
14379         (dwarf2_initialize_objfile): Likewise.
14380         (dwarf2_build_psymtabs): Likewise.
14381         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14382         this_cu.
14383         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14384         (read_and_check_comp_unit_head): Likewise.
14385         (read_abbrev_offset): Likewise.
14386         (create_debug_type_hash_table): Likewise.
14387         (create_debug_types_hash_table): Likewise.
14388         (create_all_type_units): Replace objfile parameter with
14389         dwarf2_per_objfile.
14390         (add_type_unit): Add dwarf2_per_objfile parameter.
14391         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14392         with dwarf2_per_objfile.
14393         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14394         (lookup_dwp_signatured_type): Likewise.
14395         (lookup_signatured_type): Likewise.
14396         (read_cutu_die_from_dwo): Likewise.
14397         (init_tu_and_read_dwo_dies): Likewise.
14398         (init_cutu_and_read_dies): Likewise.
14399         (init_cutu_and_read_dies_no_follow): Likewise.
14400         (allocate_type_unit_groups_table): Add objfile parameter.
14401         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14402         (get_type_unit_group): Likewise.
14403         (process_psymtab_comp_unit): Update call.
14404         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14405         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14406         (print_tu_stats): Likewise.
14407         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14408         in void* parameter.
14409         (build_type_psymtabs): Change objfile parameter to
14410         dwarf2_per_objfile.
14411         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14412         passed in void* parameter.
14413         (process_skeletonless_type_units): Change objfile parameter to
14414         dwarf2_per_objfile.
14415         (set_partial_user): Likewise.
14416         (dwarf2_build_psymtabs_hard): Likewise.
14417         (read_comp_units_from_section): Likewise.
14418         (create_all_comp_units): Likewise.
14419         (scan_partial_symbols): Update calls.
14420         (add_partial_symbol): Likewise.
14421         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14422         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14423         (process_queue): Add dwarf2_per_objfile parameter.
14424         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14425         (compute_compunit_symtab_includes): Likewise.
14426         (process_cu_includes): Add dwarf2_per_objfile parameter.
14427         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14428         (process_full_type_unit): Likewise.
14429         (process_imported_unit_die): Update call.
14430         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14431         (read_file_scope): Likewise.
14432         (allocate_dwo_file_hash_table): Add objfile parameter.
14433         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14434         (create_cus_hash_table): Likewise.
14435         (create_dwp_hash_table): Likewise.
14436         (create_dwo_unit_in_dwp_v1): Likewise.
14437         (create_dwp_v2_section): Likewise.
14438         (create_dwo_unit_in_dwp_v2): Likewise.
14439         (lookup_dwo_unit_in_dwp): Likewise.
14440         (try_open_dwop_file): Likewise.
14441         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14442         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14443         cleanup to include a reference to dwarf2_per_objfile.
14444         (open_dwp_file): Add dwarf2_per_objfile parameter.
14445         (open_and_init_dwp_file): Likewise.
14446         (get_dwp_file): Likewise.
14447         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14448         (queue_and_load_all_dwo_tus): Update call.
14449         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14450         data.
14451         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14452         (dwarf2_ranges_process): Likewise.
14453         (dwarf2_get_pc_bounds): Likewise.
14454         (mark_common_block_symbol_computed): Likewise.
14455         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14456         (dwarf2_read_abbrevs): Update call.
14457         (read_partial_die): Use dwarf2_per_objfile from cu.
14458         (find_partial_die): Likewise.
14459         (fixup_partial_die): Likewise.
14460         (read_attribute_value): Likewise.
14461         (read_indirect_string_at_offset_from): Add objfile parameter.
14462         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14463         parameter.
14464         (read_indirect_string_from_dwz): Add objfile parameter.
14465         (read_indirect_string): Add objfile parameter.
14466         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14467         (read_addr_index): Use dwarf2_per_objfile from cu.
14468         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14469         call dw2_setup.
14470         (read_str_index): Use dwarf2_per_objfile from cu.
14471         (get_debug_line_section): Likewise.
14472         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14473         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14474         (new_symbol_full): Use dwarf2_per_objfile from cu.
14475         (build_error_marker_type): Likewise.
14476         (lookup_die_type): Likewise.
14477         (determine_prefix): Likewise.
14478         (follow_die_offset): Likewise.
14479         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14480         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14481         (dwarf2_fetch_die_type_sect_off): Likewise.
14482         (dwarf2_get_die_type): Likewise.
14483         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14484         (get_signatured_type): Likewise.
14485         (get_DW_AT_signature_type): Likewise.
14486         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14487         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14488         (cu_debug_loc_section): Likewise.
14489         (fill_in_loclist_baton): Likewise.
14490         (dwarf2_symbol_mark_computed): Likewise.
14491         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14492         dwarf2_per_objfile.
14493         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14494         parameter.
14495         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14496         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14497         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14498         (set_die_type): Use dwarf2_free_objfile from cu.
14499         (get_die_type_at_offset): Likewise.
14500         (dwarf2_per_objfile_free): Don't assign global variable.
14501         (debug_names) <constructor>: Add dwarf2_per_objfile
14502         parameter, update m_debugstrlookup construction.
14503         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14504         parameter.
14505         <m_dwarf2_per_objfile>: New field.
14506         <lookup>: Use m_dwarf2_per_objfile.
14507         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14508         (psyms_seen_size): Likewise.
14509         (write_gdbindex): Replace objfile parameter with
14510         dwarf2_per_objfile.
14511         (write_debug_names): Likewise.
14512         (write_psymtabs_to_index): Likewise.
14513         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14514         calls.
14515
14516 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14517
14518         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14519         <dwarf2_per_objfile>: New field.
14520         (struct dwarf2_per_cu_data) <objfile>: Remove.
14521         <dwarf2_per_objfile>: New field.
14522         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14523         of objfile.
14524         (create_signatured_type_table_from_index): Likewise.
14525         (create_debug_type_hash_table): Likewise.
14526         (fill_in_sig_entry_from_dwo_entry): Likewise.
14527         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14528         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14529         objfile.
14530         (create_partial_symtab): Access objfile through
14531         dwarf2_per_objfile.
14532         (process_psymtab_comp_unit_reader): Likewise.
14533         (read_comp_units_from_section): Likewise.
14534         (scan_partial_symbols): Likewise.
14535         (add_partial_symbol): Likewise.
14536         (add_partial_subprogram): Likewise.
14537         (peek_die_abbrev): Likewise.
14538         (fixup_go_packaging): Likewise.
14539         (process_full_comp_unit): Likewise.
14540         (process_full_type_unit): Likewise.
14541         (process_imported_unit_die): Likewise.
14542         (dwarf2_compute_name): Likewise.
14543         (dwarf2_physname): Likewise.
14544         (read_import_statement): Likewise.
14545         (create_cus_hash_table): Assign dwarf2_physname instead of
14546         objfile.
14547         (read_func_scope): Access objfile through dwarf2_per_objfile.
14548         (read_lexical_block_scope): Likewise.
14549         (read_call_site_scope): Likewise.
14550         (read_variable): Likewise.
14551         (dwarf2_rnglists_process): Likewise.
14552         (dwarf2_ranges_process): Likewise.
14553         (dwarf2_ranges_read): Likewise.
14554         (dwarf2_record_block_ranges): Likewise.
14555         (dwarf2_add_field): Likewise.
14556         (dwarf2_add_member_fn): Likewise.
14557         (read_structure_type): Likewise.
14558         (process_structure_scope): Likewise.
14559         (read_enumeration_type): Likewise.
14560         (read_array_type): Likewise.
14561         (read_common_block): Likewise.
14562         (read_namespace_type): Likewise.
14563         (read_namespace): Likewise.
14564         (read_module_type): Likewise.
14565         (read_tag_pointer_type): Likewise.
14566         (read_tag_ptr_to_member_type): Likewise.
14567         (read_tag_string_type): Likewise.
14568         (read_subroutine_type): Likewise.
14569         (read_typedef): Likewise.
14570         (read_base_type): Likewise.
14571         (attr_to_dynamic_prop): Likewise.
14572         (read_subrange_type): Likewise.
14573         (read_unspecified_type): Likewise.
14574         (load_partial_dies): Likewise.
14575         (read_partial_die): Likewise.
14576         (find_partial_die): Likewise.
14577         (guess_partial_die_structure_name): Likewise.
14578         (fixup_partial_die): Likewise.
14579         (read_attribute_value): Likewise.
14580         (read_addr_index_from_leb128): Likewise.
14581         (dwarf2_read_addr_index): Likewise.
14582         (dwarf2_string_attr): Likewise.
14583         (lnp_state_machine::check_line_address): Likewise.
14584         (dwarf_decode_lines_1): Likewise.
14585         (dwarf_decode_lines): Likewise.
14586         (dwarf2_start_symtab): Likewise.
14587         (var_decode_location): Likewise.
14588         (new_symbol_full): Likewise.
14589         (dwarf2_const_value_data): Likewise.
14590         (dwarf2_const_value_attr): Likewise.
14591         (dwarf2_const_value): Likewise.
14592         (die_type): Likewise.
14593         (die_containing_type): Likewise.
14594         (lookup_die_type): Likewise.
14595         (guess_full_die_structure_name): Likewise.
14596         (anonymous_struct_prefix): Likewise.
14597         (dwarf2_name): Likewise.
14598         (follow_die_ref_or_sig): Likewise.
14599         (follow_die_offset): Likewise.
14600         (follow_die_ref): Likewise.
14601         (dwarf2_fetch_die_loc_sect_off): Likewise.
14602         (dwarf2_fetch_constant_bytes): Likewise.
14603         (dwarf2_fetch_die_type_sect_off): Likewise.
14604         (dwarf2_get_die_type): Likewise.
14605         (follow_die_sig): Likewise.
14606         (decode_locdesc): Likewise.
14607         (dwarf2_per_cu_objfile): Likewise.
14608         (dwarf2_per_cu_text_offset): Likewise.
14609         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
14610         objfile.
14611         (set_die_type): Access objfile through
14612         dwarf2_per_objfile.
14613
14614 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14615
14616         * valprint.c (converted_character_d): Remove typedef.
14617         (DEF_VEC_O (converted_character_d)): Remove.
14618         (count_next_character): Use std::vector.
14619         (print_converted_chars_to_obstack): Likewise.
14620         (generic_printstr): Likewise.
14621
14622 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14623
14624         * xml-support.h (struct gdb_xml_value): Add constructor.
14625         <value>: Change type to unique_xmalloc_ptr.
14626         (gdb_xml_value_s): Remove typedef.
14627         (DEF_VEC_O (gdb_xml_value_s)): Remove.
14628         (gdb_xml_element_start_handler): Change parameter type to
14629         std::vector.
14630         (xml_find_attribute): Likewise.
14631         * xml-support.c (xml_find_attribute): Change parameter type to
14632         std::vector and adjust.
14633         (gdb_xml_values_cleanup): Remove.
14634         (gdb_xml_parser::start_element): Adjust to std::vector.
14635         (xinclude_start_include): Change paraeter type to std::vector
14636         and adjust.
14637         * btrace.c (check_xml_btrace_version): Likewise.
14638         (parse_xml_btrace_block): Likewise.
14639         (parse_xml_btrace_pt_config_cpu): Likewise.
14640         (parse_xml_btrace_pt): Likewise.
14641         (parse_xml_btrace_conf_bts): Likewise.
14642         (parse_xml_btrace_conf_pt): Likewise.
14643         * memory-map.c (memory_map_start_memory): Likewise.
14644         (memory_map_start_property): Likewise.
14645         * osdata.c (osdata_start_osdata): Likewise.
14646         (osdata_start_item): Likewise.
14647         (osdata_start_column): Likewise.
14648         * remote.c (start_thread): Likewise.
14649         * solib-aix.c (library_list_start_library): Likewise.
14650         (library_list_start_list): Likewise.
14651         * solib-svr4.c (library_list_start_library): Likewise.
14652         (svr4_library_list_start_list): Likewise.
14653         * solib-target.c (library_list_start_segment): Likewise.
14654         (library_list_start_section): Likewise.
14655         (library_list_start_library): Likewise.
14656         (library_list_start_list): Likewise.
14657         * tracepoint.c (traceframe_info_start_memory): Likewise.
14658         (traceframe_info_start_tvar): Likewise.
14659         * xml-syscall.c (syscall_start_syscall): Likewise.
14660         * xml-tdesc.c (tdesc_start_target): Likewise.
14661         (tdesc_start_feature): Likewise.
14662         (tdesc_start_reg): Likewise.
14663         (tdesc_start_union): Likewise.
14664         (tdesc_start_struct): Likewise.
14665         (tdesc_start_flags): Likewise.
14666         (tdesc_start_enum): Likewise.
14667         (tdesc_start_field): Likewise.
14668         (tdesc_start_enum_value): Likewise.
14669         (tdesc_start_vector): Likewise.
14670
14671 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14672
14673         * extension.h (struct xmethod_worker) <clone>: Remove.
14674         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
14675         Remove.
14676         (python_xmethod_worker::clone): Remove.
14677         * valops.c (find_overload_match): Use std::move instead of
14678         clone.
14679
14680 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14681
14682         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
14683         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
14684         <free_xmethod_worker_data>: Remove.
14685         <get_matching_xmethod_workers>: Chance VEC to std::vector.
14686         <get_xmethod_arg_types>: Remove.
14687         <get_xmethod_result_type>: Remove.
14688         <invoke_xmethod>: Remove.
14689         * extension.c (new_xmethod_worker): Remove.
14690         (clone_xmethod_worker): Remove.
14691         (get_matching_xmethod_workers): Return void, pass std::vector by
14692         pointer.
14693         (get_xmethod_arg_types): Rename to...
14694         (xmethod_worker::get_arg_types): ... this, and adjust.
14695         (get_xmethod_result_type): Rename to...
14696         (xmethod_worker::get_result_type): ... this, and adjust.
14697         (invoke_xmethod): Remove.
14698         (free_xmethod_worker): Remove.
14699         (free_xmethod_worker_vec): Remove.
14700         * extension.h (enum ext_lang_rc): Move here from
14701         extension-priv.h.
14702         (struct xmethod_worker): Add constructor and destructor.
14703         <data>: Remove.
14704         <value>: Remove.
14705         <invoke, clone, do_get_result_type, do_get_arg_types>: New
14706         virtual pure methods.
14707         <get_arg_types, get_result_type>: New methods.
14708         (xmethod_worker_ptr): Remove typedef.
14709         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
14710         (xmethod_worker_vec): Remove typedef.
14711         (xmethod_worker_up): New typedef.
14712         (invoke_xmethod): Remove.
14713         (clone_xmethod_worker): Remove.
14714         (free_xmethod_worker): Remove.
14715         (free_xmethod_worker_vec): Remove.
14716         (get_xmethod_arg_types): Remove.
14717         (get_xmethod_result_type): Remove.
14718         * valops.c (find_method_list): Use std::vector, don't use
14719         intermediate vector.
14720         (value_find_oload_method_list): Use std::vector.
14721         (find_overload_match): Use std::vector.
14722         (find_oload_champ): Use std::vector.
14723         * value.c (value_free): Use operator delete.
14724         (value_of_xmethod): Rename to...
14725         (value_from_xmethod): ... this.  Don't assign
14726         xmethod_worker::value, take rvalue-reference.
14727         (result_type_of_xmethod): Adjust.
14728         (call_xmethod): Adjust.
14729         * value.h: Include extension.h.
14730         (struct xmethod_worker): Don't forward-declare.
14731         (value_of_xmethod): Rename to...
14732         (value_from_xmethod): ... this, take rvalue-reference.
14733         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
14734         (struct python_xmethod_worker): ... this, add constructor and
14735         destructor.
14736         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
14737         (gdbpy_free_xmethod_worker_data): Rename to...
14738         (python_xmethod_worker::~python_xmethod_worker): ... this and
14739         adjust.
14740         (gdbpy_clone_xmethod_worker_data): Rename to...
14741         (python_xmethod_worker::clone): ... this and adjust.
14742         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
14743         temporary vector.
14744         (gdbpy_get_xmethod_arg_types): Rename to...
14745         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
14746         (gdbpy_get_xmethod_result_type): Rename to...
14747         (python_xmethod_worker::do_get_result_type): ... this and
14748         adjust.
14749         (gdbpy_invoke_xmethod): Rename to...
14750         (python_xmethod_worker::invoke): ... this and adjust.
14751         (new_python_xmethod_worker): Rename to...
14752         (python_xmethod_worker::python_xmethod_worker): ... this and
14753         adjust.
14754         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
14755         Remove.
14756         (gdbpy_free_xmethod_worker_data): Remove.
14757         (gdbpy_get_matching_xmethod_workers): Use std::vector.
14758         (gdbpy_get_xmethod_arg_types): Remove.
14759         (gdbpy_get_xmethod_result_type): Remove.
14760         (gdbpy_invoke_xmethod): Remove.
14761         * python/python.c (python_extension_ops): Remove obsolete
14762         callbacks.
14763
14764 2018-01-05  Pedro Alves  <palves@redhat.com>
14765
14766         PR gdb/18653
14767         * common/signals-state-save-restore.c
14768         (save_original_signals_state): New parameter 'quiet'.  Warn if we
14769         find a custom handler preinstalled, instead of internal erroring.
14770         But only warn if !quiet.
14771         * common/signals-state-save-restore.h
14772         (save_original_signals_state): New parameter 'quiet'.
14773         * main.c (captured_main_1): Move save_original_signals_state call
14774         after option handling, and pass QUIET.
14775
14776 2018-01-05  Pedro Alves  <palves@redhat.com>
14777
14778         * spu-tdep.c (spu_catch_start): Pass
14779         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
14780
14781 2018-01-05  Pedro Alves  <palves@redhat.com>
14782
14783         PR gdb/22670
14784         * ada-lang.c (literal_symbol_name_matcher): New function.
14785         (ada_get_symbol_name_matcher): Use it for
14786         symbol_name_match_type::SEARCH_NAME.
14787         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
14788         it down instead of assuming symbol_name_match_type::FULL.
14789         * block.h (block_lookup_symbol): New parameter 'match_type'.
14790         * c-valprint.c (print_unpacked_pointer): Use
14791         lookup_symbol_search_name instead of lookup_symbol.
14792         * compile/compile-object-load.c (get_out_value_type): Pass down
14793         symbol_name_match_type::SEARCH_NAME.
14794         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
14795         symbol_name_match_type::FULL.
14796         * cp-support.c (cp_get_symbol_name_matcher): Handle
14797         symbol_name_match_type::SEARCH_NAME.
14798         * infrun.c (insert_exception_resume_breakpoint): Use
14799         lookup_symbol_search_name.
14800         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
14801         * psymtab.c (maintenance_check_psymtabs): Use
14802         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
14803         * stack.c (print_frame_args): Use lookup_symbol_search_name and
14804         SYMBOL_SEARCH_NAME.
14805         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
14806         if symbol_name_match_type::SEARCH_NAME.
14807         (lookup_symbol_in_language): Pass down
14808         symbol_name_match_type::FULL.
14809         (lookup_symbol_search_name): New.
14810         (lookup_language_this): Pass down
14811         symbol_name_match_type::SEARCH_NAME.
14812         (lookup_symbol_aux, lookup_local_symbol): New parameter
14813         'match_type'.  Pass it down.
14814         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
14815         (lookup_symbol_search_name): New declaration.
14816         (lookup_symbol_in_block): New 'match_type' parameter.
14817
14818 2018-01-05  Pedro Alves  <palves@redhat.com>
14819
14820         PR gdb/22670
14821         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
14822         ada_lookup_symbol.
14823         (ada_lookup_symbol): Reimplement in terms of
14824         ada_lookup_symbol_list, bits factored out from
14825         ada_lookup_encoded_symbol.
14826
14827 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14828
14829         * ada-exp.y (write_object_renaming): When subscripting an array
14830         using a symbol as the index, pass the block in call to
14831         ada_lookup_encoded_symbol when looking that symbol up.
14832
14833 2018-01-05  Jerome Guitton  <guitton@adacore.com>
14834
14835         * ada-lang.c (ada_array_length): Use ada_index_type instead of
14836         TYPE_INDEX_TYPE.
14837
14838 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14839
14840         * ada-lang.c (ada_to_fixed_value_create): Add handling of
14841         the case where VALUE_LVAL (val0) is not lval_memory.
14842
14843 2018-01-05  Xavier Roirand  <roirand@adacore.com>
14844
14845         * ada-valprint.c (print_optional_low_bound): Handle
14846         character-indexed array printing like boolean-indexed array
14847         printing.
14848
14849 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14850
14851         * NEWS: Create a new section for the next release branch.
14852         Rename the section of the current branch, now that it has
14853         been cut.
14854
14855 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14856
14857         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
14858         * version.in: Bump version to 8.1.50.DATE-git.
14859
14860 2018-01-03  Xavier Roirand  <roirand@adacore.com>
14861
14862         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
14863         Add field.
14864         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
14865         Add field.
14866         (default_exception_support_info) <catch_handlers_sym>: Add field.
14867         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
14868         (ada_exception_name_addr_1): Add "catch handlers" handling.
14869         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
14870         Update all callers.
14871         (create_excep_cond_exprs) <ex>: Add parameter.
14872         (re_set_exception): Update create_excep_cond_exprs call.
14873         (print_it_exception, print_one_exception, print_mention_exception)
14874         (print_recreate_exception): Add "catch handler" handling.
14875         (allocate_location_catch_handlers, re_set_catch_handlers)
14876         (check_status_catch_handlers, print_it_catch_handlers)
14877         (print_one_catch_handlers, print_mention_catch_handlers)
14878         (print_recreate_catch_handlers): New function.
14879         (catch_handlers_breakpoint_ops): New variable.
14880         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
14881         Add parameter.  Add "catch handler" handling.
14882         (ada_exception_sym_name, ada_exception_breakpoint_ops):
14883         Add "catch handler" handling.
14884         (ada_exception_catchpoint_cond_string): Add "catch handler"
14885         handling.
14886         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
14887         call.
14888         (catch_ada_handlers_command): New function.
14889         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
14890         operations structure.
14891         (_initialize_ada_language): Add "catch handlers" command entry.
14892         * NEWS: Document "catch handlers" feature.
14893
14894 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14895
14896         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
14897         account when creating the array type of the slice.
14898         (ada_value_slice): Likewise.
14899
14900 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14901
14902         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
14903         New enum value.
14904         (create_array_type_with_stride): Add byte_stride_prop parameter.
14905         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
14906         New parameter.  Update all callers in this file.
14907         (array_type_has_dynamic_stride): New function.
14908         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
14909         of arrays with dynamic byte strides.
14910         * dwarf2read.c (read_array_type): Add support for dynamic
14911         DW_AT_byte_stride attributes.
14912
14913 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14914
14915         * dwarf2read.c (read_unspecified_type): Treat
14916         DW_TAG_enumeration_type DIEs from Ada units as stubs.
14917
14918 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14919
14920         Update copyright year range in all GDB files.
14921
14922 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
14923
14924         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
14925         and gdb/testsuite/gdb.base/step-line.c.
14926
14927 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14928
14929         * copyright.py (main): Dump the contents of
14930         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
14931         even if BY_HAND is empty.
14932
14933 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14934
14935         * top.c (print_gdb_version): Update Copyright year in version
14936         message.
14937
14938 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14939
14940         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
14941
14942 For older changes see ChangeLog-2017.
14943 \f
14944 Local Variables:
14945 mode: change-log
14946 left-margin: 8
14947 fill-column: 74
14948 version-control: never
14949 coding: utf-8
14950 End: