[PowerPC] Don't zero-initialize vector register buffers
[external/binutils.git] / gdb / ChangeLog
1 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2
3         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
4         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
5         ppc_linux_collect_vrregset by regcache_collect_regset.
6
7 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
8
9         * linux-tdep.c (linux_collect_regset_section_cb): Use
10         std::vector<gdb_byte> instead of char * and malloc for buf.
11         Remove xfree.
12
13 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
14
15         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
16         symtab_start instead of always using language_unknown.
17
18 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
19
20         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
21         READ_P parameter, catch and ignore register access errors from
22         either the old or new MISA location.
23         (riscv_has_feature): Update call to riscv_read_misa_reg.
24
25 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
26
27         * python/py-function.c (convert_values_to_python): Return
28         gdbpy_ref<>.  Add header comment.
29         (fnpy_call): Adjust.
30
31 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
32
33         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
34         (cmdpy_completer_handle_brkchars): Adjust.
35         (cmdpy_completer): Adjust.
36
37 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
38
39         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
40         Pass correct regnum to raw_supply_zeroed.
41
42 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
43
44         * regcache.c (cooked_read_test): Add CSKY to the list of
45         architectures with a save_reggroup
46
47 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
48
49         PR gdb/23368
50         * infrun.c (follow_exec): In the follow_exec_mode_new case,
51         transfer terminal state from old new new inferior.
52         * terminal.h (swap_terminal_info): New function.
53         * inflow.c (swap_terminal_info): New function.
54
55 2018-10-23  Tom Tromey  <tom@tromey.com>
56
57         * record-btrace.c (get_thread_current_frame_id): Rename from
58         get_thread_current_frame.  Return a frame_id.
59         (record_btrace_start_replaying): Update.
60
61 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
62
63         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
64         for CSRs.
65
66 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
67
68         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
69         have_nonsteppable_watchpoint attribute to 1.
70
71 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
72
73         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
74         register names.
75         (struct register_alias): Rename to...
76         (struct riscv_register_alias): ...this, and update comment.
77         (riscv_register_aliases): Update type, and alias names.  Remove
78         CSR names from this list.
79         (riscv_register_name): Use riscv_gdb_reg_names for int and float
80         register names.  Add an extra assertion.
81         (riscv_is_regnum_a_named_csr): New function.
82         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
83
84 2018-10-22  Jim Wilson  <jimw@sifive.com>
85
86         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
87         FP reg smaller than FP reg size, and fill with -1 instead of 0.
88
89         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
90         (riscv_register_type): Use them.
91         (riscv_print_one_register_info): Handle union of floats same as float.
92         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
93         riscv_fpreg_q_type fields.
94
95 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
96
97         * gdbarch.sh (gdbarch_num_cooked_regs): New.
98         * gdbarch.h: Re-generate.
99         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
100         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
101         * eval.c (evaluate_subexp_standard): Likewise.
102         * findvar.c (value_of_register): Likewise.
103         (value_of_register_lazy): Likewise.
104         (address_from_register): Likewise.
105         * frame.c (get_frame_register_bytes): Likewise.
106         * gdbarch-selftests.c (register_to_value_test): Likewise.
107         * h8300-tdep.c (h8300_register_type): Likewise.
108         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
109         (i386_svr4_reg_to_regnum): Likewise.
110         * infcmd.c (default_print_registers_info): Likewise.
111         (registers_info): Likewise.
112         (print_vector_info): Likewise.
113         (default_print_float_info): Likewise.
114         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
115         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
116         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
117         (mi_cmd_data_list_changed_registers): Likewise.
118         (mi_cmd_data_list_register_values): Likewise.
119         (mi_cmd_data_write_register_values): Likewise.
120         (mi_cmd_trace_frame_collected): Likewise.
121         * mips-tdep.c (print_gp_register_row): Likewise.
122         (mips_print_registers_info): Likewise.
123         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
124         * regcache.c (init_regcache_descr): Likewise.
125         (register_size): Likewise.
126         (register_dump::dump): Likewise.
127         (cooked_read_test): Likewise.
128         (cooked_write_test): Likewise.
129         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
130         (rs6000_gdbarch_init): Likewise.
131         * stabsread.c (stab_reg_to_regnum): Likewise.
132         * stack.c (info_frame_command): Likewise.
133         * target-descriptions.c (tdesc_register_name): Likewise.
134         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
135         * tui/tui-regs.c (tui_show_register_group): Likewise.
136         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
137         (user_reg_map_regnum_to_name): Likewise.
138         (value_of_user_reg): Likewise.
139         (maintenance_print_user_registers): Likewise.
140         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
141         (xtensa_register_name): Likewise.
142         (xtensa_register_type): Likewise.
143         (xtensa_reg_to_regnum): Likewise.
144         (xtensa_pseudo_register_read): Likewise.
145         (xtensa_pseudo_register_write): Likewise.
146
147 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
148
149         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
150         correctly-sized buffer with raw_read.
151         (amd64_pseudo_register_write): Use correctly-sized buffer for
152         raw_read/raw_write.
153
154 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
155
156         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
157         in add_prefix_cmd of set print type.
158
159 2018-10-19  Tom Tromey  <tom@tromey.com>
160
161         PR tui/18388:
162         * NEWS: Mention tabset deprecation.
163         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
164         (update_tab_width): New function.
165         (tui_set_tab_width, tui_show_tab_width): New functions.
166         (tui_set_tab_width_command): Use update_tab_width.
167         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
168         Add new "set tui tab-width" command.
169         * tui/tui-source.c (tui_set_source_content): Update.
170         * tui/tui-disasm.c (tui_set_disassem_content): Update.
171         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
172         Don't declare.
173         (tui_tab_width): Declare.
174         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
175         (tui_set_default_tab_len): Remove.
176
177 2018-10-19  Tom Tromey  <tom@tromey.com>
178
179         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
180         (key_is_backspace, tui_getc): Don't declare.
181         * tui/tui-io.c (key_is_start_sequence): Now static.
182         (key_is_end_sequence, key_is_backspace): Remove.
183         (tui_getc): Now static.
184
185 2018-10-19  Tom Tromey  <tom@tromey.com>
186
187         * symfile.c (reread_symbols): Clear "static_links".
188
189 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
190
191         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
192         define.
193         (aarch64_linux_sigframe_init): Extra boundary checks.
194
195 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
196
197         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
198         the possibly non-existent tdesc type 'vec128', but the type of raw
199         register v16 instead.
200
201 2018-10-19  Gary Benson <gbenson@redhat.com>
202
203         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
204
205 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
206
207         PR cli/23785
208         * cli/cli-dump.c (restore_binary_file): Check if "file" is
209         NULL.
210
211 2018-10-17  Paul Koning  <paul_koning@dell.com>
212
213         * charset.c (convert_between_encodings): Fix unsigned overflow.
214
215 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
216
217         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
218         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
219         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
220         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
221         New functions.
222         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
223         and fbsd_info_proc_mappings_header.
224         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
225         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
226         New.
227
228 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
229
230         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
231         Solaris Maintainer.
232
233 2018-10-15  Tom Tromey  <tom@tromey.com>
234
235         * tui/tui.c (strcat_to_buf): Remove casts.
236         * tui/tui-winsource.c (tui_show_source_line)
237         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
238         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
239         * tui/tui-windata.c (tui_first_data_item_displayed)
240         (tui_delete_data_content_windows, tui_erase_data_content)
241         (tui_display_all_data, tui_display_data_from)
242         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
243         * tui/tui-win.c (tui_set_win_height)
244         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
245         casts.
246         * tui/tui-win.c (tui_resize_all): Remove casts.
247         (tui_scroll_backward_command, tui_set_focus)
248         (tui_set_tab_width_command): Likewise.
249         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
250         * tui/tui-regs.c (tui_show_register_group): Remove cast.
251         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
252         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
253         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
254         Remove casts.
255
256 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
257
258         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
259         AArch64/ARM maintainer.
260
261 2018-10-11  Gary Benson <gbenson@redhat.com>
262
263         * interps.h (interp::m_name): Make private and mutable.
264         * interps.c (interp::~interp): Free m_name.
265
266 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
267             Simon Marchi <simark@simark.ca>
268
269         * README (`configure' options): Add documentation for new
270         "--enable-unit-tests" option.
271         * acinclude.m4: Include "selftest.m4".
272         * configure: Regenerate.
273         * configure.ac: Use "GDB_AC_SELFTEST".
274         * maint.c (maintenance_selftest): Update message informing
275         that selftests have been disabled.
276         (maintenance_info_selftests): Likewise.
277         * selftest.m4: New file.
278
279 2018-10-10  Gary Benson <gbenson@redhat.com>
280
281         * remote.c (remote_target::remote_send_printf): Add
282         missing va_end found by Coverity.
283
284 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
285
286         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
287
288 2018-10-09  Tom Tromey  <tom@tromey.com>
289
290         * configure: Rebuild.
291         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
292         * NEWS: Update --enable-ubsan documentation.
293
294 2018-10-09  Gary Benson <gbenson@redhat.com>
295
296         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
297         found by Coverity.
298
299 2018-10-08  Tom Tromey  <tom@tromey.com>
300
301         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
302         variable.
303         (riscv_fbsd_init_abi): Likewise.
304
305 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
306         * valops.c (value_struct_elt_for_reference): Rename local variable
307         to work around the shadowing a previous local warning.
308
309 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
310
311         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
312         * NEWS: Mention new FreeBSD/riscv native configuration.
313         * configure.host: Add riscv*-*-freebsd*.
314         * configure.nat: Likewise.
315         * riscv-fbsd-nat.c: New file.
316
317 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
318
319         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
320         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
321         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
322         * NEWS: Mention new FreeBSD/riscv target.
323         * configure.tgt: Add riscv*-*-freebsd*.
324         * riscv-fbsd-tdep.c: New file.
325         * riscv-fbsd-tdep.h: New file.
326
327 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
328
329         * regcache.h (struct regcache_map_entry): Note that this type can
330         be used with traditional frame caches.
331         * trad-frame.c (trad_frame_set_reg_regmap): New.
332         * trad-frame.h (trad_frame_set_reg_regmap): New.
333
334 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
335
336         PR c++/16841
337         * valops.c (get_virtual_base_offset): New function.
338         (value_struct_elt_for_reference): Use it to get virtual base offset
339         and add it in calculating class member address.
340
341 2018-10-08   John Darrington <john@darrington.wattle.id.au>
342
343     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
344       (check_producer): Check if the producer is codewarrior.
345       (producer_is_codewarrior): New function.
346       (lnp_state_machine::record_line): Ignore is_stmt flag for records
347        produced by codewarrior.
348       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
349
350 2018-10-06  Tom Tromey  <tom@tromey.com>
351
352         PR python/19399:
353         * python/py-inferior.c: Add "architecture" entry.
354         (infpy_architecture): New function.
355
356 2018-10-06  Tom Tromey  <tom@tromey.com>
357
358         PR python/21765:
359         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
360         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
361         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
362         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
363
364 2018-10-06  Tom Tromey  <tom@tromey.com>
365
366         PR build/17077:
367         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
368         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
369         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
370         #include.
371
372 2018-10-06  Tom Tromey  <tom@tromey.com>
373
374         * python/py-breakpoint.c (bppy_get_location): Handle a
375         bp_breakpoint without a location.
376
377 2018-10-06  Tom Tromey  <tom@tromey.com>
378
379         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
380         (_RegEx): Reformat help text.
381         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
382         (AnyCallerIs, AnyCallerMatches): Reformat help text.
383         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
384         text.
385         * python/lib/gdb/command/xmethods.py (InfoXMethod)
386         (EnableXMethod, DisableXMethod): Remove help indentation.
387         Capitalize meta-syntactic variables.
388         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
389         (EnableUnwinder, DisableUnwinder): Remove help indentation.
390         Capitalize meta-syntactic variables.
391         * python/lib/gdb/command/explore.py (ExploreCommand)
392         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
393         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
394         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
395         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
396         Remove help indentation.
397         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
398         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
399         (DisableFrameFilter, SetFrameFilterPriority)
400         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
401
402 2018-10-06  Tom Tromey  <tom@tromey.com>
403
404         PR tui/28819:
405         * tui/tui-io.c (gdb_wgetch): New function.
406         (tui_mld_getc, tui_getc): Use it.
407
408 2018-10-05  Tom Tromey  <tom@tromey.com>
409
410         * sol-thread.c (sol_thread_target::wait): Rename inner
411         "save_ptid".
412
413 2018-10-04  Tom Tromey  <tom@tromey.com>
414
415         * configure: Rebuild.
416         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
417
418 2018-10-04  Tom Tromey  <tom@tromey.com>
419
420         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
421         declaration of "block".
422
423 2018-10-04  Tom Tromey  <tom@tromey.com>
424
425         * common/filestuff.c (fdwalk): Remove inner declaration of
426         "result".
427
428 2018-10-04  Tom Tromey  <tom@tromey.com>
429
430         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
431         "structs_addr" and hoist declaration.
432
433 2018-10-04  Tom Tromey  <tom@tromey.com>
434
435         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
436         variable "size".
437
438 2018-10-04  Tom Tromey  <tom@tromey.com>
439
440         * mdebugread.c (parse_partial_symbols): Use std::string.
441
442 2018-10-04  Tom Tromey  <tom@tromey.com>
443
444         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
445         * p-valprint.c (pascal_val_print): Split inner "i" variable.
446         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
447         header.
448         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
449         more inner scope.
450         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
451         * varobj.c (varobj_update): Rename inner "newobj",
452         "type_changed".
453         * valprint.c (generic_emit_char): Rename inner "buf".
454         * valops.c (find_overload_match): Rename inner "temp".
455         (value_struct_elt_for_reference): Declare "v" in more inner
456         scope.
457         * v850-tdep.c (v850_push_dummy_call): Rename "len".
458         * unittests/array-view-selftests.c (run_tests): Rename inner
459         "vec".
460         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
461         header.
462         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
463         "tsv" in more inner scope.
464         (print_one_static_tracepoint_marker): Rename inner
465         "tuple_emitter".
466         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
467         (tic6x_push_dummy_call): Don't redeclare "addr".
468         * target-float.c: Declare "dto" lower.
469         * symtab.c (lookup_local_symbol): Rename inner "sym".
470         (find_pc_sect_line): Rename inner "pc".
471         * stack.c (print_frame): Don't redeclare "gdbarch".
472         (return_command): Rename inner "gdbarch".
473         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
474         "sp".
475         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
476         header.
477         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
478         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
479         scope.
480         * remote.c (remote_target::update_thread_list): Don't redeclare
481         "tp".
482         (remote_target::process_initial_stop_replies): Rename inner
483         "thread".
484         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
485         (remote_target::wait_as): Don't redeclare "stop_reply".
486         (remote_target::get_thread_local_address): Rename inner
487         "result".
488         (remote_target::get_tib_address): Likewise.
489
490         * regcache.c (cooked_read_test): Rename "regnum".
491         * record-btrace.c (cmd_record_btrace_start): Rename inner
492         "exception".
493         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
494         loop header.
495         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
496         header.
497         (ppu2spu_sniffer): Rename inner "buf".
498         * parse.c (operator_check_standard): Rename inner "type",
499         "objfile".
500         * p-valprint.c (pascal_val_print): Introduce new scope for
501         "low_bound", "high_bound".
502         * p-exp.y (yylex): Declare "i" in loop header.
503         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
504         Lower declaration of "s".
505         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
506         header.
507         (nios2_push_dummy_call): Rename "len".
508         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
509         "buf".
510         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
511         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
512         (linux_xfer_osdata_modules): Likewise.
513         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
514         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
515         (mips_o64_push_dummy_call): Likewise.
516         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
517         "op".
518         * mi/mi-main.c (list_available_thread_groups): Rename inner
519         "tuple_emitter".
520         (mi_cmd_data_read_memory): Rename inner "opts".
521         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
522         "tuple_emitter".
523         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
524         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
525         more inner scope.
526         (parse_partial_symbols): Rename inner "pst", "p", "name"
527         * main.c (captured_main_1): Rename inner "i"s.
528         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
529         "oso2".
530         * linux-tdep.c (linux_info_proc): Rename inner "filename".
531         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
532         * infrun.c (handle_no_resumed): Don't redeclare "thread".
533         (handle_signal_stop): Rename inner "gdbarch".
534         (handle_command): Declare "signum" in loop header.
535         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
536         "status".
537         (examine_prologue): Rename inner "sol" and "sof".
538         (ia64_extract_return_value): Rename inner "val".  Declare another
539         "val" in a more inner scope.
540         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
541         inner scope.
542         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
543         "except".
544         * findvar.c (default_read_var_value): Don't redeclare "addr".
545         * f-exp.y (yylex): Declare "i" in loop header.
546         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
547         Rename inner "type", "expect_type".
548         (evaluate_subexp_for_sizeof): Rename inner "pc".
549         * elfread.c (elf_symfile_read): Rename inner "abfd".
550         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
551         "bytes_read".
552         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
553         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
554         (dwarf_decode_line_header): Rename inner "lh".
555         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
556         "offset".  Declare "i" in loop header.
557         (disassemble_dwarf_expression): Rename inner "addr_size".
558         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
559         inner "result".
560         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
561         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
562         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
563         "inner_list_emitter".
564         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
565         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
566         declaration in a block.
567         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
568         * cp-valprint.c (cp_print_value_fields): Don't redeclare
569         "obstack_final_size".
570         * cp-support.c (inspect_type): Declare "i" in loop header.
571         * compile/compile.c (compile_instance::insert_symbol_error):
572         Rename inner "e".
573         * common/agent.c (agent_run_command): Remove inner "ret"
574         declaration.
575         * coffread.c (coff_symfile_read): Rename inner "name".
576         (coff_symfile_read): Rename inner "abfd".
577         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
578         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
579         "high".
580         * c-exp.y (lex_one_token): Move "len" declaration lower.
581         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
582         "gdbarch".
583         (create_exception_master_breakpoint): Likewise.  Don't redeclare
584         "b".
585         (watch_command_1): Declare "mark" later.
586         (clear_command): Don't shadow "a" or "b".
587         (delete_command): Rename inner "b".
588         (delete_trace_command): Likewise.
589         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
590         "op".
591         (arm_gdbarch_init): Remove inner "e_flags".
592         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
593         "offset" in inner blocks.
594
595 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
596
597         * dwarf-index-write.c (file_write): Don't write if the vector is
598         empty.
599
600 2018-10-05  Tom de Vries  <tdevries@suse.de>
601
602         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
603         PyArg_ParseTuple call.
604
605 2018-10-05  Tom de Vries  <tdevries@suse.de>
606
607         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
608         PyArg_ParseTuple call.
609
610 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
611
612         * psymtab.c (recursively_search_psymtabs): Reformat parameters
613         to avoid exceeding 80 characters per line limit.
614
615 2018-10-04  Tom Tromey  <tom@tromey.com>
616
617         * symfile.c (syms_from_objfile_1, finish_new_objfile)
618         (reread_symbols): Update.
619         * complaints.h (clear_complaints): Remove argument.
620         * complaints.c (enum complaint_series): Remove.
621         (series): Remove global.
622         (complaint_internal): Update.
623         (clear_complaints): Remove argument.
624
625 2018-10-04  Tom Tromey  <tom@tromey.com>
626
627         * symfile.c (symbol_file_add_with_addrs): Do not print "no
628         debugging symbols" message if there is a separate debug objfile.
629
630 2018-10-04  Tom Tromey  <tom@tromey.com>
631
632         PR cli/19551:
633         * symfile.c (symbol_file_add_with_addrs): Update output.
634         * psymtab.c (require_partial_symbols): Update output.
635
636 2018-10-04  Tom Tromey  <tom@tromey.com>
637
638         PR cli/22234:
639         * complaints.c: Emit \n.
640
641 2018-10-04  Tom Tromey  <tom@tromey.com>
642
643         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
644         (separate_debug_file_exists, find_separate_debug_file)
645         (add_symbol_file_command, reread_symbols, allocate_symtab)
646         (allocate_compunit_symtab): Use filtered printing, not
647         unfiltered.
648         * psymtab.c (require_partial_symbols, dump_psymtab)
649         (allocate_psymtab): Use filtered printing, not unfiltered.
650
651 2018-10-04  Tom Tromey  <tom@tromey.com>
652
653         * complaints.c (complaint_internal): Correctly check complaint
654         count.
655
656 2018-10-04  Tom Tromey  <tom@tromey.com>
657
658         * complaints.h (struct complaints): Remove declaration.
659         * complaints.c (clear_complaints): Remove an unused variable.
660
661 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
662
663         * MAINTAINERS (Write After Approval): Add self.
664
665 2018-10-03  Tom Tromey  <tom@tromey.com>
666
667         * guile/scm-value.c (gdbscm_value_to_string): Initialize
668         "buffer_contents".
669         * coffread.c (coff_symtab_read): Initialize "newobj".
670
671 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
672
673         * dwarf2read.c (read_func_scope): Remove struct keyword in
674         range-based for.
675
676 2018-10-03  Tom Tromey  <tom@tromey.com>
677
678         * README: Mention --enable-ubsan.
679         * NEWS: Mention --enable-ubsan.
680         * acinclude.m4: Include sanitize.m4.
681         * configure: Rebuild.
682         * configure.ac: Call AM_GDB_UBSAN.
683         * sanitize.m4: New file.
684
685 2018-10-03  Tom Tromey  <tom@tromey.com>
686
687         * expression.h (enum exp_opcode): Use uint8_t as base type.
688         * expprint.c (op_name): Handle invalid opcodes.
689
690 2018-10-03  Tom Tromey  <tom@tromey.com>
691
692         * parse.c (prefixify_expression): Add assert.
693         (parse_exp_in_context_1): Throw exception if the expression is
694         empty.
695
696 2018-10-03  Tom Tromey  <tom@tromey.com>
697
698         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
699
700 2018-10-03  Tom Tromey  <tom@tromey.com>
701
702         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
703
704 2018-10-03  Tom Tromey  <tom@tromey.com>
705
706         * dwarf2read.c (read_subrange_type): Make "negative_mask"
707         unsigned.
708
709 2018-10-03  Tom Tromey  <tom@tromey.com>
710
711         * findvar.c (extract_integer): Do work in an unsigned type.
712
713 2018-10-03  Tom Tromey  <tom@tromey.com>
714
715         * common/enum-flags.h (enum_flags::operator~): Add static assert.
716         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
717         base type.
718         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
719         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
720         type.
721         * c-lang.h (enum c_string_type_values): Use unsigned as base
722         type.
723         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
724
725 2018-10-03  Tom Tromey  <tom@tromey.com>
726
727         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
728         <~dwarf2_frame_state_reg_info>: Update.
729         <dwarf2_frame_state_reg_info>: Update.
730         <alloc_regs>: Add assertion.  Update.
731         <reg>: Now a std::vector.
732         <num_regs>: Remove.
733         <swap>: Update.
734         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
735         (execute_cfa_program_test, dwarf2_frame_cache): Update.
736
737 2018-10-03  Tom Tromey  <tom@tromey.com>
738
739         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
740
741 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
742
743         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
744
745 2018-10-02  Tom Tromey  <tom@tromey.com>
746
747         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
748
749 2018-10-02  John Darrington <john@darrington.wattle.id.au>
750
751         * NEWS: Mention changed commands.
752         * ser-uds.c: New file.
753         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
754         * configure: Regenerate.
755         * Makefile.in: Add new file.
756         * serial.c (serial_open): Check if filename is a socket
757           and lookup the appropriate interface accordingly.
758
759 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
760
761         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
762         define.
763         (AARCH64_EXTRA_MAGIC): Likewise.
764         (AARCH64_FPSIMD_MAGIC): Likewise.
765         (AARCH64_SVE_MAGIC): Likewise.
766         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
767         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
768         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
769         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
770         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
771         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
772         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
773         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
774         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
775         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
776         (read_aarch64_ctx): Add function.
777         (aarch64_linux_sigframe_init): Detect FP registers.
778
779 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
780
781         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
782         (AARCH64_D0_REGNUM): Likewise.
783         (AARCH64_S0_REGNUM): Likewise.
784         (AARCH64_H0_REGNUM): Likewise.
785         (AARCH64_B0_REGNUM): Likewise.
786         (AARCH64_SVE_V0_REGNUM): Likewise.
787         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
788         (AARCH64_D0_REGNUM): Likewise.
789         (AARCH64_S0_REGNUM): Likewise.
790         (AARCH64_H0_REGNUM): Likewise.
791         (AARCH64_B0_REGNUM): Likewise.
792         (AARCH64_SVE_V0_REGNUM): Likewise.
793
794 2018-10-01  Gary Benson <gbenson@redhat.com>
795
796         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
797         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
798         prfpregset_t instead of gdb_prfpregset_t.
799         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
800         * configure, config.in: Rebuild.
801
802 2018-10-01  Gary Benson <gbenson@redhat.com>
803
804         * common/gdb_proc_service.h: New file, factored out from...
805         * gdb_proc_service.h: Moved common code to the above file.
806         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
807
808 2018-10-01  Gary Benson <gbenson@redhat.com>
809
810         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
811         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
812
813 2018-10-01  Gary Benson <gbenson@redhat.com>
814
815         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
816         (AC_CHECK_HEADERS): Check for linux/elf.h.
817         * configure, config.in: Rebuild.
818         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
819         doesn't define elf_fpregset_t.
820
821 2018-10-01  Gary Benson <gbenson@redhat.com>
822
823         * gdb_proc_service.h: Whitespace change.
824
825 2018-10-01  Tom Tromey  <tom@tromey.com>
826
827         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
828         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
829         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
830
831 2018-10-01  Tom Tromey  <tom@tromey.com>
832
833         * README: Minor change.
834
835 2018-09-30  Pedro Alves  <palves@redhat.com>
836
837         * darwin-nat-info.c (darwin_debug_regions_recurse)
838         (info_mach_exceptions_command): Remove unused local variables.
839         * darwin-nat.c (darwin_decode_notify_message)
840         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
841         (darwin_stop_inferior, darwin_setup_exceptions)
842         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
843         (darwin_nat_target::attach, darwin_nat_target::detach)
844         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
845         local variables.
846         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
847         variables.
848
849 2018-09-29  Tom Tromey  <tom@tromey.com>
850
851         * README: Remove some leftover text.
852
853 2018-09-29  Tom Tromey  <tom@tromey.com>
854
855         * PROBLEMS: Rewrite.
856         * README: Update.
857
858 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
859
860         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
861         case with explicit breakpoint kind.
862         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
863         'additional_info' and related logic.
864         (riscv_debug_breakpoints): New variable.
865         (riscv_breakpoint_kind_from_pc): Use the length of the existing
866         instruction to determine the breakpoint kind.
867         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
868         flag.  Update description of 'set/show riscv
869         use-compressed-breakpoints' flag.
870
871 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
872
873         (NEWS): Mention changes to frame related commands.
874         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
875         (add_prefix_cmd_suppress_notification): New function.
876         (add_com_suppress_notification): Call
877         add_cmd_suppress_notification.
878         * command.h (add_cmd_suppress_notification): Declare.
879         (add_prefix_cmd_suppress_notification): Declare.
880         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
881         (parse_frame_specification): Moved from stack.c, with
882         simplification to handle a single argument.
883         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
884         switch to the selected frame.  Add a header comment.
885         * stack.c: Remove 'safe-ctype.h' include.
886         (find_frame_for_function): Add declaration.
887         (find_frame_for_address): New function.
888         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
889         (frame_selection_by_function_completer): New function.
890         (info_frame_command): Rename to...
891         (info_frame_command_core): ...this, and update parameter types.
892         (select_frame_command): Rename to...
893         (select_frame_command_core): ...this, and update parameter types.
894         (frame_command): Rename to...
895         (frame_command_core): ...this, and update parameter types.
896         (class frame_command_helper): New class to wrap implementations of
897         frame related sub-commands.
898         (frame_apply_cmd_list): New static global.
899         (frame_cmd_list): Make static.
900         (select_frame_cmd_list): New global for sub-commands.
901         (info_frame_cmd_list): New global for sub-commands.
902         (_initialize_stack): Register sub-commands for 'frame',
903         'select-frame', and 'info frame'.  Update 'frame apply' commands
904         to use frame_apply_cmd_list.  Move function local static
905         frame_apply_list to file static frame_apply_cmd_list for
906         consistency.
907         * stack.h (select_frame_command): Delete declarationn.
908         (select_frame_for_mi): Declare new function.
909
910 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
911
912         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
913         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
914         and NOP.
915
916 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
917
918         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
919
920 2018-09-26  Tom Tromey  <tom@tromey.com>
921
922         * valops.c (auto_abandon): Remove dead code.
923
924 2018-09-26  Tom Tromey  <tom@tromey.com>
925
926         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
927
928 2018-09-24  Tom Tromey  <tom@tromey.com>
929
930         * common/pathstuff.c (get_standard_cache_dir): Make
931         "xdg_cache_home" and "home" const.
932         * top.c (init_history): Make "tmpenv" const.
933         * main.c (get_init_files): Make "homedir" const.
934
935 2018-09-23  Tom Tromey  <tom@tromey.com>
936
937         PR python/18852:
938         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
939
940 2018-09-23  Tom Tromey  <tom@tromey.com>
941
942         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
943         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
944         * python/python-internal.h (gdbpy_handle_exception): Declare.
945         * python/py-utils.c (gdbpy_handle_exception): New function.
946
947 2018-09-23  Tom Tromey  <tom@tromey.com>
948
949         PR python/17284:
950         * python/py-type.c (typy_template_argument): Check for negative
951         argument number.
952
953 2018-09-23  Tom Tromey  <tom@tromey.com>
954
955         PR python/14062:
956         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
957
958 2018-09-23  Tom Tromey  <tom@tromey.com>
959
960         PR python/18170:
961         * python/py-value.c (valpy_int): Allow conversion from pointer
962         type.
963
964 2018-09-23  Tom Tromey  <tom@tromey.com>
965
966         PR python/20126:
967         * python/py-value.c (valpy_int): Respect type sign.
968
969 2018-09-23  Tom Tromey  <tom@tromey.com>
970
971         PR python/18352;
972         * python/py-value.c (valpy_float): Allow conversions from int or
973         char.
974         (valpy_int, valpy_long): Allow conversions from float.
975
976 2018-09-23  Tom Tromey  <tom@tromey.com>
977
978         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
979         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
980
981 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
982
983         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
984         __sighndlr.
985         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
986
987 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
988
989         * windows-nat.c (windows_nat_target::wait): Remove a spurious
990         target_terminal::ours().
991
992 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
993
994         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
995         of vl to ULONGEST.
996
997 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
998
999         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1000         redundant condition.
1001
1002 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1003
1004         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1005
1006         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1007         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1008         * sol-thread.c (ps_pdmodel): Don't guard definition.
1009
1010         * procfs.c: Fix formatting.
1011
1012         * procfs.c (sysset_t_alloc): Remove.
1013         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1014         (procfs_debug_inferior): Likewise.
1015         (procfs_set_exec_trap): Likewise.
1016         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1017         (proc_set_traced_sysexit): Likewise.
1018
1019         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1020         (dead_procinfo): Likewise.
1021         (proc_warn): Likewise.
1022         (proc_error): Likewise.
1023         (proc_get_LDT_entry): Likewise.
1024         (do_attach): Likewise.
1025         (procfs_target::pid_to_str): Likewise.
1026         (iterate_over_mappings): Likewise.
1027
1028         * procfs.c (create_procinfo): Fix ARI warning.
1029         (proc_get_status): Likewise.
1030         (proc_stop_process): Likewise.
1031         (proc_run_process): Likewise.
1032         (proc_kill): Likewise.
1033         (proc_get_LDT_entry): Likewise.
1034         (procfs_find_LDT_entry): Likewise.
1035         (proc_update_threads): Likewise.
1036         (proc_iterate_over_threads): Likewise.
1037         (do_attach): Likewise.
1038         (procfs_xfer_memory): Likewise.
1039         (invalidate_cache): Likewise.
1040         (procfs_target::resume): Likewise.
1041         (procfs_init_inferior): Likewise.
1042         (procfs_set_exec_trap): Likewise.
1043         (procfs_target::thread_alive): Likewise.
1044         (procfs_target::pid_to_exec_file): Likewise.
1045         (iterate_over_mappings): Likewise.
1046         (procfs_target::make_corefile_notes): Likewise.
1047         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1048
1049         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1050         (procfs_find_LDT_entry): Likewise.
1051         * sol-thread.c (ps_lgetLDT): Likewise.
1052
1053 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1054
1055         PR tdep/17903
1056         * procfs.c (procfs_target): Declare pid_to_exec_file.
1057         (procfs_target::pid_to_exec_file): New.
1058
1059 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1060
1061         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1062         renaming.
1063         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1064         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1065
1066 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1067
1068         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1069         (supply_fpregset, fill_fpregset): Move ...
1070         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1071         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1072         Remove references to ioctl-based procfs.
1073         Include <sys/reg.h>.
1074         Remove PR_MODEL_NATIVE guards.
1075         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1076         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1077
1078 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1079
1080         PR gdb/20981:
1081         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1082         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1083         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1084
1085 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1086
1087         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1088         (fbsd_print_sockaddr_in6): Likewise.
1089
1090 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1091             Chris January  <chris.january@arm.com>
1092
1093         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1094         (evaluate_subexp_standard): Return a dummy type when
1095         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1096         OP_F77_UNDETERMINED_ARGLIST case.
1097         * expression.h (enum noside): Update comment.
1098
1099 2018-09-19  George Vasick <george.vasick@oracle.com>
1100
1101         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1102
1103 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1104             April Chin <april.chin@oracle.com>
1105             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1106
1107         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1108         uint_t lwpid_t.
1109         (create_procinfo): Print pids in /proc without leading zeros.
1110
1111 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1112
1113         * nios2-tdep.c (nios2_gcc_target_options): New.
1114         (nios2_gdb_arch_init): Install new hook.
1115
1116 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1117
1118         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1119         New file.
1120         * update-gnulib.sh: Apply patch.
1121         * configure: Re-generate.
1122
1123 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1124
1125         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1126         description.  Make "info proc" command descriptions more
1127         consistent.
1128
1129 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1130
1131         * NEWS: Mention 'info proc files' command.
1132
1133 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1134
1135         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1136         descriptors for IP_FILES and IP_ALL.
1137
1138 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1139
1140         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1141         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1142         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1143         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1144         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1145         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1146         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1147         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1148         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1149         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1150         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1151         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1152         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1153         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1154         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1155         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1156         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1157         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1158         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1159         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1160         (struct fbsd_sockaddr_un): New types.
1161         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1162         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1163         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1164         (fbsd_core_info_proc_files): New functions.
1165         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1166         IP_ALL.
1167         * fbsd-tdep.h (fbsd_info_proc_files_header)
1168         (fbsd_info_proc_files_entry): New.
1169
1170 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1171
1172         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1173         * infcmd.c (info_proc_cmd_files): New function.
1174         (_initialize_infcmd): Register 'info proc files' command.
1175
1176 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1177
1178         * gnulib/aclocal-m4-deps.mk: Re-generate.
1179         * gnulib/aclocal.m4: Re-generate.
1180         * gnulib/config.in: Re-generate.
1181         * gnulib/configure: Re-generate.
1182         * gnulib/import/Makefile.am: Re-generate.
1183         * gnulib/import/Makefile.in: Re-generate.
1184         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1185         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1186         * gnulib/import/arpa_inet.in.h: New file.
1187         * gnulib/import/inet_ntop.c: New file.
1188         * gnulib/import/m4/arpa_inet_h.m4: New file.
1189         * gnulib/import/m4/inet_ntop.m4: New file.
1190         * gnulib/import/m4/netinet_in_h.m4: New file.
1191         * gnulib/import/m4/socklen.m4: New file.
1192         * gnulib/import/m4/sockpfaf.m4: New file.
1193         * gnulib/import/m4/stdalign.m4: New file.
1194         * gnulib/import/m4/sys_uio_h.m4: New file.
1195         * gnulib/import/netinet_in.in.h: New file.
1196         * gnulib/import/stdalign.in.h: New file.
1197         * gnulib/import/sys_socket.c: New file.
1198         * gnulib/import/sys_socket.in.h: New file.
1199         * gnulib/import/sys_uio.in.h: New file.
1200         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1201         module.
1202
1203 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1204
1205         * gnulib/aclocal-m4-deps.mk: New file.
1206         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1207         deterministically.
1208
1209 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1210
1211         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1212         KVE_PATH.
1213
1214 2018-09-18  Tom Tromey  <tom@tromey.com>
1215
1216         * compile/compile-object-load.c (struct
1217         link_hash_table_cleanup_data): Add constructor and destructor.
1218         Use DISABLE_COPY_AND_ASSIGN.
1219         (~link_hash_table_cleanup_data): Rename from
1220         link_hash_table_free.  Now a destructor.
1221         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1222
1223 2018-09-18  Tom Tromey  <tom@tromey.com>
1224
1225         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1226         * compile/compile-object-load.c (struct munmap_list): Move to
1227         header file.
1228         (munmap_list::add): Rename from munmap_list_add; rewrite.
1229         (munmap_list::~munmap_list): Rename from munmap_list_free.
1230         (munmap_listp_free_cleanup): Remove.
1231         (compile_object_load): Update.
1232         * compile/compile-object-load.h (struct munmap_list): Move from
1233         compile-object-load.c.  Rewrite.
1234
1235 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1236
1237         * aarch64-tdep.c (pass_in_v): Use register size.
1238         (aarch64_extract_return_value): Likewise.
1239         (aarch64_store_return_value): Likewise.
1240
1241 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1242
1243         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1244         rlim_t.
1245
1246 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1247
1248         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1249         Fix short help line.
1250
1251 2018-09-17  Tom Tromey  <tom@tromey.com>
1252
1253         PR python/20445:
1254         * configure: Rebuild.
1255         * configure.ac: Conditionally use -DNDEBUG for Python.
1256
1257 2018-09-17  Tom Tromey  <tom@tromey.com>
1258
1259         * configure: Rebuild.
1260         * configure.ac: Use gmp as a library dependency when checking for
1261         mpfr.
1262
1263 2018-09-17  Pedro Alves  <palves@redhat.com>
1264
1265         * python/py-inferior.c (find_inferior_object): Delete.
1266
1267 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1268
1269         * compile/compile-cplus-types.c
1270         (compile_cplus_instance::enter_scope): Don't use new_scope after
1271         std::move.
1272
1273 2018-09-17  Tom Tromey  <tom@tromey.com>
1274
1275         * common/pathstuff.c (get_standard_cache_dir): Use
1276         ~/Library/Caches on macOS.
1277         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1278
1279 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1280
1281         PR python/23669
1282         * breakpoint.c (commands_cmd_element): New.
1283         (_initialize_breakpoint): Assign commands_cmd_element.
1284         * breakpoint.h (commands_cmd_element): New.
1285         * cli/cli-script.c (while_cmd_element, if_command,
1286         define_cmd_element): New.
1287         (command_name_equals): Remove.
1288         (process_next_line): Compare commands by pointer, not by name.
1289         (_initialize_cli_script): Assign the various cmd_list_element
1290         variables.
1291         * compile/compile.c (compile_cmd_element): New.
1292         (_initialize_compile): Assign compile_cmd_element.
1293         * compile/compile.h (compile_cmd_element): New.
1294         * guile/guile.c (guile_cmd_element): New.
1295         (install_gdb_commands): Assign guile_cmd_element.
1296         * guile/guile.h (guile_cmd_element): New.
1297         * python/python.c (python_cmd_element): New.
1298         (_initialize_python): Assign python_cmd_element.
1299         * python/python.h (python_cmd_element): New.
1300         * tracepoint.c (while_stepping_cmd_element): New.
1301         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1302         * tracepoint.h (while_stepping_cmd_element): New.
1303
1304 2018-09-17  Tom Tromey  <tom@tromey.com>
1305
1306         * infrun.c (save_infcall_suspend_state): Return
1307         infcall_suspend_state_up.
1308         (save_infcall_control_state): Return infcall_control_state_up.
1309         * inferior.h (save_infcall_suspend_state)
1310         (save_infcall_control_state): Declare later.  Return unique
1311         pointers.
1312
1313 2018-09-17  Tom Tromey  <tom@tromey.com>
1314
1315         * infrun.c (struct stop_context): Declare constructor,
1316         destructor, "changed" method.
1317         (stop_context::stop_context): Rename from save_stop_context.
1318         (stop_context::~stop_context): Rename from
1319         release_stop_context_cleanup.
1320         (normal_stop): Update.
1321         (stop_context::changed): Rename from stop_context_changed.  Return
1322         bool.
1323
1324 2018-09-17  Tom Tromey  <tom@tromey.com>
1325
1326         * inferior.h (struct infcall_suspend_state_deleter): New.
1327         (infcall_suspend_state_up): New typedef.
1328         (struct infcall_control_state_deleter): New.
1329         (infcall_control_state_up): New typedef.
1330         (make_cleanup_restore_infcall_suspend_state)
1331         (make_cleanup_restore_infcall_control_state): Don't declare.
1332         * infcall.c (call_function_by_hand_dummy): Update.
1333         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1334         (make_cleanup_restore_infcall_suspend_state): Remove.
1335         (do_restore_infcall_control_state_cleanup)
1336         (make_cleanup_restore_infcall_control_state): Remove.
1337
1338 2018-09-17  Tom Tromey  <tom@tromey.com>
1339
1340         * gdbthread.h (struct thread_control_state): Add initializer.
1341         (class thread_info) <control>: Remove initializer.
1342         * inferior.h (struct inferior_control_state): Add initializer.
1343         (class inferior) <control>: Remove initializer.
1344         (exit_inferior_1): Update.
1345         * infrun.c (struct infcall_control_state): Add constructors.
1346         (save_infcall_control_state): Use new.
1347         (restore_infcall_control_state, discard_infcall_control_state):
1348         Use delete.
1349
1350 2018-09-17  Tom Tromey  <tom@tromey.com>
1351
1352         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1353         unique_ptr.
1354         <siginfo_data>: Now a unique_xmalloc_ptr.
1355         (save_infcall_suspend_state, restore_infcall_suspend_state)
1356         (discard_infcall_suspend_state)
1357         (get_infcall_suspend_state_regcache): Update.
1358
1359 2018-09-17  Tom Tromey  <tom@tromey.com>
1360
1361         * gdbthread.h (struct thread_suspend_state): Add initializers.
1362         (class thread_info) <suspend>: Remove initializer.
1363         * infrun.c (struct infcall_suspend_state): Add initializers.
1364         (save_infcall_suspend_state): Use new.
1365         (discard_infcall_suspend_state): Use delete.
1366
1367 2018-09-16  Tom Tromey  <tom@tromey.com>
1368
1369         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1370         Remove.
1371         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1372         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1373         (py_varobj_iter_new): Likewise.
1374         (py_varobj_get_iterator): Use gdbpy_ref.
1375
1376 2018-09-16  Tom Tromey  <tom@tromey.com>
1377
1378         * python/py-threadevent.c (py_get_event_thread): Simplify.
1379         * python/py-inferior.c (infpy_thread_from_thread_handle):
1380         Return immediately after calling thread_to_thread_object.  Use
1381         Py_RETURN_NONE.
1382         (thread_to_thread_object): Set the exception on a NULL return.
1383
1384 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1385
1386         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1387
1388 2018-09-16  Tom Tromey  <tom@tromey.com>
1389
1390         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1391         Remove.
1392
1393 2018-09-16  Tom Tromey  <tom@tromey.com>
1394
1395         * python/python-internal.h (thread_to_thread_object): Change
1396         return type.
1397         * python/py-inferior.c (thread_to_thread_object): Return a new
1398         reference.
1399         (infpy_thread_from_thread_handle): Update.
1400         * python/py-infthread.c (gdbpy_selected_thread): Update.
1401         * python/py-stopevent.c (create_stop_event_object): Update.
1402         * python/py-threadevent.c (py_get_event_thread): Return a new
1403         reference.
1404         (py_get_event_thread): Update.
1405         * python/py-event.h (py_get_event_thread): Change return type.
1406         * python/py-continueevent.c (create_continue_event_object):
1407         Update.
1408
1409 2018-09-16  Tom Tromey  <tom@tromey.com>
1410
1411         * python/py-progspace.c (pspy_get_objfiles): Update.
1412         * python/python-internal.h (objfile_to_objfile_object): Change
1413         return type.
1414         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1415         Update.
1416         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1417         Update.
1418         * python/python.c (gdbpy_get_current_objfile): Update.
1419         (gdbpy_objfiles): Update.
1420         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1421         Update.
1422         (objfile_to_objfile_object): Return a new reference.
1423         * python/py-symtab.c (stpy_get_objfile): Update.
1424         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1425         Update.
1426
1427 2018-09-16  Tom Tromey  <tom@tromey.com>
1428
1429         * python/py-inferior.c (infpy_get_progspace): Update.
1430         * python/python-internal.h (pspace_to_pspace_object): Change
1431         return type.
1432         * python/py-newobjfileevent.c
1433         (create_clear_objfiles_event_object): Update.
1434         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1435         Update.
1436         * python/python.c (gdbpy_get_current_progspace): Update.
1437         (gdbpy_progspaces): Update.
1438         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1439         reference.
1440         * python/py-objfile.c (objfpy_get_progspace): Update.
1441         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1442         Update.
1443
1444 2018-09-16  Tom Tromey  <tom@tromey.com>
1445
1446         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1447         (solib_name, block_for_pc, find_pc_line): New functions.
1448         (execute_unwinders): Update.
1449         * python/py-block.c (gdbpy_block_for_pc): Remove.
1450         * python/py-inferior.c (infpy_get_progspace): New function.
1451         (inferior_object_getset) <progspace>: Add.
1452         * python/py-progspace.c (pspy_objfiles): Rewrite.
1453         (pspy_solib_name, pspy_block_for_pc)
1454         (pspy_find_pc_line, pspy_is_valid): New functions.
1455         (progspace_object_methods): Add entries for solib_name,
1456         block_for_pc, find_pc_line, is_valid.
1457         * python/python-internal.h (gdbpy_block_for_pc)
1458         (build_objfiles_list): Don't declare.
1459         * python/python.c: Don't include solib.h.
1460         (gdbpy_solib_name, gdbpy_find_pc_line)
1461         (gdbpy_get_current_progspace, build_objfiles_list)
1462         (gdbpy_objfiles): Remove.
1463         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1464         solib_name, find_pc_line>: Remove entries.
1465
1466 2018-09-16  Tom Tromey  <tom@tromey.com>
1467
1468         * top.c (new_ui_command): Use GNU style for metasyntactic
1469         variables.
1470         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1471         variables.
1472         * maint.c (maintenance_translate_address): Remove "<>" around
1473         text.
1474         * interps.c (interpreter_exec_cmd): Use GNU style for
1475         metasyntactic variables.
1476         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1477         metasyntactic variables.
1478         * tracepoint.c (tfind_range_command): Use GNU style for
1479         metasyntactic variables.
1480         (tfind_outside_command): Likewise.
1481         (_initialize_tracepoint): Likewise.
1482         * remote.c (extended_remote_target::create_inferior): Use GNU
1483         style for metasyntactic variables.
1484         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1485         metasyntactic variables.
1486         (adi_assign_command): Likewise.
1487
1488 2018-09-16  Tom Tromey  <tom@tromey.com>
1489
1490         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1491         metasyntactic variables.  Print message if no disassembler options
1492         are available.
1493
1494 2018-09-15  Tom Tromey  <tom@tromey.com>
1495
1496         * infcmd.c (get_inferior_args): Return const char *.
1497         * inferior.h (get_inferior_args): Return type now const.
1498         * linux-tdep.c (linux_fill_prpsinfo): Update.
1499         * procfs.c (procfs_target::make_corefile_notes): Update.
1500
1501 2018-09-07  Tom Tromey  <tom@tromey.com>
1502
1503         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1504         inside the TRY.
1505
1506 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1507
1508         * nios2-tdep.c (nios2_type_align): New.
1509         (nios2_gdb_arch_init): Install type_align hook.
1510
1511 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1512
1513         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1514         type that is neither object file owned, nor gdbarch owned.
1515         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1516         gdbarch is non-NULL.
1517         (alloc_type_instance): Allocate non-objfile owned types on the
1518         gdbarch obstack.
1519         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1520         using TYPE_ALLOC to ensure memory is allocated on the correct
1521         obstack.
1522         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1523         obstack, or the gdbarch obstack.
1524         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1525
1526 2018-09-14  Tom Tromey  <tom@tromey.com>
1527
1528         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1529         block.
1530
1531 2018-09-14  Tom Tromey  <tom@tromey.com>
1532
1533         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1534
1535 2018-09-13  Tom Tromey  <tom@tromey.com>
1536
1537         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1538         static.
1539
1540 2018-09-13  Tom Tromey  <tom@tromey.com>
1541
1542         * exec.c (try_open_exec_file): Use std::string.
1543
1544 2018-09-13  Tom Tromey  <tom@tromey.com>
1545
1546         * utils.h (gdb_bfd_errmsg): Return std::string.
1547         * exec.c (exec_file_attach): Update.
1548         * compile/compile-object-load.c (compile_object_load): Update.
1549         * utils.c (gdb_bfd_errmsg): Return std::string.
1550
1551 2018-09-13  Tom Tromey  <tom@tromey.com>
1552
1553         * procfs.c (struct procinfo_deleter): New.
1554         (procinfo_up): New typedef.
1555         (do_destroy_procinfo_cleanup): Remove.
1556         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
1557
1558 2018-09-13  Tom Tromey  <tom@tromey.com>
1559
1560         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
1561
1562 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1563 2018-09-13  Tom Tromey  <tom@tromey.com>
1564
1565         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
1566         (pspy_get_objfiles): New function.
1567         (progspace_object_methods): New.
1568         (pspace_object_type): Add tp_methods callback.
1569         * python/python-internal.h (build_objfiles_list): New
1570         declaration.
1571         * python/python.c (build_objfiles_list): New function.
1572         (gdbpy_objfiles): Implement using build_objfiles_list.
1573         * NEWS: Mention the Progspace.objfiles method.
1574
1575 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1576
1577         * python/py-inferior.c (infpy_get_progspace): New function.
1578         (inferior_object_getset): Add progspace property.
1579         * NEWS: Mention the new property.
1580
1581 2018-09-13  Tom Tromey  <tom@tromey.com>
1582
1583         PR rust/23650:
1584         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
1585
1586 2018-09-13  Tom Tromey  <tom@tromey.com>
1587
1588         PR rust/23626:
1589         * rust-lang.c (rust_enum_variant): Now static.
1590         (rust_empty_enum_p): New function.
1591         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
1592         Handle empty enum.
1593
1594 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1595
1596         * python/py-inferior.c (infpy_repr): New.
1597         (inferior_object_type): Register infpy_repr.
1598         * python/py-objfile.c (objfpy_repr): New.
1599         (objfile_object_type): Register objfpy_repr.
1600
1601 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1602
1603         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
1604
1605 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1606
1607         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
1608         typo.
1609
1610 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
1611
1612         * common/common-utils.c: Don't include '<sys/stat.h>'.
1613         (is_regular_file): Move to...
1614         * common/filestuff.c (is_regular_file): ... here.
1615         * common/common-utils.h (is_regular_file): Move to...
1616         * common/filestuff.h (is_regular_file): ... here.
1617
1618 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
1619
1620         * skip.c (debug_skip): New variable.
1621         (skiplist_entry::do_skip_file_p): Add debug output.
1622         (skiplist_entry::do_skip_gfile_p): Likewise.
1623         (skiplist_entry::skip_function_p): Likewise.
1624         (_initialize_step_skip): Create debug command.
1625         * NEWS: Mention set/show debug skip.
1626
1627 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1628
1629         * darwin-nat.c (should_disable_startup_with_shell):
1630         New function.
1631         (darwin_nat_target::create_inferior): Add call.
1632
1633 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1634
1635         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
1636         inf_port, msg_state>: Initialize.
1637         (struct darwin_thread_info) <signaled, single_step>: Change
1638         type and initialize.
1639         (struct darwin_thread_info) <event>: Initialize.
1640
1641 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1642
1643         PR gdb/23555
1644         PR gdb/23558
1645         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
1646         guesses.
1647
1648 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1649
1650         Revert:
1651         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1652
1653         PR gdb/23555
1654         PR gdb/23558
1655         * gnulib/aclocal.m4: Regenerate.
1656         * gnulib/config.in: Regenerate.
1657         * gnulib/configure: Regenerate.
1658         * gnulib/import/Makefile.am: Update.
1659         * gnulib/import/Makefile.in: Update.
1660         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1661         * gnulib/import/_Noreturn.h: ... this.
1662         * gnulib/import/alloca.in.h: Update.
1663         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
1664         * gnulib/import/arg-nonnull.h: ... this.
1665         * gnulib/import/assure.h: Update.
1666         * gnulib/import/at-func.c: Update.
1667         * gnulib/import/basename-lgpl.c: Update.
1668         * gnulib/import/extra/snippet/c++defs.h: Rename to...
1669         * gnulib/import/c++defs.h: ... this.
1670         * gnulib/import/canonicalize-lgpl.c: Update.
1671         * gnulib/import/cdefs.h: Update.
1672         * gnulib/import/chdir-long.c: Update.
1673         * gnulib/import/chdir-long.h: Update.
1674         * gnulib/import/cloexec.c: Update.
1675         * gnulib/import/cloexec.h: Update.
1676         * gnulib/import/close.c: Update.
1677         * gnulib/import/closedir.c: Update.
1678         * gnulib/import/config.charset: Update.
1679         * gnulib/import/dirent-private.h: Update.
1680         * gnulib/import/dirent.in.h: Update.
1681         * gnulib/import/dirfd.c: Update.
1682         * gnulib/import/dirname-lgpl.c: Update.
1683         * gnulib/import/dirname.h: Update.
1684         * gnulib/import/dosname.h: Update.
1685         * gnulib/import/dup-safer-flag.c: Update.
1686         * gnulib/import/dup-safer.c: Update.
1687         * gnulib/import/dup.c: Update.
1688         * gnulib/import/dup2.c: Update.
1689         * gnulib/import/errno.in.h: Update.
1690         * gnulib/import/error.c: Update.
1691         * gnulib/import/error.h: Update.
1692         * gnulib/import/exitfail.c: Update.
1693         * gnulib/import/exitfail.h: Update.
1694         * gnulib/import/extra/update-copyright: Update.
1695         * gnulib/import/fchdir.c: Update.
1696         * gnulib/import/fcntl.c: Update.
1697         * gnulib/import/fcntl.in.h: Update.
1698         * gnulib/import/fd-hook.c: Update.
1699         * gnulib/import/fd-hook.h: Update.
1700         * gnulib/import/fd-safer-flag.c: Update.
1701         * gnulib/import/fd-safer.c: Update.
1702         * gnulib/import/fdopendir.c: Update.
1703         * gnulib/import/filename.h: Update.
1704         * gnulib/import/filenamecat-lgpl.c: Update.
1705         * gnulib/import/filenamecat.h: Update.
1706         * gnulib/import/flexmember.h: Update.
1707         * gnulib/import/float+.h: Update.
1708         * gnulib/import/float.c: Update.
1709         * gnulib/import/float.in.h: Update.
1710         * gnulib/import/fnmatch.c: Update.
1711         * gnulib/import/fnmatch.in.h: Update.
1712         * gnulib/import/fnmatch_loop.c: Update.
1713         * gnulib/import/fpucw.h: Update.
1714         * gnulib/import/frexp.c: Update.
1715         * gnulib/import/frexpl.c: Update.
1716         * gnulib/import/fstat.c: Update.
1717         * gnulib/import/fstatat.c: Update.
1718         * gnulib/import/getcwd-lgpl.c: Update.
1719         * gnulib/import/getcwd.c: Update.
1720         * gnulib/import/getdtablesize.c: Update.
1721         * gnulib/import/getlogin_r.c: Update.
1722         * gnulib/import/getprogname.c: Update.
1723         * gnulib/import/getprogname.h: Update.
1724         * gnulib/import/gettext.h: Update.
1725         * gnulib/import/gettimeofday.c: Update.
1726         * gnulib/import/glob-libc.h: Update.
1727         * gnulib/import/glob.c: Update.
1728         * gnulib/import/glob.in.h: Update.
1729         * gnulib/import/glob_internal.h: Update.
1730         * gnulib/import/glob_pattern_p.c: Update.
1731         * gnulib/import/globfree.c: Update.
1732         * gnulib/import/hard-locale.c: Update.
1733         * gnulib/import/hard-locale.h: Update.
1734         * gnulib/import/intprops.h: Update.
1735         * gnulib/import/inttypes.in.h: Update.
1736         * gnulib/import/isnan.c: Update.
1737         * gnulib/import/isnand-nolibm.h: Update.
1738         * gnulib/import/isnand.c: Update.
1739         * gnulib/import/isnanl-nolibm.h: Update.
1740         * gnulib/import/isnanl.c: Update.
1741         * gnulib/import/itold.c: Update.
1742         * gnulib/import/libc-config.h: Update.
1743         * gnulib/import/limits.in.h: Update.
1744         * gnulib/import/localcharset.c: Update.
1745         * gnulib/import/localcharset.h: Update.
1746         * gnulib/import/localtime-buffer.c: Update.
1747         * gnulib/import/localtime-buffer.h: Update.
1748         * gnulib/import/lstat.c: Update.
1749         * gnulib/import/m4/00gnulib.m4: Update.
1750         * gnulib/import/m4/__inline.m4: Update.
1751         * gnulib/import/m4/absolute-header.m4: Update.
1752         * gnulib/import/m4/alloca.m4: Update.
1753         * gnulib/import/m4/builtin-expect.m4: Update.
1754         * gnulib/import/m4/canonicalize.m4: Update.
1755         * gnulib/import/m4/chdir-long.m4: Update.
1756         * gnulib/import/m4/close.m4: Update.
1757         * gnulib/import/m4/closedir.m4: Update.
1758         * gnulib/import/m4/configmake.m4: Update.
1759         * gnulib/import/m4/d-ino.m4: Update.
1760         * gnulib/import/m4/d-type.m4: Update.
1761         * gnulib/import/m4/dirent_h.m4: Update.
1762         * gnulib/import/m4/dirfd.m4: Update.
1763         * gnulib/import/m4/dirname.m4: Update.
1764         * gnulib/import/m4/double-slash-root.m4: Update.
1765         * gnulib/import/m4/dup.m4: Update.
1766         * gnulib/import/m4/dup2.m4: Update.
1767         * gnulib/import/m4/eealloc.m4: Update.
1768         * gnulib/import/m4/environ.m4: Update.
1769         * gnulib/import/m4/errno_h.m4: Update.
1770         * gnulib/import/m4/error.m4: Update.
1771         * gnulib/import/m4/exponentd.m4: Update.
1772         * gnulib/import/m4/exponentl.m4: Update.
1773         * gnulib/import/m4/extensions.m4: Update.
1774         * gnulib/import/m4/extern-inline.m4: Update.
1775         * gnulib/import/m4/fchdir.m4: Update.
1776         * gnulib/import/m4/fcntl-o.m4: Update.
1777         * gnulib/import/m4/fcntl.m4: Update.
1778         * gnulib/import/m4/fcntl_h.m4: Update.
1779         * gnulib/import/m4/fdopendir.m4: Update.
1780         * gnulib/import/m4/filenamecat.m4: Update.
1781         * gnulib/import/m4/flexmember.m4: Update.
1782         * gnulib/import/m4/float_h.m4: Update.
1783         * gnulib/import/m4/fnmatch.m4: Update.
1784         * gnulib/import/m4/fnmatch_h.m4: Update.
1785         * gnulib/import/m4/fpieee.m4: Update.
1786         * gnulib/import/m4/frexp.m4: Update.
1787         * gnulib/import/m4/frexpl.m4: Update.
1788         * gnulib/import/m4/fstat.m4: Update.
1789         * gnulib/import/m4/fstatat.m4: Update.
1790         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1791         * gnulib/import/m4/getcwd-path-max.m4: Update.
1792         * gnulib/import/m4/getcwd.m4: Update.
1793         * gnulib/import/m4/getdtablesize.m4: Update.
1794         * gnulib/import/m4/getlogin.m4: Update.
1795         * gnulib/import/m4/getlogin_r.m4: Update.
1796         * gnulib/import/m4/getpagesize.m4: Update.
1797         * gnulib/import/m4/getprogname.m4: Update.
1798         * gnulib/import/m4/gettimeofday.m4: Update.
1799         * gnulib/import/m4/glibc21.m4: Update.
1800         * gnulib/import/m4/glob.m4: Update.
1801         * gnulib/import/m4/glob_h.m4: Update.
1802         * gnulib/import/m4/gnulib-cache.m4: Update.
1803         * gnulib/import/m4/gnulib-common.m4: Update.
1804         * gnulib/import/m4/gnulib-comp.m4: Update.
1805         * gnulib/import/m4/gnulib-tool.m4: Update.
1806         * gnulib/import/m4/hard-locale.m4: Update.
1807         * gnulib/import/m4/include_next.m4: Update.
1808         * gnulib/import/m4/inttypes-pri.m4: Update.
1809         * gnulib/import/m4/inttypes.m4: Update.
1810         * gnulib/import/m4/isnand.m4: Update.
1811         * gnulib/import/m4/isnanl.m4: Update.
1812         * gnulib/import/m4/largefile.m4: Update.
1813         * gnulib/import/m4/limits-h.m4: Update.
1814         * gnulib/import/m4/localcharset.m4: Update.
1815         * gnulib/import/m4/locale-fr.m4: Update.
1816         * gnulib/import/m4/locale-ja.m4: Update.
1817         * gnulib/import/m4/locale-zh.m4: Update.
1818         * gnulib/import/m4/localtime-buffer.m4: Update.
1819         * gnulib/import/m4/longlong.m4: Update.
1820         * gnulib/import/m4/lstat.m4: Update.
1821         * gnulib/import/m4/malloc.m4: Update.
1822         * gnulib/import/m4/malloca.m4: Update.
1823         * gnulib/import/m4/math_h.m4: Update.
1824         * gnulib/import/m4/mbrtowc.m4: Update.
1825         * gnulib/import/m4/mbsinit.m4: Update.
1826         * gnulib/import/m4/mbsrtowcs.m4: Update.
1827         * gnulib/import/m4/mbstate_t.m4: Update.
1828         * gnulib/import/m4/memchr.m4: Update.
1829         * gnulib/import/m4/memmem.m4: Update.
1830         * gnulib/import/m4/mempcpy.m4: Update.
1831         * gnulib/import/m4/memrchr.m4: Update.
1832         * gnulib/import/m4/mkdir.m4: Update.
1833         * gnulib/import/m4/mkstemp.m4: Update.
1834         * gnulib/import/m4/mmap-anon.m4: Update.
1835         * gnulib/import/m4/mode_t.m4: Update.
1836         * gnulib/import/m4/msvc-inval.m4: Update.
1837         * gnulib/import/m4/msvc-nothrow.m4: Update.
1838         * gnulib/import/m4/multiarch.m4: Update.
1839         * gnulib/import/m4/nocrash.m4: Update.
1840         * gnulib/import/m4/off_t.m4: Update.
1841         * gnulib/import/m4/onceonly.m4: Update.
1842         * gnulib/import/m4/open-cloexec.m4: Update.
1843         * gnulib/import/m4/open.m4: Update.
1844         * gnulib/import/m4/openat.m4: Update.
1845         * gnulib/import/m4/opendir.m4: Update.
1846         * gnulib/import/m4/pathmax.m4: Update.
1847         * gnulib/import/m4/rawmemchr.m4: Update.
1848         * gnulib/import/m4/readdir.m4: Update.
1849         * gnulib/import/m4/readlink.m4: Update.
1850         * gnulib/import/m4/realloc.m4: Update.
1851         * gnulib/import/m4/rename.m4: Update.
1852         * gnulib/import/m4/rewinddir.m4: Update.
1853         * gnulib/import/m4/rmdir.m4: Update.
1854         * gnulib/import/m4/save-cwd.m4: Update.
1855         * gnulib/import/m4/secure_getenv.m4: Update.
1856         * gnulib/import/m4/setenv.m4: Update.
1857         * gnulib/import/m4/signal_h.m4: Update.
1858         * gnulib/import/m4/ssize_t.m4: Update.
1859         * gnulib/import/m4/stat-time.m4: Update.
1860         * gnulib/import/m4/stat.m4: Update.
1861         * gnulib/import/m4/std-gnu11.m4: Update.
1862         * gnulib/import/m4/stdbool.m4: Update.
1863         * gnulib/import/m4/stddef_h.m4: Update.
1864         * gnulib/import/m4/stdint.m4: Update.
1865         * gnulib/import/m4/stdio_h.m4: Update.
1866         * gnulib/import/m4/stdlib_h.m4: Update.
1867         * gnulib/import/m4/strchrnul.m4: Update.
1868         * gnulib/import/m4/strdup.m4: Update.
1869         * gnulib/import/m4/strerror.m4: Update.
1870         * gnulib/import/m4/string_h.m4: Update.
1871         * gnulib/import/m4/strstr.m4: Update.
1872         * gnulib/import/m4/strtok_r.m4: Update.
1873         * gnulib/import/m4/sys_socket_h.m4: Update.
1874         * gnulib/import/m4/sys_stat_h.m4: Update.
1875         * gnulib/import/m4/sys_time_h.m4: Update.
1876         * gnulib/import/m4/sys_types_h.m4: Update.
1877         * gnulib/import/m4/tempname.m4: Update.
1878         * gnulib/import/m4/time_h.m4: Update.
1879         * gnulib/import/m4/unistd-safer.m4: Update.
1880         * gnulib/import/m4/unistd_h.m4: Update.
1881         * gnulib/import/m4/warn-on-use.m4: Update.
1882         * gnulib/import/m4/wchar_h.m4: Update.
1883         * gnulib/import/m4/wchar_t.m4: Update.
1884         * gnulib/import/m4/wctype_h.m4: Update.
1885         * gnulib/import/m4/wint_t.m4: Update.
1886         * gnulib/import/malloc.c: Update.
1887         * gnulib/import/malloc/scratch_buffer.h: Update.
1888         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1889         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1890         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1891         * gnulib/import/malloca.c: Update.
1892         * gnulib/import/malloca.h: Update.
1893         * gnulib/import/malloca.valgrind: Update.
1894         * gnulib/import/math.in.h: Update.
1895         * gnulib/import/mbrtowc.c: Update.
1896         * gnulib/import/mbsinit.c: Update.
1897         * gnulib/import/mbsrtowcs-impl.h: Update.
1898         * gnulib/import/mbsrtowcs-state.c: Update.
1899         * gnulib/import/mbsrtowcs.c: Update.
1900         * gnulib/import/memchr.c: Update.
1901         * gnulib/import/memmem.c: Update.
1902         * gnulib/import/mempcpy.c: Update.
1903         * gnulib/import/memrchr.c: Update.
1904         * gnulib/import/mkdir.c: Update.
1905         * gnulib/import/mkstemp.c: Update.
1906         * gnulib/import/msvc-inval.c: Update.
1907         * gnulib/import/msvc-inval.h: Update.
1908         * gnulib/import/msvc-nothrow.c: Update.
1909         * gnulib/import/msvc-nothrow.h: Update.
1910         * gnulib/import/open.c: Update.
1911         * gnulib/import/openat-die.c: Update.
1912         * gnulib/import/openat-priv.h: Update.
1913         * gnulib/import/openat-proc.c: Update.
1914         * gnulib/import/openat.c: Update.
1915         * gnulib/import/openat.h: Update.
1916         * gnulib/import/opendir.c: Update.
1917         * gnulib/import/pathmax.h: Update.
1918         * gnulib/import/pipe-safer.c: Update.
1919         * gnulib/import/rawmemchr.c: Update.
1920         * gnulib/import/readdir.c: Update.
1921         * gnulib/import/readlink.c: Update.
1922         * gnulib/import/realloc.c: Update.
1923         * gnulib/import/ref-add.sin: Update.
1924         * gnulib/import/ref-del.sin: Update.
1925         * gnulib/import/rename.c: Update.
1926         * gnulib/import/rewinddir.c: Update.
1927         * gnulib/import/rmdir.c: Update.
1928         * gnulib/import/same-inode.h: Update.
1929         * gnulib/import/save-cwd.c: Update.
1930         * gnulib/import/save-cwd.h: Update.
1931         * gnulib/import/scratch_buffer.h: Update.
1932         * gnulib/import/secure_getenv.c: Update.
1933         * gnulib/import/setenv.c: Update.
1934         * gnulib/import/signal.in.h: Update.
1935         * gnulib/import/stat-time.c: Update.
1936         * gnulib/import/stat-time.h: Update.
1937         * gnulib/import/stat-w32.c: Update.
1938         * gnulib/import/stat-w32.h: Update.
1939         * gnulib/import/stat.c: Update.
1940         * gnulib/import/stdbool.in.h: Update.
1941         * gnulib/import/stddef.in.h: Update.
1942         * gnulib/import/stdint.in.h: Update.
1943         * gnulib/import/stdio.in.h: Update.
1944         * gnulib/import/stdlib.in.h: Update.
1945         * gnulib/import/str-two-way.h: Update.
1946         * gnulib/import/strchrnul.c: Update.
1947         * gnulib/import/strdup.c: Update.
1948         * gnulib/import/streq.h: Update.
1949         * gnulib/import/strerror-override.c: Update.
1950         * gnulib/import/strerror-override.h: Update.
1951         * gnulib/import/strerror.c: Update.
1952         * gnulib/import/string.in.h: Update.
1953         * gnulib/import/stripslash.c: Update.
1954         * gnulib/import/strnlen1.c: Update.
1955         * gnulib/import/strnlen1.h: Update.
1956         * gnulib/import/strstr.c: Update.
1957         * gnulib/import/strtok_r.c: Update.
1958         * gnulib/import/sys_stat.in.h: Update.
1959         * gnulib/import/sys_time.in.h: Update.
1960         * gnulib/import/sys_types.in.h: Update.
1961         * gnulib/import/tempname.c: Update.
1962         * gnulib/import/tempname.h: Update.
1963         * gnulib/import/time.in.h: Update.
1964         * gnulib/import/unistd--.h: Update.
1965         * gnulib/import/unistd-safer.h: Update.
1966         * gnulib/import/unistd.in.h: Update.
1967         * gnulib/import/unsetenv.c: Update.
1968         * gnulib/import/verify.h: Update.
1969         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1970         * gnulib/import/wchar.in.h: Update.
1971         * gnulib/import/wctype.in.h: Update.
1972         * gnulib/import/xalloc-oversized.h: Update.
1973         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1974         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1975
1976 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
1977
1978         * record-btrace.c (get_thread_current_frame): Remove
1979         old_inferior_ptid.
1980
1981 2018-09-10  Jerome Guitton  <guitton@adacore.com>
1982
1983         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
1984         with check_tag to 1 if and only if the type is tagged and the
1985         component being searched cannot been found in the current
1986         view. Otherwise, always call ada_to_fixed_type with
1987         check_tag to 0.
1988
1989 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1990
1991         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
1992         declaration.
1993         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
1994         * ada-varobj.c (ada_varobj_get_number_of_children,
1995         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
1996
1997 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1998
1999         * ada-valprint.c (ada_value_print): Use type instead of
2000         enclosing type.
2001
2002 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2003
2004         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2005         an array of access to unconstrained array.
2006
2007 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2008
2009         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2010         (ada_check_typedef): Use it.
2011
2012 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2013
2014         * ada-varobj.c (ada_varobj_describe_struct_child)
2015         (ada_varobj_describe_child): Handle union case like struct one.
2016
2017 2018-09-10  Tom Tromey  <tom@tromey.com>
2018
2019         PR python/18380:
2020         * python/python.c (_initialize_python): Make example in "python"
2021         help work in Python 3.
2022
2023 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2024
2025         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2026         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2027         $(EXEEXT) to the script, as it is not a program.
2028
2029 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2030
2031         * python/py-prettyprint.c (pretty_print_one_value): Return
2032         gdbpy_ref<>.
2033         (print_string_repr): Adjust.
2034         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2035         * python/python-internal.h (apply_varobj_pretty_printer): Return
2036         gdbpy_ref<>.
2037         * varobj.c (varobj_value_get_print_value): Adjust.
2038
2039 2018-09-08  Tom Tromey  <tom@tromey.com>
2040
2041         PR python/16047:
2042         * python/py-prettyprint.c (pretty_print_one_value): Check for
2043         to_string method.
2044
2045 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2046
2047         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2048         replace_operator_with_call.
2049
2050 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2051
2052         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2053
2054 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2055
2056         * ada-typeprint.c (print_range): Print the bounds using TYPE
2057         rather than its TYPE_TARGET_TYPE.
2058
2059 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2060
2061         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2062         call to ada_to_fixed_value_create.
2063
2064 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2065
2066         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2067
2068 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2069
2070         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2071         by calls to error.
2072
2073 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2074
2075         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2076         Move update of loop variable "fi".
2077
2078 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2079
2080         * ada-lang.c (value_assign_to_component): In the case of
2081         big-endian targets, extract the bits of the given VAL
2082         using an src_offset of zero if container is not a scalar.
2083
2084 2018-09-06  Simon Ser  <contact@emersion.fr>
2085
2086         PR gdb/23105
2087         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2088         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2089         * fbsd-tdep.c (fbsd_make_note_desc): New.
2090         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2091         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2092         * target.h (enum target_object) Add FreeBSD-specific
2093         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2094
2095 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2096
2097         * compile/compile-c.h (generate_c_for_variable_locations):
2098         Change reference to pointer.
2099         * compile/compile-c-support.c (compile_program) <compute>:
2100         Likewise.
2101         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2102         (generate_c_for_for_one_variable): Likewise
2103         (generate_c_for_variable_locations): Likewise
2104         * compile/compile-c-types.c (compile_c_instance::convert_type):
2105         Likewise
2106         * compile/compile-cplus-symbols.c (convert_one_symbol):
2107         std::move the scope passed to enter_scope.
2108         * compile/compile-cplus-types.c
2109         (compile_cplus_instance::enter_scope): Make parameter
2110         rvalue-reference.
2111         (compile_cplus_instance::new_scope): Change reference to
2112         pointer.
2113         (compile_cplus_instance::convert_type): Likewise
2114         (compile_cplus_convert_typedef): std::move the scope passed to
2115         enter_scope.
2116         (compile_cplus_convert_struct_or_union): Likewise.
2117         (compile_cplus_convert_enum): Likewise.
2118         (compile_cplus_convert_namespace): Likewise.
2119         * compile/compile-cplus.h (compile_cplus_instance)
2120         <enter_scope>: Make parameter rvalue-reference.
2121         * compile/compile-internal.h (compile_instance)
2122         <get_cached_type>: Likewise
2123         * compile/compile-loc2c.c (push): Likewise
2124         (pushf): Likewise
2125         (unary): Likewise
2126         (binary): Likewise
2127         (print_label): Likewise
2128         (pushf_register_address): Likewise
2129         (pushf_register): Likewise
2130         (do_compile_dwarf_expr_to_c): Likewise
2131         (compile_dwarf_expr_to_c): Likewise
2132         (compile_dwarf_bounds_to_c): Likewise
2133         * compile/compile.c (compile_instance::get_cached_type):
2134         Likewise
2135         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2136         (compile_dwarf_bounds_to_c): Likewise
2137         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2138         (dwarf2_compile_property_to_c): Likewise
2139         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2140         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2141         Likewise
2142
2143 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2144
2145         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2146         * tui/tui-data.c (init_content_element): Don't initialize it.
2147
2148 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2149
2150         * tui/tui-data.h (struct tui_win_info)
2151         <detail::opaque>: Remove.
2152         * tui/tui-data.c (init_win_info): Remove assignment.
2153
2154 2018-09-05  Tom Tromey  <tom@tromey.com>
2155
2156         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2157         -Wformat-nonliteral.
2158         * target-float.c (host_float_ops<T>::to_string)
2159         (host_float_ops<T>::from_string): Use
2160         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2161         * configure: Rebuild.
2162
2163 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2164
2165         * printcmd.c (printf_c_string): Use
2166         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2167         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2168
2169 2018-09-05  Tom Tromey  <tom@tromey.com>
2170
2171         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2172
2173 2018-09-05  Tom de Vries  <tdevries@suse.de>
2174
2175         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2176         with resolve_abstract_p == true.
2177         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2178         defaulting to false. Propagate resolve_abstract_p to
2179         dwarf2_fetch_die_loc_sect_off.
2180         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2181         parameter, defaulting to false.
2182         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2183         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2184         parameter.
2185         * dwarf2read.h (struct die_info): Forward-declare.
2186         (die_info_ptr): New typedef.
2187         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2188
2189 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2190
2191         GDB 8.2 released.
2192
2193 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2194             Pedro Alves  <palves@redhat.com>
2195
2196         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2197         "aclocal-m4-deps.mk".  Include file here.
2198         $(srcdir)/aclocal.m4: Add "configure.ac".
2199         * gnulib/aclocal-m4-deps.mk: New file.
2200         * gnulib/update-gnulib.sh: Automatically update
2201         "aclocal-m4-deps.mk".
2202
2203 2018-09-04  Tom Tromey  <tom@tromey.com>
2204
2205         * configure: Rebuild.
2206         * configure.ac: Remove multi-ice code.
2207
2208 2018-09-04  Tom Tromey  <tom@tromey.com>
2209
2210         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2211         (ada-exp.o): Update.
2212
2213 2018-09-04  Tom Tromey  <tom@tromey.com>
2214
2215         * Makefile.in (printcmd.o, target-float.o): Remove.
2216         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2217
2218 2018-09-04  Tom Tromey  <tom@tromey.com>
2219
2220         * gnulib/Makefile.in: Remove obsolete comment.
2221         * Makefile.in: Remove obsolete comment.
2222
2223 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2224
2225         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2226         line with '+'.
2227
2228 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2229
2230         * riscv-tdep.c: Add 'prologue-value.h' include.
2231         (struct riscv_unwind_cache): New struct.
2232         (riscv_debug_unwinder): New global.
2233         (riscv_scan_prologue): Update arguments, capture register details
2234         from prologue scan.
2235         (riscv_skip_prologue): Reformat arguments line, move end of
2236         prologue calculation into riscv_scan_prologue.
2237         (riscv_frame_cache): Update return type, create
2238         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2239         details.
2240         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2241         (riscv_frame_prev_register): Use the trad_frame within the
2242         riscv_unwind_cache.
2243         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2244         flag.
2245
2246 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2247
2248         * trad-frame.h (trad_frame_set_realreg): Declare.
2249         (trad_frame_set_addr): Declare.
2250         * trad-frame.c (trad_frame_set_realreg): Define new function.
2251         (trad_frame_set_addr): Define new function.
2252         (trad_frame_set_reg_realreg): Use new function.
2253         (trad_frame_set_reg_addr): Use new function.
2254
2255 2018-09-01  Keith Seitz  <keiths@redhat.com>
2256
2257         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2258         pulongest instead of "%lld".
2259         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2260         ATTRIBUTE_UNUSED.
2261
2262 2018-08-31  Tom Tromey  <tom@tromey.com>
2263
2264         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2265         variant part type.
2266
2267 2018-08-31  Pedro Alves  <palves@redhat.com>
2268
2269         * gdbarch.h: Regenerate.
2270
2271 2018-08-31  Pedro Alves  <palves@redhat.com>
2272
2273         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2274         * target.h (Hardware watchpoint interfaces): Describe
2275         continuable/steppable/non-steppable watchpoints.
2276         * gdbarch.h, gdbarch.c: Regenerate.
2277
2278 2018-08-31  Pedro Alves  <palves@redhat.com>
2279
2280         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2281         Delete.
2282         * s390-linux-nat.c
2283         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2284         * target.h (target_ops::have_continuable_watchpoint): Delete.
2285         (target_have_continuable_watchpoint): Delete.
2286         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2287         * target-delegates.c: Regenerate.
2288
2289 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2290
2291         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2292         the files present in "gnulib/import/m4/".
2293
2294 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2295
2296         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2297         c.sw, c.swsp, and c.sdsp.
2298
2299 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2300
2301         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2302         (riscv_read_misa_reg): Don't cache value read into inferior data.
2303         (riscv_new_inferior_data): Delete.
2304         (riscv_inferior_data_cleanup): Delete.
2305         (riscv_inferior_data): Delete.
2306         (riscv_invalidate_inferior_data): Delete.
2307         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2308
2309 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2310
2311         * compile/compile-cplus-types.c
2312         (compile_cplus_instance::leave_scope): Take the address of scope
2313         object.
2314         (compile_cplus_instance::convert_qualified_base): Compare quals
2315         to 0.
2316
2317 2018-08-30  Keith Seitz  <keiths@redhat.com>
2318
2319         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2320         Use "%s" and host_address_to_string instead of "%p" in printf.
2321
2322 2018-08-29  Keith Seitz  <keiths@redhat.com>
2323
2324         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2325         and compile-cplus-types.c.
2326         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2327         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2328         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2329         Declare.
2330         * compile/compile-c-support.c: Include compile-cplus.h.
2331         (load_libcompile): Templatize.
2332         (get_compile_context): "New" function.
2333         (c_get_compile_context): Use get_compile_context.
2334         (cplus_get_compile_context): New function.
2335         (cplus_push_user_expression, cplus_pop_user_expression)
2336         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2337         (cplus_compute_program): Define new structs/functions.
2338         * compile/compile-cplus-symmbols.c: New file.
2339         * compile/compile-cplus-types.c: New file.
2340         * compile/compile-cplus.h: New file.
2341         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2342         Declare.
2343         * compile/compile-object-load.c (get_out_value_type): Use
2344         strncmp_iw when comparing symbol names.
2345         (compile_object_load): Add mst_bss and mst_data.
2346         * compile/compile.c (_initialize_compile): Remove
2347         -Wno-implicit-function-declaration from `compile_args'.
2348         * compile/gcc-cp-plugin.h: New file.
2349         * NEWS: Mention C++ compile support and new debug options.
2350
2351 2018-08-29  Keith Seitz  <keiths@redhat.com>
2352
2353         * linespec.c (collect_info::add_symbol): Make virtual.
2354         (struct symbol_searcher_collect_info): New struct.
2355         (symbol_searcher::find_all_symbols): New method.
2356         * symtab.h (class symbol_searcher): New class.
2357
2358 2018-08-29  Keith Seitz  <keiths@redhat.com>
2359
2360         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2361         Change to vector of block_symbol.  Update all users.
2362         (struct collect_info) <symbols>: Likewise.
2363         (collect_info::add_symbol): Take block_symbol as argument.
2364         Update all callers.
2365         (decode_compound_collector) <m_symbols>: Change type to vector
2366         of block_symbol.  Update all users.
2367         (decode_compound_collector::operator ()): Change parameter type
2368         to block_symbol.
2369         (find_method, find_function_symbols, find_linespec_symbols)
2370         (find_label_symbols_in_block, find_label_symbols): Change symbol
2371         vectors to block_symbol vectors.
2372         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2373         block_symbol.
2374
2375 2018-08-29  Keith Seitz  <keiths@redhat.com>
2376
2377         * linespec.c (symbolp): Remove typedef and VEC definitions.
2378         (bound_minimal_symbol_d): Likewise.
2379
2380 2018-08-29  Keith Seitz  <keiths@redhat.com>
2381
2382         * linespec.c (decode_compound_collector::decode_compound_collector):
2383         Remove initialization for `m_symtabs'.
2384         (decode_compound_collector::release_symbols): Change return type
2385         to std::vector.  Update all callers.
2386         (class decode_compound_collector) <m_symbols>: Change type to
2387         std::vector.
2388         (lookup_prefix_sym): Change return type to std::vector.  Update all
2389         callers.
2390         (compare_symbols): Remove.
2391         (std_compare_symbols): Rename to `compare_symbols'.
2392         (find_method): Change `sym_classes' parameter to std::vector.
2393         Update all callers.  Use std::sort to sort sym_classes.
2394         (find_linespec_symbols): Remove cleanup.
2395
2396 2018-08-29  Keith Seitz  <keiths@redhat.com>
2397
2398         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2399         std::vector.  Update all users.
2400         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2401         (struct collect_info) <minimal_symbols>: Likewise.
2402         (compare_msymbols): Return bool.  Change parameters to const
2403         bound_minimal_symbol references.
2404         (find_method, find_function_symbols, find_linespec_symbols): Change
2405         `minsyms' parameter to std::vector.  Update all callers.
2406
2407 2018-08-29  Keith Seitz  <keiths@redhat.com>
2408
2409         * linespec.c (struct linespec) <label_symbols>: Change type to
2410         std::vector.  Update all users.
2411         (find_label_symbols_in_block): Change `result' parameter to
2412         std::vector.  Update all callers.
2413         (find_label_symbols): Return std::vector.  Update all callers.
2414
2415 2018-08-29  Keith Seitz  <keiths@redhat.com>
2416
2417         * linespec.c (struct linespec) <function_symbols>: Change type to
2418         std::vector.  Update all users.
2419         (struct collect_info) <function_symbols>: Likewise.
2420         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2421         (std_compare_symbols): New function.
2422         (find_method, find_function_symbols, find_linespec_symbols)
2423         (find_label_symbols_in_block): Change `symbols' parameter to
2424         std::vector.  Update all callers.
2425         (find_label_symbols): Likewise for `function_symbols' and
2426         `label_funcs_ret'.
2427
2428 2018-08-29  Keith Seitz  <keiths@redhat.com>
2429
2430         * linespec.c (symtab_vector_up): Define.
2431         (struct linespec) <file_symtabs>: Change type to std::vector *.
2432         Update all uses.
2433         (struct collect_info) <file_symtabs>: Likewise.
2434         (collect_symtabs_from_filename): Return symtab_vector_up.
2435         Update all callers.
2436         (decode_objc): Remove cleanup.
2437         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2438         (symtab_collector::release_symtabs): Return symtab_vector_up.
2439         Update all callers.
2440         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2441         Update all users.
2442         (collect_symtabs_from_filename, symtabs_from_filename): Return
2443         symtab_vector_up.  Update all callers.
2444
2445 2018-08-29  Tom Tromey  <tom@tromey.com>
2446
2447         * csky-tdep.c (csky_analyze_prologue): Use
2448         core_addr_to_string_nz.
2449
2450 2018-08-29  Tom Tromey  <tom@tromey.com>
2451
2452         * windows-nat.c (struct xlate_exception) <them>: Change type to
2453         DWORD.
2454         (xlate): Fix formatting.  Remove last entry.
2455         (struct xlate_exception, xlate): Comment out.
2456         (windows_nat_target::resume): Use ranged for.
2457
2458 2018-08-29  Jim Wilson  <jimw@sifive.com>
2459
2460         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2461         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2462         of NT_PRFPREG.
2463         (riscv_linux_nat_target::store_registers): Likewise.
2464
2465 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2466
2467         PR gdb/23555
2468         PR gdb/23558
2469         * gnulib/aclocal.m4: Regenerate.
2470         * gnulib/config.in: Regenerate.
2471         * gnulib/configure: Regenerate.
2472         * gnulib/import/Makefile.am: Update.
2473         * gnulib/import/Makefile.in: Update.
2474         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2475         * gnulib/import/_Noreturn.h: ... this.
2476         * gnulib/import/alloca.in.h: Update.
2477         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2478         * gnulib/import/arg-nonnull.h: ... this.
2479         * gnulib/import/assure.h: Update.
2480         * gnulib/import/at-func.c: Update.
2481         * gnulib/import/basename-lgpl.c: Update.
2482         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2483         * gnulib/import/c++defs.h: ... this.
2484         * gnulib/import/canonicalize-lgpl.c: Update.
2485         * gnulib/import/cdefs.h: Update.
2486         * gnulib/import/chdir-long.c: Update.
2487         * gnulib/import/chdir-long.h: Update.
2488         * gnulib/import/cloexec.c: Update.
2489         * gnulib/import/cloexec.h: Update.
2490         * gnulib/import/close.c: Update.
2491         * gnulib/import/closedir.c: Update.
2492         * gnulib/import/config.charset: Update.
2493         * gnulib/import/dirent-private.h: Update.
2494         * gnulib/import/dirent.in.h: Update.
2495         * gnulib/import/dirfd.c: Update.
2496         * gnulib/import/dirname-lgpl.c: Update.
2497         * gnulib/import/dirname.h: Update.
2498         * gnulib/import/dosname.h: Update.
2499         * gnulib/import/dup-safer-flag.c: Update.
2500         * gnulib/import/dup-safer.c: Update.
2501         * gnulib/import/dup.c: Update.
2502         * gnulib/import/dup2.c: Update.
2503         * gnulib/import/errno.in.h: Update.
2504         * gnulib/import/error.c: Update.
2505         * gnulib/import/error.h: Update.
2506         * gnulib/import/exitfail.c: Update.
2507         * gnulib/import/exitfail.h: Update.
2508         * gnulib/import/extra/update-copyright: Update.
2509         * gnulib/import/fchdir.c: Update.
2510         * gnulib/import/fcntl.c: Update.
2511         * gnulib/import/fcntl.in.h: Update.
2512         * gnulib/import/fd-hook.c: Update.
2513         * gnulib/import/fd-hook.h: Update.
2514         * gnulib/import/fd-safer-flag.c: Update.
2515         * gnulib/import/fd-safer.c: Update.
2516         * gnulib/import/fdopendir.c: Update.
2517         * gnulib/import/filename.h: Update.
2518         * gnulib/import/filenamecat-lgpl.c: Update.
2519         * gnulib/import/filenamecat.h: Update.
2520         * gnulib/import/flexmember.h: Update.
2521         * gnulib/import/float+.h: Update.
2522         * gnulib/import/float.c: Update.
2523         * gnulib/import/float.in.h: Update.
2524         * gnulib/import/fnmatch.c: Update.
2525         * gnulib/import/fnmatch.in.h: Update.
2526         * gnulib/import/fnmatch_loop.c: Update.
2527         * gnulib/import/fpucw.h: Update.
2528         * gnulib/import/frexp.c: Update.
2529         * gnulib/import/frexpl.c: Update.
2530         * gnulib/import/fstat.c: Update.
2531         * gnulib/import/fstatat.c: Update.
2532         * gnulib/import/getcwd-lgpl.c: Update.
2533         * gnulib/import/getcwd.c: Update.
2534         * gnulib/import/getdtablesize.c: Update.
2535         * gnulib/import/getlogin_r.c: Update.
2536         * gnulib/import/getprogname.c: Update.
2537         * gnulib/import/getprogname.h: Update.
2538         * gnulib/import/gettext.h: Update.
2539         * gnulib/import/gettimeofday.c: Update.
2540         * gnulib/import/glob-libc.h: Update.
2541         * gnulib/import/glob.c: Update.
2542         * gnulib/import/glob.in.h: Update.
2543         * gnulib/import/glob_internal.h: Update.
2544         * gnulib/import/glob_pattern_p.c: Update.
2545         * gnulib/import/globfree.c: Update.
2546         * gnulib/import/hard-locale.c: Update.
2547         * gnulib/import/hard-locale.h: Update.
2548         * gnulib/import/intprops.h: Update.
2549         * gnulib/import/inttypes.in.h: Update.
2550         * gnulib/import/isnan.c: Update.
2551         * gnulib/import/isnand-nolibm.h: Update.
2552         * gnulib/import/isnand.c: Update.
2553         * gnulib/import/isnanl-nolibm.h: Update.
2554         * gnulib/import/isnanl.c: Update.
2555         * gnulib/import/itold.c: Update.
2556         * gnulib/import/libc-config.h: Update.
2557         * gnulib/import/limits.in.h: Update.
2558         * gnulib/import/localcharset.c: Update.
2559         * gnulib/import/localcharset.h: Update.
2560         * gnulib/import/localtime-buffer.c: Update.
2561         * gnulib/import/localtime-buffer.h: Update.
2562         * gnulib/import/lstat.c: Update.
2563         * gnulib/import/m4/00gnulib.m4: Update.
2564         * gnulib/import/m4/__inline.m4: Update.
2565         * gnulib/import/m4/absolute-header.m4: Update.
2566         * gnulib/import/m4/alloca.m4: Update.
2567         * gnulib/import/m4/builtin-expect.m4: Update.
2568         * gnulib/import/m4/canonicalize.m4: Update.
2569         * gnulib/import/m4/chdir-long.m4: Update.
2570         * gnulib/import/m4/close.m4: Update.
2571         * gnulib/import/m4/closedir.m4: Update.
2572         * gnulib/import/m4/configmake.m4: Update.
2573         * gnulib/import/m4/d-ino.m4: Update.
2574         * gnulib/import/m4/d-type.m4: Update.
2575         * gnulib/import/m4/dirent_h.m4: Update.
2576         * gnulib/import/m4/dirfd.m4: Update.
2577         * gnulib/import/m4/dirname.m4: Update.
2578         * gnulib/import/m4/double-slash-root.m4: Update.
2579         * gnulib/import/m4/dup.m4: Update.
2580         * gnulib/import/m4/dup2.m4: Update.
2581         * gnulib/import/m4/eealloc.m4: Update.
2582         * gnulib/import/m4/environ.m4: Update.
2583         * gnulib/import/m4/errno_h.m4: Update.
2584         * gnulib/import/m4/error.m4: Update.
2585         * gnulib/import/m4/exponentd.m4: Update.
2586         * gnulib/import/m4/exponentl.m4: Update.
2587         * gnulib/import/m4/extensions.m4: Update.
2588         * gnulib/import/m4/extern-inline.m4: Update.
2589         * gnulib/import/m4/fchdir.m4: Update.
2590         * gnulib/import/m4/fcntl-o.m4: Update.
2591         * gnulib/import/m4/fcntl.m4: Update.
2592         * gnulib/import/m4/fcntl_h.m4: Update.
2593         * gnulib/import/m4/fdopendir.m4: Update.
2594         * gnulib/import/m4/filenamecat.m4: Update.
2595         * gnulib/import/m4/flexmember.m4: Update.
2596         * gnulib/import/m4/float_h.m4: Update.
2597         * gnulib/import/m4/fnmatch.m4: Update.
2598         * gnulib/import/m4/fnmatch_h.m4: Update.
2599         * gnulib/import/m4/fpieee.m4: Update.
2600         * gnulib/import/m4/frexp.m4: Update.
2601         * gnulib/import/m4/frexpl.m4: Update.
2602         * gnulib/import/m4/fstat.m4: Update.
2603         * gnulib/import/m4/fstatat.m4: Update.
2604         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2605         * gnulib/import/m4/getcwd-path-max.m4: Update.
2606         * gnulib/import/m4/getcwd.m4: Update.
2607         * gnulib/import/m4/getdtablesize.m4: Update.
2608         * gnulib/import/m4/getlogin.m4: Update.
2609         * gnulib/import/m4/getlogin_r.m4: Update.
2610         * gnulib/import/m4/getpagesize.m4: Update.
2611         * gnulib/import/m4/getprogname.m4: Update.
2612         * gnulib/import/m4/gettimeofday.m4: Update.
2613         * gnulib/import/m4/glibc21.m4: Update.
2614         * gnulib/import/m4/glob.m4: Update.
2615         * gnulib/import/m4/glob_h.m4: Update.
2616         * gnulib/import/m4/gnulib-cache.m4: Update.
2617         * gnulib/import/m4/gnulib-common.m4: Update.
2618         * gnulib/import/m4/gnulib-comp.m4: Update.
2619         * gnulib/import/m4/gnulib-tool.m4: Update.
2620         * gnulib/import/m4/hard-locale.m4: Update.
2621         * gnulib/import/m4/include_next.m4: Update.
2622         * gnulib/import/m4/inttypes-pri.m4: Update.
2623         * gnulib/import/m4/inttypes.m4: Update.
2624         * gnulib/import/m4/isnand.m4: Update.
2625         * gnulib/import/m4/isnanl.m4: Update.
2626         * gnulib/import/m4/largefile.m4: Update.
2627         * gnulib/import/m4/limits-h.m4: Update.
2628         * gnulib/import/m4/localcharset.m4: Update.
2629         * gnulib/import/m4/locale-fr.m4: Update.
2630         * gnulib/import/m4/locale-ja.m4: Update.
2631         * gnulib/import/m4/locale-zh.m4: Update.
2632         * gnulib/import/m4/localtime-buffer.m4: Update.
2633         * gnulib/import/m4/longlong.m4: Update.
2634         * gnulib/import/m4/lstat.m4: Update.
2635         * gnulib/import/m4/malloc.m4: Update.
2636         * gnulib/import/m4/malloca.m4: Update.
2637         * gnulib/import/m4/math_h.m4: Update.
2638         * gnulib/import/m4/mbrtowc.m4: Update.
2639         * gnulib/import/m4/mbsinit.m4: Update.
2640         * gnulib/import/m4/mbsrtowcs.m4: Update.
2641         * gnulib/import/m4/mbstate_t.m4: Update.
2642         * gnulib/import/m4/memchr.m4: Update.
2643         * gnulib/import/m4/memmem.m4: Update.
2644         * gnulib/import/m4/mempcpy.m4: Update.
2645         * gnulib/import/m4/memrchr.m4: Update.
2646         * gnulib/import/m4/mkdir.m4: Update.
2647         * gnulib/import/m4/mkstemp.m4: Update.
2648         * gnulib/import/m4/mmap-anon.m4: Update.
2649         * gnulib/import/m4/mode_t.m4: Update.
2650         * gnulib/import/m4/msvc-inval.m4: Update.
2651         * gnulib/import/m4/msvc-nothrow.m4: Update.
2652         * gnulib/import/m4/multiarch.m4: Update.
2653         * gnulib/import/m4/nocrash.m4: Update.
2654         * gnulib/import/m4/off_t.m4: Update.
2655         * gnulib/import/m4/onceonly.m4: Update.
2656         * gnulib/import/m4/open-cloexec.m4: Update.
2657         * gnulib/import/m4/open.m4: Update.
2658         * gnulib/import/m4/openat.m4: Update.
2659         * gnulib/import/m4/opendir.m4: Update.
2660         * gnulib/import/m4/pathmax.m4: Update.
2661         * gnulib/import/m4/rawmemchr.m4: Update.
2662         * gnulib/import/m4/readdir.m4: Update.
2663         * gnulib/import/m4/readlink.m4: Update.
2664         * gnulib/import/m4/realloc.m4: Update.
2665         * gnulib/import/m4/rename.m4: Update.
2666         * gnulib/import/m4/rewinddir.m4: Update.
2667         * gnulib/import/m4/rmdir.m4: Update.
2668         * gnulib/import/m4/save-cwd.m4: Update.
2669         * gnulib/import/m4/secure_getenv.m4: Update.
2670         * gnulib/import/m4/setenv.m4: Update.
2671         * gnulib/import/m4/signal_h.m4: Update.
2672         * gnulib/import/m4/ssize_t.m4: Update.
2673         * gnulib/import/m4/stat-time.m4: Update.
2674         * gnulib/import/m4/stat.m4: Update.
2675         * gnulib/import/m4/std-gnu11.m4: Update.
2676         * gnulib/import/m4/stdbool.m4: Update.
2677         * gnulib/import/m4/stddef_h.m4: Update.
2678         * gnulib/import/m4/stdint.m4: Update.
2679         * gnulib/import/m4/stdio_h.m4: Update.
2680         * gnulib/import/m4/stdlib_h.m4: Update.
2681         * gnulib/import/m4/strchrnul.m4: Update.
2682         * gnulib/import/m4/strdup.m4: Update.
2683         * gnulib/import/m4/strerror.m4: Update.
2684         * gnulib/import/m4/string_h.m4: Update.
2685         * gnulib/import/m4/strstr.m4: Update.
2686         * gnulib/import/m4/strtok_r.m4: Update.
2687         * gnulib/import/m4/sys_socket_h.m4: Update.
2688         * gnulib/import/m4/sys_stat_h.m4: Update.
2689         * gnulib/import/m4/sys_time_h.m4: Update.
2690         * gnulib/import/m4/sys_types_h.m4: Update.
2691         * gnulib/import/m4/tempname.m4: Update.
2692         * gnulib/import/m4/time_h.m4: Update.
2693         * gnulib/import/m4/unistd-safer.m4: Update.
2694         * gnulib/import/m4/unistd_h.m4: Update.
2695         * gnulib/import/m4/warn-on-use.m4: Update.
2696         * gnulib/import/m4/wchar_h.m4: Update.
2697         * gnulib/import/m4/wchar_t.m4: Update.
2698         * gnulib/import/m4/wctype_h.m4: Update.
2699         * gnulib/import/m4/wint_t.m4: Update.
2700         * gnulib/import/malloc.c: Update.
2701         * gnulib/import/malloc/scratch_buffer.h: Update.
2702         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2703         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2704         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2705         * gnulib/import/malloca.c: Update.
2706         * gnulib/import/malloca.h: Update.
2707         * gnulib/import/malloca.valgrind: Update.
2708         * gnulib/import/math.in.h: Update.
2709         * gnulib/import/mbrtowc.c: Update.
2710         * gnulib/import/mbsinit.c: Update.
2711         * gnulib/import/mbsrtowcs-impl.h: Update.
2712         * gnulib/import/mbsrtowcs-state.c: Update.
2713         * gnulib/import/mbsrtowcs.c: Update.
2714         * gnulib/import/memchr.c: Update.
2715         * gnulib/import/memmem.c: Update.
2716         * gnulib/import/mempcpy.c: Update.
2717         * gnulib/import/memrchr.c: Update.
2718         * gnulib/import/mkdir.c: Update.
2719         * gnulib/import/mkstemp.c: Update.
2720         * gnulib/import/msvc-inval.c: Update.
2721         * gnulib/import/msvc-inval.h: Update.
2722         * gnulib/import/msvc-nothrow.c: Update.
2723         * gnulib/import/msvc-nothrow.h: Update.
2724         * gnulib/import/open.c: Update.
2725         * gnulib/import/openat-die.c: Update.
2726         * gnulib/import/openat-priv.h: Update.
2727         * gnulib/import/openat-proc.c: Update.
2728         * gnulib/import/openat.c: Update.
2729         * gnulib/import/openat.h: Update.
2730         * gnulib/import/opendir.c: Update.
2731         * gnulib/import/pathmax.h: Update.
2732         * gnulib/import/pipe-safer.c: Update.
2733         * gnulib/import/rawmemchr.c: Update.
2734         * gnulib/import/readdir.c: Update.
2735         * gnulib/import/readlink.c: Update.
2736         * gnulib/import/realloc.c: Update.
2737         * gnulib/import/ref-add.sin: Update.
2738         * gnulib/import/ref-del.sin: Update.
2739         * gnulib/import/rename.c: Update.
2740         * gnulib/import/rewinddir.c: Update.
2741         * gnulib/import/rmdir.c: Update.
2742         * gnulib/import/same-inode.h: Update.
2743         * gnulib/import/save-cwd.c: Update.
2744         * gnulib/import/save-cwd.h: Update.
2745         * gnulib/import/scratch_buffer.h: Update.
2746         * gnulib/import/secure_getenv.c: Update.
2747         * gnulib/import/setenv.c: Update.
2748         * gnulib/import/signal.in.h: Update.
2749         * gnulib/import/stat-time.c: Update.
2750         * gnulib/import/stat-time.h: Update.
2751         * gnulib/import/stat-w32.c: Update.
2752         * gnulib/import/stat-w32.h: Update.
2753         * gnulib/import/stat.c: Update.
2754         * gnulib/import/stdbool.in.h: Update.
2755         * gnulib/import/stddef.in.h: Update.
2756         * gnulib/import/stdint.in.h: Update.
2757         * gnulib/import/stdio.in.h: Update.
2758         * gnulib/import/stdlib.in.h: Update.
2759         * gnulib/import/str-two-way.h: Update.
2760         * gnulib/import/strchrnul.c: Update.
2761         * gnulib/import/strdup.c: Update.
2762         * gnulib/import/streq.h: Update.
2763         * gnulib/import/strerror-override.c: Update.
2764         * gnulib/import/strerror-override.h: Update.
2765         * gnulib/import/strerror.c: Update.
2766         * gnulib/import/string.in.h: Update.
2767         * gnulib/import/stripslash.c: Update.
2768         * gnulib/import/strnlen1.c: Update.
2769         * gnulib/import/strnlen1.h: Update.
2770         * gnulib/import/strstr.c: Update.
2771         * gnulib/import/strtok_r.c: Update.
2772         * gnulib/import/sys_stat.in.h: Update.
2773         * gnulib/import/sys_time.in.h: Update.
2774         * gnulib/import/sys_types.in.h: Update.
2775         * gnulib/import/tempname.c: Update.
2776         * gnulib/import/tempname.h: Update.
2777         * gnulib/import/time.in.h: Update.
2778         * gnulib/import/unistd--.h: Update.
2779         * gnulib/import/unistd-safer.h: Update.
2780         * gnulib/import/unistd.in.h: Update.
2781         * gnulib/import/unsetenv.c: Update.
2782         * gnulib/import/verify.h: Update.
2783         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2784         * gnulib/import/wchar.in.h: Update.
2785         * gnulib/import/wctype.in.h: Update.
2786         * gnulib/import/xalloc-oversized.h: Update.
2787         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2788         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2789
2790 2018-08-16  Gary Benson <gbenson@redhat.com>
2791
2792         PR gdb/13000:
2793         * gdb/main.c (captured_main_1): Exit with nonzero status
2794         in batch mode if the last command to be executed failed.
2795         * NEWS: Mention the above.
2796
2797 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
2798
2799         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
2800         end of warning message.
2801
2802 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2803
2804         PR gdb/22943:
2805         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
2806         (aarch64_extract_return_value): Use
2807         aapcs_is_vfp_call_or_return_candidate.
2808         (aarch64_return_in_memory): Likewise.
2809         (aarch64_store_return_value): Likewise.
2810
2811 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2812
2813         * aarch64-tdep.c
2814         (aapcs_is_vfp_call_or_return_candidate): Make static
2815         (pass_in_v_or_stack): Remove function.
2816         (pass_in_v_vfp_candidate): New function.
2817         (aarch64_push_dummy_call): Check for float register candidates.
2818
2819 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2820
2821         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
2822         (aapcs_is_vfp_call_or_return_candidate_1): New function.
2823         (aapcs_is_vfp_call_or_return_candidate): Likewise.
2824
2825 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
2826
2827         PR build/23399
2828         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
2829         (struct ipa_sym_addresses): Rename to...
2830         (struct ipa_sym_addresses_common): ... this.
2831         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
2832
2833 2018-08-28  Tom Tromey  <tom@tromey.com>
2834
2835         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2836         (token_fifo): Now a std::vector.
2837         (yylex, c_parse): Update.
2838         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2839         (token_fifo): Now a std::vector.
2840         (yylex, d_parse): Update.
2841         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2842         (token_fifo): Now a std::vector.
2843         (yylex, go_parse): Update.
2844
2845 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
2846
2847         * parser-defs.h (struct type_stack) <elements>: Change type to
2848         std::vector<union type_stack_elt>.
2849         <depth, size>: Remove.
2850         * parse.c (parse_exp_in_context_1): Adjust.
2851         (type_stack_reserve): Remove.
2852         (check_type_stack_depth): Remove.
2853         (insert_into_type_stack): Adjust to std::vector.
2854         (insert_type): Likewise.
2855         (push_type): Likewise.
2856         (push_type_int): Likewise.
2857         (insert_type_address_space): Likewise.
2858         (pop_type): Likewise.
2859         (pop_type_int): Likewise.
2860         (pop_typelist): Likewise.
2861         (pop_type_stack): Likewise.
2862         (append_type_stack): Likewise.
2863         (push_type_stack): Likewise.
2864         (get_type_stack): Likewise.
2865         (type_stack_cleanup): Likewise.
2866         (push_typelist): Likewise.
2867         (follow_types): Likewise.
2868         (_initialize_parse): Likewise.
2869
2870 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2871
2872         * NEWS: Mention csky target.
2873
2874 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
2875             Hafiz Abid Qadeer  <abidh@codesourcery.com>
2876             Don Breazeal  <donb@codesourcery.com>
2877
2878         * csky-linux-tdep.c: New file.
2879         * csky-tdep.c: Likewise.
2880         * csky-tdep.h: Likewise.
2881         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
2882         csky-tdep.o.
2883         (HFILES_NO_SRCDIR): Add csky-tdep.h.
2884         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
2885         * configure.tgt: Add csky support.
2886
2887 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
2888
2889         * python/py-framefilter.c (py_print_frame): Print frame architecture
2890         when printing on an MI output.
2891
2892 2018-08-27  Tom Tromey  <tom@tromey.com>
2893
2894         PR build/23087:
2895         * configure: Rebuild.
2896         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
2897
2898 2018-08-27  Tom Tromey  <tom@tromey.com>
2899
2900         * aarch64-linux-tdep.c
2901         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
2902         casts to int.
2903
2904 2018-08-27  Tom Tromey  <tom@tromey.com>
2905
2906         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
2907         unsigned.
2908         (ppc64_standard_linkage1, ppc64_standard_linkage2)
2909         (ppc64_standard_linkage3, ppc64_standard_linkage4)
2910         (ppc64_standard_linkage5, ppc64_standard_linkage6)
2911         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
2912         unsigned.
2913
2914 2018-08-27  Tom Tromey  <tom@tromey.com>
2915
2916         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
2917         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
2918
2919 2018-08-27  Tom Tromey  <tom@tromey.com>
2920
2921         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
2922         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
2923         ULONGEST_MAX.
2924         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
2925         ULONGEST_MAX.
2926         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
2927         ULONGEST_MAX.
2928         * sparc-linux-tdep.c (sparc32_linux_sigframe)
2929         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
2930         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
2931         ULONGEST_MAX.
2932         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
2933         (ppc64_linux_sigaction_tramp_frame)
2934         (ppc32_linux_sighandler_tramp_frame)
2935         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2936         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
2937         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
2938         * mn10300-linux-tdep.c (am33_linux_sigframe)
2939         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
2940         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
2941         * mips-linux-tdep.c (mips_linux_o32_sigframe)
2942         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
2943         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
2944         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
2945         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
2946         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
2947         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
2948         * microblaze-linux-tdep.c
2949         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2950         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
2951         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
2952         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
2953         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
2954         * common/common-types.h (ULONGEST_MAX): New define.
2955         (CORE_ADDR_MAX): Fix formatting.
2956         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
2957         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
2958         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
2959         (arm_linux_rt_sigreturn_tramp_frame)
2960         (arm_eabi_linux_sigreturn_tramp_frame)
2961         (arm_eabi_linux_rt_sigreturn_tramp_frame)
2962         (thumb2_eabi_linux_sigreturn_tramp_frame)
2963         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
2964         (arm_linux_restart_syscall_tramp_frame)
2965         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
2966         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
2967         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
2968         ULONGEST_MAX.
2969         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
2970
2971 2018-08-27  Tom Tromey  <tom@tromey.com>
2972
2973         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
2974         CORE_ADDR_MAX.
2975         * mips-tdep.c (mips_deal_with_atomic_sequence)
2976         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
2977         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
2978         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
2979         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
2980         CORE_ADDR_MAX.
2981         * aarch64-tdep.c (aarch64_software_single_step): Use
2982         CORE_ADDR_MAX.
2983
2984 2018-08-27  Tom Tromey  <tom@tromey.com>
2985
2986         * linespec.c (complete_linespec_component): Add cast to "char".
2987         * completer.c (completion_tracker::build_completion_result): Add
2988         cast to "char".
2989
2990 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2991
2992         * solist.h (struct solist, struct target_so_ops): Fix
2993         indentation.
2994
2995 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2996
2997         * ada-tasks.c (ada_task_info_s): Remove typedef.
2998         (DEF_VEC_O(ada_task_info_s)): Remove.
2999         (struct ada_tasks_inferior_data): Initialize fields.
3000         <task_list>: Make an std::vector.
3001         (get_ada_tasks_inferior_data): Allocate with new.
3002         (ada_get_task_number): Adjust.
3003         (get_task_number_from_id): Likewise.
3004         (valid_task_id): Likewise.
3005         (ada_get_task_info_from_ptid): Likewise.
3006         (iterate_over_live_ada_tasks): Likewise.
3007         (add_ada_task): Likewise.
3008         (read_known_tasks): Likewise.
3009         (ada_build_task_list): Likewise.
3010         (print_ada_task_info): Likewise.
3011         (info_task): Likewise.
3012         (task_command_1): Likewise.
3013
3014 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3015
3016         * ada-lang.c (add_angle_brackets): Return std::string.
3017
3018 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3019
3020         * python/py-threadevent.c (py_get_event_thread): Initialize
3021         pythread.
3022
3023 2018-08-24  Pedro Alves  <palves@redhat.com>
3024
3025         * python/py-bpevent.c (create_breakpoint_event_object): Use
3026         copy-initialization.
3027         * python/py-continueevent.c (emit_continue_event): Use
3028         copy-initialization.
3029         * python/py-exitedevent.c (create_exited_event_object): Return a
3030         gdbpy_ref<>.
3031         (emit_exited_event): Use copy-initialization.
3032         * python/py-inferior.c (python_new_inferior)
3033         (python_inferior_deleted, add_thread_object): Use
3034         copy-initialization.
3035         * python/py-infevents.c (create_inferior_call_event_object)
3036         (create_register_changed_event_object)
3037         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3038         (emit_inferior_call_event, emit_memory_changed_event)
3039         (emit_register_changed_event): Use copy-initialization.
3040         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3041         Return a gdbpy_ref<>.
3042         (emit_new_objfile_event): Use copy-initialization.
3043         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3044         (emit_clear_objfiles_event): Use copy-initialization.
3045         * python/py-signalevent.c (create_signal_event_object): Use
3046         copy-initialization.
3047         * python/py-threadevent.c (create_thread_event_object): Use
3048         copy-initialization.
3049
3050 2018-08-24  Pedro Alves  <palves@redhat.com>
3051             Simon Marchi  <simon.marchi@ericsson.com>
3052
3053         PR gdb/23379
3054         * python/py-continueevent.c: Include "gdbthread.h".
3055         (create_continue_event_object): Add intro comment.  Add 'ptid'
3056         parameter.  Use it to find thread to pass to
3057         create_thread_event_object.
3058         (emit_continue_event): Pass PTID down to
3059         create_continue_event_object.
3060         * python/py-event.h (py_get_event_thread): Declare.
3061         (create_thread_event_object): Remove default from 'thread'
3062         parameter.
3063         * python/py-stopevent.c (create_stop_event_object): Use
3064         py_get_event_thread.
3065         * python/py-threadevent.c (get_event_thread): Rename to ...
3066         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3067         and use it to find the thread.
3068         (create_thread_event_object): Assert that THREAD isn't null.
3069         Don't find the event thread here.
3070
3071 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3072
3073         * block.h (blockrange, blockranges): New struct declarations.
3074         (struct block): Add new field named `ranges'.
3075         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3076         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3077         macros for accessing ranges in struct block.
3078         (make_blockranges): New declaration.
3079         block.c (make_blockranges): New function.
3080         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3081         for block.
3082         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3083         * blockframe.c (cache_pc_function_block): New static global.
3084         (clear_pc_function_cache): Clear cache_pc_function_block.
3085         (find_pc_partial_function): Move comment to symtab.h.  Add
3086         support for non-contiguous blocks.
3087         * cli/cli-cmds.c (block.h): Include.
3088         (print_disassembly): Handle printing of non-contiguous blocks.
3089         (disassemble_current_function): Likewise.
3090         (disassemble_command): Likewise.
3091
3092         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3093         BLOCK_START.
3094         * blockframe.c (get_pc_function_start): Likewise.
3095         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3096         (gcc_symbol_address): Likewise.
3097         * compile/compile-object-run.c (compile_object_run): Likewise.
3098         * compile/compile.c (get_expr_block_and_pc): Likewise.
3099         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3100         (func_addr_to_tail_call_list): Likewise.
3101         * findvar.c (default_read_var_value): Likewise.
3102         * inline-frame.c (inline_frame_this_id): Likewise.
3103         (skip-inline_frames): Likewise.
3104         * infcmd.c (until_next_command): Likewise.
3105         * linespec.c (convert_linespec_to_sals): Likewise.
3106         * parse.c (parse_exp_in_context_1): Likewise.
3107         * printcmd.c (build_address_symbolic): likewise.
3108         (info_address_command): Likewise.
3109         symtab.c (find_function_start_sal): Likewise.
3110         (skip_prologue_sal): Likewise.
3111         (find_function_alias_target): Likewise.
3112         (find_gnu_ifunc): Likewise.
3113         * stack.c (find_frame_funname): Likewise.
3114         * symtab.c (fixup_symbol_section): Likewise.
3115         (find_function_start_sal): Likewise.
3116         (skip_prologue_sal): Likewsie.
3117         (find_function_alias_target): Likewise.
3118         (find_gnu_ifunc): Likewise.
3119         * tracepoint.c (info_scope_command): Likewise.
3120         * value.c (value_fn_field): Likewise.
3121
3122         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3123         in place of find_pc_partial_function.
3124         * blockframe.c (find_function_entry_range_from_pc): New function.
3125         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3126         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3127         for each range in a block.
3128
3129
3130 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3131
3132         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3133         incrementation.
3134
3135 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3136
3137         * solib-svr4.c (read_program_headers_from_bfd): Return
3138         gdb::optional<gdb::byte_vector>.
3139         (svr4_exec_displacement): Adjust.
3140
3141 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3142
3143         * solib-svr4.c (read_program_header): Return
3144         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3145         (find_program_interpreter): Return
3146         gdb::optional<gdb::byte_vector>.
3147         (scan_dyntag_auxv): Adjust.
3148         (enable_break): Adjust.
3149         (svr4_exec_displacement): Adjust.
3150
3151 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3152
3153         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3154         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3155
3156 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3157
3158         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3159         string_vprintf.
3160         * guile/scm-utils.c (gdbscm_printf): Likewise.
3161         * serial.c (serial_printf): Likewise.
3162         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3163
3164 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3165
3166         * stack.c (print_frame): Print frame architecture when printing on
3167         an MI output.
3168         * NEWS: Mention new "arch" attribute in frame output.
3169
3170 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3171
3172         * arch/aarch64.h (aarch64_regnum): Update comment.
3173
3174 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3175
3176         * NEWS: Add SVE to 8.2 section.
3177
3178 2018-08-21  Pedro Alves  <palves@redhat.com>
3179
3180         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3181         out from gdbscm_parse_function_args.
3182         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3183         gdbscm_parse_function_args_1.
3184
3185 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3186
3187         PR gdb/17816
3188         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3189         operator.
3190
3191 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3192
3193         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3194
3195 2018-08-19  Michael Spang  <spang@google.com>
3196
3197         PR gdb/11786
3198         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3199         for PT_TLS segments.
3200
3201 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3202
3203         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3204         dwarf_variable_value.
3205         * dwarf2-frame.c (class dwarf_expr_executor):
3206         Add override for dwarf_variable_value.
3207         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3208         (class symbol_needs_eval_context): Likewise.
3209         (indirect_synthetic_pointer): Add forward declaration.
3210         (sect_variable_value): New function.
3211         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3212         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3213         for DW_OP_GNU_variable_value.
3214
3215 2018-08-16  Tom Tromey  <tom@tromey.com>
3216
3217         * top.c (read_command_file): Update.
3218         (command_line_input): Remove "repeat" argument.
3219         * ada-lang.c (get_selections): Update.
3220         * linespec.c (decode_line_2): Update.
3221         * defs.h (command_line_input): Remove argument.
3222         * cli/cli-script.c (read_next_line): Update.
3223         * python/py-gdb-readline.c: Update.
3224
3225 2018-08-17  Tom Tromey  <tom@tromey.com>
3226
3227         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3228         command_line_input.
3229
3230 2018-08-15  Tom Tromey  <tom@tromey.com>
3231
3232         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3233
3234 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3235
3236         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3237         If used, use find_pc_partial_function to find address range
3238         to disassemble.
3239         * mi/mi-main.c (mi_cmd_list_features): Report
3240         "data-disassemble-a-option" feature.
3241         * NEWS: Mention new -data-disassemble option -a.
3242
3243 2018-08-13  Tom Tromey  <tom@tromey.com>
3244
3245         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3246
3247 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3248
3249         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3250         (aarch64_linux_collect_sve_regset): Likewise.
3251         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3252         * regcache.h (regcache_map_entry_size): New function.
3253
3254 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3255
3256         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3257         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3258         (SVE_HEADER_VL_LENGTH): Likewise.
3259         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3260         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3261         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3262         (SVE_HEADER_SIZE_OFFSET): Likewise.
3263         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3264         (SVE_HEADER_VL_OFFSET): Likewise.
3265         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3266         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3267         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3268         (SVE_HEADER_SIZE): Likewise.
3269         (aarch64_linux_core_read_vq): Add function.
3270         (aarch64_linux_core_read_description): Check for SVE section.
3271
3272 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3273
3274         * aarch64-fbsd-tdep.c
3275         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3276         collect_size.
3277         * aarch64-linux-tdep.c
3278         (aarch64_linux_iterate_over_regset_sections): Likewise.
3279         * alpha-linux-tdep.c
3280         (alpha_linux_iterate_over_regset_sections):
3281         * alpha-nbsd-tdep.c
3282         (alphanbsd_iterate_over_regset_sections): Likewise.
3283         * amd64-fbsd-tdep.c
3284         (amd64fbsd_iterate_over_regset_sections): Likewise.
3285         * amd64-linux-tdep.c
3286         (amd64_linux_iterate_over_regset_sections): Likewise.
3287         * arm-bsd-tdep.c
3288         (armbsd_iterate_over_regset_sections): Likewise.
3289         * arm-fbsd-tdep.c
3290         (arm_fbsd_iterate_over_regset_sections): Likewise.
3291         * arm-linux-tdep.c
3292         (arm_linux_iterate_over_regset_sections): Likewise.
3293         * corelow.c (get_core_registers_cb): Likewise.
3294         (core_target::fetch_registers): Likewise.
3295         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3296         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3297         * gdbarch.h (void): Regenerate.
3298         * gdbarch.sh: Add supply_size and collect_size.
3299         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3300         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3301         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3302         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3303         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3304         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3305         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3306         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3307         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3308         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3309         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3310         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3311         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3312         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3313         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3314         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3315         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3316         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3317         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3318         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3319         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3320         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3321         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3322         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3323         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3324         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3325         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3326         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3327         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3328         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3329
3330 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3331
3332         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3333         with string_printf.
3334
3335 2018-08-10  Keith Seitz  <keiths@redhat.com>
3336
3337         * compile/compile-c-support.c (add_code_header, add_code_footer):
3338         Move into policy class.
3339         (c_push_user_expression, pop_user_expression_nop)
3340         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3341         (compile_program): New host class.
3342         (c_compile_program): New typedef.
3343         (c_compute_porgram): Use c_compile_program.
3344
3345 2018-08-10  Keith Seitz  <keiths@redhat.com>
3346
3347         * compile/compile-internal.h (compile_instance::~compile_instance):
3348         Remove calls to htab_delete.
3349         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3350         * compile.c (compile_instance::compile_instance): Initialize
3351         htab unique pointers.
3352         (compile_instance::get_cached_type, compile_instance::insert_type)
3353         (compile_instance::error_symbol_once): Update for unique_ptr.
3354
3355 2018-08-10  Keith Seitz  <keiths@redhat.com>
3356
3357         * compile/compile-c-symbols.c (struct symbol_error)
3358         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3359         (compile_instance::insert_symbol_error)
3360         (compile_instance::error_symbol_once): Move to ...
3361         * compile/compile.c: ... here.
3362
3363 2018-08-10  Keith Seitz  <keiths@redhat.com>
3364
3365         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3366         instead of `new_compile_instance'.
3367         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3368         Update description.
3369         If the symbol error map is not initialized, create it.
3370         (generate_c_for_for_one_symbol): Do not check/initialize
3371         the symbol error map.
3372         * compile/compile-c-types.c (compile_c_instance): Make a class.
3373         Update all callers.
3374         (compile_instance::compile_instance): Initialize the type cache.
3375         (get_cached_type): New function.
3376         (insert_type): Update description.
3377         (compile_c_instance::m_default_cflags): Define.
3378         (convert_type): Update description.  Use get_cached_type.
3379         (delete_instance): Moved to destructor.
3380         (new_compile_instance): Moved to constructor.
3381         * compile/compile-c.h (compile_c_instance): Make class inheriting
3382         from compile_instance.
3383         <base>: Remove field.
3384         <type_map, symbol_err_map>: Move to base class.
3385         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3386         * compile/compile-internal.h (compile_instance): Make class.
3387         <type_map_t, symbol_err_map_t>: Define.
3388         <fe>: Rename to `m_gcc_fe'.
3389         <scope, block, gcc_target_options>: Add `m_' prefix.
3390         <m_type_map, m_symbol_err_map>: New fields, moved from
3391         compile_c_instance.
3392         <destroy>: Remove.
3393         (convert_type, new_compile_instance): Remove.
3394         * compile/compile.c (cleanup_compile_instance): Remove.
3395         (compile_to_object): Use unique_ptr to eliminate cleanups.
3396         (compile_instance::set_print_callback, compile_instance::version)
3397         (compile_instance::set_verbose)
3398         (compile_instance::set_driver_filename)
3399         (compile_instance::set_triplet_regexp)
3400         (compile_instance::set_arguments)
3401         (compile_instance::set_source_file)
3402         (compile_instance::compile): Define.
3403
3404 2018-08-10  Keith Seitz  <keiths@redhat.com>
3405
3406         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3407         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3408         gcc-c-fe.def to define C plugin.
3409         (delete_instance): Delete `c_plugin'.
3410         (new_compile_instance): Initialize `c_plugin'.
3411         * compile/compile-c.h: Include gcc_c_plugin.h.
3412         (struct compile_c_instance) <c_plugin>: New member.
3413         * gcc-c-plugin.h: New file.
3414         Update all callers with API change.
3415
3416 2018-08-10  Keith Seitz  <keiths@redhat.com>
3417
3418         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3419         (HFILES_NO_SRCDIR): ... to here.
3420         Add compile-internal.h and compile-c.h.
3421         * compile/compile-c-support.c: Include compile-c.h.
3422         * compile/compile-c-symbols.c: Include compile-c.h.
3423         (generate_c_for_variable_locations): Update comment.
3424         * compile/compile-c-types.c: Include compile-c.h.
3425         * compile/compile-c.h: New file -- moved C language declarations
3426         from other files here.
3427         * compile/compile-internal.h: Do not include hashtab.h or
3428         common/enum-flags.h.
3429         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3430         (gcc_convert_symbol, gcc_symbol_address)
3431         (generate_c_for_variable_locations, c_get_mode_for_size)
3432         (c_get_range_decl_name): Definitions moved to compile-c.h.
3433         * compile/compile-loc2c.c: Include compile-c.h.
3434
3435 2018-08-10  Keith Seitz  <keiths@redhat.com>
3436
3437         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3438         (c_symbol_substitution_name): ... this.
3439         Update all callers.
3440
3441 2018-08-10  Keith Seitz  <keiths@redhat.com>
3442
3443         * compile/compile-c-support.c (c_compute_program): Use
3444         unique_xmalloc_ptr to eliminate cleanup.
3445         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3446         Return a unique_xmalloc_ptr and eliminate cleanup.
3447         * compile/compile-internal.h (generate_c_for_variable_locations):
3448         Return unique_xmalloc_ptr and update description.
3449
3450 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3451
3452         * corelow.c (core_target::get_core_register_section): Rename
3453         min_size to section_min_size.
3454
3455 2018-08-09  Jim Wilson  <jimw@sifive.com>
3456
3457         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3458         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3459         * NEWS: Mention new GNU/Linux RISC-V target.
3460         * configure.host: Add riscv*-*-linux*.
3461         * configure.nat: Add riscv*.
3462         * configure.tgt: Add riscv*-*-linux*.
3463         * riscv-linux-nat.c: New file.
3464         * riscv-linux-tdep.c: New file.
3465
3466 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3467
3468         * infrun.c (resume): Make static, add forward declaration.
3469         (proceed): Update header comment.
3470         * infrun.h (resume): Delete declaration.
3471
3472 2018-08-09  Tom Tromey  <tom@tromey.com>
3473
3474         * riscv-tdep.h: Minor formatting fixes.
3475
3476 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3477
3478         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3479         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3480         (test_mkdir_recursive): Likewise.
3481         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3482
3483 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3484
3485         * valarith.c (value_subscripted_rvalue): If an array is not in
3486         memory, and we don't know the upper bound, then we can't know that
3487         the requested element exists or not.
3488
3489 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3490
3491         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3492         (target_options_to_string): Add comment.
3493
3494 2018-08-08  Tom Tromey  <tom@tromey.com>
3495
3496         * unittests/scoped_mmap-selftests.c: Check result of "write".
3497
3498 2018-08-08  Jim Wilson  <jimw@sifive.com>
3499
3500         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3501         (decode_register_index_short): New.
3502         (decode_j_type_insn, decode_cj_type_insn): New.
3503         (decode_b_type_insn, decode_cb_type_insn): New.
3504         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3505         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3506         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3507         is_c_sw_insn instead of is_sw_insn.
3508         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3509         (riscv_software_single_step): New.
3510         * riscv-tdep.h (riscv_software_single_step): Declare.
3511
3512         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3513         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3514
3515 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3516
3517         PR gdb/18050:
3518         * target.c (dispose_inferior): Don't dispose of inferiors that are
3519         already killed.
3520
3521 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3522
3523         * remote.c (remote_target::download_tracepoint): Change char* to
3524         const char*.
3525
3526 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3527
3528         * target.h (target_options_to_string): Return an std::string.
3529         * target.c (str_comma_list_concat_elem): Return void, use
3530         std::string.
3531         (do_option): Likewise.
3532         (target_options_to_string): Return an std::string.
3533         * linux-nat.c (linux_nat_target::wait): Adjust.
3534         * target-debug.h (target_debug_print_options): Adjust.
3535
3536 2018-08-07  Tom Tromey  <tom@tromey.com>
3537
3538         * Makefile.in (CPPFLAGS): New variable.
3539         (INTERNAL_CPPFLAGS): Use it.
3540
3541 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3542
3543         * NEWS: Mention the index cache.
3544
3545 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3546
3547         * common/pathstuff.h (get_standard_cache_dir): New.
3548         * common/pathstuff.c (get_standard_cache_dir): New.
3549         * build-id.h (build_id_to_string): New.
3550         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
3551         DEBUG_STR_SUFFIX): Move to here.
3552         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
3553         DEBUG_STR_SUFFIX): Move from there.
3554         (write_psymtabs_to_index): Make non-static, add basename
3555         parameter.  Write to temporary files, rename when done.
3556         (save_gdb_index_command): Adjust call to
3557         write_psymtabs_to_index.
3558         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
3559         field.
3560         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
3561         (get_gdb_index_contents_from_cache): New.
3562         (get_gdb_index_contents_from_cache_dwz): New.
3563         (dwarf2_initialize_objfile): Read index from cache.
3564         (dwarf2_build_psymtabs): Save to index.
3565         * dwarf-index-cache.h: New file.
3566         * dwarf-index-cache.c: New file.
3567         * dwarf-index-write.h: New file.
3568
3569 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3570
3571         * gnulib/aclocal.m4: Re-generate.
3572         * gnulib/config.in: Re-generate.
3573         * gnulib/configure: Re-generate.
3574         * gnulib/import/Makefile.am: Re-generate.
3575         * gnulib/import/Makefile.in: Re-generate.
3576         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3577         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3578         * gnulib/import/m4/mkdir.m4: New file.
3579         * gnulib/import/mkdir.c: New file.
3580         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
3581         module.
3582
3583 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3584
3585         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
3586         * common/scoped_mmap.c: New file.
3587         * common/scoped_mmap.h (destroy): New method.
3588         (~scoped_mmap, reset): Use destroy.
3589         (scoped_mmap): New move constructor.
3590         (mmap_file): New declaration.
3591         * unittests/scoped_mmap-selftests.c (test_normal,
3592         test_invalid_filename, run_tests): New functions.
3593         (_initialize_scoped_mmap_selftests): Register selftest.
3594
3595 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3596
3597         * dwarf2read.c (read_gdb_index_from_section): Rename to...
3598         (read_gdb_index_from_buffer): ... this.  Remove section
3599         parameter, add buffer parameter.
3600         (get_gdb_index_contents_ftype,
3601         get_gdb_index_contents_dwz_ftype): New typedefs.
3602         (dwarf2_read_gdb_index): Add callback parameters to get the
3603         index contents.
3604         (get_gdb_index_contents_from_section): New.
3605         (dwarf2_initialize_objfile): Update call to
3606         dwarf2_read_gdb_index.
3607
3608 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3609
3610         * common/filestuff.h (gdb_fopen_cloexec): New overload.
3611         (gdb_open_cloexec): Likewise.
3612         * nat/linux-osdata.c (command_from_pid): Use string_printf.
3613         (commandline_from_pid): Likewise.
3614         (linux_xfer_osdata_threads): Likewise.
3615         (linux_xfer_osdata_fds): Likewise.
3616         * ada-lang.c (is_package_name): Likewise.
3617         * auxv.c (procfs_xfer_auxv): Likewise.
3618         * breakpoint.c (print_one_breakpoint_location): Use
3619         uiout::field_fmt.
3620         (print_one_catch_solib): Use string_printf.
3621         * coff-pe-read.c (add_pe_exported_sym): Likewise.
3622         (add_pe_forwarded_sym): Likewise.
3623         * dwarf2read.c (create_type_unit_group): Likewise.
3624         (build_error_marker_type): Likewise.
3625         * infcall.c (get_function_name): Likewise.
3626         * valprint.c (print_converted_chars_to_obstack): Likewise.
3627         * xtensa-tdep.c (xtensa_register_type): Likewise.
3628
3629 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
3630
3631         * remote.c (remote_target::download_tracepoint): Fix format
3632         string errors.
3633
3634 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3635
3636         * tracefile.c: Include common/byte-vector.h.
3637         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
3638         with trace_regblock_size if needed.  Update uses of buf.
3639
3640 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3641
3642         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
3643         std::vector<unsigned char>.
3644         * tracepoint.c (collection_list::collection_list): Remove
3645         m_regs_mask initializer from initializer list.  Resize
3646         m_regs_mask using the largest remote register number.
3647         (collection_list::add_remote_register): Remove size check on
3648         m_regs_mask.  Use at to access element.
3649         (collection_list::stringify): Change type of temp_buf to
3650         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
3651         stringify the register mask.  Use pack_hex_byte for the register
3652         mask.
3653
3654 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3655
3656         * tracepoint.h (class collection_list) <add_register>: Remove.
3657         <add_remote_register, add_ax_registers, add_local_register>:
3658         Declare.
3659         <add_memrange>: Add scope parameter.
3660         * tracepoint.c (encode_actions_1): Likewise.
3661         (collection_list::add_register): Rename to ...
3662         (collection_list::add_remote_register): ... this.  Update
3663         comment.
3664         (collection_list::add_ax_registers, add_local_register): New
3665         methods.
3666         (collection_list::add_memrange): Add scope parameter.  Call
3667         add_local_register instead of add_register.
3668         (finalize_tracepoint_aexpr): New function.
3669         (collection_list::collect_symbol): Update calls to add_memrange.
3670         Call add_local_register instead of add_register.  Call
3671         add_ax_registers.  Call finalize_tracepoint_aexpr.
3672         (encode_actions_1): Get remote regnos for $reg action.  Call
3673         add_remote_register, add_ax_registers, and add_local_register.
3674         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
3675         (validate_actionline): Call finalize_tracepoint_aexpr.
3676
3677 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3678
3679         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
3680         Replace array buf with gdb::char_vector buf, of size
3681         get_remote_packet_size ().  Replace references to buf and
3682         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
3683         and xsnprintf with snprintf.  Raise errors if the buffer is too
3684         small.
3685
3686 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3687
3688         * remote.c (remote_target::download_tracepoint): Fix the has_more
3689         predicate in the QTDP action list iteration.
3690
3691 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3692
3693         * remote.c (remote_target::download_tracepoint): Fix indentation
3694         in for block.
3695
3696 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3697
3698         * proc-api.c (_initialize_proc_api): Remove c, unused.
3699         * procfs.c (procfs_init_inferior): Remove signals, unused.
3700         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
3701         unused.
3702
3703 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
3704             Andrew Burgess  <andrew.burgess@embecosm.com>
3705
3706         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
3707         'W_STOPCODE (0)' as this could be ambiguous.
3708
3709 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
3710
3711         * ser-tcp.c (net_open): Fix thinko when deciding whether to
3712         disable TCP's Nagle algorithm (use "ai_protocol" instead of
3713         "ai_socktype").
3714
3715 2018-08-02  Tom Tromey  <tom@tromey.com>
3716
3717         PR symtab/16842.
3718         * dwarf2read.c (read_func_scope): Set symtab on template parameter
3719         symbols.
3720         (process_structure_scope): Likewise.
3721
3722 2018-08-02  Xavier Roirand  <roirand@adacore.com>
3723
3724         PR gdb/22629:
3725         * darwin-nat.c (darwin_kill_inferior): Fix handling of
3726         kill inferior.
3727
3728 2018-08-02  Tom Tromey  <tom@tromey.com>
3729
3730         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
3731         (darwin_suspend_inferior, darwin_resume_inferior)
3732         (darwin_decode_notify_message, darwin_resume_inferior_threads)
3733         (darwin_check_new_threads): Check result of get_darwin_inferior.
3734
3735 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
3736
3737         GDB 8.1.1 released.
3738
3739 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
3740
3741         * varobj.c (varobj_get_path_expr_parent): Report an error if
3742         parent is a dynamic varobj.
3743
3744 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3745
3746         * gnulib/aclocal.m4: Re-generate.
3747         * gnulib/config.in: Re-generate.
3748         * gnulib/configure: Re-generate.
3749         * gnulib/import/Makefile.in: Re-generate.
3750         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3751         * gnulib/import/m4/onceonly.m4: Re-generate.
3752
3753 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3754
3755         * target-descriptions.c (struct xml_test_tdesc): New.
3756         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
3757         (record_xml_tdesc): Update.
3758         (maintenance_check_xml_descriptions): Update.
3759         * target-descriptions.h (record_xml_tdesc): Update comment.
3760
3761 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3762
3763         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
3764         checking array bounds are defined.
3765
3766 2018-07-30  Tom Tromey  <tom@tromey.com>
3767
3768         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
3769         irreflexivity violation.
3770
3771 2018-07-30  Tom Tromey  <tom@tromey.com>
3772
3773         * cli/cli-decode.c (lookup_cmd): Remove lint code.
3774         * value.c (unpack_long): Remove lint code.
3775         * valops.c (value_ind): Remove lint code.
3776         * valarith.c (value_x_binop, value_x_unop, value_equal)
3777         (value_pos): Remove lint code.
3778
3779 2018-07-28  Tom de Vries  <tdevries@suse.de>
3780
3781         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
3782         with undefined upper bound as <optimized out>.
3783
3784 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
3785
3786         * gcore.in: Rename variable "name" to "prefix".  Expand
3787         "usage" text.
3788
3789 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
3790
3791         * windows-nat.c (windows_nat_target::create_inferior): Update to
3792         call close() in global namespace.
3793
3794 2018-07-26  Tom Tromey  <tom@tromey.com>
3795
3796         * dwarf-index-write.c (add_address_entry): Don't add objfile
3797         offsets.
3798         * dbxread.c (find_stab_function): Rename from
3799         find_stab_function_addr.  Return a bound_minimal_symbol.
3800         (read_dbx_symtab): Use raw_text_low, raw_text_high.
3801         Don't add objfile offsets.
3802         (end_psymtab): Use raw_text_low, raw_text_high,
3803         MSYMBOL_VALUE_RAW_ADDRESS.
3804         (read_ofile_symtab): Update.
3805         (process_one_symbol): Update.
3806         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
3807         offsets.
3808         (dw2_relocate): Remove.
3809         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
3810         searching addrmap.
3811         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
3812         Update.
3813         (process_psymtab_comp_unit_reader, add_partial_symbol)
3814         (add_partial_subprogram, dwarf2_ranges_read): Update.
3815         (load_partial_dies): Update.
3816         (add_address_entry): Don't add objfile offsets.
3817         (dwarf2_build_include_psymtabs): Update.
3818         (create_addrmap_from_aranges): Don't add objfile offsets.
3819         (dw2_find_pc_sect_compunit_symtab): Update.
3820         * mdebugread.c (parse_symbol): Don't add objfile offsets.
3821         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
3822         Update.
3823         (parse_partial_symbols): Don't add objfile offsets.  Use
3824         raw_text_low, raw_text_high.  Update.
3825         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
3826         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
3827         or call 'relocate' quick function.  Clear psymbol_map.
3828         * psympriv.h (struct partial_symbol) <address>: Add section
3829         offset.
3830         <set_unrelocated_address>: Rename from set_address.
3831         <raw_text_low, raw_text_high>: New methods.
3832         <text_low, text_high>: Add objfile parameter.
3833         (add_psymbol_to_bcache): Add 'section' parameter.  Call
3834         set_unrelocated_address.
3835         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3836         (find_pc_psymbol): Update.
3837         (fixup_psymbol_section, relocate_psymtabs): Remove.
3838         (dump_psymtab, psym_functions): Update.
3839         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
3840         parameter.
3841         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
3842         (start_psymtab_common): Update.
3843         * symfile-debug.c (debug_qf_relocate): Remove.
3844         (debug_sym_quick_functions): Update.
3845         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
3846         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
3847         Update.
3848
3849 2018-07-26  Tom Tromey  <tromey@redhat.com>
3850
3851         * dbxread.c (end_psymtab): Use text_high_valid and
3852         text_low_valid.
3853         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
3854         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
3855         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3856         Update comment.
3857         <text_low_valid, text_high_valid>: New fields.
3858         <set_text_low, set_text_high>: Update.
3859         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
3860
3861 2018-07-26  Tom Tromey  <tom@tromey.com>
3862
3863         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
3864         Update.
3865         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
3866         textlow and texthigh fields.
3867         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
3868         Update.
3869         * mdebugread.c (parse_lines, parse_partial_symbols)
3870         (psymtab_to_symtab_1): Update.
3871         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3872         Rename fields.  Update comment.  Now private.
3873         <text_low, text_high, set_text_low, set_text_high>: New methods.
3874         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3875         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
3876         (start_psymtab_common, maintenance_info_psymtabs)
3877         (maintenance_check_psymtabs): Update.
3878         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
3879         texthigh fields.
3880         (scan_xcoff_symtab): Update.
3881
3882 2018-07-26  Tom Tromey  <tromey@redhat.com>
3883
3884         * psympriv.h (struct partial_symbol) <unrelocated_address,
3885         address, set_address>: New methods.
3886         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
3887         (fixup_psymbol_section, relocate_psymtabs): Update.
3888         (print_partial_symbols): Add 'objfile' parameter.  Update.
3889         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
3890         Update.
3891
3892 2018-07-26  Tom Tromey  <tom@tromey.com>
3893
3894         * dwarf-index-write.c (write_psymbols, debug_names::insert)
3895         (debug_names::write_psymbols): Update.
3896         * psympriv.h (struct partial_symbol): Derive from
3897         general_symbol_info.
3898         <obj_section>: New method.
3899         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
3900         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3901         (find_pc_sect_psymbol, fixup_psymbol_section)
3902         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
3903         (print_partial_symbols, recursively_search_psymtabs)
3904         (compare_psymbols, psymbol_hash, psymbol_compare)
3905         (add_psymbol_to_bcache, maintenance_check_psymtabs)
3906         (psymbol_name_matches, psym_fill_psymbol_map): Update.
3907
3908 2018-07-26  Tom Tromey  <tromey@redhat.com>
3909
3910         * dbxread.c (end_psymtab): Remove dead code.
3911
3912 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
3913
3914         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
3915         DWARF unwinders are disabled.
3916         * dwarf2-frame.c: Add dwarf2read.h include.
3917         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
3918         disabled.
3919         (dwarf2_frame_unwinders_enabled_p): Define.
3920         (show_dwarf_unwinders_enabled_p): New function.
3921         (_initialize_dwarf2_frame): Register switch to control DWARF
3922         unwinder use.
3923         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
3924         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
3925         (show_dwarf_cmdlist): Remove static keyword.
3926         * dwarf2read.h (set_dwarf_cmdlist): Declare.
3927         (show_dwarf_cmdlist): Declare.
3928         * NEWS: Document new feature.
3929
3930 2018-07-26  Tom de Vries  <tdevries@suse.de>
3931
3932         PR breakpoints/23366
3933         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
3934
3935 2018-07-26  Tom de Vries  <tdevries@suse.de>
3936
3937         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
3938         DW_AT_count can't be translated to a dynamic prop.
3939
3940 2018-07-25  Tom de Vries  <tdevries@suse.de>
3941
3942         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
3943         try/catch.
3944
3945 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
3946
3947         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
3948
3949 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
3950
3951         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
3952
3953 2018-07-24  Keith Seitz  <keiths@redhat.comt
3954
3955         PR symtab/23010
3956         * dwarf2read.c (dw2_add_symbol_to_list): New function.
3957         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
3958         instead of add_symbol_to_list.
3959         (read_file_scope): Call prepare_one_comp_unit before reading
3960         any other DIEs.
3961
3962 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
3963
3964         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
3965
3966 2018-07-24  Tom Tromey  <tom@tromey.com>
3967
3968         * utils.c (malloc, realloc, free): Don't declare.
3969         * configure, config.in: Rebuild.
3970         * configure.ac: Don't check for declarations of free, malloc, or
3971         realloc.
3972
3973 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3974
3975         * aarch64-linux-nat.c
3976         (aarch64_linux_nat_target::stopped_data_address): Remove unused
3977         variable.
3978         * arm-linux-nat.c (fetch_regs): Likewise.
3979         (store_regs): Likewise.
3980         (fetch_vfp_regs): Likewise.
3981         (store_vfp_regs): Likewise.
3982         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
3983         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
3984         (arm_linux_nat_target::insert_watchpoint): Likewise.
3985         (arm_linux_nat_target::remove_watchpoint): Likewise.
3986         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
3987         Likewise.
3988         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
3989         Likewise.
3990         * ppc-linux-nat.c (fetch_register): Likewise.
3991         (fetch_all_gp_regs): Likewise.
3992         (fetch_ppc_registers): Likewise.
3993         (store_all_gp_regs): Likewise.
3994         (store_ppc_registers): Likewise.
3995         (hwdebug_insert_point): Likewise.
3996         (can_use_watchpoint_cond_accel): Likewise.
3997         * remote-sim.c (gdb_os_write_stdout): Likewise.
3998
3999 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4000             Tom Tromey  <tom@tromey.com>
4001
4002         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4003         test for it.
4004         * configure: Rebuild.
4005
4006 2018-07-22  Tom Tromey  <tom@tromey.com>
4007
4008         * regformats/regdat.sh: Define xmltarget_${name} inside
4009         #ifndef IN_PROCESS_AGENT.
4010
4011 2018-07-22  Tom Tromey  <tom@tromey.com>
4012
4013         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4014
4015 2018-07-22  Tom Tromey  <tom@tromey.com>
4016
4017         * symfile.c (reread_symbols): Notify iter, not objfile.
4018
4019 2018-07-22  Tom Tromey  <tom@tromey.com>
4020
4021         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4022         Use arch_ops.
4023         (ravenscar_thread_target::prepare_to_store): Likewise.
4024
4025 2018-07-22  Tom Tromey  <tom@tromey.com>
4026
4027         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4028         unused variable.  Call value_fetch_lazy when needed.
4029         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4030         Remove unused variable.  Call value_fetch_lazy when needed.
4031
4032 2018-07-22  Tom Tromey  <tom@tromey.com>
4033
4034         * m32c-tdep.c (mark_dma): Return void.
4035         (make_regs): Remove unused declarations.
4036
4037 2018-07-22  Tom Tromey  <tom@tromey.com>
4038
4039         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4040         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4041         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4042         bkscm_get_valid_block_smob_arg_unsafe for effect.
4043
4044 2018-07-22  Tom Tromey  <tom@tromey.com>
4045
4046         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4047         value_type.
4048
4049 2018-07-22  Tom Tromey  <tom@tromey.com>
4050
4051         * windows-nat.c (saved_context): Conditionally define.
4052         * remote.c (remote_target::remote_btrace_maybe_reopen):
4053         Conditionally declare "warned".
4054         * inflow.c (sigquit_ours): Conditionally define.
4055         (new_tty): Move "tty" declaration inside #if.
4056         * guile/guile.c (guile_datadir): Conditionally define.
4057         * charset.c (set_be_le_names): Move some declarations inside #if.
4058         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4059         #if.
4060         (parse_xml_btrace_conf): Likewise.
4061
4062 2018-07-22  Tom Tromey  <tom@tromey.com>
4063
4064         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4065
4066 2018-07-22  Tom Tromey  <tom@tromey.com>
4067
4068         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4069         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4070         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4071         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4072         * stack.c (frame_apply_level_command): Remove unused variable.
4073         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4074         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4075         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4076         unused variable.
4077         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4078         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4079         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4080         variable.
4081         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4082         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4083         variable.
4084         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4085         Remove unused variable.
4086         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4087         variable.
4088         * common/tdesc.c (print_xml_feature::visit): Remove unused
4089         variable.
4090         * compile/compile-object-load.c (store_regs): Remove unused
4091         variables.
4092         * complaints.c (clear_complaints): Remove unused variable.
4093         * corelow.c (core_target_open): Remove unused variable.
4094         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4095         variable.
4096         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4097         variable.
4098         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4099         variable.
4100         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4101         variable.
4102         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4103         variable.
4104         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4105         variable.
4106         * ia64-tdep.c (examine_prologue): Remove unused variable.
4107         * infcall.c (run_inferior_call): Remove unused variable.
4108         * inferior.c (exit_inferior): Remove unused variable.
4109         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4110         * linespec.c (decode_line_2): Remove unused variable.
4111         * linux-nat.c (super_close): Remove.
4112         * linux-tdep.c (linux_info_proc): Remove unused variable.
4113         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4114         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4115         Remove unused variable.
4116         * parse.c (find_minsym_type_and_address): Remove unused variable.
4117         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4118         variable.
4119         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4120         variable.
4121         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4122         variables.
4123         * record-btrace.c (record_btrace_target::store_registers): Remove
4124         unused variable.
4125         (cmd_show_record_btrace_cpu): Remove unused variable.
4126         * riscv-tdep.c (riscv_register_reggroup_p)
4127         (riscv_push_dummy_call, riscv_return_value): Remove unused
4128         variable.
4129         * rust-exp.y (literal): Remove unused variable.
4130         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4131         unused variable.
4132         <STRUCTOP_ANONYMOUS>: Likewise.
4133         * s390-linux-tdep.c (s390_linux_init_abi_31)
4134         (s390_linux_init_abi_64): Remove unused variable.
4135         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4136         (file_select_thread, net_windows_open, _initialize_ser_windows):
4137         Remove unused variables.
4138         * symtab.c (find_pc_sect_line): Remove unused variable.
4139         * target-memory.c (compute_garbled_blocks): Remove unused
4140         variable.
4141         (target_write_memory_blocks): Remove unused variable.
4142         * target.c (target_stack::unpush): Remove unused variables.
4143         * tracepoint.c (start_tracing, all_tracepoint_actions)
4144         (merge_uploaded_trace_state_variables)
4145         (print_one_static_tracepoint_marker): Remove unused variable.
4146         * unittests/basic_string_view/element_access/char/1.cc (test01):
4147         Remove unused variable.
4148         * windows-nat.c (windows_continue, windows_add_all_dlls)
4149         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4150         Remove unused variables.
4151
4152 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4153
4154         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4155         attr_profile in HAVE_ELF.
4156         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4157         HAVE_ELF.
4158
4159 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4160
4161         * frame.c (frame_register_unwind): Change parameter name.
4162         (frame_unwind_register): Likewise.
4163         (frame_unwind_register_value): Likewise.
4164         (frame_unwind_register_signed): Likewise.
4165         (frame_unwind_register_unsigned): Likewise.
4166         * frame.h (frame_register_unwind): Likewise.
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_unwind_arch): Likewise.
4172
4173 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4174
4175         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4176         ISA maintenance.
4177
4178 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4179
4180         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4181         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4182         hand.
4183
4184 2018-07-20  Keith Seitz  <keiths@redhat.com>
4185
4186         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4187         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4188         m_compunit_symtab, m_language>: Add "m_" prefix.
4189         Update all uses.
4190         * buildsym.c: Update all uses.
4191
4192 2018-07-20  Tom Tromey  <tom@tromey.com>
4193
4194         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4195         * buildsym.h (record_line_ftype): Remove typedef.
4196
4197 2018-07-20  Tom Tromey  <tom@tromey.com>
4198
4199         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4200         (end_expandable_symtab): Likewise.
4201         (end_symtab_get_static_block): Likewise.
4202         (end_symtab_from_static_block): Likewise.
4203         * buildsym-legacy.c (augment_type_symtab): Remove.
4204         (end_expandable_symtab): Remove.
4205         (end_symtab_get_static_block): Remove.
4206         (end_symtab_from_static_block): Remove.
4207
4208 2018-07-20  Tom Tromey  <tom@tromey.com>
4209
4210         * dwarf2read.c: Include buildsym.h.
4211         (struct dwarf2_cu) <builder>: New method.
4212         (fixup_go_packaging): Update.
4213         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4214         use scoped_free_pendings.
4215         (using_directives): Add "cu" parameter, remove "language".
4216         (read_import_statement, setup_type_unit_groups, )
4217         (read_func_scope, read_lexical_block_scope)
4218         (dwarf2_record_block_ranges, read_namespace): Update.
4219         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4220         (lnp_state_machine::handle_end_sequence): Update.
4221         (class lnp_state_machine) <m_cu>: New member.
4222         <m_record_line_callback>: Remove.
4223         <m_currently_recording_lines>: New member.
4224         (lnp_state_machine::handle_set_file): Update.
4225         (noop_record_line): Remove.
4226         (dwarf_record_line_p): Add cu parameter.
4227         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4228         (lnp_state_machine::record_line)
4229         (lnp_state_machine::lnp_state_machine)
4230         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4231         (dwarf_decode_lines): Update.
4232         (dwarf2_start_subfile): Add cu parameter.
4233         (dwarf2_start_symtab, new_symbol): Update.
4234         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4235         Remove dwarf2_per_objfile parameter.
4236         (dwarf_decode_macros): Update.
4237
4238 2018-07-20  Tom Tromey  <tom@tromey.com>
4239
4240         * stabsread.c (define_symbol): Update.
4241         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4242         * dwarf2read.c (new_symbol): Update.
4243         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4244         * cp-namespace.c: Include buildsym.h.
4245         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4246         * buildsym-legacy.c (get_buildsym_compunit): New function.
4247
4248 2018-07-20  Tom Tromey  <tom@tromey.com>
4249
4250         * xcoffread.c: Include buildsym-legacy.h.
4251         * windows-nat.c: Include buildsym-legacy.h.
4252         * stabsread.c: Include buildsym-legacy.h.
4253         * mdebugread.c: Include buildsym-legacy.h.
4254         * buildsym-legacy.h: New file.
4255         * buildsym-legacy.c: New file, from buildsym.c.
4256         * go32-nat.c: Include buildsym-legacy.h.
4257         * dwarf2read.c: Include buildsym-legacy.h.
4258         * dbxread.c: Include buildsym-legacy.h.
4259         * cp-namespace.c: Include buildsym-legacy.h.
4260         * coffread.c: Include buildsym-legacy.h.
4261         * buildsym.h: Move some contents to buildsym-legacy.h.
4262         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4263         buildsym-legacy.c.
4264         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4265
4266 2018-07-20  Tom Tromey  <tom@tromey.com>
4267
4268         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4269         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4270         (buildsym_compunit::buildsym_compunit)
4271         (buildsym_compunit::~buildsym_compunit)
4272         (buildsym_compunit::get_macro_table): Define.
4273
4274 2018-07-20  Tom Tromey  <tom@tromey.com>
4275
4276         * buildsym.c (reset_symtab_globals): Remove.
4277         (buildsym_compunit::end_symtab_from_static_block): Update.
4278         (buildsym_compunit::augment_type_symtab): Update.
4279         (end_symtab_from_static_block): Call free_buildsym_compunit.
4280         (augment_type_symtab, end_symtab, end_expandable_symtab):
4281         Likewise.
4282
4283 2018-07-20  Tom Tromey  <tom@tromey.com>
4284
4285         * arch-utils.c: Do not include buildsym.h.
4286         * mipsread.c: Do not include buildsym.h.
4287         * machoread.c: Do not include buildsym.h.
4288         * elfread.c: Do not include buildsym.h.
4289
4290 2018-07-20  Tom Tromey  <tom@tromey.com>
4291
4292         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4293         initialization.
4294         (buildsym_compunit): Add new constructor.
4295         (struct buildsym_compunit) <get_last_source_file, finish_block,
4296         record_block_range, start_subfile, patch_subfile_names,
4297         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4298         set_last_source_start_addr, get_last_source_start_addr,
4299         get_local_using_directives, set_local_using_directives,
4300         get_global_using_directives, outermost_context_p,
4301         get_current_context_stack, get_context_stack_depth,
4302         get_current_subfile, get_local_symbols, get_file_symbols,
4303         get_global_symbols, record_debugformat, record_producer,
4304         push_context, pop_context, end_symtab_get_static_block,
4305         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4306         New public methods.
4307         <record_pending_block, finish_block_internal, make_blockvector,
4308         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4309         private methods.
4310         Update all users.
4311
4312 2018-05-22  Tom Tromey  <tom@tromey.com>
4313
4314         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4315         parameter.
4316         (finish_block_internal): Update.
4317
4318 2018-07-20  Tom Tromey  <tom@tromey.com>
4319
4320         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4321         parameter.
4322         (finish_block_internal): Update.
4323
4324 2018-07-20  Tom Tromey  <tom@tromey.com>
4325
4326         * buildsym.h (EXTERN): Don't define or undef.
4327         * buildsym.c (EXTERN): Don't define.
4328
4329 2018-07-20  Tom Tromey  <tom@tromey.com>
4330
4331         * buildsym.c: Remove TODO comment.
4332
4333 2018-07-20  Tom Tromey  <tom@tromey.com>
4334
4335         * coffread.c (coff_symtab_read): Update.
4336         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4337         (xcoff_new_init): Update.
4338         * mipsread.c (mipscoff_new_init): Update.
4339         * mdebugread.c (mdebug_build_psymtabs): Update.
4340         * elfread.c (elf_new_init): Update.
4341         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4342         Update.
4343         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4344         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4345         (stabsect_build_psymtabs): Update.
4346         * buildsym.h (buildsym_init): Don't declare.
4347         * buildsym.c: Update comment.
4348         (prepare_for_building): Remove.
4349         (start_symtab, restart_symtab): Update.
4350         (reset_symtab_globals): Update comment.
4351         (buildsym_init): Remove.
4352
4353 2018-07-20  Tom Tromey  <tom@tromey.com>
4354
4355         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4356         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4357         (read_enum_type, common_block_start, common_block_end)
4358         (cleanup_undefined_types_1, finish_global_stabs): Update.
4359         * mdebugread.c (psymtab_to_symtab_1): Update.
4360         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4361         (read_lexical_block_scope, new_symbol): Update.
4362         * dbxread.c (process_one_symbol): Update.
4363         * coffread.c (coff_symtab_read, process_coff_symbol)
4364         (coff_read_enum_type): Update.
4365         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4366         declare.
4367         (get_local_symbols, get_file_symbols, get_global_symbols): New
4368         functions.
4369         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4370         m_global_symbols.
4371         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4372         (~scoped_free_pendings): Update.
4373         (finish_block, prepare_for_building, reset_symtab_globals)
4374         (end_symtab_get_static_block, end_symtab_with_blockvector)
4375         (augment_type_symtab, push_context): Update.
4376         (get_local_symbols, get_file_symbols, get_global_symbols): New
4377         functions.
4378         (buildsym_init): Update.
4379
4380 2018-07-20  Tom Tromey  <tom@tromey.com>
4381
4382         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4383         (process_full_type_unit): Likewise.
4384         (dwarf2_start_symtab): Set list_in_scope.
4385
4386 2018-07-20  Tom Tromey  <tom@tromey.com>
4387
4388         * dwarf2read.c (process_psymtab_comp_unit_reader)
4389         (build_type_psymtabs_reader): Do not set list_in_scope.
4390
4391 2018-07-20  Tom Tromey  <tom@tromey.com>
4392
4393         * buildsym.c (free_pendings): Remove.
4394         (add_symbol_to_list, scoped_free_pendings)
4395         (finish_block_internal, buildsym_init): Update.
4396
4397 2018-07-20  Tom Tromey  <tom@tromey.com>
4398
4399         * xcoffread.c (read_xcoff_symtab): Update.
4400         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4401         Update.
4402         * dbxread.c (process_one_symbol): Update.
4403         * coffread.c (coff_symtab_read): Update.
4404         * buildsym.h (finish_block): Update.
4405         * buildsym.c (finish_block): Remove "listhead" argument.
4406         (end_symtab_get_static_block): Update.
4407
4408 2018-07-20  Tom Tromey  <tom@tromey.com>
4409
4410         * buildsym.h (class scoped_free_pendings): Remove constructor.
4411         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4412         method.
4413         <m_pending_block_obstack, m_pending_blocks>: New members.
4414         (pending_block_obstack, pending_blocks): Remove.
4415         (scoped_free_pendings::scoped_free_pendings): Default.
4416         (~scoped_free_pendings): Update.
4417         (free_pending_blocks): Remove.
4418         (finish_block_internal, record_pending_block, make_blockvector)
4419         (end_symtab_get_static_block, augment_type_symtab, push_context)
4420         (buildsym_init): Update.
4421
4422 2018-07-20  Tom Tromey  <tom@tromey.com>
4423
4424         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4425         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4426         members.
4427         (pending_addrmap, pending_addrmap_obstack)
4428         (pending_addrmap_interesting): Remove.
4429         (scoped_free_pendings, record_block_range, make_blockvector)
4430         (prepare_for_building, reset_symtab_globals, buildsym_init):
4431         Update.
4432
4433 2018-07-20  Tom Tromey  <tom@tromey.com>
4434
4435         * xcoffread.c (process_linenos): Update.
4436         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4437         * mdebugread.c (psymtab_to_symtab_1): Update.
4438         * dwarf2read.c (setup_type_unit_groups)
4439         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4440         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4441         * dbxread.c (process_one_symbol): Update.
4442         * coffread.c (coff_symtab_read, enter_linenos)
4443         (process_coff_symbol): Update.
4444         * buildsym.h (current_subfile): Don't declare.
4445         (get_current_subfile): Declare.
4446         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4447         member.
4448         (start_subfile, free_buildsym_compunit, push_subfile)
4449         (prepare_for_building, start_symtab): Update.
4450         (get_current_subfile): New function.
4451
4452 2018-07-20  Tom Tromey  <tom@tromey.com>
4453
4454         * coffread.c (coff_symtab_read): Update.
4455         * xcoffread.c (read_xcoff_symtab): Update.
4456         * dwarf2read.c (new_symbol): Update.
4457         (read_func_scope, read_lexical_block_scope): Update.
4458         * dbxread.c (process_one_symbol): Update.
4459         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4460         (outermost_context_p): Remove macro.
4461         (outermost_context_p, get_current_context_stack)
4462         (get_context_stack_depth): Declare.
4463         (pop_context): Return struct context_stack.
4464         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4465         member.
4466         (context_stack_size): Remove.
4467         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4468         (prepare_for_building, end_symtab_get_static_block)
4469         (augment_type_symtab, push_context): Update.
4470         (pop_context): Return struct context_stack.
4471         (outermost_context_p, get_current_context_stack)
4472         (get_context_stack_depth): New functions.
4473         (buildsym_init): Update.
4474
4475 2018-07-20  Tom Tromey  <tom@tromey.com>
4476
4477         * rust-exp.y: Now a pure parser.  Update all rules.
4478         (%union): Move earlier.
4479         (current_parser, work_obstack): Remove globals.
4480         (rust_parser, ~rust_parser): Update.
4481         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4482         lex_character, lex_number, lex_string, lex_identifier,
4483         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4484         convert_name, convert_params_to_expression,
4485         convert_ast_to_expression, ast_basic_type, ast_operation,
4486         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4487         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4488         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4489         ast_array_type, ast_slice_type, ast_reference_type,
4490         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4491         (rust_parse): Update.
4492         (rustyyerror, rustyylex): Add parser parameter.
4493         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4494         (rust_lex_stringish_test, rust_lex_test_sequence)
4495         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4496         (rust_lex_test_push_back, rust_lex_tests): Update.
4497
4498 2018-07-19  Pedro Alves  <palves@redhat.com>
4499
4500         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4501         gdb::unique_xmalloc_ptr.
4502         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4503         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4504         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4505         copy-initialization.
4506         * guile/scm-pretty-print.c (ppscm_print_children): Use
4507         gdb::unique_xmalloc_ptr instead of cleanups.
4508         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4509         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4510         gdb::unique_xmalloc_ptr.
4511         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4512         Adjust to use gdb::unique_xmalloc_ptr.
4513         * guile/scm-utils.c (extract_arg): Adjust.
4514         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4515         gdb::unique_xmalloc_ptr instead of a cleanup.
4516
4517 2018-07-19  Tom Tromey  <tom@tromey.com>
4518
4519         * utils.c (do_value_free_to_mark)
4520         (make_cleanup_value_free_to_mark): Remove.
4521         * utils.h (make_cleanup_value_free_to_mark): Remove.
4522
4523 2018-07-19  Pedro Alves  <palves@redhat.com>
4524
4525         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4526         forwarding reference.
4527
4528 2018-07-18  Pedro Alves  <palves@redhat.com>
4529
4530         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4531         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4532         cleanup.
4533
4534 2018-07-18  Pedro Alves  <palves@redhat.com>
4535
4536         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4537         exceptions.
4538         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4539         (gdbscm_wrap): New.
4540         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4541         directly instead of a cleanup.
4542         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4543         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
4544         (vlscm_binop_gdbthrow): New, factored out from ...
4545         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
4546         (vlscm_rich_compare): Use gdbscm_wrap.
4547         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
4548         instead of a cleanup.
4549         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
4550         cleanup.
4551         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4552         Use xfree directly instead of a cleanup.
4553         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
4554         Adjust to use gdbscm_wrap and scoped_value_mark.
4555         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
4556         (gdbscm_value_address, gdbscm_value_dereference)
4557         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
4558         scoped_value_mark.
4559         (gdbscm_value_dynamic_type): Use scoped_value_mark.
4560         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
4561         scoped_value_mark.
4562         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
4563         gdbscm_wrap and scoped_value_mark.
4564         (gdbscm_value_to_string): Use xfree directly instead of a
4565         cleanup.  Move 'buffer' unique_ptr to TRY scope.
4566         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
4567         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
4568         scoped_value_mark.
4569         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
4570         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
4571         scoped_value_mark.
4572         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
4573         gdbscm_wrap.
4574
4575 2018-07-18  Tom de Vries  <tdevries@suse.de>
4576
4577         * findvar.c (default_read_var_value): Also resolve dynamic type for
4578         LOC_OPTIMIZED_OUT vars.
4579
4580 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
4581
4582         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
4583         decoding.
4584
4585 2018-07-17  Tom Tromey  <tom@tromey.com>
4586
4587         * guile/scm-param.c (pascm_set_func, pascm_show_func)
4588         (compute_enum_list, pascm_set_param_value_x)
4589         (gdbscm_parameter_value): Update.
4590         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
4591         (gdbscm_scm_to_host_string): Update.
4592         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
4593         Update.
4594         * guile/scm-cmd.c (cmdscm_add_completion): Update.
4595         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
4596         * guile/scm-string.c (gdbscm_scm_to_string): Return
4597         unique_xmalloc_ptr.
4598         (gdbscm_scm_to_host_string): Likewise.
4599
4600 2018-07-17  Tom Tromey  <tom@tromey.com>
4601
4602         * guile/guile.c (gdbscm_eval_from_control_command): Update.
4603         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
4604         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
4605         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
4606         unique_xmalloc_ptr.
4607
4608 2018-07-17  Tom Tromey  <tom@tromey.com>
4609
4610         * guile/scm-param.c (pascm_signal_setshow_error): Update.
4611         * guile/guile-internal.h (gdbscm_exception_message_to_string):
4612         Update.
4613         * guile/scm-cmd.c (cmdscm_function): Update.
4614         * guile/scm-pretty-print.c
4615         (ppscm_print_exception_unless_memory_error): Update.
4616         * guile/scm-exception.c (gdbscm_exception_message_to_string):
4617         Return unique_xmalloc_ptr.
4618
4619 2018-07-17  Tom Tromey  <tom@tromey.com>
4620
4621         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
4622         Use string_printf.
4623
4624 2018-07-17  Jim Wilson  <jimw@sifive.com>
4625
4626         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
4627         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
4628         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
4629         unecessary braces after EF_RISCV_RVC test.  Delete call to
4630         set_gdbarch_decr_pc_after_break.
4631
4632         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
4633         RISCV_LAST_FP_REGNUM + 1.
4634         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
4635
4636 2018-07-17  Tom Tromey  <tom@tromey.com>
4637
4638         * configure.ac: Remove --disable-gdbcli.
4639         * configure: Rebuild.
4640         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
4641         (SUBDIR_CLI_CFLAGS): Remove.
4642         (SFILES): Use SUBDIR_CLI_SRCS.
4643         (COMMON_OBS): Use SUBDIR_CLI_OBS.
4644
4645 2018-07-17  Tom Tromey  <tom@tromey.com>
4646
4647         PR gdb/18624:
4648         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
4649
4650 2018-07-16  Jim Wilson  <jimw@sifive.com>
4651
4652         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
4653
4654 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4655
4656         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
4657         variable.
4658         (libunwind_frame_sniffer): Likewise.
4659         (libunwind_frame_prev_register): Likewise.
4660         (libunwind_sigtramp_frame_sniffer): Likewise.
4661         * ia64-tdep.c (ia64_access_reg): Likewise.
4662         (ia64_access_rse_reg): Likewise.
4663         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
4664         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
4665
4666 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4667
4668         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
4669
4670 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4671
4672         * remote-sim.c (gdbsim_target::close,
4673         gdbsim_target::mourn_inferior): Remove unused variables.
4674
4675 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
4676
4677         * ia64-tdep.c (ktab_buf): New global.
4678         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
4679         (get_kernel_table): Adjust.
4680
4681 2018-07-16  Tom Tromey  <tom@tromey.com>
4682
4683         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
4684         * dwarf2read.c (using_directives, new_symbol): Use
4685         outermost_context_p.
4686         * dbxread.c (process_one_symbol): Use outermost_context_p.
4687         * coffread.c (coff_symtab_read): Use outermost_context_p.
4688
4689 2018-07-16  Tom Tromey  <tom@tromey.com>
4690
4691         * dwarf2read.c (using_directives, read_func_scope)
4692         (read_lexical_block_scope): Update.
4693         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
4694         * buildsym.h (local_using_directives, global_using_directives):
4695         Don't declare.
4696         (get_local_using_directives, set_local_using_directives)
4697         (get_global_using_directives): Declare.
4698         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
4699         m_global_using_directives>: New members.
4700         (finish_block_internal, prepare_for_building)
4701         (reset_symtab_globals, end_symtab_get_static_block)
4702         (push_context): Update.
4703         (get_local_using_directives, set_local_using_directives)
4704         (get_global_using_directives): New functions.
4705         (buildsym_init): Update.
4706
4707 2018-07-16  Tom Tromey  <tom@tromey.com>
4708
4709         * xcoffread.c (xcoff_initial_scan): Don't call
4710         free_pending_blocks.
4711         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
4712         * buildsym.h (class scoped_free_pendings): Add constructor.
4713         (free_pending_blocks): Don't declare.
4714         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
4715         (free_pending_blocks): Now static.
4716
4717 2018-07-16  Tom Tromey  <tom@tromey.com>
4718
4719         * buildsym.h (push_subfile, pop_subfile): Update declarations.
4720         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
4721         member.
4722         (struct subfile_stack): Remove.
4723         (subfile_stack): Remove.
4724         (push_subfile, pop_subfile, buildsym_init): Update.
4725
4726 2018-07-16  Tom Tromey  <tom@tromey.com>
4727
4728         * buildsym.c (push_subfile): Use gdb_assert.
4729         (pop_subfile): Use gdb_assert.
4730
4731 2018-07-16  Tom Tromey  <tom@tromey.com>
4732
4733         * buildsym.h (merge_symbol_lists): Remove.
4734         * buildsym.c (merge_symbol_lists): Remove.
4735
4736 2018-07-16  Tom Tromey  <tom@tromey.com>
4737
4738         * stabsread.c (scan_file_globals): Update comment.
4739         * stabsread.h (scan_file_globals): Move from buildsym.h.
4740         * buildsym.h (scan_file_globals): Move to stabsread.h.
4741
4742 2018-07-16  Tom Tromey  <tom@tromey.com>
4743
4744         * xcoffread.c (xcoff_new_init): Update.
4745         * mipsread.c (mipscoff_new_init): Update.
4746         * mdebugread.c (mdebug_build_psymtabs): Update.
4747         * elfread.c (elf_new_init): Update.
4748         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
4749         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
4750         * buildsym.h (buildsym_new_init): Don't declare.
4751         * buildsym.c (buildsym_new_init): Remove.
4752
4753 2018-07-16  Tom Tromey  <tom@tromey.com>
4754
4755         * stabsread.h (within_function): Move from buildsym.h.
4756         * stabsread.c (start_stabs): Clear within_function.
4757         * coffread.c (coff_start_symtab): Clear within_function.
4758         * buildsym.h (within_function): Move to stabsread.h.
4759         * buildsym.c (prepare_for_building): Update.
4760
4761 2018-07-16  Tom Tromey  <tom@tromey.com>
4762
4763         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
4764         * dwarf2read.c (dwarf2_start_symtab): Don't set
4765         processing_gcc_compilation.
4766         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
4767
4768 2018-07-16  Tom Tromey  <tom@tromey.com>
4769
4770         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
4771         (next_symbol_text_func): Move from buildsym.h.
4772         * stabsread.c (hashname): Move from buildsym.c.
4773         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
4774         (next_symbol_text_func, hashname): Move to stabsread.h.
4775         * buildsym.c: Don't include bcache.h
4776         (hashname): Move to stasbread.c.
4777
4778 2018-07-16  Tom Tromey  <tom@tromey.com>
4779
4780         * buildsym.h (context_stack_size): Don't declare.
4781         * buildsym.c (context_stack_size): New global.
4782
4783 2018-07-16  Tom Tromey  <tom@tromey.com>
4784
4785         * dbxread.c (processing_acc_compilation): New global.
4786         * buildsym.h (processing_acc_compilation): Don't declare.
4787
4788 2018-07-16  Tom Tromey  <tom@tromey.com>
4789
4790         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
4791         * dbxread.c (read_ofile_symtab): Update.
4792         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
4793         * buildsym.h (last_source_start_addr): Remove.
4794         (set_last_source_start_addr, get_last_source_start_addr):
4795         Declare.
4796         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
4797         parameter.
4798         (struct buildsym_compunit) <m_last_source_start_addr>: New
4799         member.
4800         (prepare_for_building): Remove start_addr parameter.
4801         (start_symtab, restart_symtab, end_symtab_get_static_block)
4802         (end_symtab_with_blockvector): Update.
4803         (set_last_source_start_addr, get_last_source_start_addr): New
4804         functions.
4805
4806 2018-07-16  Tom Tromey  <tom@tromey.com>
4807
4808         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
4809         member.
4810         (have_line_numbers): Remove.
4811         (record_line, prepare_for_building, end_symtab_get_static_block)
4812         (augment_type_symtab): Update.
4813
4814 2018-07-16  Tom Tromey  <tom@tromey.com>
4815
4816         * buildsym.c (~buildsym_compunit): Free the macro table.
4817         (struct buildsym_compunit) <get_macro_table, release_macros>: New
4818         methods.
4819         <m_pending_macros>: New member.
4820         (pending_macros): Remove.
4821         (~scoped_free_pendings, get_macro_table, prepare_for_building)
4822         (reset_symtab_globals, end_symtab_get_static_block)
4823         (end_symtab_with_blockvector, augment_type_symtab)
4824         (buildsym_init): Update.
4825
4826 2018-07-16  Tom Tromey  <tom@tromey.com>
4827
4828         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
4829         parameter.
4830         (buildsym_compunit::set_last_source_file): New method.
4831         <m_last_source_file>: New member.
4832         (prepare_for_building): Remove "name" parameter.
4833         (start_symtab, restart_symtab, reset_symtab_globals): Update.
4834         (last_source_file): Remove.
4835         (set_last_source_file, get_last_source_file): Update.
4836
4837 2018-07-16  Tom Tromey  <tom@tromey.com>
4838
4839         * buildsym.c (prepare_for_building): Add assert.
4840
4841 2018-07-16  Tom Tromey  <tom@tromey.com>
4842
4843         * buildsym.c (~buildsym_compunit): Update.
4844         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
4845         (start_subfile, patch_subfile_names)
4846         (end_symtab_with_blockvector): Update.
4847
4848 2018-07-16  Tom Tromey  <tom@tromey.com>
4849
4850         * buildsym.c (struct buildsym_compunit): Add constructor,
4851         destructor, initializers.
4852         (start_buildsym_compunit): Remove.
4853         (free_buildsym_compunit): Use "delete".
4854         (start_symtab, restart_symtab): Use "new".
4855
4856 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
4857
4858         * symfile.c (set_objfile_default_section_offset): Remove struct
4859         keyword.
4860
4861 2018-07-14  Stafford Horne  <shorne@gmail.com>
4862
4863         * (Responsible Maintainers): Add myself as or1k maintainer.
4864
4865 2018-07-13  Tom Tromey  <tom@tromey.com>
4866
4867         * symfile.c (set_objfile_default_section_offset): Use extra braces
4868         around initializer.
4869
4870 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
4871
4872         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
4873         non-branching basr.
4874
4875 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4876
4877         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4878         unittests/cli-utils-selftests.c
4879         * unittests/cli-utils-selftests.c: New file.
4880
4881 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4882
4883         * NEWS: Mention new commands. Mention change to 'thread apply'.
4884
4885 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4886
4887         * thread.c (thr_try_catch_cmd): New function.
4888         (thread_apply_all_command): Handle qcs flags.
4889         (thread_apply_command): Handle qcs flags.
4890         (taas_command): New function.
4891         (tfaas_command): New function.
4892         (_initialize_thread): Update to setup the new commands 'taas
4893         and 'tfaas'. Change doc string for 'thread apply'.
4894
4895 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4896
4897         * stack.c: (trailing_outermost_frame): New function, mostly
4898         extracted from backtrace_command_1.
4899         (leading_innermost_frame): New function.
4900         (backtrace_command_1): Update to call trailing_outermost_frame.
4901         (frame_apply_command_count): New function.
4902         (frame_apply_level_command): New function.
4903         (frame_apply_all_command): New function.
4904         (frame_apply_command): New function.
4905         (faas_command): New function.
4906         (frame_cmd_list): New variable.
4907         (_initialize_stack): Update to setup the new commands 'frame apply'
4908         and 'faas'.
4909
4910 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4911
4912         * cli-utils.c (number_or_range_parser::get_number): Only handle
4913         numbers or convenience var as numbers.
4914         (parse_flags): New function.
4915         (parse_flags_qcs): New function.
4916         (number_or_range_parser::finished): Ensure parsing end is detected
4917         before end of string.
4918         * cli-utils.h (parse_flags): New function.
4919         (parse_flags_qcs): New function.
4920         (number_or_range_parser): Remove m_finished bool.
4921         (number_or_range_parser::skip_range): Set m_in_range to false.
4922
4923 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
4924
4925         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
4926         on Windows.
4927
4928 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4929             Jan Kratochvil  <jan.kratochvil@redhat.com>
4930             Paul Fertser  <fercerpav@gmail.com>
4931             Tsutomu Seki  <sekiriki@gmail.com>
4932             Pedro Alves  <palves@redhat.com>
4933
4934         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4935         'unittests/parse-connection-spec-selftests.c'.
4936         (COMMON_SFILES): Add 'common/netstuff.c'.
4937         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
4938         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
4939         * common/netstuff.c: New file.
4940         * common/netstuff.h: New file.
4941         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
4942         (wait_for_connect): Update comment.  New parameter
4943         'gdb::optional<int> sock' instead of 'struct serial *scb'.
4944         Use 'sock' directly instead of 'scb->fd'.
4945         (try_connect): New function, with code from 'net_open'.
4946         (net_open): Rewrite main loop to deal with multiple
4947         sockets/addresses.  Handle IPv6-style hostnames; implement
4948         support for IPv6 connections.
4949         * unittests/parse-connection-spec-selftests.c: New file.
4950
4951 2018-07-11  Pedro Alves  <palves@redhat.com>
4952
4953         PR gdb/23377
4954         * remote.c (remote_target::remote_detach_pid): Call
4955         set_current_process.
4956
4957 2018-07-11  Pedro Alves  <palves@redhat.com>
4958
4959         * h8300-tdep.c (h8300_gdbarch_init): Remove
4960         set_gdbarch_ecoff_reg_to_regnum calls.
4961
4962 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4963
4964         PR c++/23373
4965         * c-typeprint.c (c_type_print_base_struct_union): Don't print
4966         offsets/sizes for static members of a class/struct.
4967
4968 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
4969
4970         * target-descriptions.c (tdesc_register_bitsize): Rename.
4971         * target-descriptions.h (tdesc_register_bitsize): Likewise.
4972         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
4973         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
4974
4975 2018-07-10  Tom Tromey  <tom@tromey.com>
4976
4977         * breakpoint.c (moribund_locations): Now static and a
4978         std::vector.
4979         (breakpoint_init_inferior, moribund_breakpoint_here_p)
4980         (build_bpstat_chain, update_global_location_list)
4981         (breakpoint_retire_moribund): Update.
4982         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
4983         VEC.
4984
4985 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4986
4987         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
4988         (riscv_register_reggroup_p): Use new function, remove unneeded
4989         parenthesis.
4990         (riscv_push_dummy_call): Extend assert to compare against xlen or
4991         flen based on register type.
4992
4993 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4994
4995         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
4996
4997 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4998
4999         * remote.c (show_hardware_watchpoint_limit): New function.
5000         (show_hardware_watchpoint_length_limit): New function.
5001         (show_hardware_breakpoint_limit): New function.
5002         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5003         where appropriate, update help text.
5004
5005 2018-07-09  Tom Tromey  <tom@tromey.com>
5006
5007         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5008         (CLIBS): Don't mention NAT_CLIBS.
5009
5010 2018-07-09  Tom Tromey  <tom@tromey.com>
5011
5012         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5013         (LIBGDB_OBS, clean mostlyclean): Update.
5014         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5015
5016 2018-07-09  Tom Tromey  <tom@tromey.com>
5017
5018         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5019         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5020         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5021
5022 2018-07-09  Tom Tromey  <tom@tromey.com>
5023
5024         * Makefile.in (ALLDEPFILES): Remove exec.c.
5025         (COMMON_OBS): Remove exec.o.
5026         (COMMON_SFILES): Add exec.c.
5027
5028 2018-07-09  Tom Tromey  <tom@tromey.com>
5029
5030         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5031
5032 2018-07-09  Tom Tromey  <tom@tromey.com>
5033
5034         * Makefile.in (clean mostlyclean): Remove stamp-version.
5035         (version.c): Depend on stamp-version.
5036         (stamp-version): New rule, from version.c rule.
5037
5038 2018-07-09  Tom Tromey  <tom@tromey.com>
5039
5040         * Makefile.in (init.c): Depend on stamp-init.
5041         (stamp-init): New rule, from init.c rule.
5042         (clean mostlyclean): Remove stamp-init.
5043
5044 2018-07-09  Tom Tromey  <tom@tromey.com>
5045
5046         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5047         SUBDIR_GCC_COMPILE_SRCS.
5048
5049 2018-07-09  Tom Tromey  <tom@tromey.com>
5050
5051         * Makefile.in (init.c): Remove some unused sed rules.
5052
5053 2018-07-09  Tom Tromey  <tom@tromey.com>
5054
5055         * Makefile.in (TSOBS): Remove.
5056         (INIT_FILES): Update.
5057         (LIBGDB_OBS): Update.
5058         (COMMON_SFILES): Add inflow.c.
5059         (SFILES): Remove inflow.c.
5060
5061 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5062
5063         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5064
5065 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5066
5067         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5068         get_saveloc_name, is_signal_frame_name, step_name,
5069         init_remote_name, create_addr_space_name,
5070         destroy_addr_space_name, search_unwind_table_name,
5071         find_dyn_list_name): Constify.
5072
5073 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5074
5075         * darwin-nat.c (darwin_pthread_kill): New function.
5076         (darwin_resume_thread): Use darwin_pthread_kill.
5077
5078 2018-07-05  Tom de Vries  <tdevries@suse.de>
5079
5080         * macroexp.c (macro_buffer) <operator=>: New member function.
5081
5082 2018-07-04  Tom Tromey  <tom@tromey.com>
5083
5084         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5085
5086 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5087
5088         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5089         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5090         * maint.c: Likewise.
5091         * top.c: Likewise.
5092
5093 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5094
5095         * NEWS: Create a new section for the next release branch.
5096         Rename the section of the current branch, now that it has
5097         been cut.
5098
5099 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5100
5101         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5102         * version.in: Bump version to 8.2.50.DATE-git.
5103
5104 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5105             Pedro Alves  <palves@redhat.com>
5106
5107         * linux-nat.c (linux_init_ptrace): Rename to ...
5108         (linux_init_ptrace_procfs): ... this.  Call
5109         linux_proc_init_warnings.
5110         (linux_nat_target::post_attach)
5111         (linux_nat_target::post_startup_inferior): Adjust.
5112         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5113         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5114
5115 2018-07-04  Tom de Vries  <tdevries@suse.de>
5116
5117         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5118         check ...
5119         (read_comp_unit_head): ... here.
5120
5121 2018-07-03  Tom Tromey  <tom@tromey.com>
5122
5123         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5124         (stop_tracing, tstatus_command)
5125         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5126         (print_one_static_tracepoint_marker): Update.
5127         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5128         std::vector.
5129         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5130         VEC.
5131         (all_tracepoints, static_tracepoints_here): Return std::vector.
5132
5133 2018-07-03  Tom Tromey  <tom@tromey.com>
5134
5135         * common/ptid.c (ptid_equal): Remove.
5136         * common/ptid.h (ptid_equal): Don't declare.
5137         * ada-tasks.c: Update.
5138         * breakpoint.c: Update.
5139         * common/agent.c: Update.
5140         * corelow.c: Update.
5141         * darwin-nat-info.c: Update.
5142         * darwin-nat.c: Update.
5143         * dcache.c: Update.
5144         * dtrace-probe.c: Update.
5145         * dummy-frame.c: Update.
5146         * fbsd-nat.c: Update.
5147         * frame.c: Update.
5148         * gdbthread.h: Update.
5149         * gnu-nat.c: Update.
5150         * go32-nat.c: Update.
5151         * inf-loop.c: Update.
5152         * inf-ptrace.c: Update.
5153         * infcall.c: Update.
5154         * infcmd.c: Update.
5155         * inflow.c: Update.
5156         * infrun.c: Update.
5157         * linux-fork.c: Update.
5158         * linux-nat.c: Update.
5159         * linux-thread-db.c: Update.
5160         * mi/mi-cmd-var.c: Update.
5161         * mi/mi-interp.c: Update.
5162         * mi/mi-main.c: Update.
5163         * nto-procfs.c: Update.
5164         * ppc-linux-tdep.c: Update.
5165         * procfs.c: Update.
5166         * python/py-inferior.c: Update.
5167         * python/py-record-btrace.c: Update.
5168         * python/py-record.c: Update.
5169         * ravenscar-thread.c: Update.
5170         * regcache.c: Update.
5171         * remote-sim.c: Update.
5172         * remote.c: Update.
5173         * sol-thread.c: Update.
5174         * solib.c: Update.
5175         * target.c: Update.
5176         * tui/tui-stack.c: Update.
5177         * varobj.c: Update.
5178         * windows-nat.c: Update.
5179         * windows-tdep.c: Update.
5180
5181 2018-07-03  Tom Tromey  <tom@tromey.com>
5182
5183         * common/ptid.c (ptid_match): Remove.
5184         * common/ptid.h (ptid_match): Don't declare.
5185         * fbsd-nat.c: Update.
5186         * infcmd.c: Update.
5187         * infrun.c: Update.
5188         * linux-nat.c: Update.
5189         * record-btrace.c: Update.
5190         * regcache.c: Update.
5191         * remote.c: Update.
5192
5193 2018-07-03  Tom Tromey  <tom@tromey.com>
5194
5195         * common/ptid.c (ptid_tid_p): Remove.
5196         * common/ptid.h (ptid_tid_p): Don't declare.
5197         * sol-thread.c: Update.
5198
5199 2018-07-03  Tom Tromey  <tom@tromey.com>
5200
5201         * common/ptid.c (ptid_lwp_p): Remove.
5202         * common/ptid.h (ptid_lwp_p): Don't declare.
5203         * fbsd-nat.c: Update.
5204         * linux-nat.c: Update.
5205         * nat/linux-procfs.c: Update.
5206         * nat/x86-linux-dregs.c: Update.
5207         * sol-thread.c: Update.
5208
5209 2018-07-03  Tom Tromey  <tom@tromey.com>
5210
5211         * common/ptid.c (ptid_is_pid): Remove.
5212         * common/ptid.h (ptid_is_pid): Don't declare.
5213         * infrun.c: Update.
5214         * linux-nat.c: Update.
5215         * mi/mi-interp.c: Update.
5216         * remote.c: Update.
5217         * thread.c: Update.
5218
5219 2018-07-03  Tom Tromey  <tom@tromey.com>
5220
5221         * common/ptid.c (ptid_get_tid): Remove.
5222         * common/ptid.h (ptid_get_tid): Don't declare.
5223         * ada-tasks.c: Update.
5224         * aix-thread.c: Update.
5225         * bsd-uthread.c: Update.
5226         * darwin-nat.c: Update.
5227         * fbsd-nat.c: Update.
5228         * i386-darwin-nat.c: Update.
5229         * infrun.c: Update.
5230         * linux-tdep.c: Update.
5231         * nto-procfs.c: Update.
5232         * ppc-ravenscar-thread.c: Update.
5233         * python/py-infthread.c: Update.
5234         * ravenscar-thread.c: Update.
5235         * sol-thread.c: Update.
5236         * sparc-ravenscar-thread.c: Update.
5237         * windows-nat.c: Update.
5238
5239 2018-07-03  Tom Tromey  <tom@tromey.com>
5240
5241         * common/ptid.c (ptid_get_lwp): Remove.
5242         * common/ptid.h (ptid_get_lwp): Don't declare.
5243         * aarch64-linux-nat.c: Update.
5244         * ada-tasks.c: Update.
5245         * aix-thread.c: Update.
5246         * amd64-linux-nat.c: Update.
5247         * arm-linux-nat.c: Update.
5248         * corelow.c: Update.
5249         * fbsd-nat.c: Update.
5250         * fbsd-tdep.c: Update.
5251         * gnu-nat.c: Update.
5252         * i386-cygwin-tdep.c: Update.
5253         * i386-gnu-nat.c: Update.
5254         * i386-linux-nat.c: Update.
5255         * ia64-linux-nat.c: Update.
5256         * inf-ptrace.c: Update.
5257         * infrun.c: Update.
5258         * linux-fork.c: Update.
5259         * linux-nat.c: Update.
5260         * linux-tdep.c: Update.
5261         * linux-thread-db.c: Update.
5262         * mips-linux-nat.c: Update.
5263         * nat/aarch64-linux-hw-point.c: Update.
5264         * nat/aarch64-linux.c: Update.
5265         * nat/linux-btrace.c: Update.
5266         * nat/linux-osdata.c: Update.
5267         * nat/linux-procfs.c: Update.
5268         * nat/x86-linux-dregs.c: Update.
5269         * obsd-nat.c: Update.
5270         * ppc-fbsd-nat.c: Update.
5271         * ppc-linux-nat.c: Update.
5272         * procfs.c: Update.
5273         * python/py-infthread.c: Update.
5274         * ravenscar-thread.c: Update.
5275         * remote.c: Update.
5276         * s390-linux-nat.c: Update.
5277         * sol-thread.c: Update.
5278         * sol2-tdep.c: Update.
5279         * spu-linux-nat.c: Update.
5280         * x86-linux-nat.c: Update.
5281         * xtensa-linux-nat.c: Update.
5282
5283 2018-07-03  Tom Tromey  <tom@tromey.com>
5284
5285         * common/ptid.c (ptid_get_pid): Remove.
5286         * common/ptid.h (ptid_get_pid): Don't declare.
5287         * aarch64-linux-nat.c: Update.
5288         * ada-lang.c: Update.
5289         * aix-thread.c: Update.
5290         * alpha-bsd-nat.c: Update.
5291         * amd64-fbsd-nat.c: Update.
5292         * amd64-linux-nat.c: Update.
5293         * arm-linux-nat.c: Update.
5294         * arm-nbsd-nat.c: Update.
5295         * auxv.c: Update.
5296         * break-catch-syscall.c: Update.
5297         * breakpoint.c: Update.
5298         * bsd-uthread.c: Update.
5299         * corelow.c: Update.
5300         * ctf.c: Update.
5301         * darwin-nat.c: Update.
5302         * fbsd-nat.c: Update.
5303         * fbsd-tdep.c: Update.
5304         * gcore.c: Update.
5305         * gnu-nat.c: Update.
5306         * hppa-nbsd-nat.c: Update.
5307         * hppa-obsd-nat.c: Update.
5308         * i386-fbsd-nat.c: Update.
5309         * ia64-linux-nat.c: Update.
5310         * inf-ptrace.c: Update.
5311         * infcmd.c: Update.
5312         * inferior.c: Update.
5313         * inferior.h: Update.
5314         * inflow.c: Update.
5315         * infrun.c: Update.
5316         * linux-fork.c: Update.
5317         * linux-nat.c: Update.
5318         * linux-tdep.c: Update.
5319         * linux-thread-db.c: Update.
5320         * m68k-bsd-nat.c: Update.
5321         * mi/mi-interp.c: Update.
5322         * mi/mi-main.c: Update.
5323         * mips-linux-nat.c: Update.
5324         * mips-nbsd-nat.c: Update.
5325         * mips64-obsd-nat.c: Update.
5326         * nat/aarch64-linux-hw-point.c: Update.
5327         * nat/aarch64-linux.c: Update.
5328         * nat/linux-btrace.c: Update.
5329         * nat/linux-osdata.c: Update.
5330         * nat/linux-procfs.c: Update.
5331         * nat/x86-linux-dregs.c: Update.
5332         * nto-procfs.c: Update.
5333         * obsd-nat.c: Update.
5334         * ppc-linux-nat.c: Update.
5335         * ppc-nbsd-nat.c: Update.
5336         * ppc-obsd-nat.c: Update.
5337         * proc-service.c: Update.
5338         * procfs.c: Update.
5339         * python/py-inferior.c: Update.
5340         * python/py-infthread.c: Update.
5341         * ravenscar-thread.c: Update.
5342         * record.c: Update.
5343         * remote-sim.c: Update.
5344         * remote.c: Update.
5345         * rs6000-nat.c: Update.
5346         * s390-linux-nat.c: Update.
5347         * sh-nbsd-nat.c: Update.
5348         * sol-thread.c: Update.
5349         * sparc-nat.c: Update.
5350         * sparc64-tdep.c: Update.
5351         * spu-linux-nat.c: Update.
5352         * spu-tdep.c: Update.
5353         * target-debug.h: Update.
5354         * target.c: Update.
5355         * thread.c: Update.
5356         * tid-parse.c: Update.
5357         * tracefile-tfile.c: Update.
5358         * vax-bsd-nat.c: Update.
5359         * windows-nat.c: Update.
5360         * x86-linux-nat.c: Update.
5361         * x86-nat.c: Update.
5362
5363 2018-07-03  Tom Tromey  <tom@tromey.com>
5364
5365         * common/ptid.c (pid_to_ptid): Remove.
5366         * common/ptid.h (pid_to_ptid): Don't declare.
5367         * aix-thread.c: Update.
5368         * arm-linux-nat.c: Update.
5369         * common/ptid.c: Update.
5370         * common/ptid.h: Update.
5371         * corelow.c: Update.
5372         * ctf.c: Update.
5373         * darwin-nat.c: Update.
5374         * fbsd-nat.c: Update.
5375         * fork-child.c: Update.
5376         * gnu-nat.c: Update.
5377         * go32-nat.c: Update.
5378         * inf-ptrace.c: Update.
5379         * infcmd.c: Update.
5380         * inferior.c: Update.
5381         * infrun.c: Update.
5382         * linux-fork.c: Update.
5383         * linux-nat.c: Update.
5384         * nat/aarch64-linux-hw-point.c: Update.
5385         * nat/fork-inferior.c: Update.
5386         * nat/x86-linux-dregs.c: Update.
5387         * nto-procfs.c: Update.
5388         * obsd-nat.c: Update.
5389         * procfs.c: Update.
5390         * progspace.c: Update.
5391         * remote.c: Update.
5392         * rs6000-nat.c: Update.
5393         * s390-linux-nat.c: Update.
5394         * sol-thread.c: Update.
5395         * spu-linux-nat.c: Update.
5396         * target.c: Update.
5397         * top.c: Update.
5398         * tracefile-tfile.c: Update.
5399         * windows-nat.c: Update.
5400
5401 2018-07-03  Tom Tromey  <tom@tromey.com>
5402
5403         * common/ptid.h (ptid_build): Don't declare.
5404         * common/ptid.c (ptid_build): Remove.
5405         * aix-thread.c: Update.
5406         * bsd-kvm.c: Update.
5407         * bsd-uthread.c: Update.
5408         * common/agent.c: Update.
5409         * common/ptid.c: Update.
5410         * common/ptid.h: Update.
5411         * corelow.c: Update.
5412         * darwin-nat.c: Update.
5413         * fbsd-nat.c: Update.
5414         * gnu-nat.c: Update.
5415         * linux-fork.c: Update.
5416         * linux-nat.c: Update.
5417         * linux-thread-db.c: Update.
5418         * nat/linux-osdata.c: Update.
5419         * nat/linux-procfs.c: Update.
5420         * nto-procfs.c: Update.
5421         * obsd-nat.c: Update.
5422         * proc-service.c: Update.
5423         * procfs.c: Update.
5424         * ravenscar-thread.c: Update.
5425         * remote-sim.c: Update.
5426         * remote.c: Update.
5427         * sol-thread.c: Update.
5428         * target.c: Update.
5429         * windows-nat.c: Update.
5430
5431 2018-07-03  Tom Tromey  <tom@tromey.com>
5432
5433         * infrun.c (follow_exec): Use exit_inferior_silent.
5434         * inferior.c (exit_inferior_num_silent): Remove.
5435         * inferior.h (exit_inferior_num_silent): Don't declare.
5436
5437 2018-07-03  Tom Tromey  <tom@tromey.com>
5438
5439         PR cli/23340:
5440         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5441         inferior_ptid on error.
5442
5443 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5444             Simon Marchi  <simon.marchi@polymtl.ca>
5445
5446         PR tdep/8282
5447         * disasm.h (gdb_disassembler): Add
5448         `m_disassembler_options_holder'. member
5449         * disasm.c (get_all_disassembler_options): New function.
5450         (gdb_disassembler::gdb_disassembler): Use it.
5451         (gdb_buffered_insn_length_init_dis): Likewise.
5452         (gdb_buffered_insn_length): Adjust accordingly.
5453         (set_disassembler_options): Handle options with arguments.
5454         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5455         line if showing options with descriptions.
5456         (disassembler_options_completer): Adapt to using the
5457         `disasm_options_and_args_t' structure.
5458         * mips-tdep.c (mips_disassembler_options): New variable.
5459         (mips_disassembler_options_o32): Likewise.
5460         (mips_disassembler_options_n32): Likewise.
5461         (mips_disassembler_options_n64): Likewise.
5462         (gdb_print_insn_mips): Don't set `disassembler_options'.
5463         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5464         functions.
5465         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5466         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5467         `gdbarch_disassembler_options_implicit' and
5468         `gdbarch_valid_disassembler_options'.
5469         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5470         `disasm_options_and_args_t' structure.
5471         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5472         method.
5473         (valid_disassembler_options): Switch from `disasm_options_t' to
5474         the `disasm_options_and_args_t' structure.
5475         * NEWS: Document `set disassembler-options' support for the MIPS
5476         target.
5477         * gdbarch.h: Regenerate.
5478         * gdbarch.c: Regenerate.
5479
5480 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5481
5482         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5483
5484 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5485
5486         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5487         parameter in call to amd64_target_description.
5488         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5489         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5490         (amd64fbsd_init_abi): Likewise.
5491         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5492         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5493         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5494         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5495
5496 2018-06-29  Pedro Alves  <palves@redhat.com>
5497
5498         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5499         "segments" parameter.
5500         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5501         (_initialize_amd64_tdep): Update call to
5502         amd64_create_target_description.
5503         (amd64_target_description): Add "segments" parameter.  Adjust
5504         the implementation to use it.
5505         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5506         call to amd64_create_target_description.
5507         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5508         * gdb/arch/amd64.h (amd64_create_target_description): Add
5509         "segments" register.
5510         * gdb/arch/amd64.c (amd64_create_target_description): Add
5511         "segments" parameter.  Call create_feature_i386_64bit_segments
5512         only if SEGMENTS is true.
5513         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5514         call to amd64_create_target_description.
5515
5516 2018-06-29  Pedro Alves  <palves@redhat.com>
5517
5518         * thread.c (thread_target_id_str): New, factored out from ...
5519         (print_thread_info_1): ... here.  Use it to compute the max
5520         "Target Id" column width.
5521
5522 2018-06-29  Pedro Alves  <palves@redhat.com>
5523
5524         * remote.c (remote_target::extra_thread_info): Delete
5525         'display_buf' and 'n' locals.  from the cache, regardless of
5526         packet mechanims is in use.  Use cache for qThreadExtra and qP
5527         methods too.
5528
5529 2018-06-29  Pedro Alves  <palves@redhat.com>
5530
5531         * blockframe.c (find_pc_sect_containing_function): New function.
5532         * breakpoint.c (print_breakpoint_location): Don't call
5533         find_pc_sect_function.
5534         * linespec.c (create_sals_line_offset): Record the location's
5535         symbol in the sal.
5536         * linespec.c (convert_address_location_to_sals): Fill in sal's
5537         symbol with find_pc_sect_containing_function.
5538         * symtab.c (find_function_start_sal): Rename to ...
5539         (find_function_start_sal_1): ... this.
5540         (find_function_start_sal): Reimplement as wrapper around
5541         find_function_start_sal_1, and use
5542         find_pc_sect_containing_function to fill in the sal's symbol.
5543         (find_function_start_sal(symbol*, bool)): Adjust.
5544         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
5545         comments.
5546         (find_pc_sect_containing_function): Declare.
5547
5548 2018-06-29  Pedro Alves  <palves@redhat.com>
5549
5550         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
5551         true if the the location has no symbol.
5552
5553 2018-06-28  Tom Tromey  <tom@tromey.com>
5554
5555         * NEWS: Mention --enable-codesign.
5556         * silent-rules.mk (ECHO_SIGN): New variable.
5557         * configure.ac: Add --enable-codesign.
5558         * configure: Rebuild.
5559         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
5560         (gdb$(EXEEXT)): Optionally invoke codesign.
5561
5562 2018-06-28  Pedro Alves  <palves@redhat.com>
5563
5564         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
5565         comments.
5566         (switch_to_thread_no_regs): Adjust comment.
5567         * infcmd.c (stop_pc): Delete.
5568         (post_create_inferior, info_program_command): Replace references
5569         to stop_pc with references to thread_info->suspend.stop_pc.
5570         * inferior.h (stop_pc): Delete declaration.
5571         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
5572         (handle_inferior_event_1, handle_signal_stop)
5573         (process_event_stop_test, keep_going_stepped_thread)
5574         (handle_step_into_function, handle_step_into_function_backward)
5575         (print_stop_location): Replace references to stop_pc with
5576         references to thread_info->suspend.stop_pc.
5577         (struct infcall_suspend_state) <stop_pc>: Delete field.
5578         (save_infcall_suspend_state, restore_infcall_suspend_state):
5579         Remove references to inf_stat->stop_pc.
5580         * linux-fork.c (fork_load_infrun_state): Likewise.
5581         * record-btrace.c (record_btrace_set_replay): Likewise.
5582         * record-full.c (record_full_goto_entry): Likewise.
5583         * remote.c (print_one_stopped_thread): Likewise.
5584         * target.c (target_resume): Extend comment.
5585         * thread.c (set_executing_thread): New.
5586         (set_executing): Use it.
5587         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
5588         Remove references to stop_pc.
5589
5590 2018-06-28  Pedro Alves  <palves@redhat.com>
5591
5592         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
5593         Moving fetching stop_pc until after ecs->event_thread is refreshed.
5594
5595 2018-06-28  Tom Tromey  <tom@tromey.com>
5596
5597         * coffread.c (coff_symfile_finish): Update.
5598         * xcoffread.c (xcoff_symfile_finish): Update.
5599         * elfread.c (elf_symfile_finish): Update.
5600         * symfile.h (dwarf2_free_objfile): Don't declare.
5601         * dwarf2read.c (_initialize_dwarf2_read): Use
5602         register_objfile_data_with_cleanup.
5603         (dwarf2_free_objfile): Now static.  Change signature.
5604
5605 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5606
5607         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
5608         option "-o" to add-symbol-file-load to add an offset to each
5609         section's load address.
5610         * symfile.c (set_objfile_default_section_offset): New function.
5611
5612 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5613
5614         * symfile.c (add_symbol_file_command): Make sure that sections
5615         with the same name are sorted in the same order.
5616
5617 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5618
5619         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
5620         require the second argument.  If omitted, load sections at the
5621         addresses specified in the file.
5622
5623 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5624
5625         * symfile.c (symbol_file_command, symbol_file_add_main_1)
5626         (_initialize_symfile): Add option "-o" to symbol-file to add an
5627         offset to each section of the symbol file.
5628
5629 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5630
5631         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
5632
5633 2018-06-27  Tom Tromey  <tom@tromey.com>
5634
5635         * stack.c (_initialize_stack): Update "func" help text.
5636
5637 2018-06-27  Tom Tromey  <tom@tromey.com>
5638
5639         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
5640         std::vector.
5641         (unwind_infopy_str, pyuw_create_unwind_info)
5642         (unwind_infopy_add_saved_register, pyuw_sniffer)
5643         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
5644         Update.
5645         (struct saved_reg): Add constructor.
5646         <value>: Now a gdbpy_ref<>.
5647
5648 2018-06-27  Tom Tromey  <tom@tromey.com>
5649
5650         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
5651
5652 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5653
5654         * gdb-gdb.py.in: Format using autopep8.
5655
5656 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5657
5658         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
5659         (type_lookup_function): Recognize CORE_ADDR values.
5660
5661 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5662
5663         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
5664         print tag_name.
5665
5666 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5667
5668         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
5669         <__lt__>: Add.
5670
5671 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5672
5673         * gdb-gdb.py: Move to...
5674         * gdb-gdb.py.in: ... here.
5675         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
5676         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
5677         dependencies.
5678         (distclean): Remove gdb-gdb.py when cleaning.
5679         (gdb-gdb.py, gdb-gdb.gdb): New rules.
5680         * configure: Re-generate.
5681
5682 2018-06-27  Pedro Alves  <palves@redhat.com>
5683
5684         * proc-service.c (get_ps_regcache): New.
5685         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
5686         (ps_lsetfpregs): Use it.
5687
5688 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
5689
5690         PR gdb/21695
5691         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
5692         (dwarf_decode_lines_1): Adjust.
5693
5694 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5695
5696         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
5697         override.
5698         <info_proc>: Likewise.
5699
5700 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
5701
5702         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
5703         to windows_fetch_one_register, and only handle the case of
5704         fetching one register.  Move the code that reloads the context
5705         and iterates over all registers if R is negative to...
5706         (windows_nat_target::fetch_registers): ... here.
5707         (do_windows_store_inferior_registers): Rename to
5708         windows_store_one_register, and only handle the case of storing
5709         one register.  Move the code that handles the case where r is
5710         negative to...
5711         (windows_nat_target::store_registers) ... here.
5712
5713 2018-06-26  Tom Tromey  <tom@tromey.com>
5714
5715         PR rust/22574:
5716         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
5717         * rust-lang.c (rust_print_struct_def): Add podata parameter.
5718         Update.
5719         (rust_internal_print_type): Add podata parameter.
5720         (rust_print_type): Update.
5721
5722 2018-06-26  Tom Tromey  <tom@tromey.com>
5723
5724         * typeprint.h (struct print_offset_data) <update, finish,
5725         maybe_print_hole>: New methods.
5726         <indentation>: New constant.
5727         * typeprint.c (print_offset_data::indentation): Define.
5728         (print_offset_data::maybe_print_hole, print_offset_data::update)
5729         (print_offset_data::finish): Move from c-typeprint.c and rename.
5730         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
5731         (print_spaces_filtered_with_print_options): Update.
5732         (c_print_type_union_field_offset, maybe_print_hole)
5733         (c_print_type_struct_field_offset): Move to typeprint.c and
5734         rename.
5735         (c_type_print_base_struct_union): Update.
5736
5737 2018-06-25  Pedro Alves  <palves@redhat.com>
5738
5739         * gdbthread.h (thread_info_ref, delete_thread)
5740         (delete_thread_silent, first_thread_of_inferior)
5741         (any_thread_of_inferior, switch_to_thread)
5742         (enable_thread_stack_temporaries)
5743         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5744         (get_last_thread_stack_temporary)
5745         (value_in_thread_stack_temporaries, can_access_registers_thread):
5746         Spell out "struct thread_info" instead of just "thread_info".
5747         * inferior.h (notice_new_inferior): Likewise.
5748
5749 2018-06-25  Pedro Alves  <palves@redhat.com>
5750
5751         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5752         pass thread_info pointer to delete_thread.
5753         (windows_nat_target::detach): Pass inferior pointer to
5754         detach_inferior.
5755         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
5756         delete_thread.
5757         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
5758         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
5759         and pass a thread_info pointer to delete_thread.
5760         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
5761         pass thread_info pointer to delete_thread.
5762         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
5763         delete_thread_silent call.
5764         * procfs.c (procfs_target::detach): Pass inferior pointer to
5765         detach_inferior.
5766         (procfs_target::wait): Pass thread_info pointer to delete_thread.
5767         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
5768         delete_thread_silent call.
5769         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5770         pass thread_info pointer to delete_thread.
5771         (windows_nat_target::detach): Pass inferior pointer to
5772         delete_inferior.
5773
5774 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5775
5776         * regcache.c (readable_regcache::read_part): Fix asserts.
5777         (reg_buffer::raw_collect_part): New function.
5778         (regcache::write_part): Fix asserts.
5779         (reg_buffer::raw_supply_part): New function.
5780         (regcache::transfer_regset_register): New helper function.
5781         (regcache::transfer_regset): Call new functions.
5782         (regcache_supply_regset): Use gdb_byte*.
5783         (regcache::supply_regset): Likewise.
5784         (regcache_collect_regset): Likewise.
5785         (regcache::collect_regset): Likewise.
5786         * regcache.h (reg_buffer::raw_collect_part): New declaration.
5787         (reg_buffer::raw_supply_part): Likewise.
5788         (regcache::transfer_regset_register): Likewise.
5789         (regcache::transfer_regset): Use gdb_byte*.
5790
5791 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5792
5793         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
5794
5795 2018-06-21  Pedro Alves  <palves@redhat.com>
5796
5797         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
5798         instead of a ptid_t.  All callers adjusted.
5799         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
5800         adjusted.
5801         (print_ada_task_info, display_current_task_id, task_command_1):
5802         Adjust.
5803         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
5804         inferior_thread.
5805         (breakpoint_kind): Adjust.
5806         (remove_breakpoints_pid): Rename to ...
5807         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
5808         pointer.  All callers adjusted.
5809         (bpstat_clear_actions): Use inferior_thread.
5810         (get_bpstat_thread): New.
5811         (bpstat_do_actions): Use it.
5812         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
5813         to take a thread_info pointer.  All callers adjusted.
5814         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
5815         (breakpoint_re_set_thread): Use inferior_thread.
5816         * breakpoint.h (struct inferior): Forward declare.
5817         (bpstat_stop_status): Update.
5818         (remove_breakpoints_pid): Delete.
5819         (remove_breakpoints_inf): New.
5820         * bsd-uthread.c (bsd_uthread_target::wait)
5821         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
5822         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
5823         (maint_btrace_packet_history_cmd)
5824         (maint_btrace_clear_packet_history_cmd): Adjust.
5825         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
5826         inferior_thread.
5827         * cli/cli-interp.c: Include "inferior.h".
5828         * common/refcounted-object.h (struct
5829         refcounted_object_ref_policy): New.
5830         * compile/compile-object-load.c: Include gdbthread.h.
5831         (store_regs): Use inferior_thread.
5832         * corelow.c (core_target::close): Use current_inferior.
5833         (core_target_open): Adjust to use first_thread_of_inferior and use
5834         the current inferior.
5835         * ctf.c (ctf_target::close): Adjust to use current_inferior.
5836         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
5837         <thread>: ... this new field.  All references adjusted.
5838         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
5839         Take a thread_info pointer instead of a ptid_t.
5840         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
5841         (dummy_frame_discard, register_dummy_frame_dtor): Take a
5842         thread_info pointer instead of a ptid_t.
5843         * elfread.c: Include "inferior.h".
5844         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
5845         Use inferior_thread.
5846         * eval.c (evaluate_subexp): Likewise.
5847         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
5848         inferior_thread.
5849         * gdb_proc_service.h (struct thread_info): Forward declare.
5850         (struct ps_prochandle) <ptid>: Delete, replaced by ...
5851         <thread>: ... this new field.  All references adjusted.
5852         * gdbarch.h, gdbarch.c: Regenerate.
5853         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
5854         'thread' parameter.  All implementations and callers adjusted.
5855         * gdbthread.h (thread_info) <set_running>: New method.
5856         (delete_thread, delete_thread_silent): Take a thread_info pointer
5857         instead of a ptid.
5858         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
5859         (first_thread_of_process): Delete, replaced by ...
5860         (first_thread_of_inferior): ... this new function.  All callers
5861         adjusted.
5862         (any_live_thread_of_process): Delete, replaced by ...
5863         (any_live_thread_of_inferior): ... this new function.  All callers
5864         adjusted.
5865         (switch_to_thread, switch_to_no_thread): Declare.
5866         (is_executing): Delete.
5867         (enable_thread_stack_temporaries): Update comment.
5868         <enable_thread_stack_temporaries>: Take a thread_info pointer
5869         instead of a ptid_t.  Incref the thread.
5870         <~enable_thread_stack_temporaries>: Decref the thread.
5871         <m_ptid>: Delete
5872         <m_thr>: New.
5873         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5874         (get_last_thread_stack_temporary)
5875         (value_in_thread_stack_temporaries, can_access_registers_thread):
5876         Take a thread_info pointer instead of a ptid_t.  All callers
5877         adjusted.
5878         * infcall.c (get_call_return_value): Use inferior_thread.
5879         (run_inferior_call): Work with thread pointers instead of ptid_t.
5880         (call_function_by_hand_dummy): Work with thread pointers instead
5881         of ptid_t.  Use thread_info_ref.
5882         * infcmd.c (proceed_thread_callback): Access thread's state
5883         directly.
5884         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
5885         access thread's state directly.
5886         (continue_command): Use inferior_thread.
5887         (info_program_command): Use find_thread_ptid and access thread
5888         state directly.
5889         (proceed_after_attach_callback): Use thread state directly.
5890         (notice_new_inferior): Take a thread_info pointer instead of a
5891         ptid_t.  All callers adjusted.
5892         (exit_inferior): Take an inferior pointer instead of a pid.  All
5893         callers adjusted.
5894         (exit_inferior_silent): New.
5895         (detach_inferior): Delete.
5896         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
5897         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
5898         (detach_inferior_command, kill_inferior_command): Use
5899         find_inferior_id instead of valid_gdb_inferior_id and
5900         gdb_inferior_id_to_pid.
5901         (inferior_command): Use inferior and thread pointers.
5902         * inferior.h (struct thread_info): Forward declare.
5903         (notice_new_inferior): Take a thread_info pointer instead of a
5904         ptid_t.  All callers adjusted.
5905         (detach_inferior): Delete declaration.
5906         (exit_inferior, exit_inferior_silent): Take an inferior pointer
5907         instead of a pid.  All callers adjusted.
5908         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
5909         (valid_gdb_inferior_id): Delete.
5910         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
5911         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
5912         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
5913         ...
5914         <inf>: ... this new field.
5915         <step_ptid>: Delete, replaced by ...
5916         <step_thread>: ... this new field.
5917         (get_displaced_stepping_state): Take an inferior pointer instead
5918         of a pid.  All callers adjusted.
5919         (displaced_step_in_progress_any_inferior): Adjust.
5920         (displaced_step_in_progress_thread): Take a thread pointer instead
5921         of a ptid_t.  All callers adjusted.
5922         (displaced_step_in_progress, add_displaced_stepping_state): Take
5923         an inferior pointer instead of a pid.  All callers adjusted.
5924         (get_displaced_step_closure_by_addr): Adjust.
5925         (remove_displaced_stepping_state): Take an inferior pointer
5926         instead of a pid.  All callers adjusted.
5927         (displaced_step_prepare_throw, displaced_step_prepare)
5928         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
5929         All callers adjusted.
5930         (start_step_over): Adjust.
5931         (infrun_thread_ptid_changed): Remove bit updating ptids in the
5932         displaced step queue.
5933         (do_target_resume): Adjust.
5934         (fetch_inferior_event): Use inferior_thread.
5935         (context_switch, get_inferior_stop_soon): Take an
5936         execution_control_state pointer instead of a ptid_t.  All callers
5937         adjusted.
5938         (switch_to_thread_cleanup): Delete.
5939         (stop_all_threads): Use scoped_restore_current_thread.
5940         * inline-frame.c: Include "gdbthread.h".
5941         (inline_state) <inline_state>: Take a thread pointer instead of a
5942         ptid_t.  All callers adjusted.
5943         <ptid>: Delete, replaced by ...
5944         <thread>: ... this new field.
5945         (find_inline_frame_state): Take a thread pointer instead of a
5946         ptid_t.  All callers adjusted.
5947         (skip_inline_frames, step_into_inline_frame)
5948         (inline_skipped_frames, inline_skipped_symbol): Take a thread
5949         pointer instead of a ptid_t.  All callers adjusted.
5950         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
5951         (inline_skipped_frames, inline_skipped_symbol): Likewise.
5952         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
5953         pointers directly.
5954         * linux-nat.c (get_detach_signal): Likewise.
5955         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
5956         (thread_db_notice_clone): Adjust.
5957         (thread_db_find_new_threads_silently)
5958         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
5959         a thread pointer instead of a ptid_t.  All callers adjusted.
5960         * mi/mi-cmd-var.c: Include "inferior.h".
5961         (mi_cmd_var_update_iter): Update to use thread pointers.
5962         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
5963         inferior directly.
5964         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
5965         out to ...
5966         (mi_output_running): ... this new function.
5967         (mi_on_resume_1): Adjust to use it.
5968         (mi_user_selected_context_changed): Adjust to use inferior_thread.
5969         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
5970         directly.
5971         (interrupt_thread_callback): : Adjust to use thread and inferior
5972         pointers.
5973         * proc-service.c: Include "gdbthread.h".
5974         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
5975         * progspace-and-thread.c: Include "inferior.h".
5976         * progspace.c: Include "inferior.h".
5977         * python/py-exitedevent.c (create_exited_event_object): Adjust to
5978         hold a reference to an inferior_object.
5979         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
5980         inferior_thread.
5981         * python/py-inferior.c (struct inferior_object): Give the type a
5982         tag name instead of a typedef.
5983         (python_on_normal_stop): No need to check if the current thread is
5984         listed.
5985         (inferior_to_inferior_object): Change return type to
5986         inferior_object.  All callers adjusted.
5987         (find_thread_object): Delete, bits factored out to ...
5988         (thread_to_thread_object): ... this new function.
5989         * python/py-infthread.c (create_thread_object): Use
5990         inferior_to_inferior_object.
5991         (thpy_is_stopped): Use thread pointer directly.
5992         (gdbpy_selected_thread): Use inferior_thread.
5993         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
5994         field, replaced with ...
5995         <thread>: ... this new field.  All users adjusted.
5996         (btpy_insn_or_gap_new): Drop const.
5997         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
5998         callers adjusted.
5999         * python/py-record.c: Include "gdbthread.h".
6000         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6001         a ptid_t.  All callers adjusted.
6002         (gdbpy_current_recording): Use inferior_thread.
6003         * python/py-record.h (recpy_record_object) <ptid>: Delete
6004         field, replaced with ...
6005         <thread>: ... this new field.  All users adjusted.
6006         (recpy_element_object) <ptid>: Delete
6007         field, replaced with ...
6008         <thread>: ... this new field.  All users adjusted.
6009         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6010         a ptid_t.  All callers adjusted.
6011         * python/py-threadevent.c: Include "gdbthread.h".
6012         (get_event_thread): Use thread_to_thread_object.
6013         * python/python-internal.h (struct inferior_object): Forward
6014         declare.
6015         (find_thread_object, find_inferior_object): Delete declarations.
6016         (thread_to_thread_object, inferior_to_inferior_object): New
6017         declarations.
6018         * record-btrace.c: Include "inferior.h".
6019         (require_btrace_thread): Use inferior_thread.
6020         (record_btrace_frame_sniffer)
6021         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6022         (get_thread_current_frame): Use scoped_restore_current_thread and
6023         switch_to_thread.
6024         (get_thread_current_frame): Use thread pointer directly.
6025         (record_btrace_replay_at_breakpoint): Use thread's inferior
6026         pointer directly.
6027         * record-full.c: Include "inferior.h".
6028         * regcache.c: Include "gdbthread.h".
6029         (get_thread_arch_regcache): Use the inferior's address space
6030         directly.
6031         (get_thread_regcache, registers_changed_thread): New.
6032         * regcache.h (get_thread_regcache(thread_info *thread)): New
6033         overload.
6034         (registers_changed_thread): New.
6035         (remote_target) <remote_detach_1>: Swap order of parameters.
6036         (remote_add_thread): <remote_add_thread>: Return the new thread.
6037         (get_remote_thread_info(ptid_t)): New overload.
6038         (remote_target::remote_notice_new_inferior): Use thread pointers
6039         directly.
6040         (remote_target::process_initial_stop_replies): Use
6041         thread_info::set_running.
6042         (remote_target::remote_detach_1, remote_target::detach)
6043         (extended_remote_target::detach): Adjust.
6044         * stack.c (frame_show_address): Use inferior_thread.
6045         * target-debug.h (target_debug_print_thread_info_pp): New.
6046         * target-delegates.c: Regenerate.
6047         * target.c (default_thread_address_space): Delete.
6048         (memory_xfer_partial_1): Use current_inferior.
6049         (target_detach): Use current_inferior.
6050         (target_thread_address_space): Delete.
6051         (generic_mourn_inferior): Use current_inferior.
6052         * target.h (struct target_ops) <thread_address_space>: Delete.
6053         (target_thread_address_space): Delete.
6054         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6055         pointers directly.
6056         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6057         thread pointer instead of a ptid_t.  Adjust all callers.
6058         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6059         (first_thread_of_process): Delete, replaced by ...
6060         (first_thread_of_inferior): ... this new function.  All callers
6061         adjusted.
6062         (any_thread_of_process): Rename to ...
6063         (any_thread_of_inferior): ... this, and take an inferior pointer.
6064         (any_live_thread_of_process): Rename to ...
6065         (any_live_thread_of_inferior): ... this, and take an inferior
6066         pointer.
6067         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6068         (value_in_thread_stack_temporaries)
6069         (get_last_thread_stack_temporary): Take a thread pointer instead
6070         of a ptid_t.  Adjust all callers.
6071         (thread_info::set_running): New.
6072         (validate_registers_access): Use inferior_thread.
6073         (can_access_registers_ptid): Rename to ...
6074         (can_access_registers_thread): ... this, and take a thread
6075         pointer.
6076         (print_thread_info_1): Adjust to compare thread pointers instead
6077         of ptids.
6078         (switch_to_no_thread, switch_to_thread): Make extern.
6079         (scoped_restore_current_thread::~scoped_restore_current_thread):
6080         Use m_thread pointer directly.
6081         (scoped_restore_current_thread::scoped_restore_current_thread):
6082         Use inferior_thread.
6083         (thread_command): Use thread pointer directly.
6084         (thread_num_make_value_helper): Use inferior_thread.
6085         * top.c (execute_command): Use inferior_thread.
6086         * tui/tui-interp.c: Include "inferior.h".
6087         * varobj.c (varobj_create): Use inferior_thread.
6088         (value_of_root_1): Use find_thread_global_id instead of
6089         global_thread_id_to_ptid.
6090
6091 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6092
6093         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6094         possible.
6095         (regcache::write_part): Likewise.
6096         (readable_regcache::cooked_read_part): Update comment.
6097         (readable_regcache::cooked_write_part): Likewise.
6098         * regcache.h: (readable_regcache::read_part): Likewise.
6099         (regcache::write_part): Likewise.
6100
6101 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6102             Dirk Schubert  <dirk.schubert@arm.com>
6103
6104         * aarch64-linux-nat.c (post_attach): New.
6105         (aarch64_linux_nat_target::post_attach): Override post_attach to
6106         record the number of hardware debug registers.
6107
6108 2018-06-20  Tom Tromey  <tom@tromey.com>
6109
6110         * python/py-param.c (add_setshow_generic): Make parameters const.
6111         (parmpy_init): Update.
6112
6113 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6114
6115         * regcache.h (regcache_cooked_read_ftype): Rename to...
6116         (register_read_ftype): ...this, change type to function_view.
6117         (class reg_buffer) <save>: Remove src parameter.
6118         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6119         parameter non-const in first overload.  Remove src parameter in
6120         second overload.
6121         * regcache.c (do_cooked_read): Remove.
6122         (readonly_detached_regcache::readonly_detached_regcache): Make
6123         parameter non-const, adjust call to other constructor.
6124         (reg_buffer::save): Remove src parameter.
6125         * frame.c (do_frame_register_read): Remove.
6126         (frame_save_as_regcache): Use lambda function.
6127         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6128         parameter to ppu2spu_data *.
6129         (ppu2spu_sniffer): Use lambda function.
6130
6131 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6132
6133         * record-full.c (record_full_target::insert_breakpoint): Remove
6134         "struct" keyword, add const.
6135
6136 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6137
6138         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6139         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6140         * configure.ac: Remove AC_PREREQ, add missing quoting.
6141         * gnulib/configure.ac: Modernize usage of
6142         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6143         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6144         (AUTOMAKE_VERSION): Bump to 1.15.1.
6145         * configure: Re-generate.
6146         * config.in: Re-generate.
6147         * aclocal.m4: Re-generate.
6148         * gnulib/aclocal.m4: Re-generate.
6149         * gnulib/config.in: Re-generate.
6150         * gnulib/configure: Re-generate.
6151         * gnulib/import/Makefile.in: Re-generate.
6152
6153 2018-06-19  Pedro Alves  <palves@redhat.com>
6154
6155         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6156         (lookup_minimal_symbol_by_pc_section): ... here with
6157         gdb_assert_not_reached added.
6158
6159 2018-06-19  Pedro Alves  <palves@redhat.com>
6160
6161         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6162         parameter with a block parameter.  Compare location's block symbol
6163         with the frame's block instead of addresses.
6164         (skip_inline_frames): Pass the current block instead of the
6165         frame's address.  Break out as soon as we determine the frame
6166         should not be skipped.
6167
6168 2018-06-18  Tom Tromey  <tom@tromey.com>
6169
6170         * solib-aix.c (solib_aix_get_section_offsets): Return
6171         unique_xmalloc_ptr.
6172         (solib_aix_solib_create_inferior_hook): Update.
6173
6174 2018-06-18  Tom Tromey  <tom@tromey.com>
6175
6176         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6177
6178 2018-06-18  Tom Tromey  <tom@tromey.com>
6179
6180         * solib-frv.c (frv_relocate_main_executable): Use
6181         unique_xmalloc_ptr.
6182         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6183         unique_xmalloc_ptr.
6184
6185 2018-06-18  Tom Tromey  <tom@tromey.com>
6186
6187         * objfiles.h (inhibit_section_map_updates): Update.
6188         (resume_section_map_updates, resume_section_map_updates_cleanup):
6189         Remove.
6190         * solib-svr4.c (svr4_handle_solib_event): Update.
6191         * objfiles.c (inhibit_section_map_updates): Return
6192         scoped_restore_tmpl<int>.
6193         (resume_section_map_updates, resume_section_map_updates_cleanup):
6194         Remove.
6195
6196 2018-06-18  Tom Tromey  <tom@tromey.com>
6197
6198         * valprint.h (read_string): Update.
6199         * valprint.c (read_string): Change type of "buffer".
6200         (val_print_string): Update.
6201         * python/py-value.c (valpy_string): Update.
6202         * language.h (struct language_defn) <la_get_string>: Change
6203         type of "buffer".
6204         (default_get_string, c_get_string): Update.
6205         * language.c (default_get_string): Change type of "buffer".
6206         * guile/scm-value.c (gdbscm_value_to_string): Update.
6207         * c-lang.c (c_get_string): Change type of "buffer".
6208
6209 2018-06-18  Tom Tromey  <tom@tromey.com>
6210
6211         * ser-mingw.c (struct pipe_state_destroyer): New.
6212         (pipe_state_up): New typedef.
6213         (cleanup_pipe_state): Remove.
6214         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6215
6216 2018-06-18  Tom Tromey  <tom@tromey.com>
6217
6218         * rust-lang.h (rust_yyerror): Don't declare.
6219         * rust-lang.c (rust_language_defn): Update.
6220         * rust-exp.y (yyerror): Now static.
6221         * parse.c (parse_exp_in_context_1): Update.
6222         * p-lang.h (p_yyerror): Don't declare.
6223         * p-lang.c (p_language_defn): Update.
6224         * p-exp.y (yyerror): Now static.
6225         * opencl-lang.c (opencl_language_defn): Update.
6226         * objc-lang.c (objc_language_defn): Update.
6227         * m2-lang.h (m2_yyerror): Don't declare.
6228         * m2-lang.c (m2_language_defn): Update.
6229         * m2-exp.y (yyerror): Now static.
6230         * language.h (struct language_defn) <la_error>: Remove.
6231         * language.c (unk_lang_error): Remove.
6232         (unknown_language_defn, auto_language_defn): Remove.
6233         * go-lang.h (go_yyerror): Don't declare.
6234         * go-lang.c (go_language_defn): Update.
6235         * go-exp.y (yyerror): Now static.
6236         * f-lang.h (f_yyerror): Don't declare.
6237         * f-lang.c (f_language_defn): Update.
6238         * f-exp.y (yyerror): Now static.
6239         * d-lang.h (d_yyerror): Don't declare.
6240         * d-lang.c (d_language_defn): Update.
6241         * d-exp.y (yyerror): Now static.
6242         * c-lang.h (c_yyerror): Don't declare.
6243         * c-lang.c (c_language_defn, cplus_language_defn)
6244         (asm_language_defn, minimal_language_defn): Update.
6245         * c-exp.y (yyerror): Now static.
6246         * ada-lang.h (ada_yyerror): Don't declare.
6247         * ada-lang.c (ada_language_defn): Update.
6248         * ada-exp.y (yyerror): Now static.
6249
6250 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6251
6252         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6253         (store_sveregs_to_thread): Likewise.
6254         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6255         (aarch64_linux_store_inferior_registers): Likewise.
6256         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6257         function.
6258         (aarch64_sve_regs_copy_to_regcache): Likewise.
6259         (aarch64_sve_regs_copy_from_regcache): Likewise.
6260         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6261         declaration.
6262         (aarch64_sve_regs_copy_to_regcache): Likewise.
6263         (aarch64_sve_regs_copy_from_regcache): Likewise.
6264         (sve_context): Structure from Linux headers.
6265         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6266         (SVE_SIG_ZREG_SIZE): Likewise.
6267         (SVE_SIG_PREG_SIZE): Likewise.
6268         (SVE_SIG_FFR_SIZE): Likewise.
6269         (SVE_SIG_REGS_OFFSET): Likewise.
6270         (SVE_SIG_ZREGS_OFFSET): Likewise.
6271         (SVE_SIG_ZREG_OFFSET): Likewise.
6272         (SVE_SIG_ZREGS_SIZE): Likewise.
6273         (SVE_SIG_PREGS_OFFSET): Likewise.
6274         (SVE_SIG_PREG_OFFSET): Likewise.
6275         (SVE_SIG_PREGS_SIZE): Likewise.
6276         (SVE_SIG_FFR_OFFSET): Likewise.
6277         (SVE_SIG_REGS_SIZE): Likewise.
6278         (SVE_SIG_CONTEXT_SIZE): Likewise.
6279         (SVE_PT_REGS_MASK): Likewise.
6280         (SVE_PT_REGS_FPSIMD): Likewise.
6281         (SVE_PT_REGS_SVE): Likewise.
6282         (SVE_PT_VL_INHERIT): Likewise.
6283         (SVE_PT_VL_ONEXEC): Likewise.
6284         (SVE_PT_REGS_OFFSET): Likewise.
6285         (SVE_PT_FPSIMD_OFFSET): Likewise.
6286         (SVE_PT_FPSIMD_SIZE): Likewise.
6287         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6288         (SVE_PT_SVE_PREG_SIZE): Likewise.
6289         (SVE_PT_SVE_FFR_SIZE): Likewise.
6290         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6291         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6292         (__SVE_SIG_TO_PT): Likewise.
6293         (SVE_PT_SVE_OFFSET): Likewise.
6294         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6295         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6296         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6297         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6298         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6299         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6300         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6301         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6302         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6303         (SVE_PT_SVE_SIZE): Likewise.
6304         (SVE_PT_SIZE): Likewise.
6305         (HAS_SVE_STATE): New define.
6306
6307 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6308
6309         * nat/aarch64-sve-linux-sigcontext.h: New file.
6310         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6311         new files.
6312         (SVE_VQ_MIN): Likewise.
6313         (SVE_VQ_MAX): Likewise.
6314         (SVE_VL_MIN): Likewise.
6315         (SVE_VL_MAX): Likewise.
6316         (SVE_NUM_ZREGS): Likewise.
6317         (SVE_NUM_PREGS): Likewise.
6318         (sve_vl_valid): Likewise.
6319         (struct user_sve_header): Likewise.
6320
6321 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6322             Richard Bunt <Richard.Bunt@arm.com>
6323
6324         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6325         was requested by GDB.
6326
6327 2018-06-15  Tom de Vries  <tdevries@suse.de>
6328
6329         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6330
6331 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6332
6333         * gnulib/update-gnulib.sh: Print expected versions of
6334         autoconf/aclocal.
6335
6336 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6337
6338         * arch-utils.c (default_type_align): Use type_length_units.
6339         * gdbtypes.c (type_align): Use type_length_units.
6340
6341 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6342
6343         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6344         of 'define' command.
6345
6346 2018-06-14  Tom de Vries  <tdevries@suse.de>
6347
6348         PR cli/22573
6349         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6350         get_no_prettyformat_print_options.
6351
6352 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6353
6354         * sparc-nat.h: Include target.h.
6355         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6356         <fetch_registers>: Remove this argument in function call.
6357         <store_registers>: Remove this argument in function call, remove
6358         extra semicolon.
6359         <low_forget_process>: Call sparc64_forget_process instead of
6360         sparc_forget_process.
6361
6362 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6363
6364         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6365         (procfs_target::make_corefile_notes): Adjust to new
6366         target_read_alloc return type.
6367
6368 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6369             Stephen Roberts  <stephen.roberts@arm.com>
6370
6371         PR gdb/22882
6372         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6373         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6374         Move should_notify_stop local into more inner scope.
6375
6376 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6377             Stephen Roberts  <stephen.roberts@arm.com>
6378
6379         PR gdb/22882
6380         * infrun.c (resume_1): Add call to mark_async_event_handler.
6381
6382 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6383
6384         * infrun.c (do_target_wait): Change old version of $pc printed.
6385
6386 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6387
6388         * dwarf2read.c (read_index_from_section): Rename to...
6389         (read_gdb_index_from_section): ... this, update all callers.
6390         (dwarf2_read_index): Rename to...
6391         (dwarf2_read_gdb_index): ... this, update all callers.
6392
6393 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6394
6395         * gdb/hppa-linux-nat.c
6396         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6397         hppa_linux_nat_target::fetch_registers.
6398
6399 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6400
6401         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6402         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6403         (AARCH64_DWARF_SVE_FFR): Likewise.
6404         (AARCH64_DWARF_SVE_P0): Likewise.
6405         (AARCH64_DWARF_SVE_Z0): Likewise.
6406
6407 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6408
6409         * common/common-regcache.h (raw_compare): New function.
6410         * regcache.c (regcache::raw_compare): Likewise.
6411         * regcache.h (regcache::raw_compare): New declaration.
6412
6413 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6414
6415         * common/common-regcache.h (reg_buffer_common): New structure.
6416         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6417         (reg_buffer::raw_supply): Likewise.
6418         (reg_buffer::raw_supply_integer): Likewise.
6419         (reg_buffer::raw_supply_zeroed): Likewise.
6420         (reg_buffer::raw_collect): Likewise.
6421         (reg_buffer::raw_collect_integer): Likewise.
6422         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6423         (reg_buffer::raw_supply): Likewise.
6424         (reg_buffer::raw_supply_integer): Likewise.
6425         (reg_buffer::raw_supply_zeroed): Likewise.
6426         (reg_buffer::raw_collect): Likewise.
6427         (reg_buffer::raw_collect_integer): Likewise.
6428
6429 2018-06-10  Tom Tromey  <tom@tromey.com>
6430
6431         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6432         (class remote_state) <stop_reply_queue>: Now std::vector.
6433         (remote_state::~remote_state)
6434         (remote_target::stop_reply_queue_length): Update.
6435         (struct queue_iter_param, remove_child_of_pending_fork)
6436         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6437         (check_pending_event_prevents_wildcard_vcont_callback)
6438         (remove_stop_reply_for_inferior)
6439         (remove_stop_reply_of_remote_state)
6440         (remote_notif_remove_once_on_match)
6441         (stop_reply_match_ptid_and_ws)
6442         (remote_kill_child_of_pending_fork): Remove.
6443         (remote_target::remove_new_fork_children)
6444         (remote_target::check_pending_events_prevent_wildcard_vcont)
6445         (remote_target::discard_pending_stop_replies)
6446         (remote_target::discard_pending_stop_replies_in_queue)
6447         (remote_target::remote_notif_remove_queued_reply)
6448         (remote_target::queued_stop_reply)
6449         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6450         (remote_target::wait, remote_target::kill_new_fork_children)
6451         (remote_target::async): Update.
6452
6453 2018-06-10  Tom Tromey  <tom@tromey.com>
6454
6455         * record-full.c (record_full_arch_list_cleanups): Remove.
6456         (record_full_message): Use try/catch.
6457         (record_full_wait_cleanups): Remove.
6458         (record_full_wait_1): Use try/catch.
6459         (record_full_restore): Likewise.
6460
6461 2018-06-10  Tom Tromey  <tom@tromey.com>
6462
6463         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6464         declare VEC.  Add constructor.
6465         <in_target_beneath>: Now bool.
6466         (record_full_breakpoints): Now a std::vector, static.
6467         (record_full_sync_record_breakpoints)
6468         (record_full_init_record_breakpoints)
6469         (record_full_target::insert_breakpoint)
6470         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6471
6472 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6473
6474         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6475         * serial.c (serial_interface_lookup): Remove struct keyword.
6476
6477 2018-06-10  Tom Tromey  <tom@tromey.com>
6478
6479         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6480         method.
6481         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6482         a method.
6483         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6484         method.
6485         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6486         "beneath" as a method.
6487         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6488         Use "beneath" as a method.
6489
6490 2018-06-10  Tom Tromey  <tom@tromey.com>
6491
6492         * tracefile.c (struct trace_file_writer_deleter): New.
6493         <operator()>: Rename from trace_file_writer_xfree.
6494         (trace_file_writer_up): New typedef.
6495         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6496
6497 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6498
6499         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6500         <m_registers, m_register_status>: Change type to
6501         std::unique_ptr.
6502         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6503         XCNEWVEC.
6504
6505 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6506
6507         * common/common-regcache.h (enum register_status): Add
6508         underlying type "signed char".
6509         * regcache.h (reg_buffer) <m_register_status>: Change type to
6510         register_status *.
6511         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6512         register_status instead of signed char.
6513         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6514         (reg_buffer::get_register_status): Remove cast.
6515         (readable_regcache::raw_read): Remove cast.
6516         (readable_regcache::cooked_read): Remove cast.
6517
6518 2018-06-09  Tom Tromey  <tom@tromey.com>
6519
6520         * source.c (reverse_search_command, forward_search_command): Use
6521         scoped_fd.
6522
6523 2018-06-09  Tom Tromey  <tom@tromey.com>
6524
6525         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6526         (serial_ops_list): Now static, std::vector.
6527         (serial_interface_lookup, serial_add_interface): Update.
6528
6529 2018-06-09  Tom Tromey  <tom@tromey.com>
6530
6531         * dwarf2read.c (process_cu_includes): Update.
6532         (process_full_comp_unit): Update.
6533         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6534         std::vector.
6535
6536 2018-06-08  Paul Koning  <paul_koning@dell.com>
6537
6538         PR gdb/23252
6539
6540         * python/python.c (do_start_initialization):
6541         Avoid call to internal Python API.
6542         (init__gdb_module): New function.
6543
6544 2018-06-08  Gary Benson <gbenson@redhat.com>
6545
6546         * linux-thread-db.c (valprint.h): New include.
6547         (struct check_thread_db_info): New structure.
6548         (check_thread_db_on_load, tdb_testinfo): New static globals.
6549         (check_thread_db, check_thread_db_callback): New functions.
6550         (try_thread_db_load_1): Run integrity checks if requested.
6551         (maintenance_check_libthread_db): New function.
6552         (_initialize_thread_db): Register "maint check libthread-db"
6553         and "maint set/show check-libthread-db".
6554         * NEWS: Mention the above new commands.
6555
6556 2018-06-08  Tom Tromey  <tom@tromey.com>
6557
6558         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
6559         now a method.
6560
6561 2018-06-08  Tom Tromey  <tom@tromey.com>
6562
6563         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
6564
6565 2018-06-08  Tom Tromey  <tom@tromey.com>
6566
6567         * common/btrace-common.h (struct btrace_data): Add constructor,
6568         destructor, move assignment operator.
6569         <empty, clear, fini>: New methods.
6570         <format>: Initialize.
6571         (btrace_data_init, btrace_data_fini, btrace_data_clear)
6572         (btrace_data_empty): Don't declare.
6573         * common/btrace-common.c (btrace_data_init): Remove.
6574         (btrace_data::fini): Rename from btrace_data_fini.
6575         (btrace_data::empty): Rename from btrace_data_empty.
6576         (btrace_data::clear): Rename from btrace_data_clear.  Return
6577         bool.
6578         * btrace.h (make_cleanup_btrace_data): Don't declare.
6579         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
6580         (parse_xml_btrace): Update.
6581         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
6582         (maint_btrace_clear_packet_history_cmd): Update.
6583
6584 2018-06-07  Pedro Alves  <palves@redhat.com>
6585
6586         * target.h (target_ops) <beneath>: Now a method.  All references
6587         updated.
6588         (class target_stack): New.
6589         * target.c (g_target_stack): New.
6590         (g_current_top_target): Delete.
6591         (current_top_target): Get the top target out of g_target_stack.
6592         (target_stack::push, target_stack::unpush): New.
6593         (push_target, unpush_target): Reimplement.
6594         (target_is_pushed): Reimplement in terms of g_target_stack.
6595         (target_ops::beneath, target_stack::find_beneath): New.
6596
6597 2018-06-07  Pedro Alves  <palves@redhat.com>
6598
6599         * target.h (find_target_beneath): Delete declaration.
6600         * target.c (find_target_beneath): Delete definition.
6601         * aix-thread.c: All callers of find_target_beneath adjusted to
6602         call target_ops::beneath instead.
6603         * bsd-uthread.c: Likewise.
6604         * linux-thread-db.c: Likewise.
6605         * ravenscar-thread.c: Likewise.
6606         * sol-thread.c: Likewise.
6607         * spu-multiarch.c: Likewise.
6608
6609 2018-06-07  Pedro Alves  <palves@redhat.com>
6610
6611         * target.h (target_ops) <beneath>: Now a method.  All references
6612         updated.
6613         (target_ops) <m_beneath>: New.
6614         * target.c (target_ops::beneath): New.
6615         * corelow.c: Adjust all references to target_ops::beneath.
6616         * linux-thread-db.c: Likewise.
6617         * make-target-delegates: Likewise.
6618         * record-btrace.c: Likewise.
6619         * record-full.c: Likewise.
6620         * remote.c: Likewise.
6621         * target.c: Likewise.
6622         * target-delegates.c: Regenerate.
6623
6624 2018-06-07  Pedro Alves  <palves@redhat.com>
6625
6626         * target.h (target_stack): Delete.
6627         (current_top_target): Declare function.
6628         * target.c (target_stack): Delete.
6629         (g_current_top_target): New.
6630         (current_top_target): New function.
6631         * auxv.c: Use current_top_target instead of target_stack
6632         throughout.
6633         * avr-tdep.c: Likewise.
6634         * breakpoint.c: Likewise.
6635         * corefile.c: Likewise.
6636         * elfread.c: Likewise.
6637         * eval.c: Likewise.
6638         * exceptions.c: Likewise.
6639         * frame.c: Likewise.
6640         * gdbarch-selftests.c: Likewise.
6641         * gnu-v3-abi.c: Likewise.
6642         * ia64-tdep.c: Likewise.
6643         * ia64-vms-tdep.c: Likewise.
6644         * infcall.c: Likewise.
6645         * infcmd.c: Likewise.
6646         * infrun.c: Likewise.
6647         * linespec.c: Likewise.
6648         * linux-tdep.c: Likewise.
6649         * minsyms.c: Likewise.
6650         * ppc-linux-nat.c: Likewise.
6651         * ppc-linux-tdep.c: Likewise.
6652         * procfs.c: Likewise.
6653         * regcache.c: Likewise.
6654         * remote.c: Likewise.
6655         * rs6000-tdep.c: Likewise.
6656         * s390-linux-nat.c: Likewise.
6657         * s390-tdep.c: Likewise.
6658         * solib-aix.c: Likewise.
6659         * solib-darwin.c: Likewise.
6660         * solib-dsbt.c: Likewise.
6661         * solib-spu.c: Likewise.
6662         * solib-svr4.c: Likewise.
6663         * solib-target.c: Likewise.
6664         * sparc-tdep.c: Likewise.
6665         * sparc64-tdep.c: Likewise.
6666         * spu-tdep.c: Likewise.
6667         * symfile.c: Likewise.
6668         * symtab.c: Likewise.
6669         * target-descriptions.c: Likewise.
6670         * target-memory.c: Likewise.
6671         * target.c: Likewise.
6672         * target.h: Likewise.
6673         * tracefile-tfile.c: Likewise.
6674         * tracepoint.c: Likewise.
6675         * valops.c: Likewise.
6676         * valprint.c: Likewise.
6677         * value.c: Likewise.
6678         * windows-tdep.c: Likewise.
6679         * mi/mi-main.c: Likewise.
6680
6681 2018-06-07  Tom Tromey  <tom@tromey.com>
6682
6683         * valprint.h (build_address_symbolic): Declare.
6684         * printcmd.c (print_address_symbolic): Update.
6685         (build_address_symbolic): Change "name" and "filename" to
6686         std::string.
6687         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
6688         Update.
6689         * defs.h (build_address_symbolic): Remove declaration.
6690
6691 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
6692
6693         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
6694         (aarch64_vnv_type): Add function.
6695         (aarch64_pseudo_register_name): Add V regs for SVE.
6696         (aarch64_pseudo_register_type): Likewise.
6697         (aarch64_pseudo_register_reggroup_p): Likewise.
6698         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
6699         (aarch64_pseudo_read_value): Add V regs for SVE.
6700         (aarch64_pseudo_write_2): Use V0 offset for SVE
6701         (aarch64_pseudo_write): Add V regs for SVE.
6702         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
6703
6704 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
6705
6706         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
6707         (sve_vl_from_vq): Likewise.
6708
6709 2018-06-05  Tom Tromey  <tom@tromey.com>
6710
6711         * cli/cli-cmds.c (show_version): Update.
6712         * top.c (print_gdb_version): Add "interactive" parameter.
6713         Update.
6714         * main.c (captured_main_1): Update.
6715         * top.h (print_gdb_version): Add "interactive" parameter and a
6716         comment.
6717
6718 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
6719
6720         * common/enum-flags.h: Add trailing semicolon to example in
6721         comment.
6722
6723 2018-06-05  Tom Tromey  <tom@tromey.com>
6724
6725         PR cli/12326:
6726         * NEWS: Add entry about pager.
6727         * utils.c (pagination_disabled_for_command): New global.
6728         (prompt_for_continue): Allow "c" response to prompt.
6729         (reinitialize_more_filter): Clear
6730         pagination_disabled_for_command.
6731         (fputs_maybe_filtered): Check pagination_disabled_for_command.
6732
6733 2018-06-04  Tom Tromey  <tom@tromey.com>
6734
6735         * ada-lang.h (ada_lookup_symbol_list): Update.
6736         * ada-lang.c (resolve_subexp): Update.
6737         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
6738         parameter.
6739         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
6740         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
6741         results parameter to std::vector.
6742         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
6743         Update.
6744         * ada-exp.y (block_lookup): Update.
6745         (select_possible_type_sym): Change type of syms.  Remove nsyms
6746         parameter.
6747         (write_var_or_type, write_name_assoc): Update.
6748
6749 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
6750
6751         * windows-nat.c (windows_nat_target::xfer_partial): Return
6752         TARGET_XFER_E_IO if we need to delegate to the target beneath
6753         but BENEATH is NULL.
6754
6755 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
6756
6757         * Makefile.in (config.status): Add configure.nat as a
6758         dependency.
6759
6760 2018-06-04  Tom Tromey  <tom@tromey.com>
6761
6762         * cp-name-parser.y (cpname_state): Add method declarations.
6763         (HANDLE_QUAL): Update.
6764         (cpname_state::d_grab, cpname_state::fill_comp)
6765         (cpname_state::make_operator, cpname_state::make_dtor)
6766         (cpname_state::make_builtin_type, cpname_state::make_name)
6767         (cpname_state::d_qualify, cpname_state::d_int_type)
6768         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
6769         (%union): Move earlier.
6770
6771 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6772
6773         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
6774
6775 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6776
6777         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
6778         (aarch64_pseudo_write_1): Likewise.
6779         (aarch64_pseudo_read_value): Use helper.
6780         (aarch64_pseudo_write): Likewise.
6781
6782 2018-06-04  Pedro Alves  <palves@redhat.com>
6783
6784         * darwin-nat.c (darwin_ops): Delete.
6785         (darwin_attach_pid): Use get_native_target.
6786
6787 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6788
6789         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
6790         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
6791
6792 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6793
6794         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
6795         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
6796         (aarch64_gdbarch_init): Check for SVE.
6797         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
6798
6799 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6800
6801         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
6802         * aarch64-tdep.h (aarch64_read_description): Likewise.
6803         * arch/aarch64.c (aarch64_create_target_description): Likewise.
6804         * arch/aarch64.h (aarch64_create_target_description): Likewise.
6805         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
6806         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
6807         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
6808
6809 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
6810
6811         * value.c (value_fetch_lazy_bitfield): New.
6812         (value_fetch_lazy_memory): New.
6813         (value_fetch_lazy_register): New.
6814         (value_fetch_lazy): Factor out to smaller functions.
6815
6816 2018-06-01  Tom Tromey  <tom@tromey.com>
6817
6818         * cp-name-parser.y (backslashable, represented): Now const.
6819
6820 2018-06-01  Tom Tromey  <tom@tromey.com>
6821
6822         * cp-name-parser.y: Include parser-defs.h.
6823         (parser_fprintf): Remove declaration.
6824
6825 2018-06-01  Tom Tromey  <tom@tromey.com>
6826
6827         * cp-name-parser.y: Use %pure-parser, %lex-param, and
6828         %parse-param.
6829         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
6830         (global_result): Remove globals.
6831         (struct cpname_state): New.
6832         (yyparse): Don't declare.
6833         (yylex, yyerror): Move declarations after %union.
6834         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
6835         (make_name): Add state parameter.
6836         Update all callers.
6837         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
6838         parameter.
6839         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
6840         Update.
6841         (yylex): Add lvalp, state parameters.
6842         (yyerror): Add state parameter.
6843         (cp_demangled_name_to_comp): Update.
6844
6845 2018-06-01  Tom Tromey  <tom@tromey.com>
6846
6847         * cp-name-parser.y (parser_fprintf): Declare.
6848         (GDB_YY_REMAP_PREFIX): Define.
6849         Include yy-remap.h.  Don't redefine yy* identifiers.
6850
6851 2018-06-01  Tom Tromey  <tom@tromey.com>
6852
6853         * python/py-type.c (typy_legacy_template_argument): Update.
6854         * cp-support.h (cp_demangled_name_to_comp): Update.
6855         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
6856         parameter to be a "std::string *".
6857         (main): Update.
6858
6859 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
6860
6861         * ada-lex.l: Include "diagnostics.h" instead of
6862         "common/diagnostics.h".
6863         * unittests/environ-selftests.c: Likewise.
6864         * common/diagnostics.h: Moved to ../include.
6865
6866 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
6867
6868         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
6869         to language_mode_manual while calling breakpoint_re_set_one.
6870
6871 2018-06-01  Tom Tromey  <tom@tromey.com>
6872
6873         * valops.c (value_cast_structs, destructor_name_p): Update.
6874         * symtab.c (gdb_mangle_name): Update.
6875         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
6876         Update.
6877         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
6878         (pascal_object_print_value_fields, pascal_object_print_value):
6879         Update.
6880         * p-typeprint.c (pascal_type_print_derivation_info): Update.
6881         * linespec.c (find_methods): Update.
6882         * gdbtypes.h (type_name_no_tag): Remove.
6883         (type_name_or_error): Rename from type_name_no_tag_or_error.
6884         * gdbtypes.c (type_name_no_tag): Remove.
6885         (type_name_or_error): Rename from type_name_no_tag_or_error.
6886         (lookup_struct_elt_type, check_typedef): Update.
6887         * expprint.c (print_subexp_standard): Update.
6888         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
6889         * d-namespace.c (d_lookup_nested_symbol): Update.
6890         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
6891         (cp_print_class_member): Update.
6892         * cp-namespace.c (cp_lookup_nested_symbol): Update.
6893         * completer.c (add_struct_fields): Update.
6894         * c-typeprint.c (cp_type_print_derivation_info)
6895         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
6896         Update.
6897         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
6898         (ada_prefer_type, ada_is_exception_sym): Update.
6899
6900 2018-06-01  Tom Tromey  <tom@tromey.com>
6901
6902         * valops.c (enum_constant_from_type, value_namespace_elt)
6903         (value_maybe_namespace_elt): Update.
6904         * valarith.c (find_size_for_pointer_math): Update.
6905         * target-descriptions.c (make_gdb_type): Update.
6906         * symmisc.c (print_symbol): Update.
6907         * stabsread.c (define_symbol, read_type)
6908         (complain_about_struct_wipeout, add_undefined_type)
6909         (cleanup_undefined_types_1): Update.
6910         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
6911         (rust_range_type_p, val_print_struct, rust_print_struct_def)
6912         (rust_internal_print_type, rust_composite_type)
6913         (rust_evaluate_funcall, rust_evaluate_subexp)
6914         (rust_inclusive_range_type_p): Update.
6915         * python/py-type.c (typy_get_tag): Update.
6916         * p-typeprint.c (pascal_type_print_base): Update.
6917         * mdebugread.c (parse_symbol, parse_type): Update.
6918         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
6919         Update.
6920         * guile/scm-type.c (gdbscm_type_tag): Update.
6921         * go-lang.c (sixg_string_p): Update.
6922         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
6923         Update.
6924         * gdbtypes.h (struct main_type) <tag_name>: Remove.
6925         (TYPE_TAG_NAME): Remove.
6926         * gdbtypes.c (type_name_no_tag): Simplify.
6927         (check_typedef, check_types_equal, recursive_dump_type)
6928         (copy_type_recursive, arch_composite_type): Update.
6929         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
6930         in summary mode when needed.
6931         * eval.c (evaluate_funcall): Update.
6932         * dwarf2read.c (fixup_go_packaging, read_structure_type)
6933         (process_structure_scope, read_enumeration_type)
6934         (read_namespace_type, read_module_type, determine_prefix): Update.
6935         * cp-support.c (inspect_type): Update.
6936         * coffread.c (process_coff_symbol, decode_base_type): Update.
6937         * c-varobj.c (c_is_path_expr_parent): Update.
6938         * c-typeprint.c (c_type_print_base_struct_union): Update.
6939         (c_type_print_base_1): Update.  Print struct/class/union/enum in
6940         summary when using C language.
6941         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
6942         (gen_maybe_namespace_elt): Update.
6943         * ada-lang.c (ada_type_name): Simplify.
6944         (empty_record, ada_template_to_fixed_record_type_1)
6945         (template_to_static_fixed_type)
6946         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
6947
6948 2018-06-01  Tom Tromey  <tom@tromey.com>
6949
6950         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
6951         c_print_type.
6952         * c-typeprint.c (c_print_type_1): Add "language" parameter.
6953         (c_print_type): Update.
6954         (c_print_type): New overload.
6955         (c_type_print_varspec_prefix, c_type_print_args)
6956         (c_type_print_varspec_suffix, c_print_type_no_offsets)
6957         (c_type_print_base_struct_union, c_type_print_base_1)
6958         (cp_type_print_method_args): Add "language" parameter.
6959         (c_type_print_base): Update.
6960         * c-lang.h (c_print_type): Add new overload.
6961
6962 2018-06-01  Tom Tromey  <tom@tromey.com>
6963
6964         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
6965         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
6966
6967 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
6968
6969         * aarch64-tdep.c (aarch64_sve_register_names): New const
6970         var.
6971         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
6972         (AARCH64_SVE_Z_REGS_NUM): New define.
6973         (AARCH64_SVE_P_REGS_NUM): Likewise.
6974         (AARCH64_SVE_NUM_REGS): Likewise.
6975
6976 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
6977
6978         * nat/linux-ptrace.h [__alpha__]
6979         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
6980         definitions.
6981
6982 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
6983
6984         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
6985         the endianness selected.
6986         * NEWS: Document `set endian auto' mode operation update.
6987
6988 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6989
6990         * Makefile.in: Add new header.
6991         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
6992         (sve_vl_from_vg): Likewise.
6993         (sve_vq_from_vl): Likewise.
6994         (sve_vl_from_vq): Likewise.
6995         (sve_vq_from_vg): Likewise.
6996         (sve_vg_from_vq): Likewise.
6997         * configure.nat: Add new c file.
6998         * nat/aarch64-sve-linux-ptrace.c: New file.
6999         * nat/aarch64-sve-linux-ptrace.h: New file.
7000
7001 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7002
7003         * aarch64-linux-nat.c (aarch64_linux_read_description):
7004         Add parmeter zero.
7005         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7006         Likewise.
7007         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7008         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7009         (aarch64_gdbarch_init): Add parmeter zero.
7010         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7011         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7012         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7013         parmeter.
7014         * doc/gdb.texinfo: Describe SVE feature
7015         * features/aarch64-sve.c: New file.
7016
7017 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7018
7019         PR gdb/23210
7020         * gdbarch.sh (significant_addr_bit): Default to zero when
7021         not set by target architecture.
7022         * gdbarch.c: Re-generated.
7023         * utils.c (address_significant): Update.
7024
7025 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7026
7027         * stack.c (func_command): Remove trailing newline in call to error.
7028
7029 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7030
7031         * regcache.h (regcache_raw_collect): Remove, update callers to
7032         use regcache::raw_collect.
7033         * regcache.c (regcache_raw_collect): Remove.
7034
7035 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7036
7037         * regcache.h (regcache_raw_supply): Remove, update callers to
7038         use detached_regcache::raw_supply.
7039         * regcache.c (regcache_raw_supply): Remove.
7040
7041 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7042
7043         * regcache.h (regcache_cooked_write_part): Remove, update
7044         callers to use regcache::cooked_write_part.
7045         * regcache.c (regcache_cooked_write_part): Remove.
7046
7047 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7048
7049         * regcache.h (regcache_cooked_read_part): Remove, update callers
7050         to use readable_regcache::cooked_read_part.
7051         * regcache.c (regcache_cooked_read_part): Remove.
7052
7053 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7054
7055         * regcache.h (regcache_cooked_read_value): Remove, update
7056         callers to use readable_regcache::cooked_read_value.
7057         * regcache.c (regcache_cooked_read_value): Remove.
7058
7059 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7060
7061         * regcache.h (regcache_cooked_write): Remove, update callers to
7062         use regcache::cooked_write.
7063         * regcache.c (regcache_cooked_write): Remove.
7064
7065 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7066
7067         * regcache.h (regcache_invalidate): Remove, update callers to
7068         use detached_regcache::invalidate instead.
7069         * regcache.c (regcache_invalidate): Remove.
7070
7071 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7072
7073         * regcache.h (regcache_raw_write_part): Remove, update callers
7074         to use regcache::raw_write_part instead.
7075         * regcache.c (regcache_raw_write_part): Remove.
7076
7077 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7078
7079         * regcache.h (regcache_raw_read_part): Remove, update callers to
7080         use readable_regcache::raw_read_part instead.
7081         * regcache.c (regcache_raw_read_part): Remove.
7082
7083 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7084
7085         * regcache.h (regcache_cooked_read): Remove, update callers to
7086         use readable_regcache::cooked_read instead.
7087         * regcache.c (regcache_cooked_read): Remove.
7088
7089 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7090
7091         * regcache.h (regcache_raw_write): Remove, update callers to use
7092         regcache::raw_write instead.
7093         * regcache.c (regcache_raw_write): Remove.
7094
7095 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7096
7097         * regcache.h (regcache_raw_read): Remove, update callers to use
7098         readable_regcache::raw_read instead.
7099         * regcache.c (regcache_raw_read): Remove.
7100
7101 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7102
7103         * regcache.h (regcache_raw_update): Remove, update callers to
7104         use readable_regcache::raw_update instead.
7105         * regcache.c (regcache_raw_update): Remove.
7106
7107 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7108
7109         * regcache.h (regcache_register_status): Remove, update callers
7110         to use reg_buffer::get_register_status directly instead.
7111         * regcache.c (regcache_register_status): Remove.
7112
7113 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7114
7115         * regcache.h (regcache_get_ptid): Remove, update all callers to
7116         call regcache::ptid instead.
7117         * regcache.c (regcache_get_ptid): Remove.
7118
7119 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7120
7121         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7122
7123 2018-05-30  Pedro Alves  <palves@redhat.com>
7124
7125         * common/common-exceptions.h (exception_rethrow): Use
7126         ATTRIBUTE_NORETURN.
7127
7128 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7129
7130         * breakpoint.c (print_solib_event, check_status_catch_solib):
7131         Remove struct keyword in range-based for loops.
7132         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7133         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7134         Likewise.
7135         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7136         Likewise.
7137         * symfile.c (addr_info_make_relative): Likewise.
7138         * thread.c (value_in_thread_stack_temporaries): Likewise.
7139
7140 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7141
7142         PR gdb/16841
7143         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7144         aggregate type to get its real type before accessing it.
7145
7146 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7147
7148         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7149         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7150         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7151         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7152         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7153         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7154         * printcmd.c (info_address_command): Likewise.
7155
7156 2018-05-29  Tom Tromey  <tom@tromey.com>
7157
7158         * windows-nat.c (handle_exception): Update fall-through comment.
7159
7160 2018-05-29  Tom Tromey  <tom@tromey.com>
7161
7162         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7163         (struct program_space) <added_solibs>: Now a std::vector.
7164         * breakpoint.c (print_solib_event): Update.
7165         (check_status_catch_solib): Update.
7166         * progspace.c (clear_program_space_solib_cache): Update.
7167         * solib.c (update_solib_list): Update.
7168
7169 2018-05-29  Tom Tromey  <tom@tromey.com>
7170
7171         * python/py-type.c (typy_richcompare): Update.
7172         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7173         * gdbtypes.h (types_deeply_equal): Return bool.
7174         (types_equal): Likewise.
7175         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7176         declare VEC.
7177         (check_types_equal): Change worklist to std::vector.  Return
7178         bool.
7179         (struct type_equality_entry): Add constructor.
7180         (compare_maybe_null_strings): Return bool.
7181         (check_types_worklist): Return bool.  Change worklist to
7182         std::vector.
7183         (types_deeply_equal): Use std::vector.
7184         (types_equal): Return bool.
7185         (compare_maybe_null_strings): Simplify.
7186
7187 2018-05-29  Tom Tromey  <tom@tromey.com>
7188
7189         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7190
7191 2018-05-29  Tom Tromey  <tom@tromey.com>
7192
7193         * objc-lang.h: Don't include cp-support.h.
7194         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7195         declare VEC.
7196
7197 2018-05-27  Tom Tromey  <tom@tromey.com>
7198
7199         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7200
7201 2018-05-25  Tom Tromey  <tom@tromey.com>
7202
7203         * value.c (value::location): Initialize.
7204
7205 2018-05-25  Tom Tromey  <tom@tromey.com>
7206
7207         * dbxread.c (init_bincl_list): Remove.
7208         (bincl_list): Now a std::vector.
7209         (bincls_allocated, next_bincl): Remove.
7210         (free_bincl_list, do_free_bincl_list_cleanup)
7211         (make_cleanup_free_bincl_list): Remove.
7212         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7213         unique_xmalloc_ptr.
7214         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7215         (struct header_file_location): Add constructor.
7216         (add_bincl_to_list): Remove.
7217
7218 2018-05-25  Tom Tromey  <tom@tromey.com>
7219
7220         * tui/tui.c (tui_enable): Update.
7221         * mi/mi-interp.c (mi_interp::init): Update.
7222         * interps.h (class interp) <name>: New method.
7223         <m_name>: Rename from name.
7224         (~scoped_restore_interp): Update.
7225         * interps.c (interp::interp): Update.
7226         (interp_add, interp_set, interp_lookup_existing)
7227         (current_interp_named_p): Update.
7228
7229 2018-05-25  Tom Tromey  <tom@tromey.com>
7230
7231         * interps.c (interp_name): Remove.
7232         * mi/mi-interp.c (mi_interp::init): Update.
7233         * interps.h (interp_name): Remove.
7234         (~scoped_restore_interp): Update.
7235         * tui/tui.c (tui_enable): Update.
7236
7237 2018-05-25  Tom Tromey  <tom@tromey.com>
7238
7239         * utils.c (fputs_maybe_filtered): Update.
7240         * linespec.c (decode_line_full): Update.
7241         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7242         (mi_print_breakpoint_for_event, mi_solib_loaded)
7243         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7244         (mi_user_selected_context_changed): Update.
7245         * mi/mi-main.c (mi_execute_command): Update.
7246         * cli/cli-script.c (execute_control_command): Update.
7247         * python/python.c (execute_gdb_command): Update.
7248         * solib.c (info_sharedlibrary_command): Update.
7249         * interps.c (interp_ui_out): Remove.
7250         * interps.h (interp_ui_out): Remove.
7251
7252 2018-05-25  Tom Tromey  <tom@tromey.com>
7253
7254         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7255         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7256         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7257
7258 2018-05-25  Tom Tromey  <tom@tromey.com>
7259
7260         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7261         * interps.c (interp_exec): Use scoped_restore.
7262
7263 2018-05-25  Tom Tromey  <tom@tromey.com>
7264
7265         * remote.c (remote_target::remote_file_get): Use
7266         gdb::byte_vector.
7267         (remote_target::remote_file_put): Likewise.
7268
7269 2018-05-25  Tom Tromey  <tom@tromey.com>
7270
7271         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7272         a std::string.
7273         (get_pe_section_index, add_pe_exported_sym): Update.
7274         (read_pe_exported_syms): Use gdb::def_vector.
7275
7276 2018-05-25  Tom Tromey  <tom@tromey.com>
7277
7278         * frame.c (remove_prev_frame): Remove.
7279         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7280
7281 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7282
7283         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7284         Remove prototypes.
7285         * mips-linux-nat.c (supply_fpregset): Always call
7286         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7287         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7288         `mips_fill_fpregset'.
7289         * mips-linux-tdep.c (mips_supply_fpregset)
7290         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7291         (mips_fill_fpregset_wrapper): Remove functions.
7292         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7293         (mips_linux_fpregset): Remove variable.
7294         (mips_linux_iterate_over_regset_sections): Use
7295         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7296         (mips_linux_o32_sigframe_init): Remove comment.
7297
7298 2018-05-25  Pedro Alves  <palves@redhat.com>
7299
7300         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7301         (struct readahead_cache, struct packet_reg, struct
7302         remote_arch_state, class remote_state): Move higher up in the
7303         file.
7304         (remote_target::m_remote_state): Now an object instead of a pointer.
7305         (remote_target::get_remote_state): Adjust.
7306
7307 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7308
7309         * stack.c (select_and_print_frame): Delete.
7310         (struct function_bounds): Move struct within function.
7311         (func_command): Most content moved into new function
7312         find_frame_for_function, use new function, print result, add
7313         function comment.
7314         (find_frame_for_function): New function, now returns a result.
7315
7316 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7317
7318         * stack.c (iterate_over_block_arg_vars): Fix comment.
7319         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7320
7321 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7322
7323         PR gdb/23203
7324         * frame.c
7325         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7326         Define.
7327         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7328         Define.
7329         * frame.h (class scoped_restore_selected_frame): New class.
7330         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7331         of any exception, use scoped_restore_selected_frame to restore the
7332         frame instead.
7333
7334 2018-05-24  Pedro Alves  <palves@redhat.com>
7335
7336         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7337         override.
7338
7339 2018-05-23  Tom Tromey  <tom@tromey.com>
7340
7341         * complaints.c (struct complaints): Remove.
7342         (symfile_complaint_book): Remove.
7343         (series): New global.
7344         (complaint_internal): Update.
7345         (clear_complaints): Update.
7346
7347 2018-05-23  Tom Tromey  <tom@tromey.com>
7348
7349         * complaints.c (counters): New global.
7350         (struct complain): Remove.
7351         (struct complaints) <root>: Remove.
7352         (complaint_sentinel): Remove.
7353         (symfile_complaint_book): Update.
7354         (find_complaint) Remove.
7355         (complaint_internal, clear_complaints): Update.
7356
7357 2018-05-23  Tom Tromey  <tom@tromey.com>
7358
7359         * complaints.c (struct complain) <file, line>: Remove.
7360         (find_complaint): Remove file, line parameters.
7361         (complaint_internal): Update.
7362
7363 2018-05-23  Tom Tromey  <tom@tromey.com>
7364
7365         * complaints.c (vcomplaint): Remove.
7366         (complaint_internal) Merge in contents of vcomplaint.
7367
7368 2018-05-23  Tom Tromey  <tom@tromey.com>
7369
7370         * complaints.c (struct complaints) <explanation>: Remove.
7371         (symfile_explanations): Remove.
7372         (symfile_complaint_book): Update.
7373         (vcomplaint): Update.
7374         (struct explanation): Remove.
7375
7376 2018-05-23  Tom Tromey  <tom@tromey.com>
7377
7378         * complaints.c (symfile_complaints): Remove.
7379         (complaint_internal): Remove "complaints" parameter.
7380         (clear_complaints, vcomplaint): Remove "c" parameter.
7381         (get_complaints): Remove.
7382         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7383         (dwarf2_debug_line_missing_file_complaint)
7384         (dwarf2_debug_line_missing_end_sequence_complaint)
7385         (dwarf2_complex_location_expr_complaint)
7386         (dwarf2_const_value_length_mismatch_complaint)
7387         (dwarf2_section_buffer_overflow_complaint)
7388         (dwarf2_macro_malformed_definition_complaint)
7389         (dwarf2_invalid_attrib_class_complaint)
7390         (create_addrmap_from_index, dw2_symtab_iter_next)
7391         (dw2_expand_marked_cus)
7392         (dw2_debug_names_iterator::find_vec_in_debug_names)
7393         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7394         (create_debug_type_hash_table, init_cutu_and_read_dies)
7395         (partial_die_parent_scope, add_partial_enumeration)
7396         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7397         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7398         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7399         (create_cus_hash_table, create_dwp_hash_table)
7400         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7401         (dwarf2_rnglists_process, dwarf2_ranges_process)
7402         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7403         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7404         (handle_struct_member_die, process_structure_scope)
7405         (read_array_type, read_common_block, read_module_type)
7406         (read_tag_pointer_type, read_typedef, read_base_type)
7407         (read_subrange_type, load_partial_dies, partial_die_info::read)
7408         (partial_die_info::read, partial_die_info::read)
7409         (partial_die_info::read, read_checked_initial_length_and_offset)
7410         (dwarf2_string_attr, read_formatted_entries)
7411         (dwarf_decode_line_header)
7412         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7413         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7414         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7415         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7416         (get_signatured_type, get_DW_AT_signature_type)
7417         (decode_locdesc, file_file_name, consume_improper_spaces)
7418         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7419         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7420         (dwarf2_symbol_mark_computed, set_die_type)
7421         (read_attribute_value): Update.
7422         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7423         Update.
7424         * dbxread.c (unknown_symtype_complaint)
7425         (lbrac_mismatch_complaint, repeated_header_complaint)
7426         (set_namestring, function_outside_compilation_unit_complaint)
7427         (read_dbx_symtab, process_one_symbol): Update.
7428         * gdbtypes.c (stub_noname_complaint): Update.
7429         * windows-nat.c (handle_unload_dll): Update.
7430         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7431         (decode_base_type): Update.
7432         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7433         (eb_complaint, record_include_begin, record_include_end)
7434         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7435         (process_xcoff_symbol, read_symbol)
7436         (function_outside_compilation_unit_complaint)
7437         (scan_xcoff_symtab): Update.
7438         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7439         * buildsym.c (finish_block_internal, make_blockvector)
7440         (end_symtab_get_static_block, augment_type_symtab): Update.
7441         * dtrace-probe.c (dtrace_process_dof)
7442         (dtrace_static_probe_ops::get_probes): Update.
7443         * complaints.h (struct complaint): Don't declare.
7444         (symfile_complaints): Remove.
7445         (complaint_internal): Remove "complaints" parameter.
7446         (complaint): Likewise.
7447         (clear_complaints): Likewise.
7448         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7449         (reread_symbols): Update.
7450         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7451         (dwarf2_frame_cache, decode_frame_entry): Update.
7452         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7453         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7454         (info_selectors_command): Update.
7455         * macrotab.c (macro_include, check_for_redefinition)
7456         (macro_undef): Update.
7457         * objfiles.c (filter_overlapping_sections): Update.
7458         * stabsread.c (invalid_cpp_abbrev_complaint)
7459         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7460         (define_symbol, error_type, read_type, rs6000_builtin_type)
7461         (stabs_method_name_from_physname, read_member_functions)
7462         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7463         (attach_fields_to_type, complain_about_struct_wipeout)
7464         (read_range_type, read_args, common_block_start)
7465         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7466         Update.
7467         * mdebugread.c (index_complaint, unknown_ext_complaint)
7468         (basic_type_complaint, bad_tag_guess_complaint)
7469         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7470         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7471         (parse_procedure, parse_lines)
7472         (function_outside_compilation_unit_complaint)
7473         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7474         (bad_tag_guess_complaint, reg_value_complaint): Update.
7475         * cp-support.c (demangled_name_complaint): Update.
7476         * macroscope.c (sal_macro_scope): Update.
7477         * dwarf-index-write.c (class debug_names): Update.
7478
7479 2018-05-23  Tom Tromey  <tom@tromey.com>
7480
7481         * complaints.c (clear_complaints): Remove "noisy" parameter.
7482         * complaints.h (clear_complaints): Update.
7483         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7484         (reread_symbols): Update.
7485
7486 2018-05-23  Tom Tromey  <tom@tromey.com>
7487
7488         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7489         SUBSEQUENT_MESSAGE.
7490         (vcomplaint, clear_complaints): Update.
7491         (symfile_explanations): Remove some messages.
7492
7493 2018-05-23  Tom Tromey  <tom@tromey.com>
7494
7495         * complaints.c (internal_complaint): Remove.
7496         * complaints.h (internal_complaint): Remove.
7497
7498 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7499
7500         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7501
7502 2018-05-22  Pedro Alves  <palves@redhat.com>
7503
7504         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7505         (remote_fileio_badfd, remote_fileio_return_errno)
7506         (remote_fileio_return_success, remote_fileio_func_open)
7507         (remote_fileio_func_open, remote_fileio_func_close)
7508         (remote_fileio_func_read, remote_fileio_func_write)
7509         (remote_fileio_func_lseek, remote_fileio_func_rename)
7510         (remote_fileio_func_unlink, remote_fileio_func_stat)
7511         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7512         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7513         remote_target parameter.
7514         (remote_fio_func_map) <func>: Add remote_target parameter.
7515         (do_remote_fileio_request, remote_fileio_request):
7516         * remote-fileio.h (remote_fileio_request):
7517         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7518         remote_target parameter.
7519         (remote_notif_process, handle_notification): Adjust to pass down
7520         the remote.
7521         (remote_notif_state_allocate): Add remote_target parameter.  Save
7522         it.
7523         * remote-notif.h (struct remote_target): Forward declare.
7524         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7525         remote_target parameter.
7526         (struct remote_notif_state) <remote>: New field.
7527         (remote_notif_ack, remote_notif_parse): Add remote_target
7528         parameter.
7529         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7530         remote_target parameter.
7531         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7532         (threads_listing_context, rmt_thread_action, protocol_feature)
7533         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7534         (packet_result, struct threads_listing_context, remote_state):
7535         Move definitions and declarations higher up.
7536         (remote_target) <~remote_target>: Declare.
7537         (remote_download_command_source, remote_file_put, remote_file_get)
7538         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7539         (remote_hostio_pread_vFile, remote_hostio_send_command)
7540         (remote_hostio_set_filesystem, remote_hostio_open)
7541         (remote_hostio_close, remote_hostio_unlink, remote_state)
7542         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7543         (get_memory_write_packet_size, get_memory_read_packet_size)
7544         (append_pending_thread_resumptions, remote_detach_1)
7545         (append_resumption, remote_resume_with_vcont)
7546         (add_current_inferior_and_thread, wait_ns, wait_as)
7547         (process_stop_reply, remote_notice_new_inferior)
7548         (process_initial_stop_replies, remote_add_thread)
7549         (btrace_sync_conf, remote_btrace_maybe_reopen)
7550         (remove_new_fork_children, kill_new_fork_children)
7551         (discard_pending_stop_replies, stop_reply_queue_length)
7552         (check_pending_events_prevent_wildcard_vcont)
7553         (discard_pending_stop_replies_in_queue, stop_reply)
7554         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
7555         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
7556         (remote_interrupt_as, remote_interrupt_ns)
7557         (remote_get_noisy_reply, remote_query_attached)
7558         (remote_add_inferior, remote_current_thread, get_current_thread)
7559         (set_thread, set_general_thread, set_continue_thread)
7560         (set_general_process, write_ptid)
7561         (remote_unpack_thread_info_response, remote_get_threadinfo)
7562         (parse_threadlist_response, remote_get_threadlist)
7563         (remote_threadlist_iterator, remote_get_threads_with_ql)
7564         (remote_get_threads_with_qxfer)
7565         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
7566         (get_offsets, remote_check_symbols, remote_supported_packet)
7567         (remote_query_supported, remote_packet_size)
7568         (remote_serial_quit_handler, remote_detach_pid)
7569         (remote_vcont_probe, remote_resume_with_hc)
7570         (send_interrupt_sequence, interrupt_query)
7571         (remote_notif_get_pending_events, fetch_register_using_p)
7572         (send_g_packet, process_g_packet, fetch_registers_using_g)
7573         (store_register_using_P, store_registers_using_G)
7574         (set_remote_traceframe, check_binary_download)
7575         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
7576         (remote_xfer_live_readonly_partial, remote_read_bytes)
7577         (remote_send_printf, remote_flash_write, readchar)
7578         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
7579         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
7580         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
7581         (extended_remote_disable_randomization, extended_remote_run)
7582         (send_environment_packet, extended_remote_environment_support)
7583         (extended_remote_set_inferior_cwd, remote_write_qxfer)
7584         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
7585         (packet_command): Now methods of ...
7586         (remote_target): ... this class.
7587         (m_remote_state) <remote_target>: New field.
7588         (struct remote_state) <stop_reply_queue,
7589         remote_async_inferior_event_token, wait_forever_enabled_p>: New
7590         fields.
7591         (remote_state::remote_state): Allocate stop_reply_queue.
7592         (remote_state): Delete global.
7593         (get_remote_state_raw): Delete.
7594         (remote_target::get_remote_state): Allocate m_remote_state on
7595         demand.
7596         (get_current_remote_target): New.
7597         (remote_ops, extended_remote_ops): Delete.
7598         (wait_forever_enabled_p, remote_async_inferior_event_token):
7599         Delete, moved to struct remote_state.
7600         (remote_target::close): Delete self.  Destruction bits split to
7601         ...
7602         (remote_target::~remote_target): ... this.
7603         (show_memory_packet_size): Adjust to use
7604         get_current_remote_target.
7605         (struct protocol_feature) <func>: Add remote_target parameter.
7606         All callers adjusted.
7607         (curr_quit_handler_target): New.
7608         (remote_serial_quit_handler): Reimplement.
7609         (remote_target::open_1): Adjust to use get_current_remote_target.
7610         Heap-allocate remote_target/extended_remote_target instances.
7611         (vcont_builder::vcont_builder): Add remote_target parameter, and
7612         save it in m_remote.  All callers adjusted.
7613         (vcont_builder::m_remote): New field.
7614         (vcont_builder::restart, vcont_builder::flush)
7615         (vcont_builder::push_action): Use it.
7616         (remote_target::commit_resume): Use it.
7617         (struct queue_iter_param) <remote>: New field.
7618         (remote_target::remove_new_fork_children): Fill in 'remote' field.
7619         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
7620         (check_pending_event_prevents_wildcard_vcont_callback)
7621         (remote_target::check_pending_events_prevent_wildcard_vcont)
7622         (remote_target::discard_pending_stop_replies)
7623         (remote_target::discard_pending_stop_replies_in_queue)
7624         (remote_target::remote_notif_remove_queued_reply): Fill in
7625         'remote' field.
7626         (remote_notif_get_pending_events): New.
7627         (remote_target::readchar, remote_target::remote_serial_write):
7628         Save/restore curr_quit_handler_target.
7629         (putpkt): New.
7630         (kill_new_fork_children): Fill in 'remote' field.
7631         (packet_command): Use get_current_remote_target, defer to
7632         remote_target method of same name.
7633         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
7634         parameter, and save it in m_remote.  All callers adjusted.
7635         (scoped_remote_fd::release): Use m_remote.
7636         (scoped_remote_fd::m_remote): New field.
7637         (remote_file_put, remote_file_get, remote_file_delete): Use
7638         get_current_remote_target, defer to remote_target method of same
7639         name.
7640         (remote_btrace_reset): Add remote_state paremeter.  Update all
7641         callers.
7642         (remote_async_inferior_event_handler). Pass down 'data'.
7643         (remote_new_objfile): Use get_current_remote_target.
7644         (remote_target::vcont_r_supported): New.
7645         (set_range_stepping): Use get_current_remote_target and
7646         remote_target::vcont_r_supported.
7647         (_initialize_remote): Don't allocate 'remote_state' and
7648         'stop_reply_queue' globals.
7649         * remote.h (struct remote_target): Forward declare.
7650         (getpkt, putpkt, remote_notif_get_pending_events): Add
7651         'remote_target' parameter.
7652
7653 2018-05-22  Pedro Alves  <palves@redhat.com>
7654
7655         * remote.c (vcont_builder): Now a class.  Make all data members
7656         private.
7657         (vcont_builder) <vcont_builder, restart, flush, push_action>:
7658         Declare methods.
7659         (vcont_builder_restart): Rename to ...
7660         (vcont_builder::restart): ... this.
7661         (vcont_builder_flush): Rename to ...
7662         (vcont_builder::flush): ... this.
7663         (vcont_builder_push_action): Rename to ...
7664         (vcont_builder::push_action): ... this.
7665         (remote_target::commit_resume): Adjust.
7666
7667 2018-05-22  Pedro Alves  <palves@redhat.com>
7668
7669         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
7670         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
7671         (get_fixed_memory_packet_size): New.
7672         (get_memory_packet_size): Use it.
7673         (set_memory_packet_size): Don't override the config size with
7674         DEFAULT_MAX_MEMORY_PACKET_SIZE.
7675         (show_memory_packet_size): Use get_fixed_memory_packet_size.
7676         Don't refer to get_memory_packet_size if not connected to a remote
7677         target.  Show "(default)" if configured size is 0.
7678
7679 2018-05-22  Pedro Alves  <palves@redhat.com>
7680
7681         * remote.c (remote_target::mourn_inferior): Move
7682         discard_pending_stop_replies call here from ...
7683         (_initialize_remote): ... here.
7684
7685 2018-05-22  Pedro Alves  <palves@redhat.com>
7686
7687         * remote.c (compare_section_command): Remove set_general_process
7688         call.
7689
7690 2018-05-22  Pedro Alves  <palves@redhat.com>
7691
7692         * remote.c (struct packet_reg, struct remote_arch_state):
7693         Move higher up in the file.
7694         (remote_state) <m_arch_states>: Store remote_arch_state values
7695         instead of remote_arch_state pointers.
7696         (remote_state::get_remote_arch_state): Adjust.
7697
7698 2018-05-22  Pedro Alves  <palves@redhat.com>
7699
7700         * remote.c: Include <unordered_map>.
7701         (remote_state): Now a class.
7702         (remote_state) <get_remote_arch_state>: Declare method.
7703         <get_remote_arch_state>: New field.
7704         (remote_arch_state) <remote_arch_state>: Declare ctor.
7705         <regs>: Now a unique_ptr.
7706         (remote_gdbarch_data_handle): Delete.
7707         (get_remote_arch_state): Delete.
7708         (remote_state::get_remote_arch_state): New.
7709         (get_remote_state): Adjust to call remote_state's
7710         get_remote_arch_state method.
7711         (init_remote_state): Delete, bits factored out to ...
7712         (remote_arch_state::remote_arch_state): ... this new method.
7713         (get_remote_packet_size, get_memory_packet_size)
7714         (process_g_packet, remote_target::fetch_registers)
7715         (remote_target::prepare_to_store, store_registers_using_G)
7716         (remote_target::store_registers, remote_target::get_trace_status):
7717         Adjust to call remote_state's method.
7718         (_initialize_remote): Remove reference to
7719         remote_gdbarch_data_handle.
7720
7721 2018-05-22  Pedro Alves  <palves@redhat.com>
7722
7723         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
7724         pread>: New method declarations.
7725         (remote_target::open_1): Adjust.
7726         (readahead_cache_invalidate): Rename to ...
7727         (readahead_cache::invalidate): ... this, and adjust to be a class
7728         method.
7729         (readahead_cache_invalidate_fd): Rename to ...
7730         (readahead_cache::invalidate_fd): ... this, and adjust to be a
7731         class method.
7732         (remote_hostio_pwrite): Adjust.
7733         (remote_hostio_pread_from_cache): Rename to ...
7734         (readahead_cache::pread): ... this, and adjust to be a class
7735         method.
7736         (remote_hostio_close): Adjust.
7737
7738 2018-05-22  Pedro Alves  <palves@redhat.com>
7739
7740         * remote.c (remote_hostio_close_cleanup): Delete.
7741         (class scoped_remote_fd): New.
7742         (remote_file_put, remote_file_get): Use it.
7743
7744 2018-05-22  Pedro Alves  <palves@redhat.com>
7745
7746         (struct vCont_action_support): Use bool and initialize all fields.
7747         (struct readahead_cache): Initialize all fields.
7748         (remote_state): Use bool and initialize all fields.
7749         (remote_state::remote_state, remote_state::~remote_state): New.
7750         (new_remote_state): Delete.
7751         (_initialize_remote): Use new to allocate remote_state.
7752
7753 2018-05-22  Pedro Alves  <palves@redhat.com>
7754             張俊芝  <zjz@zjz.name>
7755
7756         PR gdb/22973
7757         * c-exp.y: Include "c-support.h".
7758         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
7759         of tolower.  Use c_ident_is_alpha to scan names.
7760         * c-lang.c: Include "c-support.h".
7761         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
7762         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
7763         * c-support.h: New file, with bits factored out from ...
7764         * cp-name-parser.y: ... this file.
7765         Include "c-support.h".
7766         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
7767         c-support.h and renamed.
7768         (symbol_end, yylex): Adjust.
7769
7770 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7771
7772         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
7773         parameter type to CORE_ADDR.
7774         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
7775         parameter type in declaration to CORE_ADDR.
7776         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
7777         target_auxv_search to get AT_HWCAP and use the result to get the
7778         target description.
7779         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
7780         to CORE_ADDR. Remove the cast of the return value to unsigned
7781         long. Fix error predicate of target_auxv_search.
7782         (ppc_linux_nat_target::read_description): Change the type of the
7783         hwcap variable to CORE_ADDR.
7784
7785 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7786
7787         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
7788         if the size of fpscr is larger than 32 bits.
7789
7790 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7791
7792         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
7793         (ppc32_linux_vsxregmap): New global.
7794         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
7795         regcache_supply_regset, and regcache_collect_regset.
7796         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
7797         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
7798         (fetch_vsx_register, store_vsx_register): Remove.
7799         (fetch_vsx_registers): Add regno parameter. Get regset using
7800         ppc_linux_vsxregset. Use regset to supply registers.
7801         (store_vsx_registers): Add regno parameter. Get regset using
7802         ppc_linux_vsxregset. Use regset to collect registers.
7803         (fetch_register): Call fetch_vsx_registers instead of
7804         fetch_vsx_register.
7805         (store_register): Call store_vsx_registers instead of
7806         store_vsx_register.
7807         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
7808         new regno parameter.
7809         (store_ppc_registers): Call store_vsx_registers with -1 for the
7810         new regno parameter.
7811         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
7812         (ppc_collect_vsxregset): Remove.
7813
7814 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7815
7816         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
7817         offset fields.
7818         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
7819         for vector register offset fields.
7820         (ppc64_fbsd_reg_offsets): Likewise.
7821         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7822         to vector register offset fields.
7823         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7824         to vector register offset fields.
7825         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
7826         vector register offset fields.
7827         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
7828         initializers for vector register offset fields.
7829         (rs6000_aix64_reg_offsets): Likewise.
7830         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
7831         (ppc_supply_vrregset): Remove.
7832         (ppc_collect_vrregset): Remove.
7833         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
7834         (ppc_linux_vrregset) : New function.
7835         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
7836         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
7837         (ppc32_linux_vrregset): Remove.
7838         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
7839         and use result instead of ppc32_linux_vrregset.
7840         (ppc32_linux_reg_offsets): Remove initializers for vector register
7841         offset fields.
7842         (ppc64_linux_reg_offsets): Likewise.
7843         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
7844         * ppc-linux-nat.c: Include regset.h.
7845         (gdb_vrregset_t): Adjust comment to account for little-endian
7846         mode.
7847         (supply_vrregset, fill_vrregset): Remove.
7848         (fetch_altivec_register, store_altivec_register): Remove.
7849         (fetch_altivec_registers): Add regno parameter. Get regset using
7850         ppc_linux_vrregset. Use regset to supply registers.
7851         (store_altivec_registers): Add regno parameter. Get regset using
7852         ppc_linux_vrregset. Use regset to collect registers.
7853         (fetch_register): Call fetch_altivec_registers instead of
7854         fetch_altivec_register.
7855         (store_register): Call store_altivec_registers instead of
7856         store_altivec_register.
7857         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
7858         the new regno parameter.
7859         (store_ppc_registers): Call store_altivec_registers with -1 for
7860         the new regno parameter.
7861
7862 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7863
7864         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
7865         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
7866         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
7867         (gdb_vrregset_t): Change array type size to
7868         PPC_LINUX_SIZEOF_VRREGSET.
7869         (gdb_vsxregset_t): Change array type size to
7870         PPC_LINUX_SIZEOF_VSXREGSET.
7871         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
7872         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
7873         PPC_LINUX_SIZEOF_VSXREGSET.
7874
7875 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7876
7877         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
7878         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
7879         nat/ppc-linux.c.
7880         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
7881         ppc_linux_target_wordsize with tid.
7882         (ppc_linux_nat_target::read_description): Call ppc_linux_target
7883         wordsize with tid.
7884         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
7885         (ppc64_64bit_inferior_p): Add static and inline specifiers.
7886         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
7887         tid parameter. Remove static specifier.
7888         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
7889         (ppc_linux_target_wordsize): New declaration.
7890
7891 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7892
7893         * arch/ppc-linux-common.c: New file.
7894         * arch/ppc-linux-common.h: New file.
7895         * arch/ppc-linux-tdesc.h: New file.
7896         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
7897         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
7898         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
7899         arch/ppc-linux-tdesc.h.
7900         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
7901         arch/ppc-linux-tdesc.h.
7902         (ppc_linux_nat_target::read_description): Remove target
7903         description matching code. Fill a ppc_linux_features struct and
7904         call ppc_linux_match_description with it. Move comment about ISA
7905         2.05 to ppc-linux-common.c.
7906         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
7907         arch/ppc-linux-tdesc.h.
7908         (ppc_linux_core_read_description): Remove target description
7909         matching code. Fill a ppc_linux_features struct and call
7910         ppc_linux_match_description with it.
7911         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
7912         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
7913         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
7914         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
7915         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
7916         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
7917         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
7918         (tdesc_powerpc_e500l): Remove.
7919
7920 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
7921
7922         * ada-lang.c (catch_assert_command): Pass empty string instead
7923         of NULL for excep_string argument.
7924
7925 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7926
7927         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
7928         the width of the requested register exceeds the width of the
7929         `ptrace' data type.
7930
7931 2018-05-21  Tom Tromey  <tom@tromey.com>
7932
7933         * printcmd.c (output_command): Remove.
7934         (output_command_const): Rename to output_command.
7935         * valprint.h (output_command): Rename from output_command_const.
7936         * tracepoint.c (trace_dump_actions): Call output_command.
7937
7938 2018-05-21  Tom Tromey  <tom@tromey.com>
7939
7940         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
7941         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
7942         * ada-lang.h (create_ada_exception_catchpoint): Update.
7943         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
7944         std::string.
7945         (create_excep_cond_exprs, ~ada_catchpoint)
7946         (should_stop_exception, print_one_exception)
7947         (print_mention_exception, print_recreate_exception): Update.
7948         (ada_get_next_arg): Remove.
7949         (catch_ada_exception_command_split): Use std::string.  Change type
7950         of "excep_string", "cond_string".
7951         (catch_ada_exception_command): Update.
7952         (create_ada_exception_catchpoint): Change type of excep_string.
7953         (ada_exception_sal): Remove excep_string parameter.
7954         (~ada_catchpoint): Remove.
7955
7956 2018-05-21  Tom Tromey  <tom@tromey.com>
7957
7958         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
7959         cleanup.
7960
7961 2018-05-21  Tom Tromey  <tom@tromey.com>
7962
7963         * ada-lang.c (ada_exception_message_1, ada_exception_message):
7964         Return unique_xmalloc_ptr.
7965         (print_it_exception): Update.
7966
7967 2018-05-21  Tom Tromey  <tom@tromey.com>
7968
7969         * tracepoint.c (trace_dump_actions): Use std::string.
7970
7971 2018-05-21  Tom Tromey  <tom@tromey.com>
7972
7973         * symfile.c (reread_symbols): Use std::string for original_name.
7974
7975 2018-05-21  Tom Tromey  <tom@tromey.com>
7976
7977         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
7978         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
7979         constructor.
7980
7981 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
7982
7983         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
7984         instance to...
7985         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
7986         * objfiles.c (get_objfile_bfd_data): Allocate
7987         objfile_per_bfd_storage with obstack_new when allocating on
7988         obstack.
7989
7990 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7991
7992         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
7993         OBSTACK_ZALLOC.
7994         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
7995         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
7996         * mdebugread.c (mdebug_build_psymtabs): Likewise.
7997         (add_pending): Likewise.
7998         (parse_symbol): Likewise.
7999         (parse_partial_symbols): Likewise.
8000         (psymtab_to_symtab_1): Likewise.
8001         (new_psymtab): Likewise.
8002         (elfmdebug_build_psymtabs): Likewise.
8003         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8004         * objfiles.c (get_objfile_bfd_data): Likewise.
8005         (objfile_register_static_link): Likewise.
8006         * psymtab.c (allocate_psymtab): Likewise.
8007         * stabsread.c (read_member_functions): Likewise.
8008         * xcoffread.c (xcoff_end_psymtab): Likewise.
8009
8010 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8011
8012         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8013         compiler supports std::is_trivially_constructible.
8014         * common/poison.h: Include obstack.h.
8015         (IsMallocable): Define to is_trivially_constructible if the
8016         compiler supports it, define to true_type otherwise.
8017         (xobnew): New.
8018         (XOBNEW): Redefine.
8019         (xobnewvec): New.
8020         (XOBNEWVEC): Redefine.
8021         * gdb_obstack.h (obstack_zalloc): New.
8022         (OBSTACK_ZALLOC): Redefine.
8023         (obstack_calloc): New.
8024         (OBSTACK_CALLOC): Redefine.
8025         (obstack_new): New.
8026         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8027         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8028         gdbarch.c.
8029         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8030         obstack_calloc/obstack_zalloc.
8031         (gdbarch_obstack_zalloc): Remove.
8032         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8033
8034 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8035
8036         * stack.c (backtrace_command_1): Remove useless variable int i.
8037
8038 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8039
8040         * stack.c (print_frame_info): Fix comment.
8041
8042 2018-05-18  Tom Tromey  <tom@tromey.com>
8043
8044         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8045         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8046         (~dwarf2_per_objfile): Update
8047         (dwarf2_get_dwz_file): Use new.
8048         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8049         unique_ptr.
8050
8051 2018-05-18  Tom Tromey  <tom@tromey.com>
8052
8053         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8054         unique_ptr.
8055         * dwarf2read.c (struct dwp_file): Add constructor and
8056         initializers.
8057         (open_and_init_dwp_file): Return a unique_ptr.
8058         (dwarf2_per_objfile, create_dwp_hash_table)
8059         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8060         (lookup_dwo_unit_in_dwp): Update.
8061         (open_and_init_dwp_file, get_dwp_file): Update.
8062
8063 2018-05-18  Tom Tromey  <tom@tromey.com>
8064
8065         * dwarf2read.c (dwarf2_per_objfile): Update.
8066         (struct mapped_index): Add initializers.
8067         (dwarf2_read_index): Use new.
8068         (dw2_symtab_iter_init): Update.
8069         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8070         unique_ptr.
8071
8072 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8073
8074         * dwarf2read.c (mapped_index) <total_size>: Remove.
8075
8076 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8077
8078         * unittests/format_pieces-selftests.c (test_format_specifier):
8079         Add ARI comments.
8080
8081 2018-05-18  Tom Tromey  <tom@tromey.com>
8082
8083         * c-typeprint.c (maybe_print_hole): New function.
8084         (c_print_type_struct_field_offset): Update.
8085         (c_type_print_base_struct_union): Call maybe_print_hole.
8086
8087 2018-05-17  Keith Seitz  <keiths@redhat.com>
8088
8089         * breakpoint.c (build_bpstat_chain): New function, moved from
8090         bpstat_stop_status.
8091         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8092         If no stop chain is passed, call build_bpstat_chain to build it.
8093         * breakpoint.h (build_bpstat_chain): Declare.
8094         (bpstat_stop_status): Move documentation here from breakpoint.c.
8095         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8096         build the stop chain and pass it to skip_inline_frames.
8097         Pass this stop chain to bpstat_stop_status.
8098         * inline-frame.c: Include breakpoint.h.
8099         (stopped_by_user_bp_inline_frame): New function.
8100         (skip_inline_frames): Add parameter `stop_chain'.
8101         Move documention to inline-frame.h.
8102         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8103         whether the frame should be elided.
8104         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8105         Add moved documentation and update for new parameter.
8106
8107 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8108
8109         PR cli/14975
8110         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8111         unittests/format_pieces-selftests.c.
8112         * common/format.h (format_piece) <operator==>: New.
8113         (format_pieces) <operator[]>: Remove.
8114         * common/format.c (format_pieces::format_pieces): Handle \e.
8115         * unittests/format_pieces-selftests.c: New.
8116
8117 2018-05-17  Tom Tromey  <tom@tromey.com>
8118
8119         PR symtab/23010:
8120         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8121         (dw2_instantiate_symtab): Add skip_partial parameter.
8122         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8123         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8124         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8125         (dw2_expand_symtabs_matching_one)
8126         (dw2_find_pc_sect_compunit_symtab)
8127         (dw2_debug_names_lookup_symbol)
8128         (dw2_debug_names_expand_symtabs_for_function): Update.
8129         (init_cutu_and_read_dies): Add skip_partial parameter.
8130         (process_psymtab_comp_unit, build_type_psymtabs_1)
8131         (process_skeletonless_type_unit, load_partial_comp_unit)
8132         (psymtab_to_symtab_1): Update.
8133         (load_full_comp_unit): Add skip_partial parameter.
8134         (process_imported_unit_die, dwarf2_read_addr_index)
8135         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8136         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8137         (read_signatured_type): Update.
8138
8139 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8140
8141         * value.c (release_value): Remove unused variable.
8142         (record_latest_value): Likewise.
8143         (access_value_history): Likewise.
8144         (preserve_values): Likewise.
8145
8146 2018-05-17  Tom Tromey  <tom@tromey.com>
8147
8148         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8149         Initialize.
8150
8151 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8152
8153         PR gdb/22286
8154         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8155         Also handle registers whose width is not a multiple of
8156         PTRACE_TYPE_RET.
8157         (linux_nat_trad_target::store_register): Likewise.
8158
8159 2018-05-16  Tom Tromey  <tom@tromey.com>
8160
8161         * gdbcore.h (core_bfd): Redefine.
8162         * corelow.c (core_target::close): Update.
8163         (core_target_open): Update.
8164         * progspace.h (struct program_space) <cbfd>: Now a
8165         gdb_bfd_ref_ptr.
8166
8167 2018-05-16  Tom Tromey  <tom@tromey.com>
8168
8169         PR cli/19551:
8170         * symfile-add-flags.h (enum symfile_add_flags)
8171         <SYMFILE_NOT_FILENAME>: New constant.
8172         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8173         objfile name from BFD.
8174         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8175         * minidebug.c (find_separate_debug_file_in_section): Put
8176         ".gnu_debugdata" into BFD's file name.
8177
8178 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8179
8180         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8181         Remove.
8182
8183 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8184
8185         PR binutils/21446
8186         * aarch64-tdep.c (aarch64_analyze_prologue,
8187         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8188         Indicate not interested in errors.
8189
8190 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8191
8192         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8193         Supply the MIPS_ZERO_REGNUM register.
8194
8195 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8196
8197         * mips-tdep.c (mask_address_var): Make variable static.
8198
8199 2018-05-14  Tom Tromey  <tom@tromey.com>
8200
8201         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8202
8203 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8204
8205         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8206         FXSAVE_ADDR for the mxcsr register.
8207
8208 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8209
8210         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8211
8212 2018-05-11  Pedro Alves  <palves@redhat.com>
8213
8214         * corelow.c (core_target) <core_target>: No longer inline.
8215         Initialize m_core_gdbarch, m_core_vec and build the section table
8216         here.
8217         <~core_target>: New.
8218         <core_gdbarch, get_core_register_section>: New methods.
8219         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8220         factored out from ...
8221         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8222         (core_ops): Delete.
8223         (sniff_core_bfd): Add gdbarch parameter.
8224         (core_close): Delete, merged into ...
8225         (core_target::close): ... here.  Delete self.
8226         (core_close_cleanup): Delete.
8227         (core_target_open): Allocate a core_target on the heap.  Use a
8228         unique_ptr instead of a cleanup.  Bits moved into the core_target
8229         ctor.  Adjust to use core_target methods instead of globals.
8230         (get_core_register_section): Rename to ...
8231         (core_target::get_core_register_section): ... this and adjust.
8232         (struct get_core_registers_cb_data): New.
8233         (get_core_registers_cb): Use it.  Use bool.
8234         (core_target::fetch_registers, core_target::files_info)
8235         (core_target::xfer_partial, core_target::read_description)
8236         (core_target::pid_to, core_target::thread_name): Adjust to
8237         reference class fields instead of globals.
8238         * target.h (struct target_ops_deleter, target_ops_up): New.
8239
8240 2018-05-11  Pedro Alves  <palves@redhat.com>
8241
8242         * corefile.c (core_file_command): Move to corelow.c.
8243         * corelow.c (the_core_target): Delete.
8244         (core_file_command): Moved from corefile.c.  Check exec_bfd
8245         instead of the_core_target.  Use target_detach instead of calling
8246         into the_core_target directly.
8247         (maybe_say_no_core_file_now): New.
8248         (core_target::detach): Use it.
8249         (_initialize_corelow): Remove references to the_core_target.
8250         * gdbcore.h (the_core_target): Delete.
8251
8252 2018-05-11  Tom Tromey  <tromey@redhat.com>
8253             Pedro Alves  <palves@redhat.com>
8254
8255         * corefile.c (core_bfd): Remove.
8256         * gdbcore.h (core_bfd): Now a macro.
8257         * progspace.h (struct program_space) <cbfd>: New field.
8258
8259 2018-05-11  Tom Tromey  <tom@tromey.com>
8260
8261         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8262         gdb::def_vector.
8263
8264 2018-05-10  Tom Tromey  <tom@tromey.com>
8265
8266         * configure: Rebuild.
8267         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8268
8269 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8270
8271         PR server/23158:
8272         * regformats/regdat.sh: Adjust script, following the addition
8273         of the new expedite_regs parameter to init_target_desc.
8274
8275 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8276     
8277         PR gdb/23127
8278         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8279         set_gdbarch_significant_addr_bit.
8280         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8281         set_gdbarch_significant_addr_bit.
8282         * utils.c (address_significant): Update to sign extend addr.
8283
8284 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8285
8286         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8287         (xtensa_linux_init_abi): Limit tdep->num_regs by
8288         tdep->num_nopriv_regs.
8289         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8290         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8291         not initialized.
8292
8293 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8294
8295         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8296
8297 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8298
8299         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8300         (I387_MXCSR_INIT_VAL): New constant.
8301         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8302         buffer if it was supplied by the inferior.
8303         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8304         (i387_xsave_get_clear_bv): New function.
8305         (i387_supply_xsave): Only read x87 control registers from the
8306         xsave buffer if the feature is enabled, and the state will have
8307         been written, otherwise, provide a suitable default.
8308         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8309         including x87 control registers.  Update control registers if they
8310         have changed from the default value, and mark features as enabled
8311         as required.
8312         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8313
8314 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8315
8316         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8317
8318 2018-05-07  Tom Tromey  <tom@tromey.com>
8319
8320         * configure: Rebuild.
8321         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8322
8323 2018-05-07  Tom Tromey  <tom@tromey.com>
8324
8325         PR tdep/20362:
8326         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8327         bit.  Use correct value for VDIV.
8328
8329 2018-05-04  Tom Tromey  <tom@tromey.com>
8330
8331         * configure: Rebuild.
8332         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8333
8334 2018-05-04  Tom Tromey  <tom@tromey.com>
8335
8336         * linux-record.c (record_linux_system_call) <case
8337         RECORD_SYS_RECVFROM>: Add "break".
8338
8339 2018-05-04  Tom Tromey  <tom@tromey.com>
8340
8341         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8342         Add missing "break".
8343         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8344         Add missing "break".
8345
8346 2018-05-04  Tom Tromey  <tom@tromey.com>
8347
8348         * rs6000-tdep.c (ppc_process_record_op4)
8349         (ppc_process_record_op63): Add fall-through comment.
8350
8351 2018-05-04  Tom Tromey  <tom@tromey.com>
8352
8353         * i386-tdep.c (i386_process_record): Add fall-through comment.
8354
8355 2018-05-04  Tom Tromey  <tom@tromey.com>
8356
8357         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8358         comment.
8359
8360 2018-05-04  Tom Tromey  <tom@tromey.com>
8361
8362         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8363         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8364         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8365         comment.
8366         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8367         comment.
8368         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8369         comment.
8370
8371 2018-05-04  Tom Tromey  <tom@tromey.com>
8372
8373         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8374
8375 2018-05-04  Tom Tromey  <tom@tromey.com>
8376
8377         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8378         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8379         * symfile.c (section_is_mapped): Fix fall-through comment.
8380         * stabsread.c (define_symbol, read_member_functions): Fix
8381         fall-through comment.
8382         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8383         comment.
8384         * remote.c (remote_wait_as): Fix fall-through comment.
8385         * p-exp.y (yylex): Fix fall-through comment.
8386         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8387         comment.
8388         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8389         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8390         * jv-exp.y (yylex): Fix fall-through comment.
8391         * go-exp.y (lex_one_token): Fix fall-through comment.
8392         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8393         fall-through comment.
8394         * f-exp.y (yylex): Fix fall-through comment.
8395         * dwarf2read.c (process_die): Fix fall-through comments.
8396         * dbxread.c (process_one_symbol): Fix fall-through comment.
8397         * d-exp.y (lex_one_token): Fix fall-through comment.
8398         * cp-name-parser.y (yylex): Fix fall-through comment.
8399         * coffread.c (coff_symtab_read): Fix fall-through comment.
8400         * c-exp.y (lex_one_token): Fix fall-through comment.
8401         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8402         comment.
8403         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8404         comment.
8405
8406 2018-05-04  Tom Tromey  <tom@tromey.com>
8407
8408         PR python/22730:
8409         * NEWS: Mention gdb.execute change.
8410         * gdbcmd.h (execute_control_command): Don't declare.
8411         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8412         execute_control_commands, execute_control_commands_to_string.
8413         * cli/cli-script.h (execute_control_commands)
8414         (execute_control_commands_to_string): Declare.
8415         (execute_control_command): Add from_tty parameter.
8416         * cli/cli-script.c (execute_control_commands)
8417         (execute_control_commands_to_string): New functions.
8418         (execute_user_command): Use execute_control_commands.
8419         (execute_control_command_1): Add "from_tty" parameter.  Update.
8420         (execute_control_command): Likewise.
8421
8422 2018-05-04  Tom Tromey  <tom@tromey.com>
8423
8424         PR python/22731:
8425         * NEWS: Mention that breakpoint commands are writable.
8426         * python/py-breakpoint.c (bppy_set_commands): New function.
8427         (breakpoint_object_getset) <"commands">: Use it.
8428
8429 2018-05-04  Tom Tromey  <tom@tromey.com>
8430
8431         * tracepoint.c (actions_command): Update.
8432         * mi/mi-cmd-break.c (mi_command_line_array)
8433         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8434         (mi_read_next_line): Remove.
8435         (mi_cmd_break_commands): Update.
8436         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8437         function_view.
8438         * cli/cli-script.c (get_command_line): Update.
8439         (process_next_line): Use function_view.  Constify.
8440         (recurse_read_control_structure, read_command_lines)
8441         (read_command_lines_1): Change argument types to function_view.
8442         (do_define_command, document_command): Update.
8443         * breakpoint.h (check_tracepoint_command): Don't declare.
8444         * breakpoint.c (check_tracepoint_command): Remove.
8445         (commands_command_1, create_tracepoint_from_upload): Update.
8446
8447 2018-05-04  Tom Tromey  <tom@tromey.com>
8448
8449         PR gdb/11750:
8450         * cli/cli-script.h (enum command_control_type) <define_control>:
8451         New constant.
8452         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8453         (build_command_line, execute_control_command_1)
8454         (process_next_line): Likewise.
8455         (do_define_command): New function, extracted from define_command.
8456         (define_command): Use it.
8457
8458 2018-05-04  Tom Tromey  <tom@tromey.com>
8459
8460         * tracepoint.c (actions_command): Update.
8461         * cli/cli-script.h (read_command_lines): Update.
8462         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8463         (MAX_TMPBUF): Remove define.
8464         (define_command): Use string_printf.
8465         (document_command): Likewise.
8466         * breakpoint.c (commands_command_1): Update.
8467
8468 2018-05-04  Tom Tromey  <tom@tromey.com>
8469
8470         * top.c (execute_command): Update.
8471         * cli/cli-script.h (print_command_lines): Now varargs.
8472         * cli/cli-script.c (print_command_lines): Now varargs.
8473         (execute_control_command_1) <case while_control, case if_control>:
8474         Update.
8475
8476 2018-05-04  Tom Tromey  <tom@tromey.com>
8477
8478         * tracepoint.c (all_tracepoint_actions): Rename from
8479         all_tracepoint_actions_and_cleanup.  Change return type.
8480         (actions_command, encode_actions_1, encode_actions)
8481         (trace_dump_actions, tdump_command): Update.
8482         * remote.c (remote_download_command_source): Update.
8483         * python/python.c (gdbpy_eval_from_control_command)
8484         (python_command, python_interactive_command): Update.
8485         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8486         * guile/guile.c (guile_command)
8487         (gdbscm_eval_from_control_command, guile_command): Update.
8488         * compile/compile.c (compile_code_command)
8489         (compile_print_command, compile_to_object): Update.
8490         * cli/cli-script.h (struct command_lines_deleter): New.
8491         (counted_command_line): New typedef.
8492         (struct command_line): Add constructor, destructor.
8493         <body_list>: Remove.
8494         <body_list_0, body_list_1>: New members.
8495         (command_line_up): Remove typedef.
8496         (read_command_lines, read_command_lines_1, get_command_line):
8497         Update.
8498         (copy_command_lines): Don't declare.
8499         * cli/cli-script.c (build_command_line): Use "new".
8500         (get_command_line): Return counted_command_line.
8501         (print_command_lines, execute_user_command)
8502         (execute_control_command_1, while_command, if_command): Update.
8503         (realloc_body_list): Remove.
8504         (process_next_line, recurse_read_control_structure): Update.
8505         (read_command_lines, read_command_lines_1): Return counted_command_line.
8506         (free_command_lines): Use "delete".
8507         (copy_command_lines): Remove.
8508         (define_command, document_command, show_user_1): Update.
8509         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8510         a counted_command_line.
8511         * breakpoint.h (counted_command_line): Remove typedef.
8512         (breakpoint_set_commands): Update.
8513         * breakpoint.c (check_no_tracepoint_commands)
8514         (validate_commands_for_breakpoint): Update.
8515         (breakpoint_set_commands): Change commands to be a
8516         counted_command_line.
8517         (commands_command_1, update_dprintf_command_list)
8518         (create_tracepoint_from_upload): Update.
8519
8520 2018-05-04  Tom Tromey  <tom@tromey.com>
8521
8522         * cli/cli-decode.h (cmd_list_element): New constructor.
8523         (~cmd_list_element): New destructor.
8524         (struct cmd_list_element): Add initializers.
8525         * cli/cli-decode.c (do_add_cmd): Use "new".
8526         (delete_cmd): Use "delete".
8527
8528 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8529             Pedro Alves <palves@redhat.com>
8530
8531         PR breakpoints/19806 and support for PR external/20207.
8532         * NEWS: Mention Aarch64 watchpoint improvements.
8533         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8534         watchpoints and PR external/20207 watchpoints.
8535         * nat/aarch64-linux-hw-point.c
8536         (kernel_supports_any_contiguous_range): New.
8537         (aarch64_watchpoint_offset): New.
8538         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8539         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8540         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8541         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8542         next_addr_orig_p.  Support PR external/20207 watchpoints.
8543         (aarch64_downgrade_regs): New.
8544         (aarch64_dr_state_insert_one_point): New parameters offset and
8545         addr_orig.
8546         (aarch64_dr_state_remove_one_point): Likewise.
8547         (aarch64_handle_breakpoint): Update caller.
8548         (aarch64_handle_aligned_watchpoint): Likewise.
8549         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
8550         aligned_offset.
8551         (aarch64_linux_set_debug_regs): Remove const from state.  Call
8552         aarch64_downgrade_regs.
8553         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
8554         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
8555         (DR_CONTROL_MASK): ... this.
8556         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
8557         (unsigned int aarch64_watchpoint_offset): New prototype.
8558         (aarch64_linux_set_debug_regs): Remove const from state.
8559         * utils.c (align_up, align_down): Move to ...
8560         * common/common-utils.c (align_up, align_down): ... here.
8561         * utils.h (align_up, align_down): Move to ...
8562         * common/common-utils.h (align_up, align_down): ... here.
8563
8564 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
8565
8566         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
8567         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
8568         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
8569         Re-implement to match the ABI as summarized in GCC's
8570         gcc/config/sparc/sparc.c.  All callers updated.
8571         (sparc32_store_arguments): Remove assertion.
8572
8573 2018-05-04  Tom Tromey  <tom@tromey.com>
8574
8575         * printcmd.c: Don't include tui.h.
8576         (decode_format): Use skip_spaces.
8577
8578 2018-05-04  Tom Tromey  <tom@tromey.com>
8579
8580         PR gdb/22619:
8581         * printcmd.c (last_count): New global.
8582         (x_command): Use saved count when repeating.
8583
8584 2018-05-04  Tom Tromey  <tom@tromey.com>
8585
8586         * nto-procfs.c (do_closedir_cleanup): Remove.
8587         (procfs_pidlist): Use gdb_dir_up.
8588         * procfs.c (do_closedir_cleanup): Remove.
8589         (proc_update_threads): Use gdb_dir_up.
8590         * common/filestuff.h (struct gdb_dir_deleter): New.
8591         (gdb_dir_up): New typedef.
8592
8593 2018-05-04  Tom Tromey  <tom@tromey.com>
8594
8595         * ada-lang.c (print_mention_exception): Use std::string.
8596
8597 2018-05-04  Tom Tromey  <tom@tromey.com>
8598
8599         * ada-lang.c (create_excep_cond_exprs): Update.
8600         (ada_exception_catchpoint_cond_string): Use std::string.
8601
8602 2018-05-04  Tom Tromey  <tom@tromey.com>
8603
8604         * ada-lang.c (xget_renaming_scope): Return std::string.
8605         (old_renaming_is_invisible): Update.
8606
8607 2018-05-04  Tom Tromey  <tom@tromey.com>
8608
8609         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
8610         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
8611
8612 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
8613
8614         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
8615
8616 2018-05-04  Tom Tromey  <tom@tromey.com>
8617
8618         * remote.c (remote_query_supported_append): Change type.
8619         (remote_check_symbols): Update.
8620
8621 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
8622
8623         PR gdb/11420
8624         * configure.ac: Prepend libpython.
8625         * python/python-config.py: Likewise.
8626         * configure: Regenerate.
8627
8628 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
8629
8630         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
8631
8632 2018-05-03  Pedro Alves  <palves@redhat.com>
8633
8634         * s390-linux-nat.c
8635         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
8636         override.  Write 'true' instead of '1'.
8637         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
8638         declaration.
8639
8640 2018-05-02  Pedro Alves  <palves@redhat.com>
8641
8642         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
8643         add_inf_child_target.
8644         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
8645         add_inf_child_target.
8646         * aix-thread.c (aix_thread_target_info): New.
8647         (aix_thread_target) <shortname, longname, doc>: Delete.
8648         <info>: New.
8649         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
8650         add_inf_child_target.
8651         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
8652         add_inf_child_target.
8653         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
8654         add_inf_child_target.
8655         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
8656         add_inf_child_target.
8657         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
8658         add_inf_child_target.
8659         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
8660         add_inf_child_target.
8661         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
8662         add_inf_child_target.
8663         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
8664         add_inf_child_target.
8665         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
8666         add_inf_child_target.
8667         * bfd-target.c (target_bfd_target_info): New.
8668         (target_bfd) <shortname, longname, doc>: Delete.
8669         <info>: New.
8670         * bsd-kvm.c (bsd_kvm_target_info): New.
8671         (bsd_kvm_target) <shortname, longname, doc>: Delete.
8672         <info>: New.
8673         (bsd_kvm_target::open): Rename to ...
8674         (bsd_kvm_target_open): ... this.  Adjust.
8675         * bsd-uthread.c (bsd_uthread_target_info): New.
8676         (bsd_uthread_target) <shortname, longname, doc>: Delete.
8677         <info>: New.
8678         * corefile.c (core_file_command): Adjust.
8679         * corelow.c (core_target_info): New.
8680         (core_target) <shortname, longname, doc>: Delete.
8681         <info>: New.
8682         (core_target::open): Rename to ...
8683         (core_target_open): ... this.  Adjust.
8684         * ctf.c (ctf_target_info): New.
8685         (ctf_target) <shortname, longname, doc>: Delete.
8686         <info>: New.
8687         (ctf_target::open): Rename to ...
8688         (ctf_target_open): ... this.
8689         (_initialize_ctf): Adjust.
8690         * exec.c (exec_target_info): New.
8691         (exec_target) <shortname, longname, doc>: Delete.
8692         <info>: New.
8693         (exec_target::open): Rename to ...
8694         (exec_target_open): ... this.
8695         * gdbcore.h (core_target_open): Declare.
8696         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
8697         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
8698         add_inf_child_target.
8699         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
8700         add_inf_child_target.
8701         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
8702         add_inf_child_target.
8703         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
8704         add_inf_child_target.
8705         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
8706         add_inf_child_target.
8707         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
8708         add_inf_child_target.
8709         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
8710         add_inf_child_target.
8711         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
8712         add_inf_child_target.
8713         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
8714         add_inf_child_target.
8715         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
8716         add_inf_child_target.
8717         * inf-child.c (inf_child_target_info): New.
8718         (inf_child_target::info): New.
8719         (inf_child_open_target): Remove 'target' parameter.  Use
8720         get_native_target instead.
8721         (inf_child_target::open): Delete.
8722         (add_inf_child_target): New.
8723         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
8724         Delete.
8725         <info>: New.
8726         (add_inf_child_target): Declare.
8727         (inf_child_open_target): Declare.
8728         * linux-thread-db.c (thread_db_target_info): New.
8729         (thread_db_target) <shortname, longname, doc>: Delete.
8730         <info>: New.
8731         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
8732         add_inf_child_target.
8733         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
8734         add_inf_child_target.
8735         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
8736         add_inf_child_target.
8737         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
8738         add_inf_child_target.
8739         * make-target-delegates (print_class): Adjust.
8740         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
8741         add_inf_child_target.
8742         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
8743         add_inf_child_target.
8744         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
8745         add_inf_child_target.
8746         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
8747         add_inf_child_target.
8748         * nto-procfs.c (nto_native_target_info): New.
8749         (nto_procfs_target_native) <shortname, longname, doc>:
8750         Delete.
8751         <info>: New.
8752         (nto_procfs_target_info): New.
8753         (nto_procfs_target_procfs) <shortname, longname, doc>:
8754         Delete.
8755         <info>: New.
8756         (init_procfs_targets): Adjust.
8757         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
8758         add_inf_child_target.
8759         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
8760         add_inf_child_target.
8761         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
8762         add_inf_child_target.
8763         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
8764         add_inf_child_target.
8765         * ravenscar-thread.c (ravenscar_target_info): New.
8766         (ravenscar_thread_target) <shortname, longname, doc>:
8767         Delete.
8768         <info>: New.
8769         * record-btrace.c (record_btrace_target_info):
8770         (record_btrace_target) <shortname, longname, doc>: Delete.
8771         <info>: New.
8772         (record_btrace_target::open): Rename to ...
8773         (record_btrace_target_open): ... this.  Adjust.
8774         * record-full.c (record_longname, record_doc): New.
8775         (record_full_base_target) <shortname, longname, doc>: Delete.
8776         <info>: New.
8777         (record_full_target_info): New.
8778         (record_full_target): <shortname>: Delete.
8779         <info>: New.
8780         (record_full_core_open_1, record_full_open_1): Update comments.
8781         (record_full_base_target::open): Rename to ...
8782         (record_full_open): ... this.
8783         (cmd_record_full_restore): Update.
8784         (_initialize_record_full): Update.
8785         * remote-sim.c (remote_sim_target_info): New.
8786         (gdbsim_target) <shortname, longname, doc>: Delete.
8787         <info>: New.
8788         (gdbsim_target::open): Rename to ...
8789         (gdbsim_target_open): ... this.
8790         (_initialize_remote_sim): Adjust.
8791         * remote.c (remote_doc): New.
8792         (remote_target_info): New.
8793         (remote_target) <shortname, longname, doc>: Delete.
8794         <info>: New.
8795         (extended_remote_target_info): New.
8796         (extended_remote_target) <shortname, longname, doc>: Delete.
8797         <info>: New.
8798         (remote_target::open_1): Make static.  Adjust.
8799         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
8800         * s390-linux-nat.c (_initialize_s390_nat): Use
8801         add_inf_child_target.
8802         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
8803         add_inf_child_target.
8804         * sol-thread.c (thread_db_target_info): New.
8805         (sol_thread_target) <shortname, longname, doc>: Delete.
8806         <info>: New.
8807         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
8808         add_inf_child_target.
8809         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
8810         add_inf_child_target.
8811         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
8812         add_inf_child_target.
8813         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
8814         add_inf_child_target.
8815         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
8816         add_inf_child_target.
8817         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
8818         add_inf_child_target.
8819         * spu-linux-nat.c (_initialize_spu_nat): Use
8820         add_inf_child_target.
8821         * spu-multiarch.c (spu_multiarch_target_info): New.
8822         (spu_multiarch_target) <shortname, longname, doc>: Delete.
8823         <info>: New.
8824         * target-delegates.c: Regenerate.
8825         * target.c: Include <unordered_map>.
8826         (target_ops_p): Delete.
8827         (DEF_VEC_P(target_ops_p)): Delete.
8828         (target_factories): New.
8829         (test_target_info): New.
8830         (test_target_ops::info): New.
8831         (open_target): Adjust to use target_factories.
8832         (add_target_with_completer): Rename to ...
8833         (add_target): ... this.  Change prototype.  Register target_info
8834         and open callback in target_factories.  Register target_info in
8835         command context instead of target_ops.
8836         (add_target): Delete old implementation.
8837         (add_deprecated_target_alias): Change prototype.  Adjust.
8838         (the_native_target): New.
8839         (set_native_target, get_native_target): New.
8840         (find_default_run_target): Use the_native_target.
8841         (find_attach_target, find_run_target): Simplify.
8842         (target_ops::open): Delete.
8843         (dummy_target_info): New.
8844         (dummy_target::shortname, dummy_target::longname)
8845         (dummy_target::doc): Delete.
8846         (dummy_target::info): New.
8847         (debug_target::shortname, debug_target::longname)
8848         (debug_target::doc): Delete.
8849         (debug_target::info): New.
8850         * target.h (struct target_info): New.
8851         (target_ops::~target_ops): Add comment.
8852         (target_ops::info): New.
8853         (target_ops::shortname, target_ops::longname, target_ops::doc): No
8854         longer virtual.  Implement in terms of target_info.
8855         (set_native_target, get_native_target): Declare.
8856         (target_open_ftype): New.
8857         (add_target, add_target_with_completer)
8858         (add_deprecated_target_alias): Change prototype.
8859         (test_target) <shortname, longname, doc>: Delete.
8860         <info>: New.
8861         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
8862         add_inf_child_target.
8863         * tracefile-tfile.c (tfile_target_info): New.
8864         (tfile_target) <shortname, longname, doc>: Delete.
8865         <info>: New.
8866         (tfile_target::open): Rename to ...
8867         (tfile_target_open): ... this.
8868         (_initialize_tracefile_tfile): Adjust.
8869         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
8870         add_inf_child_target.
8871         * windows-nat.c (_initialize_windows_nat): Use
8872         add_inf_child_target.
8873         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
8874         add_inf_child_target.
8875
8876 2018-05-02  Pedro Alves  <palves@redhat.com>
8877
8878         * linux-nat.h (linux_nat_target) <low_new_thread,
8879         low_delete_thread, low_new_fork, low_forget_process,
8880         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
8881         New virtual methods.
8882         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8883         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
8884         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
8885         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8886         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
8887         Delete.
8888         * linux-fork.c (delete_fork): Adjust to call low method.
8889         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
8890         (linux_nat_new_fork, linux_nat_forget_process_hook)
8891         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
8892         (linux_nat_status_is_event):
8893         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
8894         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
8895         to call low method.
8896         (sigtrap_is_event): Rename to ...
8897         (linux_nat_target::low_status_is_event): ... this.
8898         (linux_nat_set_status_is_event): Delete.
8899         (save_stop_reason, linux_nat_wait_1)
8900         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
8901         low methods.
8902         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8903         (linux_nat_set_new_fork, linux_nat_set_forget_process)
8904         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8905         (linux_nat_set_prepare_to_resume): Delete.
8906         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
8907         low virtual methods.
8908         * amd64-linux-nat.c: Likewise.
8909         * arm-linux-nat.c: Likewise.
8910         * i386-linux-nat.c: Likewise.
8911         * ia64-linux-nat.c: Likewise.
8912         * mips-linux-nat.c: Likewise.
8913         * ppc-linux-nat.c: Likewise.
8914         * s390-linux-nat.c: Likewise.
8915         * sparc64-linux-nat.c: Likewise.
8916         * x86-linux-nat.c: Likewise.
8917         * x86-linux-nat.h: Include "nat/x86-linux.h".
8918         (x86_linux_nat_target) <low_new_fork, low_forget_process,
8919         low_prepare_to_resume, low_new_thread, low_delete_thread>:
8920         Override methods.
8921
8922 2018-05-02  Pedro Alves  <palves@redhat.com>
8923
8924         * target.h (target_ops)
8925         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
8926         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
8927         stopped_by_watchpoint, have_continuable_watchpoint,
8928         stopped_data_address, watchpoint_addr_within_range,
8929         can_accel_watchpoint_condition, can_run, thread_alive,
8930         has_all_memory, has_memory, has_stack, has_registers,
8931         has_execution, can_async_p, is_async_p, supports_non_stop,
8932         always_non_stop_p, can_execute_reverse, supports_multi_process,
8933         supports_enable_disable_tracepoint,
8934         supports_disable_randomization, supports_string_tracing,
8935         supports_evaluation_of_breakpoint_conditions,
8936         can_run_breakpoint_commands, filesystem_is_local,
8937         can_download_tracepoint, get_trace_state_variable_value,
8938         set_trace_notes, get_tib_address, use_agent, can_use_agent,
8939         record_is_replaying, record_will_replay,
8940         augmented_libraries_svr4_read>: Adjust to return bool.
8941         * aarch64-linux-nat.c: All implementations adjusted.
8942         * aix-thread.c: All implementations adjusted.
8943         * arm-linux-nat.c: All implementations adjusted.
8944         * breakpoint.c: All implementations adjusted.
8945         * bsd-kvm.c: All implementations adjusted.
8946         * bsd-uthread.c: All implementations adjusted.
8947         * corelow.c: All implementations adjusted.
8948         * ctf.c: All implementations adjusted.
8949         * darwin-nat.c: All implementations adjusted.
8950         * darwin-nat.h: All implementations adjusted.
8951         * exec.c: All implementations adjusted.
8952         * fbsd-nat.c: All implementations adjusted.
8953         * fbsd-nat.h: All implementations adjusted.
8954         * gnu-nat.c: All implementations adjusted.
8955         * gnu-nat.h: All implementations adjusted.
8956         * go32-nat.c: All implementations adjusted.
8957         * ia64-linux-nat.c: All implementations adjusted.
8958         * inf-child.c: All implementations adjusted.
8959         * inf-child.h: All implementations adjusted.
8960         * inf-ptrace.c: All implementations adjusted.
8961         * inf-ptrace.h: All implementations adjusted.
8962         * linux-nat.c: All implementations adjusted.
8963         * linux-nat.h: All implementations adjusted.
8964         * mips-linux-nat.c: All implementations adjusted.
8965         * nto-procfs.c: All implementations adjusted.
8966         * ppc-linux-nat.c: All implementations adjusted.
8967         * procfs.c: All implementations adjusted.
8968         * ravenscar-thread.c: All implementations adjusted.
8969         * record-btrace.c: All implementations adjusted.
8970         * record-full.c: All implementations adjusted.
8971         * remote-sim.c: All implementations adjusted.
8972         * remote.c: All implementations adjusted.
8973         * s390-linux-nat.c: All implementations adjusted.
8974         * sol-thread.c: All implementations adjusted.
8975         * spu-multiarch.c: All implementations adjusted.
8976         * target-delegates.c: All implementations adjusted.
8977         * target.c: All implementations adjusted.
8978         * target.h: All implementations adjusted.
8979         * tracefile-tfile.c: All implementations adjusted.
8980         * tracefile.c: All implementations adjusted.
8981         * tracefile.h: All implementations adjusted.
8982         * windows-nat.c: All implementations adjusted.
8983         * x86-linux-nat.h: All implementations adjusted.
8984         * x86-nat.h: All implementations adjusted.
8985
8986 2018-05-02  Pedro Alves  <palves@redhat.com>
8987
8988         * make-target-delegates (scan_target_h): Don't trim lines here.
8989         Replace sequences of tabs and/or whitespace with a single
8990         whitespace.
8991         (top level, parsing methods): Trim each line before processing it
8992         here.
8993
8994 2018-05-02  Pedro Alves  <palves@redhat.com>
8995             John Baldwin  <jhb@freebsd.org>
8996
8997         * target.h (enum strata) <debug_stratum>: New.
8998         (struct target_ops) <all delegation methods>: Replace by C++
8999         virtual methods, and drop "to_" prefix.  All references updated
9000         throughout.
9001         <to_shortname, to_longname, to_doc, to_data,
9002         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9003         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9004         virtual methods.  All references updated throughout.
9005         <can_attach, supports_terminal_ours, can_create_inferior,
9006         get_thread_control_capabilities, attach_no_wait>: New
9007         virtual methods.
9008         <insert_breakpoint, remove_breakpoint>: Now
9009         TARGET_DEFAULT_NORETURN methods.
9010         <info_proc>: Now returns bool.
9011         <to_magic>: Delete.
9012         (OPS_MAGIC): Delete.
9013         (current_target): Delete.  All references replaced by references
9014         to ...
9015         (target_stack): ... this.  New.
9016         (target_shortname, target_longname): Adjust.
9017         (target_can_run): Now a function declaration.
9018         (default_child_has_all_memory, default_child_has_memory)
9019         (default_child_has_stack, default_child_has_registers)
9020         (default_child_has_execution): Remove target_ops parameter.
9021         (complete_target_initialization): Delete.
9022         (memory_breakpoint_target): New template class.
9023         (test_target_ops): Refactor as a C++ class with virtual methods.
9024         * make-target-delegates (NAME_PART): Tighten.
9025         (POINTER_PART, CP_SYMBOL): New.
9026         (SIMPLE_RETURN_PART): Reimplement.
9027         (VEC_RETURN_PART): Expect less.
9028         (RETURN_PART, VIRTUAL_PART): New.
9029         (METHOD): Adjust to C++ virtual methods.
9030         (scan_target_h): Remove reference to C99.
9031         (dname): Output "target_ops::" prefix.
9032         (write_function_header): Adjust to output a C++ class method.
9033         (write_declaration): New.
9034         (write_delegator): Adjust to output a C++ class method.
9035         (tdname): Output "dummy_target::" prefix.
9036         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9037         method.
9038         (tdefault_names, debug_names): Delete.
9039         (return_types, tdefaults, styles, argtypes_array): New.
9040         (top level): All methods are delegators.
9041         (print_class): New.
9042         (top level): Print dummy_target and debug_target classes.
9043         * target-delegates.c: Regenerate.
9044         * target-debug.h (target_debug_print_enum_info_proc_what)
9045         (target_debug_print_thread_control_capabilities)
9046         (target_debug_print_thread_info_p): New.
9047         * target.c (dummy_target): Delete.
9048         (the_dummy_target, the_debug_target): New.
9049         (target_stack): Now extern.
9050         (set_targetdebug): Push/unpush debug target.
9051         (default_child_has_all_memory, default_child_has_memory)
9052         (default_child_has_stack, default_child_has_registers)
9053         (default_child_has_execution): Remove target_ops parameter.
9054         (complete_target_initialization): Delete.
9055         (add_target_with_completer): No longer call
9056         complete_target_initialization.
9057         (target_supports_terminal_ours): Use regular delegation.
9058         (update_current_target): Delete.
9059         (push_target): No longer check magic number.  Don't call
9060         update_current_target.
9061         (unpush_target): Don't call update_current_target.
9062         (target_is_pushed): No longer check magic number.
9063         (target_require_runnable): Skip for all stratums over
9064         process_stratum.
9065         (target_ops::info_proc): New.
9066         (target_info_proc): Use find_target_at and
9067         find_default_run_target.
9068         (target_supports_disable_randomization): Use regular delegation.
9069         (target_get_osdata): Use find_target_at.
9070         (target_ops::open, target_ops::close, target_ops::can_attach)
9071         (target_ops::attach, target_ops::can_create_inferior)
9072         (target_ops::create_inferior, target_ops::can_run)
9073         (target_can_run): New.
9074         (default_fileio_target): Use regular delegation.
9075         (target_ops::fileio_open, target_ops::fileio_pwrite)
9076         (target_ops::fileio_pread, target_ops::fileio_fstat)
9077         (target_ops::fileio_close, target_ops::fileio_unlink)
9078         (target_ops::fileio_readlink): New.
9079         (target_fileio_open_1, target_fileio_unlink)
9080         (target_fileio_readlink): Always call the target method.  Handle
9081         FILEIO_ENOSYS.
9082         (return_zero, return_zero_has_execution): Delete.
9083         (init_dummy_target): Delete.
9084         (dummy_target::dummy_target, dummy_target::shortname)
9085         (dummy_target::longname, dummy_target::doc)
9086         (debug_target::debug_target, debug_target::shortname)
9087         (debug_target::longname, debug_target::doc): New.
9088         (target_supports_delete_record): Use regular delegation.
9089         (setup_target_debug): Delete.
9090         (maintenance_print_target_stack): Skip debug_stratum.
9091         (initialize_targets): Instantiate the_dummy_target and
9092         the_debug_target.
9093         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9094         use target_stack.
9095         (target_auxv_search, fprint_target_auxv): Adjust.
9096         (info_auxv_command): Adjust to use target_stack.
9097         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9098         * exceptions.c (print_flush): Handle a NULL target_stack.
9099         * regcache.c (target_ops_no_register): Refactor as class with
9100         virtual methods.
9101
9102         * exec.c (exec_target): New class.
9103         (exec_ops): Now an exec_target.
9104         (exec_open, exec_close_1, exec_get_section_table)
9105         (exec_xfer_partial, exec_files_info, exec_has_memory)
9106         (exec_make_note_section): Refactor as exec_target methods.
9107         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9108         Delete.
9109         (exec_target::find_memory_regions): New.
9110         (_initialize_exec): Don't call init_exec_ops.
9111         * gdbcore.h (exec_file_clear): Delete.
9112
9113         * corefile.c (core_target): Delete.
9114         (core_file_command): Adjust.
9115         * corelow.c (core_target): New class.
9116         (the_core_target): New.
9117         (core_close): Remove target_ops parameter.
9118         (core_close_cleanup): Adjust.
9119         (core_target::close): New.
9120         (core_open, core_detach, get_core_registers, core_files_info)
9121         (core_xfer_partial, core_thread_alive, core_read_description)
9122         (core_pid_to_str, core_thread_name, core_has_memory)
9123         (core_has_stack, core_has_registers, core_info_proc): Rework as
9124         core_target methods.
9125         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9126         (_initialize_corelow): Initialize the_core_target.
9127         * gdbcore.h (core_target): Delete.
9128         (the_core_target): New.
9129
9130         * ctf.c: (ctf_target): New class.
9131         (ctf_ops): Now a ctf_target.
9132         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9133         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9134         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9135         methods.
9136         (init_ctf_ops): Delete.
9137         (_initialize_ctf): Don't call it.
9138         * tracefile-tfile.c (tfile_target): New class.
9139         (tfile_ops): Now a tfile_target.
9140         (tfile_open, tfile_close, tfile_files_info)
9141         (tfile_get_tracepoint_status, tfile_trace_find)
9142         (tfile_fetch_registers, tfile_xfer_partial)
9143         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9144         Refactor as tfile_target methods.
9145         (tfile_xfer_partial_features): Remove target_ops parameter.
9146         (init_tfile_ops): Delete.
9147         (_initialize_tracefile_tfile): Don't call it.
9148         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9149         (tracefile_has_stack, tracefile_has_registers)
9150         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9151         tracefile_target methods.
9152         (init_tracefile_ops): Delete.
9153         (tracefile_target::tracefile_target): New.
9154         * tracefile.h: Include "target.h".
9155         (tracefile_target): New class.
9156         (init_tracefile_ops): Delete.
9157
9158         * spu-multiarch.c (spu_multiarch_target): New class.
9159         (spu_ops): Now a spu_multiarch_target.
9160         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9161         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9162         (spu_search_memory, spu_mourn_inferior): Refactor as
9163         spu_multiarch_target methods.
9164         (init_spu_ops): Delete.
9165         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9166         complete_target_initialization.
9167
9168         * ravenscar-thread.c (ravenscar_thread_target): New class.
9169         (ravenscar_ops): Now a ravenscar_thread_target.
9170         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9171         (ravenscar_thread_alive, ravenscar_pid_to_str)
9172         (ravenscar_fetch_registers, ravenscar_store_registers)
9173         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9174         (ravenscar_stopped_by_hw_breakpoint)
9175         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9176         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9177         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9178         methods.
9179         (init_ravenscar_thread_ops): Delete.
9180         (_initialize_ravenscar): Remove references to
9181         init_ravenscar_thread_ops and complete_target_initialization.
9182
9183         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9184         (bsd_uthread_target): New class.
9185         (bsd_uthread_ops): Now a bsd_uthread_target.
9186         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9187         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9188         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9189         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9190         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9191         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9192         (bsd_uthread_target): Delete function.
9193         (_initialize_bsd_uthread): Remove reference to
9194         complete_target_initialization.
9195
9196         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9197         (target_bfd): ... this new class.
9198         (target_bfd_xfer_partial, target_bfd_get_section_table)
9199         (target_bfd_close): Refactor as target_bfd methods.
9200         (target_bfd::~target_bfd): New.
9201         (target_bfd_reopen): Adjust.
9202         (target_bfd::close): New.
9203
9204         * record-btrace.c (record_btrace_target): New class.
9205         (record_btrace_ops): Now a record_btrace_target.
9206         (record_btrace_open, record_btrace_stop_recording)
9207         (record_btrace_disconnect, record_btrace_close)
9208         (record_btrace_async, record_btrace_info)
9209         (record_btrace_insn_history, record_btrace_insn_history_range)
9210         (record_btrace_insn_history_from, record_btrace_call_history)
9211         (record_btrace_call_history_range)
9212         (record_btrace_call_history_from, record_btrace_record_method)
9213         (record_btrace_is_replaying, record_btrace_will_replay)
9214         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9215         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9216         (record_btrace_store_registers, record_btrace_prepare_to_store)
9217         (record_btrace_to_get_unwinder)
9218         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9219         (record_btrace_commit_resume, record_btrace_wait)
9220         (record_btrace_stop, record_btrace_can_execute_reverse)
9221         (record_btrace_stopped_by_sw_breakpoint)
9222         (record_btrace_supports_stopped_by_sw_breakpoint)
9223         (record_btrace_stopped_by_hw_breakpoint)
9224         (record_btrace_supports_stopped_by_hw_breakpoint)
9225         (record_btrace_update_thread_list, record_btrace_thread_alive)
9226         (record_btrace_goto_begin, record_btrace_goto_end)
9227         (record_btrace_goto, record_btrace_stop_replaying_all)
9228         (record_btrace_execution_direction)
9229         (record_btrace_prepare_to_generate_core)
9230         (record_btrace_done_generating_core): Refactor as
9231         record_btrace_target methods.
9232         (init_record_btrace_ops): Delete.
9233         (_initialize_record_btrace): Remove reference to
9234         init_record_btrace_ops.
9235         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9236         the execution_direction global.
9237         (record_full_base_target, record_full_target)
9238         (record_full_core_target): New classes.
9239         (record_full_ops): Now a record_full_target.
9240         (record_full_core_ops): Now a record_full_core_target.
9241         (record_full_target::detach, record_full_target::disconnect)
9242         (record_full_core_target::disconnect)
9243         (record_full_target::mourn_inferior, record_full_target::kill):
9244         New.
9245         (record_full_open, record_full_close, record_full_async): Refactor
9246         as methods of the record_full_base_target class.
9247         (record_full_resume, record_full_commit_resume): Refactor
9248         as methods of the record_full_target class.
9249         (record_full_wait, record_full_stopped_by_watchpoint)
9250         (record_full_stopped_data_address)
9251         (record_full_stopped_by_sw_breakpoint)
9252         (record_full_supports_stopped_by_sw_breakpoint)
9253         (record_full_stopped_by_hw_breakpoint)
9254         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9255         methods of the record_full_base_target class.
9256         (record_full_store_registers, record_full_xfer_partial)
9257         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9258         Refactor as methods of the record_full_target class.
9259         (record_full_can_execute_reverse, record_full_get_bookmark)
9260         (record_full_goto_bookmark, record_full_execution_direction)
9261         (record_full_record_method, record_full_info, record_full_delete)
9262         (record_full_is_replaying, record_full_will_replay)
9263         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9264         (record_full_stop_replaying): Refactor as methods of the
9265         record_full_base_target class.
9266         (record_full_core_resume, record_full_core_kill)
9267         (record_full_core_fetch_registers)
9268         (record_full_core_prepare_to_store)
9269         (record_full_core_store_registers, record_full_core_xfer_partial)
9270         (record_full_core_insert_breakpoint)
9271         (record_full_core_remove_breakpoint)
9272         (record_full_core_has_execution): Refactor
9273         as methods of the record_full_core_target class.
9274         (record_full_base_target::supports_delete_record): New.
9275         (init_record_full_ops): Delete.
9276         (init_record_full_core_ops): Delete.
9277         (record_full_save): Refactor as method of the
9278         record_full_base_target class.
9279         (_initialize_record_full): Remove references to
9280         init_record_full_ops and init_record_full_core_ops.
9281
9282         * remote.c (remote_target, extended_remote_target): New classes.
9283         (remote_ops): Now a remote_target.
9284         (extended_remote_ops): Now an extended_remote_target.
9285         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9286         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9287         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9288         (remote_pass_signals, remote_set_syscall_catchpoint)
9289         (remote_program_signals, )
9290         (remote_thread_always_alive): Remove target_ops parameter.
9291         (remote_thread_alive, remote_thread_name)
9292         (remote_update_thread_list, remote_threads_extra_info)
9293         (remote_static_tracepoint_marker_at)
9294         (remote_static_tracepoint_markers_by_strid)
9295         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9296         (remote_open): Refactor as methods of remote_target.
9297         (extended_remote_open, extended_remote_detach)
9298         (extended_remote_attach, extended_remote_post_attach):
9299         (extended_remote_supports_disable_randomization)
9300         (extended_remote_create_inferior): : Refactor as method of
9301         extended_remote_target.
9302         (remote_set_permissions, remote_open_1, remote_detach)
9303         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9304         (remote_resume, remote_commit_resume, remote_stop)
9305         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9306         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9307         (remote_prepare_to_store, remote_store_registers)
9308         (remote_flash_erase, remote_flash_done, remote_files_info)
9309         (remote_kill, remote_mourn, remote_insert_breakpoint)
9310         (remote_remove_breakpoint, remote_insert_watchpoint)
9311         (remote_watchpoint_addr_within_range)
9312         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9313         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9314         (remote_supports_stopped_by_sw_breakpoint)
9315         (remote_stopped_by_hw_breakpoint)
9316         (remote_supports_stopped_by_hw_breakpoint)
9317         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9318         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9319         (remote_verify_memory): Refactor as methods of remote_target.
9320         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9321         parameter.
9322         (remote_xfer_partial, remote_get_memory_xfer_limit)
9323         (remote_search_memory, remote_rcmd, remote_memory_map)
9324         (remote_pid_to_str, remote_get_thread_local_address)
9325         (remote_get_tib_address, remote_read_description): Refactor as
9326         methods of remote_target.
9327         (remote_target::fileio_open, remote_target::fileio_pwrite)
9328         (remote_target::fileio_pread, remote_target::fileio_close): New.
9329         (remote_hostio_readlink, remote_hostio_fstat)
9330         (remote_filesystem_is_local, remote_can_execute_reverse)
9331         (remote_supports_non_stop, remote_supports_disable_randomization)
9332         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9333         (remote_supports_enable_disable_tracepoint)
9334         (remote_supports_string_tracing)
9335         (remote_can_run_breakpoint_commands, remote_trace_init)
9336         (remote_download_tracepoint, remote_can_download_tracepoint)
9337         (remote_download_trace_state_variable, remote_enable_tracepoint)
9338         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9339         (remote_trace_start, remote_get_trace_status)
9340         (remote_get_tracepoint_status, remote_trace_stop)
9341         (remote_trace_find, remote_get_trace_state_variable_value)
9342         (remote_save_trace_data, remote_get_raw_trace_data)
9343         (remote_set_disconnected_tracing, remote_core_of_thread)
9344         (remote_set_circular_trace_buffer, remote_traceframe_info)
9345         (remote_get_min_fast_tracepoint_insn_len)
9346         (remote_set_trace_buffer_size, remote_set_trace_notes)
9347         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9348         (remote_disable_btrace, remote_teardown_btrace)
9349         (remote_read_btrace, remote_btrace_conf)
9350         (remote_augmented_libraries_svr4_read, remote_load)
9351         (remote_pid_to_exec_file, remote_can_do_single_step)
9352         (remote_execution_direction, remote_thread_handle_to_thread_info):
9353         Refactor as methods of remote_target.
9354         (init_remote_ops, init_extended_remote_ops): Delete.
9355         (remote_can_async_p, remote_is_async_p, remote_async)
9356         (remote_thread_events, remote_upload_tracepoints)
9357         (remote_upload_trace_state_variables): Refactor as methods of
9358         remote_target.
9359         (_initialize_remote): Remove references to init_remote_ops and
9360         init_extended_remote_ops.
9361
9362         * remote-sim.c (gdbsim_target): New class.
9363         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9364         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9365         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9366         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9367         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9368         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9369         Refactor as methods of gdbsim_target.
9370         (gdbsim_ops): Now a gdbsim_target.
9371         (init_gdbsim_ops): Delete.
9372         (gdbsim_cntrl_c): Adjust.
9373         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9374
9375         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9376         (the_amd64_linux_nat_target): New.
9377         (amd64_linux_fetch_inferior_registers)
9378         (amd64_linux_store_inferior_registers): Refactor as methods of
9379         amd64_linux_nat_target.
9380         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9381         * i386-linux-nat.c: Don't include "linux-nat.h".
9382         (i386_linux_nat_target): New class.
9383         (the_i386_linux_nat_target): New.
9384         (i386_linux_fetch_inferior_registers)
9385         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9386         as methods of i386_linux_nat_target.
9387         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9388         * inf-child.c (inf_child_ops): Delete.
9389         (inf_child_fetch_inferior_registers)
9390         (inf_child_store_inferior_registers): Delete.
9391         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9392         methods of inf_child_target.
9393         (inf_child_target::supports_terminal_ours)
9394         (inf_child_target::terminal_init)
9395         (inf_child_target::terminal_inferior)
9396         (inf_child_target::terminal_ours_for_output)
9397         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9398         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9399         New.
9400         (inf_child_open, inf_child_disconnect, inf_child_close)
9401         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9402         (inf_child_post_startup_inferior, inf_child_can_run)
9403         (inf_child_pid_to_exec_file): Refactor as methods of
9404         inf_child_target.
9405         (inf_child_follow_fork): Delete.
9406         (inf_child_target::can_create_inferior)
9407         (inf_child_target::can_attach): New.
9408         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9409         (inf_child_target::has_stack, inf_child_target::has_registers)
9410         (inf_child_target::has_execution): New.
9411         (inf_child_fileio_open, inf_child_fileio_pwrite)
9412         (inf_child_fileio_pread, inf_child_fileio_fstat)
9413         (inf_child_fileio_close, inf_child_fileio_unlink)
9414         (inf_child_fileio_readlink, inf_child_use_agent)
9415         (inf_child_can_use_agent): Refactor as methods of
9416         inf_child_target.
9417         (return_zero, inf_child_target): Delete.
9418         (inf_child_target::inf_child_target): New.
9419         * inf-child.h: Include "target.h".
9420         (inf_child_target): Delete function prototype.
9421         (inf_child_target): New class.
9422         (inf_child_open_target, inf_child_mourn_inferior)
9423         (inf_child_maybe_unpush_target): Delete.
9424         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9425         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9426         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9427         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9428         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9429         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9430         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9431         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9432         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9433         methods of inf_ptrace_target.
9434         (inf_ptrace_target): Delete function.
9435         * inf-ptrace.h: Include "inf-child.h".
9436         (inf_ptrace_target): Delete function declaration.
9437         (inf_ptrace_target): New class.
9438         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9439         * linux-nat.c (linux_target): New.
9440         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9441         (linux_nat_target::~linux_nat_target): New.
9442         (linux_child_post_attach, linux_child_post_startup_inferior)
9443         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9444         (linux_child_remove_fork_catchpoint)
9445         (linux_child_insert_vfork_catchpoint)
9446         (linux_child_remove_vfork_catchpoint)
9447         (linux_child_insert_exec_catchpoint)
9448         (linux_child_remove_exec_catchpoint)
9449         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9450         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9451         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9452         (linux_nat_stopped_data_address)
9453         (linux_nat_stopped_by_sw_breakpoint)
9454         (linux_nat_supports_stopped_by_sw_breakpoint)
9455         (linux_nat_stopped_by_hw_breakpoint)
9456         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9457         (linux_nat_kill, linux_nat_mourn_inferior)
9458         (linux_nat_xfer_partial, linux_nat_thread_alive)
9459         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9460         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9461         (linux_child_static_tracepoint_markers_by_strid)
9462         (linux_nat_is_async_p, linux_nat_can_async_p)
9463         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9464         (linux_nat_supports_multi_process)
9465         (linux_nat_supports_disable_randomization, linux_nat_async)
9466         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9467         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9468         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9469         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9470         methods of linux_nat_target.
9471         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9472         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9473         parameter.
9474         (check_stopped_by_watchpoint): Adjust.
9475         (linux_xfer_partial): Delete.
9476         (linux_target_install_ops, linux_target, linux_nat_add_target):
9477         Delete.
9478         (linux_nat_target::linux_nat_target): New.
9479         * linux-nat.h: Include "inf-ptrace.h".
9480         (linux_nat_target): New.
9481         (linux_target, linux_target_install_ops, linux_nat_add_target):
9482         Delete function declarations.
9483         (linux_target): Declare global.
9484         * linux-thread-db.c (thread_db_target): New.
9485         (thread_db_target::thread_db_target): New.
9486         (thread_db_ops): Delete.
9487         (the_thread_db_target): New.
9488         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9489         (thread_db_update_thread_list, thread_db_pid_to_str)
9490         (thread_db_extra_thread_info)
9491         (thread_db_thread_handle_to_thread_info)
9492         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9493         (thread_db_resume): Refactor as methods of thread_db_target.
9494         (init_thread_db_ops): Delete.
9495         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9496         * x86-linux-nat.c: Don't include "linux-nat.h".
9497         (super_post_startup_inferior): Delete.
9498         (x86_linux_nat_target::~x86_linux_nat_target): New.
9499         (x86_linux_child_post_startup_inferior)
9500         (x86_linux_read_description, x86_linux_enable_btrace)
9501         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9502         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9503         methods of x86_linux_nat_target.
9504         (x86_linux_create_target): Delete.  Bits folded ...
9505         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9506         pointer.
9507         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9508         (x86_linux_nat_target): New class.
9509         (x86_linux_create_target): Delete.
9510         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9511         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9512         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9513         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9514         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9515         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9516         make extern.
9517         (x86_use_watchpoints): Delete.
9518         * x86-nat.h: Include "breakpoint.h" and "target.h".
9519         (x86_use_watchpoints): Delete.
9520         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9521         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9522         (x86_insert_watchpoint, x86_remove_watchpoint)
9523         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9524         (x86_stopped_by_hw_breakpoint): New declarations.
9525         (x86_nat_target): New template class.
9526
9527         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9528         (the_ppc_linux_nat_target): New.
9529         (ppc_linux_fetch_inferior_registers)
9530         (ppc_linux_can_use_hw_breakpoint)
9531         (ppc_linux_region_ok_for_hw_watchpoint)
9532         (ppc_linux_ranged_break_num_registers)
9533         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9534         (ppc_linux_insert_mask_watchpoint)
9535         (ppc_linux_remove_mask_watchpoint)
9536         (ppc_linux_can_accel_watchpoint_condition)
9537         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9538         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9539         (ppc_linux_watchpoint_addr_within_range)
9540         (ppc_linux_masked_watch_num_registers)
9541         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9542         (ppc_linux_read_description): Refactor as methods of
9543         ppc_linux_nat_target.
9544         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
9545
9546         * procfs.c (procfs_xfer_partial): Delete forward declaration.
9547         (procfs_target): New class.
9548         (the_procfs_target): New.
9549         (procfs_target): Delete function.
9550         (procfs_auxv_parse, procfs_attach, procfs_detach)
9551         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
9552         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
9553         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
9554         (procfs_create_inferior, procfs_update_thread_list)
9555         (procfs_thread_alive, procfs_pid_to_str)
9556         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
9557         (procfs_stopped_data_address, procfs_insert_watchpoint)
9558         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
9559         (proc_find_memory_regions, procfs_info_proc)
9560         (procfs_make_note_section): Refactor as methods of procfs_target.
9561         (_initialize_procfs): Adjust.
9562         * sol-thread.c (sol_thread_target): New class.
9563         (sol_thread_ops): Now a sol_thread_target.
9564         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
9565         (sol_thread_fetch_registers, sol_thread_store_registers)
9566         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
9567         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
9568         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
9569         (init_sol_thread_ops): Delete.
9570         (_initialize_sol_thread): Adjust.  Remove references to
9571         init_sol_thread_ops and complete_target_initialization.
9572
9573         * windows-nat.c (windows_nat_target): New class.
9574         (windows_fetch_inferior_registers)
9575         (windows_store_inferior_registers, windows_resume, windows_wait)
9576         (windows_attach, windows_detach, windows_pid_to_exec_file)
9577         (windows_files_info, windows_create_inferior)
9578         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
9579         (windows_close, windows_pid_to_str, windows_xfer_partial)
9580         (windows_get_tib_address, windows_get_ada_task_ptid)
9581         (windows_thread_name, windows_thread_alive): Refactor as
9582         windows_nat_target methods.
9583         (do_initial_windows_stuff): Adjust.
9584         (windows_target): Delete function.
9585         (_initialize_windows_nat): Adjust.
9586
9587         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
9588         (darwin_mourn_inferior, darwin_kill_inferior)
9589         (darwin_create_inferior, darwin_attach, darwin_detach)
9590         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
9591         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
9592         (darwin_supports_multi_process): Refactor as darwin_nat_target
9593         methods.
9594         (darwin_resume_to, darwin_files_info): Delete.
9595         (_initialize_darwin_inferior): Rename to ...
9596         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
9597         * darwin-nat.h: Include "inf-child.h".
9598         (darwin_nat_target): New class.
9599         (darwin_complete_target): Delete.
9600         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
9601         (darwin_target): New.
9602         (i386_darwin_fetch_inferior_registers)
9603         (i386_darwin_store_inferior_registers): Refactor as methods of
9604         darwin_nat_target.
9605         (darwin_complete_target): Delete, with ...
9606         (_initialize_i386_darwin_nat): ... bits factored out here.
9607
9608         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
9609         (the_alpha_linux_nat_target): New.
9610         (alpha_linux_register_u_offset): Refactor as
9611         alpha_linux_nat_target method.
9612         (_initialize_alpha_linux_nat): Adjust.
9613         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
9614         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9615         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
9616         methods of linux_nat_trad_target.
9617         (linux_trad_target): Delete.
9618         * linux-nat-trad.h (linux_trad_target): Delete function.
9619         (linux_nat_trad_target): New class.
9620         * mips-linux-nat.c (mips_linux_nat_target): New class.
9621         (super_fetch_registers, super_store_registers, super_close):
9622         Delete.
9623         (the_mips_linux_nat_target): New.
9624         (mips64_linux_regsets_fetch_registers)
9625         (mips64_linux_regsets_store_registers)
9626         (mips64_linux_fetch_registers, mips64_linux_store_registers)
9627         (mips_linux_register_u_offset, mips_linux_read_description)
9628         (mips_linux_can_use_hw_breakpoint)
9629         (mips_linux_stopped_by_watchpoint)
9630         (mips_linux_stopped_data_address)
9631         (mips_linux_region_ok_for_hw_watchpoint)
9632         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
9633         (mips_linux_close): Refactor as methods of mips_linux_nat.
9634         (_initialize_mips_linux_nat): Adjust to C++ification.
9635
9636         * aix-thread.c (aix_thread_target): New class.
9637         (aix_thread_ops): Now an aix_thread_target.
9638         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
9639         (aix_thread_fetch_registers, aix_thread_store_registers)
9640         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
9641         (aix_thread_thread_alive, aix_thread_pid_to_str)
9642         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
9643         Refactor as methods of aix_thread_target.
9644         (init_aix_thread_ops): Delete.
9645         (_initialize_aix_thread): Remove references to init_aix_thread_ops
9646         and complete_target_initialization.
9647         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
9648         (rs6000_nat_target): New class.
9649         (the_rs6000_nat_target): New.
9650         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
9651         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
9652         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
9653         (super_create_inferior): Delete.
9654         (_initialize_rs6000_nat): Adjust to C++ification.
9655
9656         * arm-linux-nat.c (arm_linux_nat_target): New class.
9657         (the_arm_linux_nat_target): New.
9658         (arm_linux_fetch_inferior_registers)
9659         (arm_linux_store_inferior_registers, arm_linux_read_description)
9660         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
9661         (arm_linux_remove_hw_breakpoint)
9662         (arm_linux_region_ok_for_hw_watchpoint)
9663         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
9664         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
9665         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
9666         arm_linux_nat_target.
9667         (_initialize_arm_linux_nat): Adjust to C++ification.
9668
9669         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
9670         (the_aarch64_linux_nat_target): New.
9671         (aarch64_linux_fetch_inferior_registers)
9672         (aarch64_linux_store_inferior_registers)
9673         (aarch64_linux_child_post_startup_inferior)
9674         (aarch64_linux_read_description)
9675         (aarch64_linux_can_use_hw_breakpoint)
9676         (aarch64_linux_insert_hw_breakpoint)
9677         (aarch64_linux_remove_hw_breakpoint)
9678         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
9679         (aarch64_linux_region_ok_for_hw_watchpoint)
9680         (aarch64_linux_stopped_data_address)
9681         (aarch64_linux_stopped_by_watchpoint)
9682         (aarch64_linux_watchpoint_addr_within_range)
9683         (aarch64_linux_can_do_single_step): Refactor as methods of
9684         aarch64_linux_nat_target.
9685         (super_post_startup_inferior): Delete.
9686         (_initialize_aarch64_linux_nat): Adjust to C++ification.
9687
9688         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
9689         (the_hppa_linux_nat_target): New.
9690         (hppa_linux_fetch_inferior_registers)
9691         (hppa_linux_store_inferior_registers): Refactor as methods of
9692         hppa_linux_nat_target.
9693         (_initialize_hppa_linux_nat): Adjust to C++ification.
9694
9695         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
9696         (the_ia64_linux_nat_target): New.
9697         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
9698         (ia64_linux_stopped_data_address)
9699         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
9700         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
9701         ia64_linux_nat_target methods.
9702         (super_xfer_partial): Delete.
9703         (_initialize_ia64_linux_nat): Adjust to C++ification.
9704
9705         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
9706         (the_m32r_linux_nat_target): New.
9707         (m32r_linux_fetch_inferior_registers)
9708         (m32r_linux_store_inferior_registers): Refactor as
9709         m32r_linux_nat_target methods.
9710         (_initialize_m32r_linux_nat): Adjust to C++ification.
9711
9712         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
9713         (the_m68k_linux_nat_target): New.
9714         (m68k_linux_fetch_inferior_registers)
9715         (m68k_linux_store_inferior_registers): Refactor as
9716         m68k_linux_nat_target methods.
9717         (_initialize_m68k_linux_nat): Adjust to C++ification.
9718
9719         * s390-linux-nat.c (s390_linux_nat_target): New class.
9720         (the_s390_linux_nat_target): New.
9721         (s390_linux_fetch_inferior_registers)
9722         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
9723         (s390_insert_watchpoint, s390_remove_watchpoint)
9724         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
9725         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
9726         (s390_auxv_parse, s390_read_description): Refactor as methods of
9727         s390_linux_nat_target.
9728         (_initialize_s390_nat): Adjust to C++ification.
9729
9730         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
9731         (the_sparc_linux_nat_target): New.
9732         (_initialize_sparc_linux_nat): Adjust to C++ification.
9733         * sparc-nat.c (sparc_fetch_inferior_registers)
9734         (sparc_store_inferior_registers): Remove target_ops parameter.
9735         * sparc-nat.h (sparc_fetch_inferior_registers)
9736         (sparc_store_inferior_registers): Remove target_ops parameter.
9737         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
9738         (the_sparc64_linux_nat_target): New.
9739         (_initialize_sparc64_linux_nat): Adjust to C++ification.
9740
9741         * spu-linux-nat.c (spu_linux_nat_target): New class.
9742         (the_spu_linux_nat_target): New.
9743         (spu_child_post_startup_inferior, spu_child_post_attach)
9744         (spu_child_wait, spu_fetch_inferior_registers)
9745         (spu_store_inferior_registers, spu_xfer_partial)
9746         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
9747         methods.
9748         (_initialize_spu_nat): Adjust to C++ification.
9749
9750         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
9751         (the_tilegx_linux_nat_target): New.
9752         (fetch_inferior_registers, store_inferior_registers):
9753         Refactor as methods.
9754         (_initialize_tile_linux_nat): Adjust to C++ification.
9755
9756         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
9757         (the_xtensa_linux_nat_target): New.
9758         (xtensa_linux_fetch_inferior_registers)
9759         (xtensa_linux_store_inferior_registers): Refactor as
9760         xtensa_linux_nat_target methods.
9761         (_initialize_xtensa_linux_nat): Adjust to C++ification.
9762
9763         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
9764         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
9765         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
9766         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
9767         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
9768         (fbsd_stopped_by_sw_breakpoint)
9769         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
9770         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
9771         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
9772         (fbsd_post_startup_inferior, fbsd_post_attach)
9773         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
9774         (fbsd_set_syscall_catchpoint)
9775         (super_xfer_partial, super_resume, super_wait)
9776         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
9777         (fbsd_handle_debug_trap): Remove target_ops parameter.
9778         (fbsd_nat_add_target): Delete.
9779         * fbsd-nat.h: Include "inf-ptrace.h".
9780         (fbsd_nat_add_target): Delete.
9781         (USE_SIGTRAP_SIGINFO): Define.
9782         (fbsd_nat_target): New class.
9783
9784         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
9785         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
9786         (amd64bsd_target): Delete.
9787         * amd64-bsd-nat.h: New file.
9788         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
9789         "x86-bsd-nat.h".
9790         (amd64_fbsd_nat_target): New class.
9791         (the_amd64_fbsd_nat_target): New.
9792         (amd64fbsd_read_description): Refactor as method of
9793         amd64_fbsd_nat_target.
9794         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9795         (_initialize_amd64fbsd_nat): Adjust to C++ification.
9796         * amd64-nat.h (amd64bsd_target): Delete function declaration.
9797         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
9798         (i386bsd_store_inferior_registers): Remove target_ops parameter.
9799         (i386bsd_target): Delete.
9800         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
9801         (i386bsd_fetch_inferior_registers)
9802         (i386bsd_store_inferior_registers): Declare.
9803         (i386_bsd_nat_target): New class.
9804         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
9805         (the_i386_fbsd_nat_target): New.
9806         (i386fbsd_resume, i386fbsd_read_description): Refactor as
9807         i386_fbsd_nat_target methods.
9808         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9809         (_initialize_i386fbsd_nat): Adjust to C++ification.
9810         * x86-bsd-nat.c (super_mourn_inferior): Delete.
9811         (x86bsd_mourn_inferior, x86bsd_target): Delete.
9812         (_initialize_x86_bsd_nat): Adjust to C++ification.
9813         * x86-bsd-nat.h: Include "x86-nat.h".
9814         (x86bsd_target): Delete declaration.
9815         (x86bsd_nat_target): New class.
9816
9817         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
9818         (the_aarch64_fbsd_nat_target): New.
9819         (aarch64_fbsd_fetch_inferior_registers)
9820         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
9821         aarch64_fbsd_nat_target.
9822         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
9823         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
9824         (the_alpha_bsd_nat_target): New.
9825         (alphabsd_fetch_inferior_registers)
9826         (alphabsd_store_inferior_registers): Refactor as
9827         alpha_bsd_nat_target methods.
9828         (_initialize_alphabsd_nat): Refactor as methods of
9829         alpha_bsd_nat_target.
9830         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
9831         (the_amd64_nbsd_nat_target): New.
9832         (_initialize_amd64nbsd_nat): Adjust to C++ification.
9833         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
9834         (the_amd64_obsd_nat_target): New.
9835         (_initialize_amd64obsd_nat): Adjust to C++ification.
9836         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
9837         (the_arm_fbsd_nat_target): New.
9838         (arm_fbsd_fetch_inferior_registers)
9839         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
9840         (_initialize_arm_fbsd_nat): Refactor as methods of
9841         arm_fbsd_nat_target.
9842         (_initialize_arm_fbsd_nat): Adjust to C++ification.
9843         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
9844         (the_arm_netbsd_nat_target): New.
9845         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
9846         arm_netbsd_nat_target.
9847         (_initialize_arm_netbsd_nat): Adjust to C++ification.
9848         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
9849         (the_hppa_nbsd_nat_target): New.
9850         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
9851         hppa_nbsd_nat_target methods.
9852         (_initialize_hppanbsd_nat): Adjust to C++ification.
9853         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
9854         (the_hppa_obsd_nat_target): New.
9855         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
9856         methods of hppa_obsd_nat_target.
9857         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
9858         add_target.
9859         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
9860         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
9861         add_target.
9862         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
9863         (_initialize_i386obsd_nat): Use add_target.
9864         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
9865         (the_m68k_bsd_nat_target): New.
9866         (m68kbsd_fetch_inferior_registers)
9867         (m68kbsd_store_inferior_registers): Refactor as methods of
9868         m68k_bsd_nat_target.
9869         (_initialize_m68kbsd_nat): Adjust to C++ification.
9870         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
9871         (the_mips_fbsd_nat_target): New.
9872         (mips_fbsd_fetch_inferior_registers)
9873         (mips_fbsd_store_inferior_registers): Refactor as methods of
9874         mips_fbsd_nat_target.
9875         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
9876         add_target.
9877         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
9878         (the_mips_nbsd_nat_target): New.
9879         (mipsnbsd_fetch_inferior_registers)
9880         (mipsnbsd_store_inferior_registers): Refactor as methods of
9881         mips_nbsd_nat_target.
9882         (_initialize_mipsnbsd_nat): Adjust to C++ification.
9883         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
9884         (the_mips64_obsd_nat_target): New.
9885         (mips64obsd_fetch_inferior_registers)
9886         (mips64obsd_store_inferior_registers): Refactor as methods of
9887         mips64_obsd_nat_target.
9888         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
9889         add_target.
9890         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
9891         nbsd_nat_target.
9892         * nbsd-nat.h: Include "inf-ptrace.h".
9893         (nbsd_nat_target): New class.
9894         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
9895         (obsd_wait): Refactor as methods of obsd_nat_target.
9896         (obsd_add_target): Delete.
9897         * obsd-nat.h: Include "inf-ptrace.h".
9898         (obsd_nat_target): New class.
9899         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
9900         (the_ppc_fbsd_nat_target): New.
9901         (ppcfbsd_fetch_inferior_registers)
9902         (ppcfbsd_store_inferior_registers): Refactor as methods of
9903         ppc_fbsd_nat_target.
9904         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
9905         add_target.
9906         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
9907         (the_ppc_nbsd_nat_target): New.
9908         (ppcnbsd_fetch_inferior_registers)
9909         (ppcnbsd_store_inferior_registers): Refactor as methods of
9910         ppc_nbsd_nat_target.
9911         (_initialize_ppcnbsd_nat): Adjust to C++ification.
9912         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
9913         (the_ppc_obsd_nat_target): New.
9914         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
9915         methods of ppc_obsd_nat_target.
9916         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
9917         add_target.
9918         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
9919         (the_sh_nbsd_nat_target): New.
9920         (shnbsd_fetch_inferior_registers)
9921         (shnbsd_store_inferior_registers): Refactor as methods of
9922         sh_nbsd_nat_target.
9923         (_initialize_shnbsd_nat): Adjust to C++ification.
9924         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
9925         (inf_ptrace_xfer_partial): Delete.
9926         (sparc_xfer_partial, sparc_target): Delete.
9927         * sparc-nat.h (sparc_fetch_inferior_registers)
9928         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
9929         (sparc_target): Delete function declaration.
9930         (sparc_target): New template class.
9931         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
9932         (_initialize_sparcnbsd_nat): Adjust to C++ification.
9933         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
9934         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
9935         add_target.
9936         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
9937         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
9938         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
9939         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
9940         add_target.
9941         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
9942         (the_vax_bsd_nat_target): New.
9943         (vaxbsd_fetch_inferior_registers)
9944         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
9945         methods.
9946         (_initialize_vaxbsd_nat): Adjust to C++ification.
9947
9948         * bsd-kvm.c (bsd_kvm_target): New class.
9949         (bsd_kvm_ops): Now a bsd_kvm_target.
9950         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
9951         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
9952         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
9953         bsd_kvm_target.
9954         (bsd_kvm_return_one): Delete.
9955         (bsd_kvm_add_target): Adjust to C++ification.
9956
9957         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
9958         (nto_procfs_target_procfs): New classes.
9959         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
9960         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
9961         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
9962         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
9963         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
9964         (procfs_remove_hw_breakpoint, procfs_resume)
9965         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
9966         (procfs_kill_inferior, procfs_store_registers)
9967         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
9968         as methods of nto_procfs_target.
9969         (nto_procfs_ops): Now an nto_procfs_target_procfs.
9970         (nto_native_ops): Delete.
9971         (procfs_open, procfs_native_open): Delete.
9972         (nto_native_ops): Now an nto_procfs_target_native.
9973         (init_procfs_targets): Adjust to C++ification.
9974         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
9975         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
9976         Refactor as methods of nto_procfs_target.
9977
9978         * go32-nat.c (go32_nat_target): New class.
9979         (the_go32_nat_target): New.
9980         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
9981         (go32_store_registers, go32_xfer_partial, go32_files_info)
9982         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
9983         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
9984         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
9985         (go32_pid_to_str): Refactor as methods of go32_nat_target.
9986         (go32_target): Delete.
9987         (_initialize_go32_nat): Adjust to C++ification.
9988
9989         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
9990         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
9991         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
9992         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
9993         gnu_nat_target.
9994         (gnu_target): Delete.
9995         * gnu-nat.h (gnu_target): Delete.
9996         (gnu_nat_target): New class.
9997         * i386-gnu-nat.c (gnu_base_target): New.
9998         (i386_gnu_nat_target): New class.
9999         (the_i386_gnu_nat_target): New.
10000         (_initialize_i386gnu_nat): Adjust to C++ification.
10001
10002 2018-05-02  Pedro Alves  <palves@redhat.com>
10003
10004         * bfd-target.c (target_bfd_xclose): Rename to ...
10005         (target_bfd_close): ... this.
10006         (target_bfd_reopen): Adjust.
10007         * target.c (target_close): Remove references to to_xclose.
10008         * target.h (target_ops::to_xclose): Delete.
10009         (target_ops::to_close): Update comments.
10010
10011 2018-05-02  Pedro Alves  <palves@redhat.com>
10012
10013         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10014         "linux-nat.h".
10015         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10016         * inf-ptrace.c (inf_ptrace_register_u_offset)
10017         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10018         (inf_ptrace_store_register, inf_ptrace_store_registers)
10019         (inf_ptrace_trad_target): Move to ...
10020         * linux-nat-trad.c: ... this new file.
10021         * linux-nat-trad.h: New file.
10022         * linux-nat.c (linux_target_install_ops): Make extern.
10023         (linux_trad_target): Delete.
10024         * linux-nat.h (linux_trad_target): Delete declaration.
10025         (linux_target_install_ops): Declare.
10026         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10027         "linux-nat.h".
10028
10029 2018-05-02  Pedro Alves  <palves@redhat.com>
10030
10031         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10032         procfs_target/add_target here.
10033         * procfs.c (procfs_target): Make static.
10034         (_initialize_procfs): Call add_target here.
10035         * procfs.h (struct target_ops): Remove forward declaration.
10036         (procfs_target): Remove declaration.
10037         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10038
10039 2018-05-02  Pedro Alves  <palves@redhat.com>
10040
10041         * procfs.c (procfs_stopped_by_watchpoint)
10042         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10043         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10044         Forward declare.
10045         (procfs_use_watchpoints): Delete, move contents...
10046         (procfs_target): ... here.
10047         * procfs.h (procfs_use_watchpoints): Delete declaration.
10048         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10049         procfs_use_watchpoints.
10050         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10051         procfs_use_watchpoints.
10052
10053 2018-05-02  Tom Tromey  <tom@tromey.com>
10054
10055         PR python/20084:
10056         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10057         and var_zuinteger_unlimited.
10058         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10059         and PARAM_ZUINTEGER_UNLIMITED.
10060         (set_parameter_value): Handle var_zuinteger and
10061         var_zuinteger_unlimited.
10062         (add_setshow_generic): Likewise.
10063         (parmpy_init): Likewise.
10064
10065 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10066
10067         PR rust/23124
10068         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10069         pointer is not null before dereferencing it.
10070
10071 2018-04-30  Tom Tromey  <tom@tromey.com>
10072
10073         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10074         is_mi_like_p.
10075
10076 2018-04-30  Tom Tromey  <tom@tromey.com>
10077
10078         * breakpoint.c (mention): Remove use of is_mi_like_p.
10079         (print_mention_ranged_breakpoint): Likewise.
10080         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10081         of is_mi_like_p.
10082
10083 2018-04-30  Tom Tromey  <tom@tromey.com>
10084
10085         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10086
10087 2018-04-30  Tom Tromey  <tom@tromey.com>
10088
10089         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10090         (info_spu_event_command): Remove some uses of is_mi_like_p.
10091
10092 2018-04-30  Tom Tromey  <tom@tromey.com>
10093
10094         * python/py-framefilter.c (py_print_single_arg)
10095         (enumerate_locals, py_print_args, py_print_frame): Remove some
10096         uses of is_mi_like_p.
10097
10098 2018-04-30  Tom Tromey  <tom@tromey.com>
10099
10100         * ui-out.c: Update.
10101         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10102         * ui-out.h (ui_out::is_mi_like_p): Now const.
10103         (ui_out::do_is_mi_like_p): Now const.
10104         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10105
10106 2018-04-30  Tom Tromey  <tom@tromey.com>
10107
10108         * varobj.c (varobj_set_visualizer): Use new_reference.
10109         * python/python.c (gdbpy_decode_line): Use new_reference.
10110         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10111         new_reference.
10112
10113 2018-04-30  Tom Tromey  <tom@tromey.com>
10114
10115         * varobj.c (install_new_value): Use new_reference.
10116         * value.h (value_incref): Return void.  Swap intro comment with
10117         value_decref.
10118         * value.c (set_value_parent): Use new_reference.
10119         (value_incref): Return void.  Update intro comment.
10120         (release_value): Use new_reference.
10121         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10122
10123 2018-04-30  Tom Tromey  <tom@tromey.com>
10124
10125         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10126         * gdb_bfd.h (new_bfd_ref): Remove.
10127         (gdb_bfd_open): Update comment.
10128         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10129         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10130         (gdb_bfd_fdopenr): Use new_reference.
10131         * exec.c (exec_file_attach): Use new_reference.
10132
10133 2018-04-30  Tom Tromey  <tom@tromey.com>
10134
10135         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10136         method.
10137
10138 2018-04-30  Tom Tromey  <tom@tromey.com>
10139
10140         * jit.c (jit_read_code_entry): Use type_align.
10141         * i386-tdep.c (i386_gdbarch_init): Don't call
10142         set_gdbarch_long_long_align_bit.
10143         * gdbarch.sh: Remove long_long_align_bit.
10144         * gdbarch.c, gdbarch.h: Rebuild.
10145         * arc-tdep.c (arc_type_align): New function.
10146         (arc_gdbarch_init): Use arc_type_align.  Don't call
10147         set_gdbarch_long_long_align_bit.
10148
10149 2018-04-30  Tom Tromey  <tom@tromey.com>
10150
10151         * rust-lang.c (rust_type_alignment): Remove.
10152         (rust_composite_type): Use type_align.
10153
10154 2018-04-30  Tom Tromey  <tom@tromey.com>
10155
10156         * NEWS: Mention Type.align.
10157         * python/py-type.c (typy_get_alignof): New function.
10158         (type_object_getset): Add "alignof".
10159
10160 2018-04-30  Tom Tromey  <tom@tromey.com>
10161
10162         PR exp/17095:
10163         * NEWS: Update.
10164         * std-operator.def (UNOP_ALIGNOF): New operator.
10165         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10166         New.
10167         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10168         * c-lang.c (c_op_print_tab): Add alignof.
10169         * c-exp.y (ALIGNOF): New token.
10170         (exp): Add "ALIGNOF" production.
10171         (ident_tokens): Add _Alignof and alignof.
10172
10173 2018-04-30  Tom Tromey  <tom@tromey.com>
10174
10175         * i386-tdep.c (i386_type_align): New function.
10176         (i386_gdbarch_init): Update.
10177         * gdbarch.sh (type_align): New method.
10178         * gdbarch.c, gdbarch.h: Rebuild.
10179         * arch-utils.h (default_type_align): Declare.
10180         * arch-utils.c (default_type_align): New function.
10181         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10182         (struct type) <align_log2>: New field.
10183         <instance_flags>: Now a bitfield.
10184         (TYPE_RAW_ALIGN): New macro.
10185         (type_align, type_raw_align, set_type_align): Declare.
10186         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10187         functions.
10188         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10189         (get_alignment, maybe_set_alignment): New functions.
10190         (read_structure_type, read_enumeration_type, read_array_type)
10191         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10192         (read_subrange_type, read_base_type): Set type alignment.
10193
10194 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10195
10196         * dwarf2read.c (read_index_from_section): Use bool.
10197
10198 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10199
10200         PR gdb/22950
10201         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10202         with #ifdef.
10203
10204 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10205
10206         PR build/22873
10207         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10208         last step, and do it atomically.
10209
10210 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10211
10212         * compile/compile-c-types.c (convert_int, convert_float):
10213         Update for C FE v1.
10214
10215 2018-04-27  Tom Tromey  <tom@tromey.com>
10216
10217         PR rust/22545:
10218         * rust-lang.c (rust_inclusive_range_type_p): New function.
10219         (rust_range): Handle inclusive ranges.
10220         (rust_compute_range): Likewise.
10221         * rust-exp.y (struct rust_op) <inclusive>: New field.
10222         (DOTDOTEQ): New constant.
10223         (range_expr): Add "..=" productions.
10224         (operator_tokens): Add "..=" token.
10225         (ast_range): Add "inclusive" parameter.
10226         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10227         ranges.
10228         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10229         bounds values.
10230         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10231         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10232         Update comments.
10233         * expprint.c (print_subexp_standard): Handle new bounds values.
10234         (dump_subexp_body_standard): Likewise.
10235
10236 2018-04-27  Tom Tromey  <tom@tromey.com>
10237
10238         * configure: Rebuild.
10239         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10240         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10241         "OVERRIDE".
10242         (class symbol_needs_eval_context): Likewise.
10243         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10244         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10245         "virtual".
10246         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10247         "override".
10248         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10249         * aarch64-tdep.c (instruction_reader::read): Use "override".
10250         (instruction_reader_test::read): Likewise.
10251         * arm-tdep.c (instruction_reader::read): Use "override".
10252         (instruction_reader_thumb::read): Likewise.
10253
10254 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10255
10256         PR remote/9665
10257         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10258         instead of remote_send.
10259         (remote_send): Remove.
10260
10261 2018-04-26  Pedro Alves  <palves@redhat.com>
10262
10263         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10264         find_function_start_sal instead of find_pc_line.
10265
10266 2018-04-26  Pedro Alves  <palves@redhat.com>
10267
10268         * breakpoint.c (set_breakpoint_location_function): Handle
10269         mst_data_gnu_ifunc.
10270         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10271         * elfread.c (elf_symtab_read): Give data symbols with
10272         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10273         (elf_rel_plt_read): Update comment.
10274         * linespec.c (convert_linespec_to_sals): Handle
10275         mst_data_gnu_ifunc.
10276         (minsym_found): Handle mst_data_gnu_ifunc.
10277         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10278         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10279         * parse.c (find_minsym_type_and_address): Handle
10280         mst_data_gnu_ifunc.
10281         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10282         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10283         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10284         comment.
10285         <mst_data_gnu_ifunc>: New enumerator.
10286
10287 2018-04-26  Pedro Alves  <palves@redhat.com>
10288
10289         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10290         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10291         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10292         Handle it.
10293         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10294         (lookup_minimal_symbol_by_pc): Adjust.
10295         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10296         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10297         * minsyms.h (lookup_msym_prefer): New enum.
10298         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10299         parameter by a lookup_msym_prefer parameter.
10300
10301 2018-04-26  Pedro Alves  <palves@redhat.com>
10302
10303         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10304         ends in "@plt" instead of looking at the symbol's section.
10305
10306 2018-04-26  Pedro Alves  <palves@redhat.com>
10307
10308         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10309         all references.
10310         (find_pc_partial_function_gnu_ifunc): Rename to ...
10311         (find_pc_partial_function): ... this, and remove references to
10312         'is_gnu_ifunc_p'.
10313         (find_pc_partial_function): Delete old implementation.
10314         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10315
10316 2018-04-26  Pedro Alves  <palves@redhat.com>
10317
10318         * linespec.c (struct bound_minimal_symbol_search_key): New.
10319         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10320         skip first line if we found a GNU ifunc minimal symbol by name.
10321         (compare_msymbols): Change parameters to work with a destructured
10322         lhs minsym.
10323         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10324         functions.
10325
10326 2018-04-26  Pedro Alves  <palves@redhat.com>
10327
10328         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10329         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10330         address/name.
10331         (add_location_to_breakpoint): Store the minsym and the objfile in
10332         the breakpoint location.
10333         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10334         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10335         Record the minsym in the sal.
10336         * symtab.h (symtab_and_line) <msymbol>: New field.
10337
10338 2018-04-26  Pedro Alves  <palves@redhat.com>
10339
10340         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10341         unless we actually resolved the ifunc.
10342
10343 2018-04-26  Pedro Alves  <palves@redhat.com>
10344
10345         * c-exp.y (variable production): Prefer ifunc minsyms over
10346         regular function symbols.
10347         * symtab.c (find_gnu_ifunc): New function.
10348         * minsyms.h (lookup_msym_prefer): New enum.
10349         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10350         parameter by a lookup_msym_prefer parameter.
10351         * symtab.h (find_gnu_ifunc): New declaration.
10352
10353 2018-04-26  Pedro Alves  <palves@redhat.com>
10354
10355         * blockframe.c (find_gnu_ifunc_target_type): New function.
10356         (find_function_type): New.
10357         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10358         return a value with a memory address.
10359         (eval_call): For calls to GNU ifunc functions, try to find the
10360         type of the target function from the type that the resolver
10361         returns.
10362         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10363         symbols.
10364         * infcall.c (find_function_return_type): Delete.
10365         (find_function_addr): Add 'function_type' parameter.  For calls to
10366         GNU ifunc functions, try to find the type of the target function
10367         from the type that the resolver returns, and return it via
10368         FUNCTION_TYPE.
10369         (call_function_by_hand_dummy): Adjust to use the function type
10370         returned by find_function_addr.
10371         (find_function_addr): Add 'function_type' parameter and move
10372         description here.
10373         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10374         declarations.
10375
10376 2018-04-26  Pedro Alves  <palves@redhat.com>
10377
10378         * c-exp.y (variable production): Skip finding an alias for ifunc
10379         symbols.
10380
10381 2018-04-26  Pedro Alves  <palves@redhat.com>
10382
10383         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10384
10385 2018-04-25  Pedro Alves  <palves@redhat.com>
10386
10387         * infcmd.c (kill_command): Print the pid as string, not the whole
10388         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10389         message.
10390         * remote.c (remote_detach_1): Print the pid as string, not the
10391         whole thread's ptid.
10392
10393 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10394             Sergio Durigan Junior  <sergiodj@redhat.com>
10395             Pedro Alves  <palves@redhat.com>
10396
10397         * infcmd.c (kill_command): Print message when inferior has
10398         been killed.
10399         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10400         '1'.
10401         (add_inferior): Improve message printed when
10402         'print_inferior_events' is on.
10403         (exit_inferior): Remove message printed when
10404         'print_inferior_events' is on.
10405         (detach_inferior): Improve message printed when
10406         'print_inferior_events' is on.
10407         (initialize_inferiors): Use 'add_inferior_silent' to set
10408         'current_inferior_'.
10409         * inferior.h (print_inferior_events): Declare here as
10410         'extern'.
10411         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10412         '[Detaching...]' messages when 'print_inferior_events' is on.
10413         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10414         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10415         'Detaching after fork from child...', replace it by '... from
10416         parent...'.
10417         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10418         prefix/suffix when printing 'Detaching...' messages.  Print
10419         them when 'print_inferior_events' is on.
10420         * remote.c (remote_detach_1): Print message when detaching
10421         from inferior and '!is_fork_parent'.
10422
10423 2018-04-24  Tom Tromey  <tom@tromey.com>
10424
10425         * cli-out.h: Reindent.
10426
10427 2018-04-24  Tom Tromey  <tom@tromey.com>
10428
10429         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10430         (cli_ui_out::do_field_string): Use fputs_filtered.
10431         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10432
10433 2018-04-23  Tom Tromey  <tom@tromey.com>
10434
10435         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10436         gdb::unique_xmalloc_ptr.
10437
10438 2018-04-23  Tom Tromey  <tom@tromey.com>
10439
10440         * configure: Rebuild.
10441
10442 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10443
10444         PR gdb/23095
10445         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10446         prepare_for_testing.  Set normal_bp to r_debug_state if target
10447         is bsd.
10448
10449 2018-04-21  Pedro Alves  <palves@redhat.com>
10450             Rajendra SY  <rajendra.sy@gmail.com>
10451
10452         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10453         * remote.c (extended_remote_attach): In all-stop mode, mark the
10454         thread as executing.
10455
10456 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10457
10458         * thread.c (thread_apply_all_command): Fix comment.
10459         (thread_command): Fix comment.
10460
10461 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10462
10463         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10464         parameter.
10465         * features/aarch64-core.c (create_feature_aarch64_core):
10466         Regenerate.
10467         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10468         Likewise.
10469         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10470         Likewise.
10471         * features/i386/32bit-avx512.c
10472         (create_feature_i386_32bit_avx512): Likewise.
10473         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10474         Likewise.
10475         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10476         Likewise.
10477         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10478         Likewise.
10479         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10480         Likewise.
10481         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10482         Likewise.
10483         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10484         Likewise.
10485         * features/i386/64bit-avx512.c
10486         (create_feature_i386_64bit_avx512): Likewise.
10487         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10488         Likewise.
10489         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10490         Likewise.
10491         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10492         Likewise.
10493         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10494         Likewise.
10495         * features/i386/64bit-segments.c
10496         (create_feature_i386_64bit_segments): Likewise.
10497         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10498         Likewise.
10499         * features/i386/x32-core.c
10500         (create_feature_i386_x32_core): Likewise.
10501         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10502         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10503         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10504         * target-descriptions.c: In generated code, don't pass xml
10505         filename.
10506
10507 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10508
10509         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10510         (print_xml_feature::visit_post): Likewise.
10511         (print_xml_feature::visit): Likewise.
10512         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10513         (print_xml_feature): Add new class.
10514         * regformats/regdat.sh: Null xmltarget on feature targets.
10515         * target-descriptions.c (struct target_desc): Add xmltarget.
10516         (maintenance_check_tdesc_xml_convert): Add unittest function.
10517         (tdesc_get_features_xml): Add function to get xml.
10518         (maintenance_check_xml_descriptions): Test xml generation.
10519         * xml-tdesc.c (string_read_description_xml): Add function.
10520         * xml-tdesc.h (string_read_description_xml): Add declaration.
10521
10522 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10523
10524         * features/Makefile: Add feature marker to targets with new style
10525         target descriptions.
10526         * regformats/aarch64.dat: Regenerate.
10527         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10528         * regformats/i386/amd64-avx-linux.dat: Likewise.
10529         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10530         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10531         * regformats/i386/amd64-linux.dat: Likewise.
10532         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10533         * regformats/i386/amd64.dat: Likewise.
10534         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10535         * regformats/i386/i386-avx-linux.dat: Likewise.
10536         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10537         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10538         * regformats/i386/i386-linux.dat: Likewise.
10539         * regformats/i386/i386-mmx-linux.dat: Likewise.
10540         * regformats/i386/i386-mpx-linux.dat: Likewise.
10541         * regformats/i386/i386.dat: Likewise.
10542         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10543         * regformats/i386/x32-avx-linux.dat: Likewise.
10544         * regformats/i386/x32-linux.dat: Likewise.
10545         * regformats/tic6x-c62x-linux.dat: Likewise.
10546         * regformats/tic6x-c64x-linux.dat: Likewise.
10547         * regformats/tic6x-c64xp-linux.dat: Likewise.
10548         * regformats/regdat.sh: Parse feature marker.
10549
10550 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10551
10552         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
10553         (tdesc_osabi_name): Likewise.
10554         * target-descriptions.c (tdesc_architecture_name): Add new
10555         function.
10556         (tdesc_osabi_name): Likewise.
10557
10558 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10559
10560         * common/tdesc.c (tdesc_predefined_type): Move to here.
10561         (tdesc_named_type): Likewise.
10562         (tdesc_create_vector): Likewise.
10563         (tdesc_create_struct): Likewise.
10564         (tdesc_set_struct_size): Likewise.
10565         (tdesc_create_union): Likewise.
10566         (tdesc_create_flags): Likewise.
10567         (tdesc_create_enum): Likewise.
10568         (tdesc_add_field): Likewise.
10569         (tdesc_add_typed_bitfield): Likewise.
10570         (tdesc_add_bitfield): Likewise.
10571         (tdesc_add_flag): Likewise.
10572         (tdesc_add_enum_value): Likewise.
10573         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
10574         (struct tdesc_type_vector): Likewise.
10575         (struct tdesc_type_field): Likewise.
10576         (struct tdesc_type_with_fields): Likewise.
10577         (tdesc_create_enum): Add declaration.
10578         (tdesc_add_typed_bitfield): Likewise.
10579         (tdesc_add_enum_value): Likewise.
10580         * target-descriptions.c (tdesc_type_field): Move from here.
10581         (tdesc_type_builtin): Likewise.
10582         (tdesc_type_vector): Likewise.
10583         (tdesc_type_with_fields): Likewise.
10584         (tdesc_predefined_types): Likewise.
10585         (tdesc_named_type): Likewise.
10586         (tdesc_create_vector): Likewise.
10587         (tdesc_create_struct): Likewise.
10588         (tdesc_set_struct_size): Likewise.
10589         (tdesc_create_union): Likewise.
10590         (tdesc_create_flags): Likewise.
10591         (tdesc_create_enum): Likewise.
10592         (tdesc_add_field): Likewise.
10593         (tdesc_add_typed_bitfield): Likewise.
10594         (tdesc_add_bitfield): Likewise.
10595         (tdesc_add_flag): Likewise.
10596         (tdesc_add_enum_value): Likewise.
10597         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
10598         (tdesc_add_typed_bitfield): Likewise.
10599         (tdesc_add_enum_value): Likewise.
10600
10601 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10602
10603         * common/tdesc.c (tdesc_feature::accept): Move to here.
10604         (tdesc_feature::operator==): Likewise.
10605         (tdesc_create_reg): Likewise.
10606         * common/tdesc.h (tdesc_type_kind): Likewise.
10607         (struct tdesc_type): Likewise.
10608         (struct tdesc_feature): Likewise.
10609         * regformats/regdat.sh: Create a feature.
10610         * target-descriptions.c (tdesc_type_kind): Move from here.
10611         (tdesc_type): Likewise.
10612         (tdesc_type_up): Likewise.
10613         (tdesc_feature): Likewise.
10614         (tdesc_create_reg): Likewise.
10615
10616 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10617
10618         * Makefile.in: Add arch/tdesc.c
10619         * common/tdesc.c: New file.
10620         * common/tdesc.h (tdesc_element_visitor): Move to here.
10621         (tdesc_element): Likewise.
10622         (tdesc_reg): Likewise.
10623         (tdesc_reg_up): Likewise.
10624         * regformats/regdef.h (reg): Add offset to constructors.
10625         * target-descriptions.c (tdesc_element_visitor): Move from here.
10626         (tdesc_element): Likewise.
10627         (tdesc_reg): Likewise.
10628         (tdesc_reg_up): Likewise.
10629
10630 2018-04-17  Tom Tromey  <tom@tromey.com>
10631
10632         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
10633         discriminant field.
10634
10635 2018-04-17  Tom Tromey  <tom@tromey.com>
10636
10637         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
10638
10639 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10640
10641         * symtab.c (print_symbol_info): Skip printing filename and line
10642         number when `last' is NULL.
10643         (symtab_symbol_info): Use empty string instead of NULL for first
10644         invocation of print_symbol_info.
10645         (rbreak_command): Pass NULL to `last' parameter of
10646         print_symbol_info.
10647
10648 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
10649
10650         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
10651         instead of nullptr.
10652
10653 2018-04-16  Pedro Alves  <palves@redhat.com>
10654
10655         * MAINTAINERS (sh): Remove.
10656         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
10657         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
10658         (ALLDEPFILES): Remove sh64-tdep.c.
10659         * NEWS: Mentions that support for SH-5/SH64 is removed.
10660         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
10661         (sh*-*-openbsd*): Ditto.
10662         (sh64-*-elf*): Remove.
10663         (sh*): Remove.
10664         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
10665         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
10666         * sh-tdep.c: No longer include "sh64-tdep.h".
10667         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
10668         * sh64-tdep.c, sh64-tdep.h: Remove files.
10669
10670 2018-04-16  Pedro Alves  <palves@redhat.com>
10671
10672         * MAINTAINERS: Remove m88k.
10673         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
10674         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
10675         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
10676         * NEWS: Mention that support for m88k was removed.
10677         * configure.host (m88*-*-*): Remove support.
10678         * configure.nat (m88k-*-*): Remove support.
10679         * configure.tgt (m88*-*-openbsd*): Remove.
10680         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
10681
10682 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
10683
10684         * configure.tgt (x86_tobjs): New variable.
10685         (amd64_tobjs, i386_tobjs): Use it.
10686
10687 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10688
10689         * symtab.c (print_symbol_info): Precede the symbol definition by
10690         the line number when available.
10691         * NEWS: Advertise this enhancement.
10692
10693 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10694
10695         * NEWS (New options): announce set/show record btrace cpu.
10696         * btrace.c: Include record-btrace.h.
10697         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
10698         the vendor is unknown.
10699         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
10700         Maybe overwrite the btrace configuration's cpu.
10701         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
10702         (btrace_fetch): Add cpu parameter.  Update callers.
10703         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
10704         Maybe overwrite the btrace configuration's cpu.  Skip enabling
10705         errata workarounds if the vendor is unknown.
10706         * python/py-record-btrace.c: Include record-btrace.h.
10707         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
10708         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
10709         * record-btrace.c (record_btrace_cpu_state_kind): New.
10710         (record_btrace_cpu): New.
10711         (set_record_btrace_cpu_cmdlist): New.
10712         (record_btrace_get_cpu): New.
10713         (require_btrace_thread, record_btrace_info)
10714         (record_btrace_resume_thread): Call record_btrace_get_cpu.
10715         (cmd_set_record_btrace_cpu_none): New.
10716         (cmd_set_record_btrace_cpu_auto): New.
10717         (cmd_set_record_btrace_cpu): New.
10718         (cmd_show_record_btrace_cpu): New.
10719         (_initialize_record_btrace): Initialize set/show record btrace cpu
10720         commands.
10721         * record-btrace.h (record_btrace_get_cpu): New.
10722
10723 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10724
10725         * record.c (set_record_command): Fix typo in message.
10726
10727 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10728
10729         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
10730
10731 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10732
10733         * infrun.c (process_event_stop_test): Call
10734         gdbarch_in_indirect_branch_thunk.
10735         * gdbarch.sh (in_indirect_branch_thunk): New.
10736         * gdbarch.c: Regenerated.
10737         * gdbarch.h: Regenerated.
10738         * x86-tdep.h: New.
10739         * x86-tdep.c: New.
10740         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
10741         (HFILES_NO_SRCDIR): Add x86-tdep.h.
10742         (ALLDEPFILES): Add x86-tdep.c.
10743         * arch-utils.h (default_in_indirect_branch_thunk): New.
10744         * arch-utils.c (default_in_indirect_branch_thunk): New.
10745         * i386-tdep: Include x86-tdep.h.
10746         (i386_in_indirect_branch_thunk): New.
10747         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
10748         function.
10749         * amd64-tdep: Include x86-tdep.h.
10750         (amd64_in_indirect_branch_thunk): New.
10751         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
10752
10753 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
10754
10755         PR gdb/23053
10756         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
10757         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
10758         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
10759         regression.
10760
10761 2018-04-12  Tom Tromey  <tom@tromey.com>
10762
10763         * rust-lang.c (rust_print_struct_def): Remove univariant code.
10764         (rust_evaluate_subexp): Likewise.
10765
10766 2018-04-12  Pedro Alves  <palves@redhat.com>
10767
10768         * procfs.c (procfs_detach): Make forward declaration's prototype
10769         match definition's protototype.
10770         (proc_get_LDT_entry): Remove stale do_cleanups call.
10771
10772 2018-04-12  Pedro Alves  <palves@redhat.com>
10773
10774         * target.h (target_ops::to_has_exited): Delete.
10775         (target_has_exited): Delete.
10776         * target-delegates.c: Regenerate.
10777
10778 2018-04-11  Pedro Alves  <palves@redhat.com>
10779
10780         * target.c (fileio_fh_t::t): Add comment.
10781         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10782         (target_fileio_close): Handle a NULL target.
10783         (invalidate_fileio_fh): New.
10784         (target_close): Call it.
10785         * remote.c (remote_hostio_send_command): No longer check whether
10786         remote_desc is open.
10787
10788 2018-04-11  Pedro Alves  <palves@redhat.com>
10789
10790         * target.c (fileio_fh_t): Make it a named struct instead of a
10791         typedef.
10792         (fileio_fh_t::is_closed): New method.
10793         (DEF_VEC_O (fileio_fh_t)): Remove.
10794         (fileio_fhandles): Now a std::vector.
10795         (is_closed_fileio_fh): Delete.
10796         (acquire_fileio_fd): Adjust.  Rename parameters.
10797         (release_fileio_fd): Adjust.
10798         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
10799         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10800         (target_fileio_close): Adjust.
10801
10802 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
10803
10804         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
10805         index.
10806
10807 2018-04-10  Pedro Alves  <palves@redhat.com>
10808
10809         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
10810         (scoped_finish_thread_state): New class.
10811         * infcmd.c (run_command_1): Use it instead of finish_thread_state
10812         cleanup.
10813         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
10814         (fetch_inferior_event, normal_stop): Likewise.
10815         * thread.c (finish_thread_state_cleanup): Delete.
10816
10817 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10818             Pedro Alves  <palves@redhat.com>
10819
10820         * value.c: Include "selftest.h" and "common/array-view.h".
10821         (struct range) <operator ==>: New.
10822         (test_ranges_contain): New.
10823         (check_ranges_vector): New.
10824         (test_insert_into_bit_range_vector): New.
10825         (_initialize_values): Register selftests.
10826         * common/array-view.h (operator==, operator!=): New.
10827
10828 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10829
10830         * common/gdb_vecs.h (unordered_remove): Add overload that takes
10831         an iterator.
10832         * inline-frame.c: Include <algorithm>.
10833         (struct inline_state): Add constructor.
10834         (inline_state_s): Remove.
10835         (DEF_VEC_O(inline_state_s)): Remove.
10836         (inline_states): Change type to std::vector.
10837         (find_inline_frame_state): Adjust to std::vector.
10838         (allocate_inline_frame_state): Remove.
10839         (clear_inline_frame_state): Adjust to std::vector.
10840         (skip_inline_frames): Adjust to std::vector.
10841
10842 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10843
10844         * tracepoint.h (struct trace_state_variable): Add constructor.
10845         <name>: Change type to std::string.
10846         * tracepoint.c (tsv_s): Remove.
10847         (DEF_VEC_O(tsv_s)): Remove.
10848         (tvariables): Change to std::vector.
10849         (create_trace_state_variable): Adjust to std::vector.
10850         (find_trace_state_variable): Likewise.
10851         (find_trace_state_variable_by_number): Likewise.
10852         (delete_trace_state_variable): Likewise.
10853         (trace_variable_command): Adjust to std::string.
10854         (delete_trace_variable_command): Likewise.
10855         (tvariables_info_1): Adjust to std::vector.
10856         (save_trace_state_variables): Likewise.
10857         (start_tracing): Likewise.
10858         (merge_uploaded_trace_state_variables): Adjust to std::vector
10859         and std::string.
10860         * target.h (struct target_ops)
10861         <to_download_trace_state_variable>: Pass reference to
10862         trace_state_variable.
10863         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
10864         * target-delegates.c: Re-generate.
10865         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
10866         (mi_tsv_deleted): Likewise.
10867         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
10868         * remote.c (remote_download_trace_state_variable): Change
10869         pointer to reference and adjust.
10870         * make-target-delegates (parse_argtypes): Handle references.
10871         (write_function_header): Likewise.
10872         (munge_type): Likewise.
10873
10874 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10875
10876         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10877         string_view-selftests.c.
10878         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
10879         testsuite.
10880         * unittests/basic_string_view/cons/char/1.cc: Likewise.
10881         * unittests/basic_string_view/cons/char/2.cc: Likewise.
10882         * unittests/basic_string_view/cons/char/3.cc: Likewise.
10883         * unittests/basic_string_view/element_access/char/1.cc:
10884         Likewise.
10885         * unittests/basic_string_view/element_access/char/empty.cc:
10886         Likewise.
10887         * unittests/basic_string_view/element_access/char/front_back.cc:
10888         Likewise.
10889         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
10890         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
10891         Likewise.
10892         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
10893         Likewise.
10894         * unittests/basic_string_view/modifiers/swap/char/1.cc:
10895         Likewise.
10896         * unittests/basic_string_view/operations/compare/char/1.cc:
10897         Likewise.
10898         * unittests/basic_string_view/operations/compare/char/13650.cc:
10899         Likewise.
10900         * unittests/basic_string_view/operations/copy/char/1.cc:
10901         Likewise.
10902         * unittests/basic_string_view/operations/data/char/1.cc:
10903         Likewise.
10904         * unittests/basic_string_view/operations/find/char/1.cc:
10905         Likewise.
10906         * unittests/basic_string_view/operations/find/char/2.cc:
10907         Likewise.
10908         * unittests/basic_string_view/operations/find/char/3.cc:
10909         Likewise.
10910         * unittests/basic_string_view/operations/find/char/4.cc:
10911         Likewise.
10912         * unittests/basic_string_view/operations/rfind/char/1.cc:
10913         Likewise.
10914         * unittests/basic_string_view/operations/rfind/char/2.cc:
10915         Likewise.
10916         * unittests/basic_string_view/operations/rfind/char/3.cc:
10917         Likewise.
10918         * unittests/basic_string_view/operations/substr/char/1.cc:
10919         Likewise.
10920         * unittests/basic_string_view/operators/char/2.cc: Likewise.
10921         * unittests/string_view-selftests.c: New file.
10922
10923 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10924
10925         * unittests/basic_string_view/capacity/1.cc: New file.
10926         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
10927         * unittests/basic_string_view/cons/char/1.cc: New file.
10928         * unittests/basic_string_view/cons/char/2.cc: New file.
10929         * unittests/basic_string_view/cons/char/3.cc: New file.
10930         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
10931         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
10932         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
10933         * unittests/basic_string_view/element_access/char/1.cc: New file.
10934         * unittests/basic_string_view/element_access/char/2.cc: New file.
10935         * unittests/basic_string_view/element_access/char/empty.cc: New file.
10936         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
10937         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
10938         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
10939         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
10940         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
10941         * unittests/basic_string_view/include.cc: New file.
10942         * unittests/basic_string_view/inserters/char/1.cc: New file.
10943         * unittests/basic_string_view/inserters/char/2.cc: New file.
10944         * unittests/basic_string_view/inserters/char/3.cc: New file.
10945         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
10946         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
10947         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
10948         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
10949         * unittests/basic_string_view/literals/types.cc: New file.
10950         * unittests/basic_string_view/literals/values.cc: New file.
10951         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
10952         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
10953         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
10954         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
10955         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
10956         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
10957         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
10958         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
10959         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
10960         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
10961         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
10962         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
10963         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
10964         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
10965         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
10966         * unittests/basic_string_view/operations/data/char/1.cc: New file.
10967         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
10968         * unittests/basic_string_view/operations/find/char/1.cc: New file.
10969         * unittests/basic_string_view/operations/find/char/2.cc: New file.
10970         * unittests/basic_string_view/operations/find/char/3.cc: New file.
10971         * unittests/basic_string_view/operations/find/char/4.cc: New file.
10972         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
10973         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
10974         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
10975         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
10976         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
10977         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
10978         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
10979         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
10980         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
10981         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
10982         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
10983         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
10984         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
10985         * unittests/basic_string_view/operators/char/2.cc: New file.
10986         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
10987         * unittests/basic_string_view/range_access/char/1.cc: New file.
10988         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
10989         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
10990         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
10991         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
10992         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
10993         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
10994         * unittests/basic_string_view/requirements/typedefs.cc: New file.
10995         * unittests/basic_string_view/typedefs.cc: New file.
10996         * unittests/basic_string_view/types/1.cc: New file.
10997
10998 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10999
11000         * common/gdb_string_view.h: Remove libstdc++ implementation
11001         details, adjust to gdb reality.
11002         * common/gdb_string_view.tcc: Likewise.
11003         * cli/cli-script.c (struct string_view): Remove.
11004         (user_args) <m_args>: Change element type to gdb::string_view.
11005         (user_args::insert_args): Adjust.
11006
11007 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11008
11009         * common/gdb_string_view.h: New file.
11010         * common/gdb_string_view.tcc: New file.
11011
11012 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11013
11014         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11015         * configure: Re-generate.
11016
11017 2018-04-09  Pedro Alves  <palves@redhat.com>
11018
11019         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11020         (set_target_gdbarch): Call
11021         gdb::observers::architecture_changed.notify instead of
11022         observer_notify_architecture_changed.
11023
11024 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11025
11026         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11027         (do_restore_current_traceframe_cleanup): Remove.
11028         (restore_current_traceframe_cleanup_dtor): Remove.
11029         (make_cleanup_restore_current_traceframe): Remove.
11030         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11031         New.
11032         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11033         * infrun.c (fetch_inferior_event): Use
11034         scoped_restore_current_traceframe.
11035
11036 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11037
11038         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11039         Remove.
11040         <n_allocated_type_units>: Remove.
11041         <all_type_units>: Change to std::vector.
11042         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11043         to std::vector change.
11044         (dwarf2_per_objfile::get_cutu): Likewise.
11045         (dwarf2_per_objfile::get_tu): Likewise.
11046         (create_signatured_type_table_from_index): Likewise.
11047         (create_signatured_type_table_from_debug_names): Likewise.
11048         (dw2_symtab_iter_next): Likewise.
11049         (dw2_print_stats): Likewise.
11050         (dw2_expand_all_symtabs): Likewise.
11051         (dw2_expand_marked_cus): Likewise.
11052         (dw2_debug_names_iterator::next): Likewise.
11053         (dwarf2_initialize_objfile): Likewise.
11054         (add_signatured_type_cu_to_table): Likewise.
11055         (create_all_type_units): Likewise.
11056         (add_type_unit): Likewise.
11057         (struct tu_abbrev_offset): Add constructor.
11058         (build_type_psymtabs_1): Adjust to std::vector change.
11059         (print_tu_stats): Likewise.
11060         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11061         (write_debug_names): Likewise.
11062
11063 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11064
11065         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11066         Make an std::vector.
11067         <n_comp_units>: Remove.
11068         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11069         to std::vector change.
11070         (dwarf2_per_objfile::get_cutu): Likewise.
11071         (dwarf2_per_objfile::get_cu): Likewise.
11072         (create_cus_from_index): Likewise.
11073         (create_addrmap_from_index): Likewise.
11074         (create_addrmap_from_aranges): Likewise.
11075         (dwarf2_read_index): Likewise.
11076         (dw2_find_last_source_symtab): Likewise.
11077         (dw2_map_symtabs_matching_filename): Likewise.
11078         (dw2_symtab_iter_next): Likewise.
11079         (dw2_print_stats): Likewise.
11080         (dw2_expand_all_symtabs): Likewise.
11081         (dw2_expand_symtabs_with_fullname): Likewise.
11082         (dw2_expand_marked_cus): Likewise.
11083         (dw2_map_symbol_filenames): Likewise.
11084         (create_cus_from_debug_names): Likewise.
11085         (dwarf2_read_debug_names): Likewise.
11086         (dw2_debug_names_iterator::next): Likewise.
11087         (dwarf2_initialize_objfile): Likewise.
11088         (set_partial_user): Likewise.
11089         (dwarf2_build_psymtabs_hard): Likewise.
11090         (read_comp_units_from_section): Remove arguments, adjust to
11091         std::vector change.
11092         (create_all_comp_units): Adjust to std::vector and
11093         read_comp_units_from_section changes.
11094         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11095         change.
11096         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11097         (psyms_seen_size): Likewise.
11098         (write_gdbindex): Likewise.
11099         (write_debug_names): Likewise.
11100
11101 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11102
11103         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11104         with dwarf2_per_objfile.
11105         (create_cus_from_index): Likewise.
11106         (create_signatured_type_table_from_index): Likewise.
11107         (dwarf2_read_index): Likewise.
11108         (dwarf2_initialize_objfile): Likewise.
11109         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11110         per_cu rather than get_dwarf2_per_objfile.
11111
11112 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11113
11114         * dwarf2read.h (struct signatured_type): Forward declare.
11115         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11116         New methods.
11117         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11118         (dw2_get_cutu): ...this.
11119         (dwarf2_per_objfile::get_cu): Rename from...
11120         (dw2_get_cu): ...this.
11121         (dwarf2_per_objfile::get_tu): New.
11122         (create_addrmap_from_index): Adjust.
11123         (create_addrmap_from_aranges): Adjust.
11124         (dw2_find_last_source_symtab): Adjust.
11125         (dw2_map_symtabs_matching_filename): Adjust.
11126         (dw2_symtab_iter_next): Adjust.
11127         (dw2_print_stats): Adjust.
11128         (dw2_expand_all_symtabs): Adjust.
11129         (dw2_expand_symtabs_with_fullname): Adjust.
11130         (dw2_expand_marked_cus): Adjust.
11131         (dw_expand_symtabs_matching_file_matcher): Adjust.
11132         (dw2_map_symbol_filenames): Adjust.
11133         (dw2_debug_names_iterator::next): Adjust.
11134         (dwarf2_initialize_objfile): Adjust.
11135         (set_partial_user): Adjust.
11136         (dwarf2_build_psymtabs_hard): Adjust.
11137
11138 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11139
11140         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11141         Remove unused variables.
11142         (dw2_map_symtabs_matching_filename): Likewise.
11143         (dwarf2_record_block_ranges): Likewise.
11144         (dwarf2_read_addr_index): Likewise.
11145         (follow_die_offset): Likewise.
11146
11147 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11148
11149         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11150         to symbol_file_add_main.
11151
11152 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11153
11154         PR mi/22299
11155         * mi/mi-console.c (do_fputc_async_safe): New.
11156         (mi_console_file::write_async_safe): New.
11157         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11158         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11159         New.
11160         * ui-file.c (ui_file::putstrn): Adjust call to
11161         fputstrn_unfiltered.
11162         * utils.c (printchar): Replace do_fputs and do_fprintf
11163         parameters by do_fputc.
11164         (fputstr_filtered): Adjust call to printchar.
11165         (fputstr_unfiltered): Likewise.
11166         (fputstrn_filtered): Likewise.
11167         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11168         printchar.
11169         * utils.h (do_fputc_ftype): New typedef.
11170         (fputstrn_unfiltered): Add do_fputc parameter.
11171
11172 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11173
11174         * regformats/i386/i386-avx.dat: Remove.
11175
11176 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11177
11178         PR gdb/22979
11179         * amd64-tdep.c (amd64_none_init_abi): New function.
11180         (amd64_x32_none_init_abi): New function.
11181         (_initialize_amd64_tdep): Register handlers for x86-64 and
11182         x64_32 with GDB_OSABI_NONE.
11183         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11184         GDB_OSABI_NONE osabi.
11185
11186 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11187
11188         PR gdb/22980
11189         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11190         GDB_OSABI_NONE.
11191         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11192         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11193
11194 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11195
11196         * common/byte-vector.h (char_vector): New type.
11197         * target.h (target_read_alloc): Return
11198         gdb::optional<byte_vector>.
11199         (target_read_stralloc): Return gdb::optional<char_vector>.
11200         (target_get_osdata): Return gdb::optional<char_vector>.
11201         * target.c (target_read_alloc_1): Templatize.  Replacement
11202         manual memory management with vector.
11203         (target_read_alloc): Change return type, adjust.
11204         (target_read_stralloc): Change return type, adjust.
11205         (target_get_osdata): Change return type, adjust.
11206         * auxv.c (struct auxv_info) <length>: Remove.
11207         <data>: Change type to gdb::optional<byte_vector>.
11208         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11209         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11210         (target_auxv_search): Adjust.
11211         (fprint_target_auxv): Adjust.
11212         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11213         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11214         (linux_make_corefile_notes): Adjust.
11215         * osdata.c (get_osdata): Adjust.
11216         * remote.c (remote_get_threads_with_qxfer): Adjust.
11217         (remote_memory_map): Adjust.
11218         (remote_traceframe_info): Adjust.
11219         (btrace_read_config): Adjust.
11220         (remote_read_btrace): Adjust.
11221         (remote_pid_to_exec_file): Adjust.
11222         * solib-aix.c (solib_aix_get_library_list): Adjust.
11223         * solib-dsbt.c (decode_loadmap): Don't free buf.
11224         (dsbt_get_initial_loadmaps): Adjust.
11225         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11226         * solib-target.c (solib_target_current_sos): Adjust.
11227         * tracepoint.c (sdata_make_value): Adjust.
11228         * xml-support.c (xinclude_start_include): Adjust.
11229         (xml_fetch_content_from_file): Adjust.
11230         * xml-support.h (xml_fetch_another): Change return type.
11231         (xml_fetch_content_from_file): Change return type.
11232         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11233         * xml-tdesc.c (file_read_description_xml): Adjust.
11234         (fetch_available_features_from_target): Change return type.
11235         (target_fetch_description_xml): Adjust.
11236         (target_read_description_xml): Adjust.
11237
11238 2018-04-06  Tom Tromey  <tom@tromey.com>
11239
11240         * value.c (~value): Update.
11241         (struct value) <contents>: Now unique_xmalloc_ptr.
11242         (value_contents_bits_eq, allocate_value_contents)
11243         (value_contents_raw, value_contents_all_raw)
11244         (value_contents_for_printing, value_contents_for_printing_const)
11245         (set_value_enclosing_type): Update.
11246
11247 2018-04-06  Tom Tromey  <tom@tromey.com>
11248
11249         * value.c (range_s): Remove typedef, VEC.
11250         (struct range): Add operator<.
11251         (range_lessthan): Remove.
11252         (ranges_contain): Change type.
11253         (~value): Update.
11254         (struct value) <unavailable, optimized_out>: Now std::vector.
11255         (value_entirely_available)
11256         (value_entirely_covered_by_range_vector)
11257         (value_entirely_unavailable, value_entirely_optimized_out):
11258         Update.
11259         (insert_into_bit_range_vector): Change argument type.
11260         (find_first_range_overlap): Likewise.
11261         (struct ranges_and_idx, value_contents_bits_eq)
11262         (require_not_optimized_out, require_available): Update.
11263         (ranges_copy_adjusted): Change argument types.
11264         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11265
11266 2018-04-06  Tom Tromey  <tom@tromey.com>
11267
11268         * value.c (~value): Update.
11269         (struct value) <parent>: Now a value_ref_ptr.
11270         (value_parent, set_value_parent, value_address, value_copy):
11271         Update.
11272
11273 2018-04-06  Tom Tromey  <tom@tromey.com>
11274
11275         * value.c (struct value): Add constructor, destructor, and member
11276         initializers.
11277         (allocate_value_lazy, value_decref): Update.
11278
11279 2018-04-06  Tom Tromey  <tom@tromey.com>
11280
11281         * value.c (struct value) <released, next>: Remove.
11282         (all_values): Now a std::vector.
11283         (allocate_value_lazy): Update.
11284         (value_next): Remove.
11285         (value_mark, value_free_to_mark, release_value)
11286         (value_release_to_mark): Update.
11287
11288 2018-04-06  Tom Tromey  <tom@tromey.com>
11289
11290         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11291         (free_value_chain): Remove.
11292         * value.c (free_value_chain): Remove.
11293         (value_release_to_mark): Return a std::vector.
11294         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11295         std::vector.
11296         (check_condition): Update.
11297         * eval.c (fetch_subexp_value): Change "val_chain" to a
11298         std::vector.
11299         * breakpoint.c (update_watchpoint): Update.
11300         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11301
11302 2018-04-06  Tom Tromey  <tom@tromey.com>
11303
11304         * value.h (free_all_values): Remove.
11305         * value.c (free_all_values): Remove.
11306
11307 2018-04-06  Tom Tromey  <tom@tromey.com>
11308
11309         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11310         (value_history_chain, value_history_count): Remove.
11311         (value_history): New global.
11312         (record_latest_value, access_value_history, show_values)
11313         (preserve_values): Update.
11314
11315 2018-04-06  Tom Tromey  <tom@tromey.com>
11316
11317         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11318         * varobj.c (varobj_set_display_format, varobj_set_value)
11319         (install_default_visualizer, construct_visualizer)
11320         (install_new_value, ~varobj, varobj_get_value_type)
11321         (my_value_of_variable, varobj_editable_p): Update.
11322         * c-varobj.c (c_describe_child, c_value_of_variable)
11323         (cplus_number_of_children, cplus_describe_child): Update.
11324         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11325         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11326         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11327
11328 2018-04-06  Tom Tromey  <tom@tromey.com>
11329
11330         * printcmd.c (last_examine_address): Change type to
11331         value_ref_ptr.
11332         (do_examine, x_command): Update.
11333
11334 2018-04-06  Tom Tromey  <tom@tromey.com>
11335
11336         * value.c (release_value): Update.
11337         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11338         (struct bpstats) <val>: Now a value_ref_ptr.
11339         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11340         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11341         (~watchpoint, print_it_watchpoint, watch_command_1)
11342         (invalidate_bp_value_on_memory_change): Update.
11343
11344 2018-04-06  Tom Tromey  <tom@tromey.com>
11345
11346         * varobj.c (varobj_clear_saved_item)
11347         (update_dynamic_varobj_children, install_new_value, ~varobj):
11348         Update.
11349         * value.h (value_incref): Move declaration earlier.
11350         (value_decref): Rename from value_free.
11351         (struct value_ref_policy): New.
11352         (value_ref_ptr): New typedef.
11353         (struct value_deleter): Remove.
11354         (gdb_value_up): Remove typedef.
11355         (release_value): Change return type.
11356         (release_value_or_incref): Remove.
11357         * value.c (set_value_parent): Update.
11358         (value_incref): Change return type.
11359         (value_decref): Rename from value_free.
11360         (value_free_to_mark, free_all_values, free_value_chain): Update.
11361         (release_value): Return value_ref_ptr.
11362         (release_value_or_incref): Remove.
11363         (record_latest_value, set_internalvar, clear_internalvar):
11364         Update.
11365         * stack.c (info_frame_command): Don't call value_free.
11366         * python/py-value.c (valpy_dealloc, valpy_new)
11367         (value_to_value_object): Update.
11368         * printcmd.c (do_examine): Update.
11369         * opencl-lang.c (lval_func_free_closure): Update.
11370         * mi/mi-main.c (register_changed_p): Don't call value_free.
11371         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11372         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11373         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11374         value_free.
11375         * guile/scm-value.c (vlscm_free_value_smob)
11376         (vlscm_scm_from_value): Update.
11377         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11378         (frame_unwind_register_unsigned, get_frame_register_bytes)
11379         (put_frame_register_bytes): Don't call value_free.
11380         * findvar.c (address_from_register): Don't call value_free.
11381         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11382         * dwarf2loc.c (entry_data_value_free_closure)
11383         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11384         (dwarf2_evaluate_loc_desc_full): Update.
11385         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11386         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11387         (~watchpoint, watch_command_1)
11388         (invalidate_bp_value_on_memory_change): Update.
11389         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11390
11391 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11392
11393         PR gdb/23022
11394         * warning.m4: Add -Wno-error=deprecated-register.
11395         * configure: Re-generate.
11396
11397 2018-04-05  Tom Tromey  <tom@tromey.com>
11398
11399         * linespec.h: Remove include of "vec.h".
11400
11401 2018-04-05  Tom Tromey  <tom@tromey.com>
11402
11403         * linespec.c (typep): Remove typedef.
11404         (find_methods, find_superclass_methods): Take a std::vector.
11405         (find_method): Use std::vector.
11406
11407 2018-04-05  Tom Tromey  <tom@tromey.com>
11408
11409         * utils.c (compare_strings): Remove.
11410         * utils.h (compare_strings): Remove.
11411         * objc-lang.h (find_imps): Update.
11412         * objc-lang.c (find_methods): Take a std::vector.
11413         (uniquify_strings, find_imps): Likewise.
11414         * linespec.c (find_methods): Take a std::vector.
11415         (decode_objc): Use std::vector.
11416         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11417         a std::vector.
11418         (find_method, find_function_symbols): Use std::vector.
11419
11420 2018-04-05  Tom Tromey  <tom@tromey.com>
11421
11422         * completer.c (completion_tracker::completion_tracker): Remove
11423         cast.
11424         (completion_tracker::discard_completions): Likewise.
11425         * breakpoint.c (ambiguous_names_p): Remove cast.
11426         * ada-lang.c (_initialize_ada_language): Remove cast.
11427         * utils.h (streq): Update.
11428         (streq_hash): Add new declaration.
11429         * utils.c (streq): Return bool.
11430         (streq_hash): New function.
11431
11432 2018-04-05  Tom Tromey  <tom@tromey.com>
11433
11434         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11435         Remove a string copy.
11436
11437 2018-04-05  Tom Tromey  <tom@tromey.com>
11438
11439         * linespec.c (filter_results): Use std::vector.
11440         (decode_line_2, decode_line_full): Update.
11441
11442 2018-04-05  Tom Tromey  <tom@tromey.com>
11443
11444         * linespec.c (canonical_to_fullform): Return std::string.
11445         (filter_results): Update.
11446         (struct decode_line_2_item): Add constructor.
11447         <fullform, displayform>: Now std::string.
11448         (decode_line_2_compare_items): Now a std::sort comparator.
11449         (decode_line_2): Update.
11450
11451 2018-04-05  Tom Tromey  <tom@tromey.com>
11452
11453         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11454         (unexpected_linespec_error): Update.
11455         (linespec_parse_basic, parse_linespec): Update.
11456
11457 2018-04-05  Tom Tromey  <tom@tromey.com>
11458
11459         * linespec.c (linespec_parse_basic): Reindent.
11460
11461 2018-04-05  Tom Tromey  <tom@tromey.com>
11462
11463         * minsyms.h (iterate_over_minimal_symbols): Update.
11464         * minsyms.c (iterate_over_minimal_symbols): Take a
11465         gdb::function_view.
11466         * linespec.c (struct collect_minsyms): Remove.
11467         (compare_msyms): Now a std::sort comparator.
11468         (add_minsym): Add parameters.
11469         (search_minsyms_for_name): Update.  Use std::vector.
11470
11471 2018-04-03  Tom Tromey  <tom@tromey.com>
11472
11473         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11474         gdb::byte_vector.
11475
11476 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11477
11478         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11479
11480 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11481
11482         PR gdb/16959
11483         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11484         printing static type.
11485
11486 2018-04-01  Tom Tromey  <tom@tromey.com>
11487
11488         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11489         (rs6000_xfer_shared_libraries): Update.
11490
11491 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11492
11493         * common/gdb_vecs.h (char_ptr): Remove.
11494         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11495
11496 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11497
11498         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11499         with std::vector.
11500         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11501
11502 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11503
11504         * tracepoint.h (struct uploaded_tp): Initialize fields.
11505         <actions, step_actions, cmd_strings>: Change type to
11506         std::vector<char *>.
11507         * tracepoint.c (get_uploaded_tp): Allocate with new.
11508         (free_uploaded_tps): Free with delete.
11509         (parse_tracepoint_definition): Adjust to std::vector change.
11510         * breakpoint.c (read_uploaded_action): Likewise.
11511         (create_tracepoint_from_upload): Likewise.
11512         * ctf.c (ctf_write_uploaded_tp): Likewise.
11513         (SET_ARRAY_FIELD): Likewise.
11514         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11515
11516 2018-03-30  Tom Tromey  <tom@tromey.com>
11517
11518         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11519         std::unique_ptr.
11520         (svr4_keep_data_in_core): Update.
11521         (svr4_read_so_list): Update.
11522
11523 2018-03-30  Tom Tromey  <tom@tromey.com>
11524
11525         * windows-nat.c (handle_output_debug_string, handle_exception):
11526         Update.
11527         * target.h (target_read_string): Update.
11528         * target.c (target_read_string): Change "string" to
11529         unique_xmalloc_ptr.
11530         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11531         Update.
11532         * solib-frv.c (frv_current_sos): Update.
11533         * solib-dsbt.c (dsbt_current_sos): Update.
11534         * solib-darwin.c (darwin_current_sos): Update.
11535         * linux-thread-db.c (inferior_has_bug): Update.
11536         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11537         Update.  Remove alloca.
11538         * ada-lang.c (ada_main_name): Update.
11539
11540 2018-03-30  Tom Tromey  <tom@tromey.com>
11541
11542         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11543         (struct dwo_file_deleter): New.
11544         (dwo_file_up): New typedef.
11545         (open_and_init_dwo_file): Use dwo_file_up.
11546         (free_dwo_file_cleanup): Remove.
11547
11548 2018-03-30  Tom Tromey  <tom@tromey.com>
11549
11550         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
11551         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
11552
11553 2018-03-30  Tom Tromey  <tom@tromey.com>
11554
11555         * dwarf2read.c (class free_cached_comp_units): New class.
11556         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
11557         (free_cached_comp_units): Remove function.
11558
11559 2018-03-30  Tom Tromey  <tom@tromey.com>
11560
11561         * utils.h (make_cleanup_unpush_target): Remove.
11562         * inf-ptrace.c (struct target_unpusher): New.
11563         (target_unpush_up) New typedef.
11564         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
11565         target_unpush_up.
11566         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
11567
11568 2018-03-27  Tom Tromey  <tom@tromey.com>
11569
11570         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
11571
11572 2018-03-27  Pedro Alves  <palves@redhat.com>
11573             Tom Tromey  <tom@tromey.com>
11574
11575         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
11576         destructor.  Now a class.
11577         (gdb_readline_wrapper_cleanup): Remove function.
11578         (gdb_readline_wrapper): Remove cleanups.
11579
11580 2018-03-27  Tom Tromey  <tom@tromey.com>
11581
11582         * typeprint.h (struct type_print_options) <local_typedefs,
11583         global_typedefs>: Remove "struct" keyword.
11584         (class typedef_hash_table): New class.
11585         (recursively_update_typedef_hash, add_template_parameters)
11586         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
11587         (find_typedef_in_hash): Don't declare.
11588         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
11589         (typedef_hash_table::recursively_update): Rename from
11590         recursively_update_typedef_hash.  Now a member.
11591         (typedef_hash_table::add_template_parameters): Rename from
11592         add_template_parameters.  Now a member.
11593         (typedef_hash_table::typedef_hash_table): Now a constructor;
11594         rename from create_typedef_hash.
11595         (typedef_hash_table::~typedef_hash_table): Now a destructor;
11596         rename from free_typedef_hash.
11597         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
11598         (do_free_global_table): Remove.
11599         (typedef_hash_table::typedef_hash_table): New constructor; renamed
11600         from copy_type_recursive.
11601         (create_global_typedef_table): Remove.
11602         (typedef_hash_table::find_global_typedef): Now a member of
11603         typedef_hash_table.
11604         (typedef_hash_table::find_typedef): Rename from
11605         find_typedef_in_hash; now a member.
11606         (whatis_exp): Update.
11607         * extension.h (struct ext_lang_type_printers): Add constructor and
11608         destructor.
11609         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
11610         declare.
11611         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
11612         Now a constructor; rename from start_ext_lang_type_printers.
11613         (ext_lang_type_printers): Now a destructor; rename from
11614         free_ext_lang_type_printers.
11615         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
11616         Update.
11617         (c_type_print_base_struct_union): Update.  Remove cleanups.
11618
11619 2018-03-27  Tom Tromey  <tom@tromey.com>
11620
11621         * dwarf-index-write.c: Include <cmath>.
11622
11623 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11624
11625         * NEWS: Add entry describing new "set|show varsize-limit" command.
11626         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
11627         command.
11628         * printcmd.c (_initialize_printcmd): Add "set var" alias of
11629         "set variable".
11630
11631 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
11632
11633         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
11634         dwarf-index-write.c
11635         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
11636         * dwarf-index-common.c: New file.
11637         * dwarf-index-common.h: New file.
11638         * dwarf-index-write.c: New file.
11639         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
11640         (struct dwarf2_section_info): Move from here.
11641         (dwarf2_section_info_def): Likewise.
11642         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
11643         (offset_type): Likewise.
11644         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
11645         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
11646         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
11647         (byte_swap): Likewise.
11648         (MAYBE_SWAP): Likewise.
11649         (dwarf2_per_cu_ptr): Likewise.
11650         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
11651         (struct tu_stats): Likewise.
11652         (struct dwarf2_per_objfile): Likewise.
11653         (struct dwarf2_per_cu_data): Likewise.
11654         (struct signatured_type): Likewise.
11655         (sig_type_ptr): Likewise.
11656         (DEF_VEC_P (sig_type_ptr)): Likewise.
11657         (INDEX4_SUFFIX): Likewise.
11658         (INDEX5_SUFFIX): Likewise.
11659         (DEBUG_STR_SUFFIX): Likewise.
11660         (dwarf2_read_section): Make non-static.
11661         (mapped_index_string_hash): Move from here.
11662         (dwarf5_djb_hash): Likewise.
11663         (file_write): Likewise.
11664         (class data_buf): Likewise.
11665         (struct symtab_index_entry): Likewise.
11666         (struct mapped_symtab): Likewise.
11667         (find_slot): Likewise.
11668         (hash_expand): Likewise.
11669         (add_index_entry): Likewise.
11670         (uniquify_cu_indices): Likewise.
11671         (class c_str_view): Likewise.
11672         (class c_str_view_hasher): Likewise.
11673         (class vector_hasher): Likewise.
11674         (write_hash_table): Likewise.
11675         (psym_index_map): Likewise.
11676         (struct addrmap_index_data): Likewise.
11677         (add_address_entry): Likewise.
11678         (add_address_entry_worker): Likewise.
11679         (write_address_map): Likewise.
11680         (symbol_kind): Likewise.
11681         (write_psymbols): Likewise.
11682         (struct signatured_type_index_data): Likewise.
11683         (write_one_signatured_type): Likewise.
11684         (recursively_count_psymbols): Likewise.
11685         (recursively_write_psymbols): Likewise.
11686         (class debug_names): Likewise.
11687         (check_dwarf64_offsets): Likewise.
11688         (psyms_seen_size): Likewise.
11689         (write_gdbindex): Likewise.
11690         (write_debug_names): Likewise.
11691         (assert_file_size): Likewise.
11692         (write_psymtabs_to_index): Likewise.
11693         (save_gdb_index_command): Likewise.
11694         (_initialize_dwarf2_read): Don't register the "save gdb-index"
11695         command.
11696         * dwarf2read.h: New file.
11697
11698 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11699
11700         PR gdb/22670
11701         * dwarf2read.c (dwarf2_physname): Do not return the demangled
11702         symbol name if the CU's language stores symbol names in linkage
11703         format.
11704         * language.h (struct language_defn)
11705         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
11706         all instances of this struct.
11707
11708 2018-03-26  Tom Tromey  <tom@tromey.com>
11709
11710         * stack.c (backtrace_command_1): Remove verbose code.
11711
11712 2018-03-26  Tom Tromey  <tom@tromey.com>
11713
11714         * python/py-framefilter.c (py_print_type): Don't catch
11715         exceptions.  Return void.
11716         (py_print_value): Likewise.
11717         (py_print_single_arg): Likewise.
11718         (enumerate_args): Don't catch exceptions.
11719         (py_print_args): Likewise.
11720         (py_print_frame): Likewise.
11721         (gdbpy_apply_frame_filter): Catch exceptions here.
11722
11723 2018-03-26  Tom Tromey  <tom@tromey.com>
11724
11725         * stack.c (_initialize_stack): Remove trailing newlines from help
11726         text.  Add "Usage" line to "backtrace" help.
11727
11728 2018-03-26  Tom Tromey  <tom@tromey.com>
11729
11730         PR python/16486:
11731         * python/py-framefilter.c (py_print_args): Call wrap_hint.
11732
11733 2018-03-26  Tom Tromey  <tom@tromey.com>
11734
11735         * python/py-framefilter.c (py_print_single_arg): Return
11736         EXT_LANG_BT_ERROR from catch.
11737
11738 2018-03-26  Tom Tromey  <tom@tromey.com>
11739
11740         PR backtrace/15584:
11741         * stack.c (backtrace_command_1): Move some code into no-filters
11742         "if".
11743
11744 2018-03-26  Tom Tromey  <tom@tromey.com>
11745
11746         * python/py-framefilter.c (throw_quit_or_print_exception): New
11747         function.
11748         (gdbpy_apply_frame_filter): Use it.
11749
11750 2018-03-26  Tom Tromey  <tom@tromey.com>
11751
11752         PR cli/17716:
11753         * python/py-framefilter.c (py_print_type, py_print_value)
11754         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
11755         RETURN_MASK_ERROR.
11756
11757 2018-03-26  Tom Tromey  <tom@tromey.com>
11758
11759         * python/py-framefilter.c (enumerate_args): Use
11760         gdb::unique_xmalloc_ptr.
11761
11762 2018-03-26  Tom Tromey  <tom@tromey.com>
11763
11764         * python/py-framefilter.c (py_print_frame): Return
11765         EXT_LANG_BT_OK.
11766         (gdbpy_apply_frame_filter): Update comment.
11767         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
11768         Remove.
11769         <EXT_LANG_BT_NO_FILTERS>: Change value.
11770
11771 2018-03-26  Tom Tromey  <tom@tromey.com>
11772
11773         PR backtrace/15582:
11774         * stack.c (backtrace_command): Parse "hide" argument.
11775         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
11776         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
11777         constant.
11778
11779 2018-03-26  Tom Tromey  <tom@tromey.com>
11780
11781         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
11782         add "flags".
11783         (backtrace_command): Remove "fulltrace", add "flags".
11784
11785 2018-03-26  Tom Tromey  <tom@tromey.com>
11786
11787         * stack.c (backtrace_command): Rewrite command line parsing.
11788
11789 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11790
11791         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
11792
11793 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11794
11795         * filename-seen-cache.h: Add include guard.
11796
11797 2018-03-26  Keith Seitz  <keiths@redhat.com>
11798
11799         * symfile.c (place_section): Remove "struct" from section_addr_info
11800         in comment.
11801         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
11802         "struct" keyword from section_addr_info.
11803
11804 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
11805
11806         * regformats/regdef.h (reg): Add constructors.
11807
11808 2018-03-25  Pedro Alves  <palves@redhat.com>
11809
11810         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
11811         if then/else bodies in var_func_name extraction.
11812
11813 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
11814
11815         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
11816         lookup_minimal_symbol() to find symbol entry.
11817         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
11818
11819 2018-03-23  Keith Seitz  <keiths@redhat.com>
11820
11821         PR c++/22968
11822         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
11823         nested type definitions for C++, too.
11824
11825 2018-03-23  Tom Tromey  <tom@tromey.com>
11826
11827         * machoread.c (struct oso_el): Add a constructor.  Don't define as
11828         a typedef.
11829         (macho_register_oso): Remove.
11830         (macho_symtab_read): Take a std::vector.
11831         (oso_el_compare_name): Now a std::sort comparator.
11832         (macho_symfile_read_all_oso): Take a std::vector.
11833         (macho_symfile_read): Use std::vector.  Remove cleanups.
11834
11835 2018-03-22  Tom Tromey  <tom@tromey.com>
11836
11837         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
11838         (record_full_goto_bookmark): Use std::string.
11839
11840 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11841
11842         PR tdep/18295
11843         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
11844         a single mask.
11845
11846 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11847
11848         * rs6000-tdep.c (store_insn_p): New function.
11849         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
11850         and cr_reg to their unshifted values. Use store_insn_p to
11851         match LR saves using either R1 or fdata->alloca_reg. Use
11852         store_insn_p to match CR saves. Set alloca_reg_offset
11853         when alloca_reg and framep are set. Remove lr_reg shift
11854         when assigning to fdata->lr_register.
11855
11856 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11857
11858         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
11859         command line args instead of emitting a warning.
11860
11861 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11862
11863         * tracepoint.h (struct static_tracepoint_marker): Initialize
11864         fields, define default constructor, move constructor and move
11865         assignment, disable the rest.
11866         <str_id, extra>: Make std::string.
11867         (release_static_tracepoint_marker): Remove.
11868         (free_current_marker): Remove.
11869         * tracepoint.c (free_current_marker): Remove.
11870         (parse_static_tracepoint_marker_definition): Adjust to
11871         std::string, use new hex2str overload.
11872         (release_static_tracepoint_marker): Remove.
11873         (print_one_static_tracepoint_marker): Get marker by reference
11874         and adjust to std::string.
11875         (info_static_tracepoint_markers_command): Adjust to std::vector
11876         changes
11877         * target.h (static_tracepoint_marker_p): Remove typedef.
11878         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
11879         (struct target_ops) <to_static_tracepoint_marker_at>: Return
11880         bool.
11881         <to_static_tracepoint_markers_by_strid>: Return std::vector.
11882         * target-debug.h
11883         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
11884         (target_debug_print_std_vector_static_tracepoint_marker): New.
11885         (target_debug_print_struct_static_tracepoint_marker_p): Rename
11886         to...
11887         (target_debug_print_static_tracepoint_marker_p): ... this.
11888         * target-delegates.c: Re-generate.
11889         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
11890         Make std::string.
11891         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
11892         (decode_static_tracepoint_spec): Adjust to std::vector.
11893         (tracepoint_print_one_detail): Adjust to std::string.
11894         (strace_marker_decode_location): Adjust to std::string.
11895         (update_static_tracepoint): Adjust to std::string, remove call
11896         to release_static_tracepoint_marker.
11897         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
11898         Adjust to std::vector.
11899         * remote.c (remote_static_tracepoint_marker_at): Return bool.
11900         (remote_static_tracepoint_markers_by_strid): Adjust to
11901         std::vector.
11902         * common/rsp-low.h (hex2str): New overload with explicit count
11903         of bytes.
11904         * common/rsp-low.c (hex2str): New overload with explicit count
11905         of bytes.
11906         * unittests/rsp-low-selftests.c (test_hex2str): New function.
11907         (_initialize_rsp_low_selftests): Add test_hex2str test.
11908         * unittests/tracepoint-selftests.c
11909         (test_parse_static_tracepoint_marker_definition): Adjust to
11910         std::string.
11911
11912 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11913
11914         * tracepoint.c (parse_static_tracepoint_marker_definition):
11915         Consider case where the definition is followed by more
11916         definitions.
11917         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11918         tracepoint-selftests.c.
11919         * unittests/tracepoint-selftests.c: New.
11920
11921 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11922
11923         * MAINTAINERS (Write After Approval): Add Pedro Franco de
11924         Carvalho.
11925
11926 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11927
11928         * symtab.c (find_pc_sect_line): fixed indentation.
11929
11930 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11931
11932         * symtab.c (find_pc_sect_line): now uses binary search.
11933
11934 2018-03-19  Tom Tromey  <tom@tromey.com>
11935
11936         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
11937         "IDENT" production.
11938
11939 2018-03-19  Pedro Alves  <palves@redhat.com>
11940             Tom Tromey  <tom@tromey.com>
11941
11942         * unittests/observable-selftests.c: New file.
11943         * common/observable.h: New file.
11944         * observable.h: New file.
11945         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
11946         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
11947         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
11948         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
11949         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
11950         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
11951         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
11952         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
11953         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
11954         python/py-breakpoint.c, python/py-finishbreakpoint.c,
11955         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
11956         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
11957         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
11958         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
11959         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
11960         tui/tui-interp.c, valops.c: Update all users.
11961         * tui/tui-hooks.c (tui_bp_created_observer)
11962         (tui_bp_deleted_observer, tui_bp_modified_observer)
11963         (tui_inferior_exit_observer, tui_before_prompt_observer)
11964         (tui_normal_stop_observer, tui_register_changed_observer):
11965         Remove.
11966         (tui_observers_token): New global.
11967         (attach_or_detach, tui_attach_detach_observers): New functions.
11968         (tui_install_hooks, tui_remove_hooks): Use
11969         tui_attach_detach_observers.
11970         * record-btrace.c (record_btrace_thread_observer): Remove.
11971         (record_btrace_thread_observer_token): New global.
11972         * observer.sh: Remove.
11973         * observer.c: Rename to observable.c.
11974         * observable.c (namespace gdb_observers): Define new objects.
11975         (observer_debug): Move into gdb_observers namespace.
11976         (struct observer, struct observer_list, xalloc_observer_list_node)
11977         (xfree_observer_list_node, generic_observer_attach)
11978         (generic_observer_detach, generic_observer_notify): Remove.
11979         (_initialize_observer): Update.
11980         Don't include observer.inc.
11981         * Makefile.in (generated_files): Remove observer.h, observer.inc.
11982         (clean mostlyclean): Likewise.
11983         (observer.h, observer.inc): Remove targets.
11984         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
11985         (COMMON_SFILES): Use observable.c, not observer.c.
11986         * .gitignore: Remove observer.h.
11987
11988 2018-03-18  Tom Tromey  <tom@tromey.com>
11989
11990         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
11991         gdb::def_vector.
11992         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
11993
11994 2018-03-17  Tom Tromey  <tom@tromey.com>
11995
11996         * auto-load.c (auto_load_objfile_script_1): Use std::string.
11997
11998 2018-03-17  Tom Tromey  <tom@tromey.com>
11999
12000         * target.c (class scoped_target_fd): New.
12001         (target_fileio_close_cleanup): Remove.
12002         (target_fileio_read_alloc_1): Use scoped_target_fd.
12003
12004 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12005
12006         * silent-rules.mk: New.
12007         * Makefile.in: Include silent-rules.mk
12008         (srcdir, VPATH, top_srcdir): Move up.
12009         (COMPILE): Add ECHO_CXX.
12010         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12011         (init.c): Add ECHO_INIT_C.
12012         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12013         (version.c): Add ECHO_GEN.
12014         (printcmd.o): Add ECHO_CXX.
12015         (target-float.o): Add ECHO_CXX.
12016         (ada-exp.o): Add ECHO_CXX.
12017         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12018         (insight$(EXEEXT)): Add ECHO_CXXLD.
12019         * gnulib/configure.ac: Add AM_SILENT_RULES.
12020         * gnulib/aclocal.m4: Re-generate.
12021         * gnulib/configure: Re-generate.
12022         * gnulib/import/Makefile.in: Re-generate.
12023
12024 2018-03-16  Tom Tromey  <tom@tromey.com>
12025
12026         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12027         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12028         * utils.c (do_free_section_addr_info)
12029         (make_cleanup_free_section_addr_info): Remove.
12030         * symfile.h (struct other_sections): Add constructor.
12031         (struct section_addr_info): Remove.
12032         (section_addr_info): New typedef.
12033         (struct sym_fns) <sym_offsets>: Change type of parameter.
12034         (build_section_addr_info_from_objfile)
12035         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12036         (default_symfile_offsets, symbol_file_add)
12037         (symbol_file_add_from_bfd)
12038         (build_section_addr_info_from_section_table): Update.
12039         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12040         * symfile.c (alloc_section_addr_info): Remove.
12041         (build_section_addr_info_from_section_table): Change return type.
12042         Update.
12043         (build_section_addr_info_from_bfd)
12044         (build_section_addr_info_from_objfile): Likewise.
12045         (free_section_addr_info): Remove.
12046         (relative_addr_info_to_section_offsets): Change type of "addrs".
12047         (addrs_section_compar): Now a std::sort comparator.
12048         (addrs_section_sort): Change return type.
12049         (addr_info_make_relative): Change type of "addrs".  Update.
12050         (default_symfile_offsets, syms_from_objfile_1)
12051         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12052         (symbol_file_add_separate): Update.
12053         (symbol_file_add): Change type of "addrs".  Update.
12054         (add_symbol_file_command): Update.  Remove cleanups.
12055         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12056         cleanups.
12057         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12058         * solib.c (solib_read_symbols): Update.
12059         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12060         * machoread.c (macho_symfile_offsets): Update.
12061         * jit.c (jit_bfd_try_read_symtab): Update.
12062
12063 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12064
12065         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12066         unittests/utils-selftests.c.
12067         * unittests/utils-selftests.c: New file.
12068
12069 2018-03-14  Tom Tromey  <tom@tromey.com>
12070
12071         PR cli/14977:
12072         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12073         for NULL.
12074
12075 2018-03-14  Tom Tromey  <tom@tromey.com>
12076
12077         PR cli/19918:
12078         * printcmd.c (printf_pointer): Allow "-" in format.
12079
12080 2018-03-14  Tom Tromey  <tom@tromey.com>
12081
12082         * printcmd.c (_initialize_printcmd): Add usage to printf.
12083
12084 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12085
12086         * MAINTAINERS: Update my email address.
12087
12088 2018-03-13  Tom Tromey  <tom@tromey.com>
12089
12090         * machoread.c (macho_check_dsym): Change filenamep to a
12091         std::string*.
12092         (macho_symfile_read): Update.
12093         * symfile.c (load_command): Use std::string.
12094
12095 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12096
12097         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12098         to error message string.
12099         (riscv_register_name): Use xsnprintf instead of sprintf.
12100         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12101         internal_error.
12102         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12103         error.
12104         (riscv_push_dummy_call): Likewise.
12105
12106 2018-03-12  Tom Tromey  <tom@tromey.com>
12107
12108         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12109         Use gdb::byte_vector.
12110         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12111
12112 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12113
12114         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12115         parameter type to readable_regcache.
12116         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12117         the declaration.
12118
12119 2018-03-11  Tom Tromey  <tom@tromey.com>
12120
12121         * dwarf2read.c (struct nextfield): Add initializers.
12122         (struct nextfnfield): Remove.
12123         (struct fnfieldlist): Add initializers.  Remove "length" and
12124         "head", use std::vector.
12125         (struct decl_field_list): Remove.
12126         (struct field_info): Add initializers.
12127         <fields, baseclasses>: Now std::vector.
12128         <nbaseclasses, nfnfields, typedef_field_list_count,
12129         nested_types_list_count>: Remove.
12130         (dwarf2_add_field, dwarf2_add_type_defn)
12131         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12132         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12133         (process_structure_scope): Update.
12134
12135 2018-03-11  Tom Tromey  <tom@tromey.com>
12136
12137         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12138         for use by std::sort.
12139         (build_type_psymtabs_1): Use std::vector.
12140
12141 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12142
12143         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12144         and LIBMPFR in the printed configuration.
12145
12146 2018-03-08  Tom Tromey  <tom@tromey.com>
12147
12148         * source.c (get_filename_and_charpos): Use scoped_fd.
12149         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12150         (procfs_pidlist): Likewise.
12151         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12152         (iterate_over_mappings): Likewise.
12153
12154 2018-03-08  Tom Tromey  <tom@tromey.com>
12155
12156         * infcall.c (struct call_return_meta_info)
12157         <stack_temporaries_enabled>: Remove.
12158         (get_call_return_value, call_function_by_hand_dummy): Update.
12159         * thread.c (disable_thread_stack_temporaries): Remove.
12160         (enable_thread_stack_temporaries): Remove.
12161         (thread_stack_temporaries_enabled_p): Return bool.
12162         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12163         (get_last_thread_stack_temporary): Update.
12164         * eval.c (evaluate_subexp): Update.
12165         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12166         class, not a function.
12167         (value_ptr, value_vec): Remove typedefs.
12168         (class thread_info) <stack_temporaries_enabled>: Now bool.
12169         <stack_temporaries>: Now a std::vector.
12170         (thread_stack_temporaries_enabled_p)
12171         (value_in_thread_stack_temporaries): Return bool.
12172
12173 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12174
12175         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12176         (getpkt_or_notif_sane_1): Likewise.
12177
12178 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12179
12180         * build-id.c (build_id_to_debug_bfd): Use std::string.
12181
12182 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12183
12184         * build-id.c (find_separate_debug_file_by_buildid): Return
12185         std::string.
12186         * build-id.h (find_separate_debug_file_by_buildid): Return
12187         std::string.
12188         * coffread.c (coff_symfile_read): Adjust to std::string.
12189         * elfread.c (elf_symfile_read): Adjust to std::string.
12190         * symfile.c (separate_debug_file_exists): Change parameter to
12191         std::string.
12192         (find_separate_debug_file): Return std::string.
12193         (find_separate_debug_file_by_debuglink): Return std::string.
12194         * symfile.h (find_separate_debug_file_by_debuglink): Return
12195         std::string.
12196
12197 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12198
12199         * common/xml-utils.c (xml_escape_text): Move code to...
12200         (xml_escape_text_append): ... this new function.
12201         * common/xml-utils.h (xml_escape_text_append): New declaration.
12202         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12203         New function.
12204         (_initialize_xml_utils): register test_xml_escape_text_append as
12205         a selftest.
12206
12207 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12208
12209         * defs.h: Remove MAX_REGISTER_SIZE.
12210         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12211         asserts.
12212         * python/py-unwind.c (pyuw_sniffer): Likewise.
12213
12214 2018-03-07  Tom Tromey  <tom@tromey.com>
12215
12216         * linux-tdep.c (linux_info_proc): Update.
12217         * target.h (struct target_ops) <to_fileio_readlink>: Return
12218         optional<string>.
12219         (target_fileio_readlink): Return optional<string>.
12220         * remote.c (remote_hostio_readlink): Return optional<string>.
12221         * inf-child.c (inf_child_fileio_readlink): Return
12222         optional<string>.
12223         * target.c (target_fileio_readlink): Return optional<string>.
12224
12225 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12226
12227         * regcache.c (cooked_read_test): Add riscv to the list of
12228         architectures that have a save_reggroup.
12229
12230 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12231
12232         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12233         value is not a dynamic class object.
12234
12235 2018-03-06  Tom Tromey  <tom@tromey.com>
12236
12237         * rust-exp.y: Formatting fixes.
12238
12239 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12240
12241         * riscv-tdep.c (riscv_register_name): Remove target description
12242         support.
12243         (riscv_gdbarch_init): Remove target description check.
12244
12245 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12246
12247         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12248         comment.
12249         * riscv-tdep.h: Likewise.
12250
12251 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12252
12253         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12254         (riscv_pseudo_register_write): Delete.
12255         (riscv_gdbarch_init): Remove all use of pseudo registers.
12256
12257 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12258
12259         * record-btrace.c (btrace_print_lines): Replace cleanup
12260         parameter with RAII equivalents.
12261         (btrace_insn_history): Replace cleanup with RAII equivalents.
12262         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12263         make_cleanup_ui_out_tuple_begin_end): Remove.
12264         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12265         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12266         make_cleanup_ui_out_list_begin_end): Remove.
12267
12268 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12269
12270         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12271         parameter types to std::vector.  Use bool.
12272         (record_btrace_wait): Replace VEC(tp_t) with
12273         std::vector<thread_info *>.
12274         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12275
12276 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12277
12278         * record-btrace.c (record_btrace_disable_callback): Remove.
12279         (struct scoped_btrace_disable): New.
12280         (record_btrace_open): Use scoped_btrace_disable.
12281
12282 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12283
12284         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12285         reading values from registers.
12286
12287 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12288
12289         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12290         where appropriate.
12291
12292 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12293
12294         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12295         change parameter type.  Use GDB's print functions, and use
12296         core_addr_to_string where appropriate.
12297         (riscv_push_dummy_call): Use core_addr_to_string where
12298         appropriate, update call to riscv_print_arg_location, and reindent
12299         a few lines.
12300         (riscv_return_value): Update call to riscv_print_arg_location.
12301
12302 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12303             Tim Newsome <tim@sifive.com>
12304             Albert Ou <a0u@eecs.berkeley.edu>
12305             Darius Rad <darius@bluespec.com>
12306
12307         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12308         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12309         (ALLDEPFILES): Add riscv-tdep.c
12310         * configure.tgt: Add riscv support.
12311         * riscv-tdep.c: New file.
12312         * riscv-tdep.h: New file.
12313         * NEWS: Mention new target.
12314         * MAINTAINERS: Add entry for riscv.
12315
12316 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12317
12318         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12319         fields within aggregates.
12320
12321 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12322
12323         * record-btrace.c (btrace_print_lines): Change type of flags to
12324         gdb_disassembly_flags.
12325
12326 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12327
12328         * fbsd-nat.c: Include "inf-ptrace.h".
12329         (USE_SIGTRAP_SIGINFO): Conditionally define.
12330         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12331         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12332         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12333         function.
12334         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12335         Likewise.
12336         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12337         Likewise.
12338         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12339         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12340         "supports_stopped_by_hw_breakpoint" target methods.
12341
12342 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12343
12344         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12345         * fbsd-nat.c (debug_fbsd_nat): New variable.
12346         (show_fbsd_nat_debug): New function.
12347         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12348         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12349
12350 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12351
12352         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12353         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12354         prototype.
12355         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12356         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12357         method.
12358
12359 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12360
12361         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12362         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12363
12364 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12365
12366         * charset.c (struct charset_vector): New.
12367         (charsets): Change type to charset_vector.
12368         (find_charset_names): Adjust.
12369         (add_one): Adjust.
12370         (_initialize_charset): Adjust.
12371
12372 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12373
12374         * progspace.h (struct program_space) <deleted_solibs>: Change
12375         type to std::vector<std::string>.
12376         * progspace.c (clear_program_space_solib_cache): Adjust.
12377         * breakpoint.c (print_solib_event): Adjust.
12378         (check_status_catch_solib): Adjust.
12379         * solib.c (update_solib_list): Adjust.
12380         * ui-out.h (class ui_out) <field_string>: New overload.
12381         * ui-out.c (ui_out::field_string): New overload.
12382
12383 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12384
12385         * progspace.h (struct program_space): Add constructor and
12386         destructor, initialize fields.
12387         (add_program_space): Remove.
12388         * progspace.c (add_program_space): Rename to...
12389         (program_space::program_space): ... this.
12390         (release_program_space): Rename to...
12391         (program_space::~program_space): ... this.
12392         (delete_program_space): Use delete to delete program_space.
12393         (initialize_progspace): Use new to allocate program_space.
12394         * inferior.c (add_inferior_with_spaces): Likewise.
12395         (clone_inferior_command): Likewise.
12396         * infrun.c (follow_fork_inferior): Likewise.
12397         (handle_vfork_child_exec_or_exit): Likewise.
12398
12399 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12400
12401         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12402         (delim_string_to_char_ptr_vec): Return std::vector of
12403         gdb::unique_xmalloc_ptr.
12404         (dirnames_to_char_ptr_vec_append): Take std::vector of
12405         gdb::unique_xmalloc_ptr.
12406         (dirnames_to_char_ptr_vec): Return std::vector of
12407         gdb::unique_xmalloc_ptr.
12408         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12409         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12410         (delim_string_to_char_ptr_vec): Return an std::vector of
12411         gdb::unique_xmalloc_ptr, adjust the code.
12412         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12413         gdb::unique_xmalloc_ptr, adjust the code.
12414         (dirnames_to_char_ptr_vec): Return an std::vector of
12415         gdb::unique_xmalloc_ptr, adjust the code.
12416         * auto-load.c (auto_load_safe_path_vec): Change type to
12417         std::vector of gdb::unique_xmalloc_ptr.
12418         (auto_load_expand_dir_vars): Return an std::vector of
12419         gdb::unique_xmalloc_ptr, adjust the code.
12420         (auto_load_safe_path_vec_update): Adjust.
12421         (filename_is_in_auto_load_safe_path_vec): Adjust.
12422         (auto_load_objfile_script_1): Adjust.
12423         * build-id.c (build_id_to_debug_bfd): Adjust.
12424         * linux-thread-db.c (thread_db_load_search): Adjust.
12425         * source.c (add_path): Adjust.
12426         (openp): Adjust.
12427         * symfile.c (find_separate_debug_file): Adjust.
12428         * utils.c (do_free_char_ptr_vec): Remove.
12429         (make_cleanup_free_char_ptr_vec): Remove.
12430
12431 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12432
12433         PR gdb/22907
12434         * common/pathstuff.c: Conditionally include "<windows.h>".
12435
12436 2018-03-01  Georg Sauthoff  <mail@georg.so>
12437
12438         PR gdb/22888
12439         * gcore.in: Quote variables and switch interpreter to bash.
12440
12441 2018-03-01  Tom Tromey  <tom@tromey.com>
12442
12443         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12444         assertion.  Add assertion for discriminant_index.
12445         (quirk_rust_enum): Use correct base type name in univariant case.
12446
12447 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12448
12449         * record.c (get_call_history_modifiers): Return a
12450         record_print_flags.
12451         (cmd_record_call_history): Adjust.
12452         * record-btrace.c (record_btrace_call_history): Adjust.
12453         (record_btrace_call_history_range): Adjust.
12454         (record_btrace_call_history_from): Adjust.
12455         * target-debug.h (target_debug_print_record_print_flags): New.
12456         * target-delegates.c: Re-generate.
12457         * target.c (target_call_history): Change flags type.
12458         (target_call_history_from): Likewise.
12459         (target_call_history_range): Likewise.
12460         * target.h (struct target_ops) <target_call_history>: Likewise.
12461         (target_call_history_from): Likewise.
12462         (target_call_history_range): Likewise.
12463
12464 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12465             Simon Marchi  <simon.marchi@polymtl.ca>
12466
12467         * common/common-utils.c: Include "sys/stat.h".
12468         (is_regular_file): Move here from "source.c"; change return
12469         type to "bool".
12470         * common/common-utils.h (is_regular_file): New prototype.
12471         * common/pathstuff.c (contains_dir_separator): New function.
12472         * common/pathstuff.h (contains_dir_separator): New prototype.
12473         * source.c: Don't include "sys/stat.h".
12474         (is_regular_file): Move to "common/common-utils.c".
12475
12476 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12477
12478         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12479         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12480         * auto-load.c: Include "common/pathstuff.h".
12481         * common/common-def.h (current_directory): Move here.
12482         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12483         function.
12484         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12485         prototype.
12486         * common/pathstuff.c: New file.
12487         * common/pathstuff.h: New file.
12488         * compile/compile.c: Include "common/pathstuff.h".
12489         * defs.h (current_directory): Move to "common/common-defs.h".
12490         * dwarf2read.c: Include "common/pathstuff.h".
12491         * exec.c: Likewise.
12492         * guile/scm-safe-call.c: Likewise.
12493         * linux-thread-db.c: Likewise.
12494         * main.c: Likewise.
12495         * nto-tdep.c: Likewise.
12496         * objfiles.c: Likewise.
12497         * source.c: Likewise.
12498         * symtab.c: Likewise.
12499         * utils.c: Include "common/pathstuff.h".
12500         (gdb_realpath): Move to "common/pathstuff.c".
12501         (gdb_realpath_keepfile): Likewise.
12502         (gdb_abspath): Likewise.
12503         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12504         (gdb_realpath_keepfile): Likewise.
12505         (gdb_abspath): Likewise.
12506
12507 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12508
12509         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12510         wildcard process pid for super_resume for kernels with a
12511         specific bug.
12512
12513 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12514
12515         * compile/compile.c (get_args): Add additional comments
12516         explaining function.
12517
12518 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12519             Tom Tromey  <tom@tromey.com>
12520
12521         * target.h (memory_write_request_s): Remove typedef.  Don't define
12522         VEC.
12523         (target_write_memory_blocks): Change argument to std::vector.
12524         (struct memory_write_request): Add constructor.
12525         * target-memory.c (compare_block_starting_address): Return bool.
12526         Change argument types.
12527         (claim_memory): Change arguments to use std::vector.
12528         (split_regular_and_flash_blocks, blocks_to_erase)
12529         (compute_garbled_blocks): Likewise.
12530         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12531         (target_write_memory_blocks): Change argument to std::vector.
12532         * symfile.c (struct load_section_data): Add constructor and
12533         destructor.  Use std::vector for "requests".
12534         (struct load_progress_data): Add initializers.
12535         (load_section_callback): Update.  Use "new".
12536         (clear_memory_write_data): Remove.
12537         (generic_load): Update.
12538
12539 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12540
12541         * arch/aarch64.h: Use common/tdesc.h.
12542
12543 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12544
12545         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
12546         architecture with a 64-bit ABI.
12547
12548 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12549
12550         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
12551         ahead of target description loading.
12552
12553 2018-02-26  Tom Tromey  <tom@tromey.com>
12554
12555         * stack.c (backtrace_command_1): Update.
12556         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
12557         of "flags".
12558         * python/py-framefilter.c (py_print_frame)
12559         (gdbpy_apply_frame_filter): Change type of "flags".
12560         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
12561         of "flags".
12562         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
12563         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
12564         * extension.h (enum frame_filter_flag): Rename from
12565         frame_filter_flags.
12566         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
12567         (apply_ext_lang_frame_filter): Change type of "flags".
12568         * extension.c (apply_ext_lang_frame_filter): Change type of
12569         "flags".
12570         * extension-priv.h (struct extension_language_ops)
12571         <apply_frame_filter>: Change type of "flags".
12572
12573 2018-02-26  Tom Tromey  <tom@tromey.com>
12574
12575         PR python/16497:
12576         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
12577         off-by-one in py_end computation.
12578         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
12579         PRINT_MORE_FRAMES.
12580         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
12581         constant.
12582
12583 2018-02-26  Tom Tromey  <tom@tromey.com>
12584
12585         * dwarf2read.c (struct variant_field): New.
12586         (struct nextfield) <variant>: New field.
12587         (dwarf2_add_field): Handle DW_TAG_variant_part.
12588         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
12589         discriminated union.
12590         (read_structure_type): Handle DW_TAG_variant_part.
12591         (handle_struct_member_die): New function, extracted from
12592         process_structure_scope.  Handle DW_TAG_variant.
12593         (process_structure_scope): Handle discriminated unions.  Call
12594         handle_struct_member_die.
12595
12596 2018-02-26  Tom Tromey  <tom@tromey.com>
12597
12598         * rust-lang.h (rust_last_path_segment): Declare.
12599         * rust-lang.c (rust_last_path_segment): Now public.  Change
12600         contract.
12601         (struct disr_info): Remove.
12602         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
12603         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
12604         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
12605         (rust_enum_p, rust_enum_variant): New function.
12606         (rust_underscore_fields): Remove "offset" parameter.
12607         (rust_print_enum): New function.
12608         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
12609         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
12610         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
12611         enums.
12612         (rust_internal_print_type): New function, from rust_print_type.
12613         Remove enum code.
12614         (rust_print_type): Call rust_internal_print_type.
12615         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
12616         Update enum handling.
12617         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
12618         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
12619         (rust_union_quirks): New functions.
12620         (process_full_comp_unit, process_full_type_unit): Call
12621         rust_union_quirks.
12622         (process_structure_scope): Update rust_unions if necessary.
12623
12624 2018-02-26  Tom Tromey  <tom@tromey.com>
12625
12626         * value.h (value_union_variant): Declare.
12627         * valops.c (value_union_variant): New function.
12628         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
12629         (struct discriminant_info): New.
12630         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
12631         enumerator.
12632         (struct main_type) <flag_discriminated_union>: New field.
12633
12634 2018-02-26  Tom Tromey  <tom@tromey.com>
12635
12636         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12637         unittests/unpack-selftests.c.
12638         * unittests/unpack-selftests.c: New file.
12639         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
12640
12641 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12642
12643         * dwarf2read.c (struct partial_die_info) <read>: New method.
12644         (read_partial_die): Remove the declaration.
12645         (load_partial_dies): Update.
12646         (partial_die_info::partial_die_info):
12647         (read_partial_die): Change it to partial_die_info::read.
12648
12649 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12650
12651         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
12652         (fixup_partial_die): Remove declaration.
12653         (scan_partial_symbols): Update.
12654         (partial_die_parent_scope): Likewise.
12655         (partial_die_full_name): Likewise.
12656         (fixup_partial_die): Change it to partial_die_info::fixup.
12657
12658 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12659
12660         * dwarf2read.c (read_partial_die): Update the declaration.
12661         (load_partial_dies): Caller update.
12662         (read_partial_die): Remove one argument abbrev_len.
12663
12664 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12665
12666         * dwarf2read.c (struct partial_die_info): Add ctor, delete
12667         assignment operator.
12668         (load_partial_dies): Use ctor and copy ctor.
12669         (read_partial_die): Update.
12670         (dwarf2_cu::find_partial_die): Use ctor.
12671
12672 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12673
12674         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
12675         (find_partial_die_in_comp_unit): Change it to
12676         dwarf2_cu::find_partial_die.
12677         (find_partial_die): Update.
12678
12679 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12680
12681         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
12682         is NULL.
12683
12684 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12685
12686         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
12687
12688 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
12689
12690         * arch/amd64.h: Use common/tdesc.h.
12691         * arch/i386.c: Likewise.
12692         * arch/i386.h: Likewise.
12693         * arch/tic6x.c: Likewise.
12694         * arch/tdesc.h: Move file from here...
12695         * common/tdesc.h: ...to here.
12696         * features/aarch64-core.c: Regenerate.
12697         * features/aarch64-fpu.c: Regenerate.
12698         * features/i386/32bit-avx.c: Regenerate.
12699         * features/i386/32bit-avx512.c: Regenerate.
12700         * features/i386/32bit-core.c: Regenerate.
12701         * features/i386/32bit-linux.c: Regenerate.
12702         * features/i386/32bit-mpx.c: Regenerate.
12703         * features/i386/32bit-pkeys.c: Regenerate.
12704         * features/i386/32bit-sse.c: Regenerate.
12705         * features/i386/64bit-avx.c: Regenerate.
12706         * features/i386/64bit-avx512.c: Regenerate.
12707         * features/i386/64bit-core.c: Regenerate.
12708         * features/i386/64bit-linux.c: Regenerate.
12709         * features/i386/64bit-mpx.c: Regenerate.
12710         * features/i386/64bit-pkeys.c: Regenerate.
12711         * features/i386/64bit-segments.c: Regenerate.
12712         * features/i386/64bit-sse.c: Regenerate.
12713         * features/i386/x32-core.c: Regenerate.
12714         * features/tic6x-c6xp.c: Regenerate.
12715         * features/tic6x-core.c: Regenerate.
12716         * features/tic6x-gp.c: Regenerate.
12717         * target-descriptions.c: Use common/tdesc.h.
12718         * target-descriptions.h: Likewise.
12719
12720 2018-02-24  Tom Tromey  <tom@tromey.com>
12721
12722         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
12723         (try_thread_db_load_from_dir, thread_db_load_search): Use
12724         std::string.
12725         (info_auto_load_libthread_db_compare): Return bool.  Change
12726         argument types.
12727         (info_auto_load_libthread_db): Use std::vector, std::string.
12728         Remove cleanups.
12729
12730 2018-02-24  Tom Tromey  <tom@tromey.com>
12731
12732         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
12733         std::string.
12734         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
12735         std::string*.
12736         * gdbarch.c: Rebuild.
12737         * gdbarch.h: Rebuild.
12738         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
12739         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
12740         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
12741         std::string*.
12742
12743 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
12744
12745         * gdbtypes.h (sect_offset): Change type to uint64_t.
12746         (sect_offset_str): New function.
12747         * dwarf2read.c (create_addrmap_from_aranges): Use
12748         sect_offset_str.
12749         (error_check_comp_unit_head): Likewise.
12750         (create_debug_type_hash_table): Likewise.
12751         (read_cutu_die_from_dwo): Likewise.
12752         (init_cutu_and_read_dies): Likewise.
12753         (init_cutu_and_read_dies_no_follow): Likewise.
12754         (process_psymtab_comp_unit_reader): Likewise.
12755         (partial_die_parent_scope): Likewise.
12756         (peek_die_abbrev): Likewise.
12757         (process_queue): Likewise.
12758         (dwarf2_physname): Likewise.
12759         (read_namespace_alias): Likewise.
12760         (read_import_statement): Likewise.
12761         (create_dwo_cu_reader): Likewise.
12762         (create_cus_hash_table): Likewise.
12763         (lookup_dwo_cutu): Likewise.
12764         (inherit_abstract_dies): Likewise.
12765         (read_func_scope): Likewise.
12766         (read_call_site_scope): Likewise.
12767         (dwarf2_add_member_fn): Likewise.
12768         (read_common_block): Likewise.
12769         (read_module_type): Likewise.
12770         (read_typedef): Likewise.
12771         (read_subrange_type): Likewise.
12772         (load_partial_dies): Likewise.
12773         (read_partial_die): Likewise.
12774         (find_partial_die): Likewise.
12775         (read_str_index): Likewise.
12776         (dwarf2_string_attr): Likewise.
12777         (build_error_marker_type): Likewise.
12778         (lookup_die_type): Likewise.
12779         (dump_die_shallow): Likewise.
12780         (follow_die_ref): Likewise.
12781         (dwarf2_fetch_die_loc_sect_off): Likewise.
12782         (dwarf2_fetch_constant_bytes): Likewise.
12783         (follow_die_sig): Likewise.
12784         (get_signatured_type): Likewise.
12785         (get_DW_AT_signature_type): Likewise.
12786         (dwarf2_find_containing_comp_unit): Likewise.
12787         (set_die_type): Likewise.
12788
12789 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
12790
12791         * arch/aarch64.c: Include "common-defs.h".
12792         * arch/amd64.c: Likewise.
12793         * arch/i386.c: Likewise.
12794
12795 2018-02-21  Tom Tromey  <tom@tromey.com>
12796
12797         * value.h: (extract_field_op): Update.
12798         * eval.c (extract_field_op): Return a const char *.
12799         * expression.h (parse_expression_for_completion): Update.
12800         * completer.c (complete_expression): Update.
12801         (add_struct_fields): Make fieldname const.
12802         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
12803         (mark_completion_tag, parse_exp_in_context_1): Update.
12804         (parse_expression_for_completion): Change "name" to
12805         unique_xmalloc_ptr*.
12806
12807 2018-02-21  Tom Tromey  <tom@tromey.com>
12808
12809         * infcall.c (call_function_by_hand_dummy): Use std::vector.
12810
12811 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12812
12813         * avr-tdep.c (avr_read_pc): Change parameter type to
12814         readable_regcache.
12815         * gdbarch.sh (read_pc): Likewise.
12816         * gdbarch.c: Re-generated.
12817         * gdbarch.h: Re-generated.
12818         * hppa-tdep.c (hppa_read_pc): Change parameter type to
12819         readable_regcache.
12820         * ia64-tdep.c (ia64_read_pc): Likewise.
12821         * mips-tdep.c (mips_read_pc): Likewise.
12822         * spu-tdep.c (spu_read_pc): Likewise.
12823
12824 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12825
12826         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
12827         * regcache-dump.c: New file.
12828         * regcache.c: Move register_dump to regcache-dump.c.
12829         (maintenance_print_registers): Likewise.
12830         (maintenance_print_raw_registers): Likewise.
12831         (maintenance_print_cooked_registers): Likewise.
12832         (maintenance_print_register_groups): Likewise.
12833         (maintenance_print_remote_registers): Likewise.
12834         (_initialize_regcache): Likewise.
12835         * regcache.h (register_dump): Moved from regcache.c.
12836
12837 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12838
12839         * regcache.c (regcache::regcache): Update.
12840         (regcache::invalidate): Move it to detached_regcache::invalidate.
12841         (get_thread_arch_aspace_regcache): Update.
12842         (regcache::raw_update): Update.
12843         (regcache::cooked_read): Remove some code.
12844         (regcache::cooked_read_value): Likewise.
12845         (regcache::raw_write): Remove assert on m_readonly_p.
12846         (regcache::raw_supply_integer): Move it to
12847         detached_regcache::raw_supply_integer.
12848         (regcache::raw_supply_zeroed): Likewise.
12849         * regcache.h (detached_regcache) <raw_supply_integer>: New
12850         declaration.
12851         <raw_supply_zeroed, invalidate>: Likewise.
12852         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
12853         <invalidate>: Likewise.
12854         <m_readonly_p>: Removed.
12855
12856 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12857
12858         * infcmd.c (get_return_value): Let stop_regs point to
12859         get_current_regcache.
12860         * regcache.c (regcache::regcache): Remove.
12861         (register_dump_reg_buffer): New class.
12862         (regcache_print): Adjust.
12863         * regcache.h (regcache): Remove constructors.
12864
12865 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12866
12867         * regcache.c (class register_dump): New class.
12868         (register_dump_regcache, register_dump_none): New class.
12869         (register_dump_remote, register_dump_groups): New class.
12870         (regcache_print): Update.
12871         * regcache.h (regcache_dump_what): Move it to regcache.c.
12872         (regcache) <dump>: Remove.
12873
12874 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12875
12876         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
12877          reg_buffer_rw *.
12878         (jit_unwind_reg_set_impl): Call raw_supply.
12879         (jit_frame_sniffer): Use reg_buffer_rw.
12880         * record-full.c (record_full_core_regbuf): Change its type.
12881         (record_full_core_open_1): Use reg_buffer_rw.
12882         (record_full_close): Likewise.
12883         (record_full_core_fetch_registers): Use regcache->raw_supply.
12884         (record_full_core_store_registers): Likewise.
12885         * regcache.c (regcache::get_register_status): Move it to
12886         reg_buffer.
12887         (regcache_raw_set_cached_value): Remove.
12888         (regcache::raw_set_cached_value): Remove.
12889         (regcache::raw_write): Call raw_supply.
12890         (regcache::raw_supply): Move it to reg_buffer_rw.
12891         * regcache.h (regcache_raw_set_cached_value): Remove.
12892         (reg_buffer_rw): New class.
12893
12894 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12895
12896         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
12897         readonly_detached_regcache.
12898         (dummy_frame_prev_register): Use regcache->cooked_read.
12899         * frame.c (frame_save_as_regcache): Change return type.
12900         (frame_pop): Update.
12901         * frame.h (frame_save_as_regcache): Update declaration.
12902         * inferior.h (get_infcall_suspend_state_regcache): Update
12903         declaration.
12904         * infrun.c (infcall_suspend_state) <registers>: use
12905         readonly_detached_regcache.
12906         (save_infcall_suspend_state): Don't use regcache_dup.
12907         (get_infcall_suspend_state_regcache): Change return type.
12908         * linux-fork.c (struct fork_info) <savedregs>: Change to
12909         readonly_detached_regcache.
12910         <pc>: New field.
12911         (fork_save_infrun_state): Don't use regcache_dup.
12912         (info_checkpoints_command): Adjust.
12913         * mi/mi-main.c (register_changed_p): Update declaration.
12914         (mi_cmd_data_list_changed_registers): Use
12915         readonly_detached_regcache.
12916         (register_changed_p): Change parameter type to
12917         readonly_detached_regcache.
12918         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
12919         readonly_detached_regcache.
12920         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
12921         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
12922         New.
12923         (regcache::save): Move it to reg_buffer.
12924         (regcache::restore): Change parameter type.
12925         (regcache_dup): Remove.
12926         * regcache.h (reg_buffer) <save>: New method.
12927         (readonly_detached_regcache): New class.
12928         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
12929         readonly_detached_regcache.
12930         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
12931
12932 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12933
12934         * frame.c (frame_save_as_regcache): Use regcache method save.
12935         (frame_pop): Use regcache method restore.
12936         * infrun.c (restore_infcall_suspend_state): Likewise.
12937         * linux-fork.c (fork_load_infrun_state): Likewise.
12938         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
12939         save.
12940         * regcache.c (regcache_save): Remove.
12941         (regcache::restore): More asserts.
12942         (regcache_cpy): Remove.
12943         * regcache.h (regcache_save): Remove the declaration.
12944         (regcache::restore): Move from private to public.
12945         Remove the friend declaration of regcache_cpy.
12946         (regcache_cpy): Remove declaration.
12947
12948 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12949
12950         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
12951         parameter type to 'readable_regcache *'.
12952         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12953         * arm-tdep.c (arm_neon_quad_read): Likewise.
12954         (arm_pseudo_read): Likewise.
12955         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12956         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12957         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12958         * gdbarch.c: Re-generated.
12959         * gdbarch.h: Re-generated.
12960         * gdbarch.sh (pseudo_register_read): Change parameter type to
12961         'readable_regcache *'.
12962         (pseudo_register_read_value): Likewise.
12963         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
12964         (h8300_pseudo_register_read): Likewise.
12965         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
12966         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12967         (i386_pseudo_register_read_into_value): Likewise.
12968         (i386_pseudo_register_read_value): Likewise.
12969         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
12970         declaration.
12971         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
12972         * m32c-tdep.c (m32c_raw_read): Likewise.
12973         (m32c_read_flg): Likewise.
12974         (m32c_banked_register): Likewise.
12975         (m32c_banked_read): Likewise.
12976         (m32c_sb_read): Likewise.
12977         (m32c_part_read): Likewise.
12978         (m32c_cat_read): Likewise.
12979         (m32c_r3r2r1r0_read): Likewise.
12980         (m32c_pseudo_register_read): Likewise.
12981         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12982         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12983         (mep_pseudo_cr64_read): Likewise.
12984         (mep_pseudo_register_read): Likewise.
12985         * mips-tdep.c (mips_pseudo_register_read): Likewise.
12986         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12987         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12988         * regcache.c (regcache::raw_read): Move it to readable_regcache.
12989         (regcache::cooked_read): Likewise.
12990         (regcache::cooked_read_value): Likewise.
12991         (regcache_cooked_read_signed):
12992         (regcache::cooked_read): Likewise.
12993         * regcache.h (readable_regcache): New class.
12994         (regcache): Inherit readable_regcache.  Move some methods to
12995         readable_regcache.
12996         * rl78-tdep.c (rl78_pseudo_register_read): Change
12997         parameter type to 'readable_regcache *'.
12998         * rs6000-tdep.c (do_regcache_raw_read): Remove.
12999         (e500_pseudo_register_read): Change parameter type to
13000         'readable_regcache *'.
13001         (dfp_pseudo_register_read): Likewise.
13002         (vsx_pseudo_register_read): Likewise.
13003         (efpr_pseudo_register_read): Likewise.
13004         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13005         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13006         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13007         (sh64_pseudo_register_read): Likewise.
13008         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13009         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13010         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13011         (spu_pseudo_register_read): Likewise.
13012         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13013         (xtensa_pseudo_register_read): Likewise.
13014
13015 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13016
13017         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13018         (regcache::arch): Move it to reg_buffer::arch.
13019         (regcache::register_buffer): Likewise.
13020         (regcache::assert_regnum): Likewise.
13021         (regcache::num_raw_registers): Likewise.
13022         * regcache.h (reg_buffer): New class.
13023         (regcache): Inherit reg_buffer.
13024
13025 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13026
13027         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13028         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13029
13030 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13031
13032         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13033
13034 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13035
13036         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13037         (SFILES): Remove common/*.c files.
13038         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13039         * common/common.host: Add common reference.
13040         * configure.ac: Likewise.
13041         * configure: Regenerate.
13042
13043 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13044
13045         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13046         (block_initialize_namespace): Use new.
13047         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13048         (dwarf2_free_objfile): Use delete.
13049         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13050         (copy_type_recursive): Use new.
13051         * gdb_obstack.h (allocate_on_obstack): New.
13052
13053 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13054
13055         PR gdb/22849
13056         * inferior.c (exit_inferior_1): Reset inf->control.
13057
13058 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13059
13060         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13061         declaration.
13062
13063 2018-02-14  Pedro Alves  <palves@redhat.com>
13064
13065         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13066         frame_cleanup_after_sniffer on exception.
13067
13068 2018-02-14  Tom Tromey  <tom@tromey.com>
13069
13070         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13071         const.
13072         (solib_bfd_open): Make pathname const.
13073         * solib.c (solib_bfd_open): Make pathname const.
13074         * solib-spu.c (spu_bfd_fopen): Make name const.
13075         (spu_bfd_open): Make pathname const.
13076         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13077         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13078
13079 2018-02-14  Tom Tromey  <tom@tromey.com>
13080
13081         * symfile.c (symfile_bfd_open): Update.
13082         * source.h (openp, source_full_path_of, find_and_open_source):
13083         Change argument type to unique_xmalloc_ptr.
13084         * source.c (openp): Take a unique_xmalloc_ptr.
13085         (source_full_path_of, find_and_open_source): Likewise.
13086         (open_source_file, symtab_to_fullname): Update.
13087         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13088         unique_xmalloc_ptr.
13089         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13090         (exec_file_find): Update.
13091         * psymtab.c (psymtab_to_fullname): Update.
13092         * nto-tdep.h (nto_find_and_open_solib): Update.
13093         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13094         unique_xmalloc_ptr.
13095         * exec.c (exec_file_attach): Update.
13096         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13097         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13098
13099 2018-02-14  Tom Tromey  <tom@tromey.com>
13100
13101         * solib.c: Include source.h.
13102         * nto-tdep.c: Include source.h.
13103         * mi/mi-cmd-env.c: Include source.h.
13104         * infcmd.c: Include source.h.
13105         * exec.c: Include source.h.
13106         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13107         (add_path, directory_switch, source_path, init_source_path): Move
13108         declarations...
13109         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13110         (add_path, directory_switch, source_path, init_source_path):
13111         ...here.
13112
13113 2018-02-14  Tom Tromey  <tom@tromey.com>
13114
13115         * solist.h (exec_file_find, solib_find): Return
13116         unique_xmalloc_ptr.
13117         (solib_bfd_fopen): Take a const char *.
13118         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13119         (exec_file_find, solib_find): Likewise.
13120         (solib_bfd_fopen): Do not take ownership of "pathname".
13121         (solib_bfd_open): Use unique_xmalloc_ptr.
13122         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13123         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13124         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13125         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13126
13127 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13128
13129         * ada-lang.c (name_match_type_from_name): Remove reference to
13130         ada_name_for_lookup in function's documentation.
13131         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13132
13133 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13134
13135         * defs.h (enum openp_flags): New enum.
13136         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13137         Move to enum openp_flags.
13138         (openp_flags): New enum flags.
13139         (openp): Change parameter type to openp_flags.
13140         * source.c (openp): Change parameter type to openp_flags.
13141         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13142         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13143
13144 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13145
13146         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13147         per-command.
13148
13149 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13150
13151         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13152         into...
13153         (class dwarf2_queue_guard): ...the destructor of this new class.
13154         (dw2_do_instantiate_symtab): Create instance of the new class
13155         dwarf2_queue_guard, remove cleanup.
13156
13157 2018-02-09  Tom Tromey  <tom@tromey.com>
13158
13159         * source.c (find_source_lines): Don't reference past the end of
13160         the vector.
13161
13162 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13163
13164         * remote.c (remote_btrace_maybe_reopen): Change error message.
13165         * btrace.c (btrace_enable): Likewise.
13166         (parse_xml_btrace): Likewise.
13167         (parse_xml_btrace_conf): Likewise.
13168
13169 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13170
13171         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13172         (linux_enable_pt, linux_enable_bts): Call
13173         diagnose_perf_event_open_fail.
13174
13175 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13176
13177         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13178         Remove parameter and change return type.  Update callers.  Move it.
13179         (linux_enable_bts, linux_enable_pt): Improve error message.
13180         (linux_enable_pt): Remove zero buffer size check.
13181         (linux_enable_btrace): Improve error messages.  Remove NULL return
13182         check.
13183
13184 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13185
13186         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13187         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13188         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13189         (linux_supports_pt, linux_supports_btrace): Remove.
13190         (linux_enable_bts): Call cpu_supports_bts.
13191         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13192         * remote.c (remote_supports_btrace): Remove.
13193         (init_remote_ops): Remove remote_supports_btrace.
13194         * target-delegates.c: Regenerated.
13195         * target.c (target_supports_btrace): Remove.
13196         * target.h (target_ops) <to_supports_btrace>: Remove
13197         (target_supports_btrace): Remove.
13198         * x86-linux-nat.c (x86_linux_create_target): Remove
13199         linux_supports_btrace.
13200
13201 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13202
13203         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13204         btrace failed.
13205         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13206         exception and use message in own exception.
13207
13208 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13209
13210         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13211         (perf_event_pt_event_type): Use gdb_file_up.
13212         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13213         scoped_fd, and scoped_mmap.
13214
13215 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13216
13217         * common/scoped_mmap.h: New.
13218         * unittests/scoped_mmap-selftest.c: New.
13219         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13220         unittests/scoped_mmap-selftest.c.
13221
13222 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13223
13224         * common/scoped_fd.h: New.
13225         * unittests/scoped_fd-selftest.c: New.
13226         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13227         unittests/scoped_fd-selftest.c.
13228
13229 2018-02-09  Tom Tromey  <tom@tromey.com>
13230
13231         * auto-load.c (auto_load_section_scripts): Use
13232         gdb::unique_xmalloc_ptr.
13233
13234 2018-02-09  Tom Tromey  <tom@tromey.com>
13235
13236         * auto-load.c (execute_script_contents): Use std::string.
13237
13238 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13239
13240         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13241         Python function, rather than a new command.
13242
13243 2018-02-08  Tom Tromey  <tom@tromey.com>
13244
13245         * solib.c (solib_find_1): Use std::string.
13246         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13247
13248 2018-02-08  Tom Tromey  <tom@tromey.com>
13249
13250         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13251
13252 2018-02-08  Tom Tromey  <tom@tromey.com>
13253
13254         * source.c (find_source_lines): Use gdb::def_vector.
13255
13256 2018-02-08  Tom Tromey  <tom@tromey.com>
13257
13258         * macrocmd.c (struct temporary_macro_definition): New.
13259         (macro_define_command): Use temporary_macro_definition.  Remove
13260         cleanups.
13261         (free_macro_definition_ptr): Remove.
13262
13263 2018-02-08  Tom Tromey  <tom@tromey.com>
13264
13265         * macroexp.c (maybe_expand): Use std::string.
13266
13267 2018-02-08  Tom Tromey  <tom@tromey.com>
13268
13269         * macroexp.c (struct macro_buffer): Add initializers for some
13270         members.
13271         (init_buffer, init_shared_buffer, free_buffer)
13272         (free_buffer_return_text): Remove.
13273         (macro_buffer): New constructors.
13274         (~macro_buffer): New destructor.
13275         (macro_buffer::set_shared): New method.
13276         (macro_buffer::resize_buffer, macro_buffer::appendc)
13277         (macro_buffer::appendmem): Now methods, not free functions.
13278         (set_token, append_tokens_without_splicing, stringify)
13279         (macro_stringify): Update.
13280         (gather_arguments): Change return type.  Remove argc_p argument,
13281         add args_ptr argument.  Use std::vector.
13282         (substitute_args): Remove argc argument.  Accept std::vector.
13283         (expand): Update.  Use std::vector.
13284         (scan, macro_expand, macro_expand_next): Update.
13285
13286 2018-02-08  Tom Tromey  <tom@tromey.com>
13287
13288         * symtab.c (default_collect_symbol_completion_matches_break_on):
13289         Use unique_xmalloc_ptr.
13290         * macroscope.h: (sal_macro_scope, user_macro_scope)
13291         (default_macro_scope): Return unique_xmalloc_ptr.
13292         * macroscope.c (sal_macro_scope, user_macro_scope)
13293         (default_macro_scope): Return unique_xmalloc_ptr.
13294         * macroexp.h (macro_expand, macro_expand_once): Return
13295         unique_xmalloc_ptr.
13296         * macroexp.c (macro_expand, macro_expand_once): Return
13297         unique_xmalloc_ptr.
13298         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13299         (info_macro_command, info_macros_command): Use
13300         unique_xmalloc_ptr.
13301         * compile/compile-c-support.c (write_macro_definitions): Use
13302         unique_xmalloc_ptr.
13303         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13304
13305 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13306
13307         * value.c (value_static_field): Assign field type instead of
13308         containing type when returning an optimized out value.
13309
13310 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13311
13312         * ft32-tdep.c (ft32_read_pc): Remove.
13313         (ft32_write_pc): Remove.
13314         (ft32_gdbarch_init): Update.
13315         * m32r-tdep.c (m32r_read_pc): Remove.
13316         (m32r_gdbarch_init): Update.
13317         * mep-tdep.c (mep_read_pc): Remove.
13318         (mep_gdbarch_init): Update.
13319         * microblaze-tdep.c (microblaze_write_pc): Remove.
13320         (microblaze_gdbarch_init): Update.
13321         * mn10300-tdep.c (mn10300_read_pc): Remove.
13322         (mn10300_write_pc): Remove.
13323         (mn10300_gdbarch_init): Update.
13324         * moxie-tdep.c (moxie_read_pc): Remove.
13325         (moxie_write_pc): Remove.
13326         (moxie_gdbarch_init): Update.
13327
13328 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13329
13330         * expprint.c (print_subexp_standard): Handle
13331         OP_F77_UNDETERMINED_ARGLIST.
13332         (dump_subexp_body_standard): Likewise.
13333
13334 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13335
13336         * target-descriptions.c (tdesc_element_visitor) Add empty
13337         implementations.
13338         (tdesc_type): Move make_gdb_type from here.
13339         (tdesc_type_builtin): Likewise.
13340         (tdesc_type_vector): Likewise.
13341         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13342         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13343         (make_gdb_type_union): Likewise.
13344         (make_gdb_type_flags): Likewise.
13345         (make_gdb_type_enum): Likewise.
13346         (make_gdb_type): New function.
13347         (tdesc_register_type): Use static make_gdb_type.
13348
13349 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13350
13351         * infcmd.c (default_print_one_register_info): Align natural-format
13352         column values consistently one under another.
13353         (pad_to_column): New function.
13354
13355 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13356
13357         * dwarf2read.c (dwarf2_physname): Move commment.
13358
13359 2018-02-01  Leszek Swirski  <leszeks@google.com>
13360
13361         * varobj.c (varobj_formatted_print_options): Allow recursive
13362         pretty printing if pretty printing is enabled.
13363
13364 2018-02-01  Leszek Swirski  <leszeks@google.com>
13365
13366         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13367         names after a structop as a filename.
13368
13369 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13370
13371         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13372         (arm_record_coproc_data_proc): Likewise.
13373
13374 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13375
13376         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13377
13378 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13379
13380         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13381         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13382
13383 2018-01-31  Pedro Alves  <palves@redhat.com>
13384
13385         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13386         * inflow.c (child_terminal_save_inferior): Wrap reference to
13387         tcgetpgrp in HAVE_TERMIOS_H.
13388         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13389         _WIN32.
13390         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13391         always iterate over all inferiors.
13392         (gdbsim_cntrl_c): Adjust.
13393         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13394
13395 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13396
13397         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13398         index type is objfile-owned if the element type is as well.
13399
13400 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13401
13402         GDB 8.1 released.
13403
13404 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13405
13406         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13407         "features/s390x-linux64.c".
13408         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13409         s390_linux32 and s390x_linux64.
13410         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13411         default tdesc.
13412         * s390-tdep.c: Include "features/s390-linux32.c" and
13413         "features/s390x-linux64.c".
13414         (s390_tdesc_valid): Add check for tdesc_has_registers.
13415         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13416         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13417         tdesc_s390x_linux64.
13418         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13419         tdesc_s390x_linux64 to...
13420         * s390-tdep.h: ...here.
13421
13422 2018-01-30  Pedro Alves  <palves@redhat.com>
13423
13424         PR gdb/13211
13425         * config.in, configure: Regenerate.
13426         * configure.ac: Check for getpgid.
13427         * go32-nat.c (go32_pass_ctrlc): New.
13428         (go32_target): Install it.
13429         * inf-child.c (inf_child_target): Install
13430         child_terminal_save_inferior, child_pass_ctrlc and
13431         child_interrupt.
13432         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13433         (inf_ptrace_target): No longer install it.
13434         * infcmd.c (interrupt_target_1): Adjust.
13435         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13436         (child_interrupt): Declare.
13437         (inferior::terminal_state): New.
13438         * inflow.c (struct terminal_info): Update comments.
13439         (inferior_process_group): Delete.
13440         (terminal_is_ours): Delete.
13441         (gdb_tty_state): New.
13442         (child_terminal_init): Adjust.
13443         (is_gdb_terminal, sharing_input_terminal_1)
13444         (sharing_input_terminal): New functions.
13445         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13446         Set the process's actual process group in the foreground if
13447         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13448         mark terminal as the inferior's if not sharing GDB's terminal.
13449         Don't check attach_flag.
13450         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13451         pass down a target_terminal_state.
13452         (child_terminal_save_inferior): New, factored out from ...
13453         (child_terminal_ours_1): ... this.  Handle
13454         target_terminal_state::is_ours_for_output.
13455         (child_interrupt, child_pass_ctrlc): New.
13456         (inflow_inferior_exit): Clear the inferior's terminal_state.
13457         (copy_terminal_info): Copy the inferior's terminal state.
13458         (_initialize_inflow): Remove reference to terminal_is_ours.
13459         * inflow.h (inferior_process_group): Delete.
13460         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13461         * procfs.c (procfs_target): Don't install procfs_interrupt.
13462         (procfs_interrupt): Delete.
13463         * remote.c (remote_serial_quit_handler): Adjust.
13464         (remote_interrupt): Remove ptid parameter.  Adjust.
13465         * target-delegates.c: Regenerate.
13466         * target.c: Include "terminal.h".
13467         (target_terminal::terminal_state): Rename to ...
13468         (target_terminal::m_terminal_state): ... this.
13469         (target_terminal::init): Adjust.
13470         (target_terminal::inferior): Adjust to per-inferior
13471         terminal_state.
13472         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13473         (target_terminal::ours, target_terminal::ours_for_output): Use
13474         target_terminal_is_ours_kind.
13475         (target_interrupt): Remove ptid parameter.  Adjust.
13476         (default_target_pass_ctrlc): Adjust.
13477         * target.h (target_ops::to_terminal_save_inferior): New field.
13478         (target_ops::to_interrupt): Remove ptid_t parameter.
13479         (target_interrupt): Remove ptid_t parameter.  Update comment.
13480         (target_pass_ctrlc): Update comment.
13481         * target/target.h (target_terminal_state): New scoped enum,
13482         factored out of ...
13483         (target_terminal::terminal_state): ... here.
13484         (target_terminal::inferior): Update comments.
13485         (target_terminal::restore_inferior): New.
13486         (target_terminal::is_inferior, target_terminal::is_ours)
13487         (target_terminal::is_ours_for_output): Adjust.
13488         (target_terminal::scoped_restore_terminal_state): Adjust to
13489         rename, and call restore_inferior() instead of inferior().
13490         (target_terminal::scoped_restore_terminal_state::m_state): Change
13491         type.
13492         (target_terminal::terminal_state): Rename to ...
13493         (target_terminal::m_terminal_state): ... this and change type.
13494
13495 2018-01-30  Pedro Alves  <palves@redhat.com>
13496
13497         * linux-nat.c (wait_for_signal): New function.
13498         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13499         directly.
13500         (async_terminal_is_ours)
13501         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13502         (linux_nat_add_target): Don't override
13503         to_terminal_inferior/to_terminal_ours.
13504
13505 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13506
13507         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13508
13509 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13510
13511         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13512         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13513         dwarf2_per_objfile_free here.
13514         (dwarf2_per_objfile_free): Remove.
13515         (_initialize_dwarf2_read): Don't register
13516         dwarf2_per_objfile_free as a registry cleanup.
13517
13518 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13519
13520         Avoid compilation errors in MinGW native builds
13521
13522         The error is triggered by including python-internal.h, and the
13523         error message is:
13524
13525              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13526                       from build-gnulib/import/math.h:27,
13527                       from d:/usr/Python26/include/pyport.h:235,
13528                       from d:/usr/Python26/include/Python.h:58,
13529                       from python/python-internal.h:94,
13530                       from python/py-arch.c:24:
13531              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13532         using ::hypot;
13533                 ^~~~~
13534
13535         This happens because Python headers define 'hypot' to expand t
13536         '_hypot' in the Windows builds.
13537         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13538         'hypoth'.  This avoids a compilation error.
13539
13540 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13541
13542         * MAINTAINERS (Write After Approval): Fix ordering.
13543
13544 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13545
13546         * MAINTAINERS (Write After Approval): Add Alan Hayward.
13547
13548 2018-01-26  Alan Modra  <amodra@gmail.com>
13549
13550         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
13551         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
13552         Remove nop.  Make const.  Comment.
13553         (powerpc32_plt_stub_so_2): New.
13554         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
13555         Correct count.  Update uses.
13556         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
13557         Move common code reading PLT entry word.  Correct
13558         powerpc32_plt_stub PLT address calculation.
13559         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
13560         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
13561         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
13562         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
13563         (ppc64_standard_linkage8): Likewise.
13564         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
13565         Correct insns description.
13566         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
13567
13568 2018-01-24  Pedro Alves  <palves@redhat.com>
13569
13570         GCC PR libstdc++/83906
13571         * gdbtypes.c (operator==(const dynamic_prop &,
13572         const dynamic_prop &)): New.
13573         (operator==(const range_bounds &, const range_bounds &)): New.
13574         (check_types_equal): Use them instead of memcmp.
13575         * gdbtypes.h (operator==(const dynamic_prop &,
13576         const dynamic_prop &)): Declare.
13577         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
13578         (operator==(const range_bounds &, const range_bounds &)): Declare.
13579         (operator!=(const range_bounds &, const range_bounds &)): Declare.
13580
13581 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13582
13583         * s390-linux-tdep.c (s390_record_address_mask)
13584         (s390_record_calc_disp_common, s390_record_calc_disp)
13585         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13586         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13587         (s390_process_record): Move to s390-tdep.c.
13588         (s390_linux_init_abi_any): Adjust.
13589         * s390-tdep.c (s390_record_address_mask)
13590         (s390_record_calc_disp_common, s390_record_calc_disp)
13591         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13592         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13593         (s390_process_record): Moved from s390-linux-tdep.c
13594         (s390_gdbarch_init): Adjust.
13595
13596 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13597
13598         * s390-linux-nat.c (s390-tdep.h): New include.
13599         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
13600         (HFILES_NO_SRCDIR): Add s390-tdep.h.
13601         (ALLDEPFILES): Add s390-tdep.c.
13602         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
13603         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
13604         * s390-tdep.h: ...this.  New file.
13605         * s390-linux-tdep.c (s390-tdep.h): New include.
13606         (_initialize_s390_tdep): Rename to...
13607         (_initialize_s390_linux_tdep): ...this and adjust.
13608         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
13609         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
13610         s390-tdep.h.
13611         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
13612         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
13613         (s390_is_partial_instruction, s390_software_single_step)
13614         (is_non_branch_ril, s390_displaced_step_copy_insn)
13615         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
13616         (s390_prologue_data, s390_addr, s390_store, s390_load)
13617         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
13618         (s390_register_call_saved, s390_guess_tracepoint_registers)
13619         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
13620         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
13621         (s390_pseudo_register_name, s390_pseudo_register_type)
13622         (s390_pseudo_register_read, s390_pseudo_register_write)
13623         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
13624         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
13625         (s390_addr_bits_remove, s390_address_class_type_flags)
13626         (s390_address_class_type_flags_to_name)
13627         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
13628         (s390_function_arg_float, s390_function_arg_vector)
13629         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
13630         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
13631         (s390_frame_align, s390_register_return_value, s390_return_value)
13632         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
13633         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
13634         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
13635         (s390_trad_frame_prev_register, s390_unwind_cache)
13636         (s390_prologue_frame_unwind_cache)
13637         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
13638         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
13639         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
13640         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
13641         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
13642         (s390_frame_base_address, s390_local_base_address)
13643         (s390_frame_base, s390_gcc_target_options)
13644         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
13645         (s390_validate_reg_range, s390_tdesc_valid)
13646         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
13647         * s390-tdep.c: ...this.  New file.
13648
13649 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13650
13651         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
13652         (s390_process_record, s390_gdbarch_tdep_alloc)
13653         (s390_linux_init_abi_any): Use/set new hook.
13654
13655 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13656
13657         * s390-linux-tdep.c (osabi.h): New include.
13658         (s390_linux_init_abi_31, s390_linux_init_abi_64)
13659         (s390_linux_init_abi_any): New functions.
13660         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
13661
13662 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13663
13664         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
13665         tdesc_has_registers check
13666
13667 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13668
13669         * s390-linux-tdep.c (s390_tdesc_valid): New function.
13670         (s390_validate_reg_range): New macro.
13671         (s390_gdbarch_init): Adjust.
13672
13673 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13674
13675         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
13676         (s390_gdbarch_tdep_alloc): Adjust.
13677         (s390_gdbarch_init): Adjust.
13678
13679 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13680
13681         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
13682         <have_tdb>: Change type to bool.
13683         (s390_gdbarch_tdep_alloc): Adjust.
13684         (s390_gdbarch_init): Adjust.
13685
13686 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13687
13688         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
13689         (gdbarch_tdep) <have_upper, have_vx>: New fields.
13690         (s390_gdbarch_tdep_alloc): New function.
13691         (s390_gdbarch_init): Allocate tdep at start and use its fields
13692         instead of separate variables.
13693
13694 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13695
13696         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
13697         when looking for cached gdbarch and add comment for remaining.
13698
13699 2018-01-22  Pedro Alves  <palves@redhat.com>
13700             Sergio Durigan Junior  <sergiodj@redhat.com>
13701
13702         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
13703         case.
13704
13705 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
13706
13707         * MAINTAINERS: Update my company e-mail address.
13708
13709 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13710
13711         * regcache.c (cooked_write_test): New function.
13712         (_initialize_regcache): Register the test.
13713
13714 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13715
13716         * ia64-tdep.c (ia64_pseudo_register_read): Call
13717         regcache->cooked_read instead of regcache_cooked_read_unsigned.
13718         * m32c-tdep.c (m32c_cat_read): Likewise.
13719         (m32c_r3r2r1r0_read): Likewise.
13720         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13721         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13722
13723 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13724
13725         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
13726         method raw_read instead of regcache_raw_read.
13727         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13728         * arm-tdep.c (arm_neon_quad_read): Likewise.
13729         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13730         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13731         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13732         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
13733         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13734         (i386_pseudo_register_read_into_value): Likewise.
13735         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13736         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13737         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13738         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
13739         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
13740         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
13741         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13742         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
13743         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
13744
13745 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13746
13747         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
13748         * configure.tgt: Remove target mt.
13749         * mt-tdep.c: Remove.
13750         * regcache.c (cooked_read_test): Remove the check for mt.
13751
13752 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13753
13754         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
13755         instead of gdbarch_pseudo_register_read_value.
13756
13757 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13758
13759         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
13760         language is Ada.
13761
13762 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13763
13764         * linespec.c (create_sals_line_offset): Remove code that preserved
13765         the symtab_and_line's line number.
13766
13767 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13768
13769         * varobj.c (varobj_create): Don't set valid_block when creating a
13770         floating varobj.
13771
13772 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13773
13774         * varobj.c (varobj_create): Remove out of date comment.
13775
13776 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13777
13778         PR mi/20395
13779         * ada-exp.y (write_var_from_sym): Pass extra parameter when
13780         updating innermost block.
13781         * parse.c (innermost_block_tracker::update): Take extra type
13782         parameter, and check types match before updating innermost block.
13783         (write_dollar_variable): Update innermost block for registers.
13784         * parser-defs.h (enum innermost_block_tracker_type): New enum.
13785         (innermost_block_tracker::innermost_block_tracker): Initialise
13786         m_types member.
13787         (innermost_block_tracker::reset): Take type parameter.
13788         (innermost_block_tracker::update): Take type parameter, and pass
13789         type through as needed.
13790         (innermost_block_tracker::m_types): New member.
13791         * varobj.c (varobj_create): Pass type when reseting innermost
13792         block.
13793
13794 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13795
13796         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
13797         * ada-lang.c (resolve_subexp): Likewise.
13798         * breakpoint.c (set_breakpoint_condition) Likewise.
13799         (watch_command_1) Likewise.
13800         * c-exp.y (variable): Likewise.
13801         * d-exp.y (PrimaryExpression): Likewise.
13802         * f-exp.y (variable): Likewise.
13803         * go-exp.y (variable): Likewise.
13804         * m2-exp.y (variable): Likewise.
13805         * objfiles.c (objfile::~objfile): Likewise.
13806         * p-exp.y (variable): Likewise.
13807         * parse.c (innermost_block): Change type.
13808         * parser-defs.h (class innermost_block_tracker): New.
13809         (innermost_block): Change to innermost_block_tracker.
13810         * printcmd.c (display_command): Switch to innermost_block API.
13811         (do_one_display): Likewise.
13812         * rust-exp.y (do_one_display): Likewise.
13813         * symfile.c (clear_symtab_users): Likewise.
13814         * varobj.c (varobj_create): Switch to innermost_block API, replace
13815         use of innermost_block with block stored on varobj object.
13816
13817 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13818
13819         * expression.h (innermost_block): Remove declaration.
13820         * varobj.c: Add 'parser-defs.h' include.
13821
13822 2018-01-19  Tom Tromey  <tom@tromey.com>
13823
13824         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
13825         symbols in the static and global blocks.
13826
13827 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
13828
13829         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
13830         gdb_ptrace.h, and move including gdb_wait.h ...
13831         * nat/linux-ptrace.h: ... to here.
13832
13833 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13834
13835         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
13836         inf_ptrace_detach_success.
13837         (inf_ptrace_detach_success): Add inferior parameter, use it
13838         instead of inferior_ptid, pass it to detach_inferior.
13839         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
13840         parameter.
13841         * inferior.c (detach_inferior): Add overload that takes an
13842         inferior object.
13843         * inferior.h (detach_inferior): Likewise.
13844         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
13845         use inferior_ptid, adjust call to inf_ptrace_detach_success.
13846         * linux-thread-db.c (thread_db_detach): Use inf parameter.
13847
13848 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13849
13850         * target.h (struct target_ops) <to_detach>: Add inferior
13851         parameter.
13852         (target_detach): Likewise.
13853         * target.c (dispose_inferior): Pass inferior down.
13854         (target_detach): Pass inferior down.  Assert that it is equal to
13855         the current inferior.
13856         * aix-thread.c (aix_thread_detach): Pass inferior down.
13857         * corefile.c (core_file_command): Pass current_inferior() down.
13858         * corelow.c (core_detach): Add inferior parameter.
13859         * darwin-nat.c (darwin_detach): Likewise.
13860         * gnu-nat.c (gnu_detach): Likewise.
13861         * inf-ptrace.c (inf_ptrace_detach): Likewise.
13862         * infcmd.c (detach_command): Pass current_inferior() down to
13863         target_detach.
13864         * infrun.c (follow_fork_inferior): Pass parent_inf to
13865         target_detach.
13866         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
13867         target_detach.
13868         * linux-nat.c (linux_nat_detach): Add inferior parameter.
13869         * linux-thread-db.c (thread_db_detach): Likewise.
13870         * nto-procfs.c (procfs_detach): Likewise.
13871         * procfs.c (procfs_detach): Likewise.
13872         * record.c (record_detach): Likewise.
13873         * record.h (struct inferior): Forward-declare.
13874         (record_detach): Add inferior parameter.
13875         * remote-sim.c (gdbsim_detach): Likewise.
13876         * remote.c (remote_detach_1): Likewise.
13877         (remote_detach): Likewise.
13878         (extended_remote_detach): Likewise.
13879         * sol-thread.c (sol_thread_detach): Likewise.
13880         * target-debug.h (target_debug_print_inferior_p): New macro.
13881         * target-delegates.c: Re-generate.
13882         * top.c (kill_or_detach): Pass inferior down to target_detach.
13883         * windows-nat.c (windows_detach): Add inferior parameter.
13884
13885 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13886
13887         * target.h (struct target_ops) <to_detach>: Remove args
13888         parameter.
13889         (target_detach): Likewise.
13890         * target.c (dispose_inferior): Adjust.
13891         (target_detach): Remove args parameter, adjust.
13892         * aix-thread.c (aix_thread_detach): Adjust.
13893         * corefile.c (core_file_command): Adjust.
13894         * corelow.c (core_detach): Adjust.
13895         * darwin-nat.c (darwin_detach): Adjust.
13896         * gnu-nat.c (gnu_detach): Adjust.
13897         * inf-ptrace.c (inf_ptrace_detach): Adjust.
13898         * infcmd.c (detach_command): Adjust
13899         * infrun.c (follow_fork_inferior): Adjust.
13900         (handle_vfork_child_exec_or_exit): Adjust.
13901         * linux-fork.c (linux_fork_detach): Remove args parameter.
13902         * linux-fork.h (linux_fork_detach): Likewise.
13903         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
13904         * linux-thread-db.c (thread_db_detach): Likewise.
13905         * nto-procfs.c (procfs_detach): Likewise.
13906         * procfs.c (procfs_detach): Likewise.
13907         (do_detach): Remove signo parameter.
13908         * record.c (record_detach): Remove args parameter.
13909         * record.h (record_detach): Likewise.
13910         * remote-sim.c (gdbsim_detach): Likewise.
13911         * remote.c (remote_detach_1): Likewise.
13912         (remote_detach): Likewise.
13913         (extended_remote_detach): Likewise.
13914         * sol-thread.c (sol_thread_detach): Likewise.
13915         * target-delegates.c: Re-generate.
13916         * top.c (struct qt_args) <args>: Remove field.
13917         (kill_or_detach): Don't pass args.
13918         (quit_force): Don't set args.
13919         * windows-nat.c (windows_detach): Remove args parameter.
13920
13921 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13922
13923         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
13924         (arm_linux_init_abi): Install it.
13925
13926 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13927
13928         * osabi.c (gdb_osabi_names): Extend the regexp for
13929         arm-linux-gnueabihf.
13930
13931 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13932
13933         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
13934         m_abbrevs.
13935         (abbrev_table::add_abbrev): Update.
13936         (abbrev_table::lookup_abbrev): Update.
13937
13938 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13939
13940         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
13941
13942 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
13943
13944         * compile/compile.c (compile_to_object): Convert "triplet_rx"
13945         to "std::string".
13946
13947 2018-01-17  Tom Tromey  <tom@tromey.com>
13948
13949         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
13950
13951 2018-01-17  Tom Tromey  <tom@tromey.com>
13952
13953         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
13954         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
13955         (create_array_type_with_stride): Update.
13956         * dwarf2read.c (set_die_type): Update.
13957
13958 2018-01-17  Tom Tromey  <tom@tromey.com>
13959
13960         * dwarf2read.c (delayed_method_info): Remove typedef.
13961         (dwarf2_cu::method_info): Now a std::vector.
13962         (add_to_method_list): Update.
13963         (free_delayed_list): Remove.
13964         (compute_delayed_physnames): Update.
13965         (process_full_comp_unit, process_full_type_unit): Clear the method
13966         list.  Remove cleanups.
13967         (psymtab_include_file_name): Add name_holder parameter.  Use
13968         unique_xmalloc_ptr.
13969         (dwarf_decode_lines): Update.
13970
13971 2018-01-17  Tom Tromey  <tom@tromey.com>
13972             Simon Marchi  <simon.marchi@ericsson.com>
13973
13974         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
13975         (dwarf2_per_objfile::free_cached_comp_units)
13976         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13977         (init_cutu_and_read_dies_no_follow): Update.
13978         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
13979         (dwarf2_cu::~dwarf2_cu): New.
13980         (free_heap_comp_unit, free_stack_comp_unit): Remove.
13981         (age_cached_comp_units, free_one_cached_comp_unit): Update.
13982
13983 2018-01-17  Tom Tromey  <tom@tromey.com>
13984             Simon Marchi  <simon.marchi@ericsson.com>
13985
13986         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
13987         (struct die_reader_specs) <abbrev_table>: New member.
13988         (struct abbrev_table): Add constructor.
13989         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
13990         <abbrev_obstack>: Now an auto_obstack.
13991         (abbrev_table_up): New typedef.
13992         (init_cu_die_reader): Add abbrev_table parameter.
13993         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
13994         Add result_dwo_abbrev_table.
13995         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13996         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
13997         Update.
13998         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
13999         parameter.
14000         (skip_children): Update.
14001         (abbrev_table::alloc_abbrev): Rename from
14002         abbrev_table_alloc_abbrev.
14003         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14004         (abbrev_table::lookup_abbrev): Rename from
14005         abbrev_table_lookup_abbrev.
14006         (abbrev_table_read_table): Return abbrev_table_up.
14007         (abbrev_table_free, abbrev_table_free_cleanup)
14008         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14009         (load_partial_dies): Update.
14010
14011 2018-01-17  Tom Tromey  <tom@tromey.com>
14012
14013         * dwarf2read.c (dwarf2_compute_name): Update comment.
14014         (read_func_scope, read_variable): Update.
14015         (new_symbol): Remove.
14016         (new_symbol_full): Rename to new_symbol.
14017
14018 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14019
14020         PR gdb/16577
14021         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14022         a warning instead of throwing an error, set section size to 0 and return
14023         NULL.
14024         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14025
14026 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14027
14028         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14029         std::string.
14030         (linux_ptrace_attach_fail_reason_string): Likewise.
14031         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14032         Likewise.
14033         (linux_ptrace_attach_fail_reason_string): Likewise.
14034         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14035
14036 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14037
14038         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14039
14040 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14041
14042         PR gdb/21559
14043         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14044         checking for fs_base/gs_base fields in struct user_regs_struct.
14045         * configure: Regenerate.
14046
14047 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14048
14049         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14050         function.
14051         (aarch64_linux_init_abi): Install it to gdbarch hook
14052         gcc_target_options.
14053
14054 2018-01-15  Pedro Alves  <palves@redhat.com>
14055
14056         * common/signals-state-save-restore.c
14057         (save_original_signals_state): Fix typos.
14058
14059 2017-01-12  Tom Tromey  <tom@tromey.com>
14060             Sergio Durigan Junior  <sergiodj@redhat.com>
14061
14062         * Makefile.in (install-only): Install gdb-add-index.
14063
14064 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14065
14066         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14067
14068 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14069
14070         * infrun.c (keep_going_pass_signal): Clear step-over info when
14071         insert_breakpoints fails.
14072
14073 2018-01-11  Pedro Alves  <palves@redhat.com>
14074
14075         PR gdb/22583
14076         * infrun.c (resume): Rename to ...
14077         (resume_1): ... this.
14078         (resume): Reimplement as wrapper around resume_1.
14079
14080 2018-01-11  Pedro Alves  <palves@redhat.com>
14081
14082         PR remote/22597
14083         * remote.c (remote_parse_stop_reply): Default to the last-set
14084         general thread instead of to 'magic_null_ptid'.
14085
14086 2018-01-10  Pedro Alves  <palves@redhat.com>
14087
14088         * language.h (language_get_symbol_name_matcher): Rename ...
14089         (get_symbol_name_matcher): ... this.
14090         * language.c (language_get_symbol_name_matcher): Ditto.
14091         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14092         callers adjusted.
14093
14094 2018-01-10  Pedro Alves  <palves@redhat.com>
14095
14096         PR gdb/22670
14097         * dwarf2read.c
14098         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14099         Adjust to use language_get_symbol_name_matcher instead of
14100         language_defn::la_get_symbol_name_matcher.
14101         * language.c (language_get_symbol_name_matcher): If in Ada mode
14102         and the lookup name is a verbatim match, return Ada's matcher.
14103         * language.h (language_get_symbol_name_matcher): Adjust comment.
14104         (ada_lookup_name_info::verbatim_p):: New method.
14105
14106 2018-01-10  Pedro Alves  <palves@redhat.com>
14107
14108         PR gdb/22670
14109         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14110         minsym's language is language_auto or language_cplus, pass down
14111         language_ada instead.
14112         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14113
14114 2018-01-10  Pedro Alves  <palves@redhat.com>
14115
14116         PR gdb/22670
14117         * minsyms.c (linkage_name_str): New function.
14118         (iterate_over_minimal_symbols): Use it.
14119
14120 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14121
14122         * NEWS: Document that 'info proc' now works on FreeBSD.
14123
14124 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14125
14126         * configure.ac: Check for kinfo_getfile in libutil.
14127         * configure: Regenerate.
14128         * config.in: Regenerate.
14129         * fbsd-nat.c: Include "fbsd-tdep.h".
14130         (fbsd_fetch_cmdline): New.
14131         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14132         rather than calling error.
14133         (fbsd_info_proc): New.
14134         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14135         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14136         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14137
14138 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14139
14140         * fbsd-nat.c (struct free_deleter): Remove.
14141         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14142
14143 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14144
14145         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14146         NULL for an empty pathname.
14147
14148 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14149
14150         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14151         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14152         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14153         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14154         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14155         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14156         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14157         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14158         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14159         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14160         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14161         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14162         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14163         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14164         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14165
14166 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14167
14168         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14169         (gnu_xfer_auxv): New function.
14170         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14171         TARGET_OBJECT_AUXV.
14172
14173 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14174             Simon Marchi  <simon.marchi@ericsson.com>
14175
14176         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14177         common/selftest.c.
14178         (COMMON_OBS): Remove selftest.o.
14179         * configure.ac: Append selftest-arch.c and common/selftest.c to
14180         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14181         * configure: Re-generated.
14182         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14183         GDB_SELF_TEST.
14184         (maintenance_info_selftests): Likewise.
14185
14186 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14187
14188         * ada-valprint.c (val_print_packed_array_elements): Use
14189         proper number of elements when printing an array indexed
14190         by an enumeration type.
14191
14192 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14193
14194         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14195         (dw2_get_file_names_reader): Adjust.
14196         (lookup_dwo_signatured_type): Adjust.
14197         (lookup_dwp_signatured_type): Adjust.
14198         (lookup_signatured_type): Adjust.
14199         (create_type_unit_group): Adjust.
14200         (get_type_unit_group): Adjust.
14201         (process_psymtab_comp_unit_reader): Adjust.
14202         (build_type_psymtabs_reader): Adjust.
14203         (scan_partial_symbols): Adjust.
14204         (add_partial_symbol): Adjust.
14205         (add_partial_subprogram): Adjust.
14206         (peek_die_abbrev): Adjust.
14207         (fixup_go_packaging): Adjust.
14208         (process_imported_unit_die): Adjust.
14209         (dwarf2_compute_name): Adjust.
14210         (dwarf2_physname): Adjust.
14211         (read_import_statement): Adjust.
14212         (handle_DW_AT_stmt_list): Adjust.
14213         (read_file_scope): Adjust.
14214         (read_func_scope): Adjust.
14215         (read_lexical_block_scope): Adjust.
14216         (read_call_site_scope): Adjust.
14217         (read_variable): Adjust.
14218         (dwarf2_rnglists_process): Adjust.
14219         (dwarf2_ranges_process): Adjust.
14220         (dwarf2_ranges_read): Adjust.
14221         (dwarf2_get_pc_bounds): Adjust.
14222         (dwarf2_record_block_ranges): Adjust.
14223         (dwarf2_add_field): Adjust.
14224         (dwarf2_add_member_fn): Adjust.
14225         (read_structure_type): Adjust.
14226         (process_structure_scope): Adjust.
14227         (read_enumeration_type): Adjust.
14228         (read_array_type): Adjust.
14229         (mark_common_block_symbol_computed): Adjust.
14230         (read_common_block): Adjust.
14231         (read_namespace_type): Adjust.
14232         (read_namespace): Adjust.
14233         (read_module_type): Adjust.
14234         (read_tag_pointer_type): Adjust.
14235         (read_tag_ptr_to_member_type): Adjust.
14236         (read_tag_string_type): Adjust.
14237         (read_subroutine_type): Adjust.
14238         (read_typedef): Adjust.
14239         (read_base_type): Adjust.
14240         (attr_to_dynamic_prop): Adjust.
14241         (read_subrange_type): Adjust.
14242         (read_unspecified_type): Adjust.
14243         (dwarf2_read_abbrevs): Adjust.
14244         (load_partial_dies): Adjust.
14245         (read_partial_die): Adjust.
14246         (find_partial_die): Adjust.
14247         (guess_partial_die_structure_name): Adjust.
14248         (fixup_partial_die): Adjust.
14249         (read_attribute_value): Adjust.
14250         (read_addr_index): Adjust.
14251         (read_addr_index_from_leb128): Adjust.
14252         (read_str_index): Adjust.
14253         (dwarf2_string_attr): Adjust.
14254         (get_debug_line_section): Adjust.
14255         (dwarf_decode_line_header): Adjust.
14256         (lnp_state_machine::check_line_address): Adjust.
14257         (dwarf_decode_lines_1): Adjust.
14258         (dwarf_decode_lines): Adjust.
14259         (dwarf2_start_symtab): Adjust.
14260         (var_decode_location): Adjust.
14261         (new_symbol_full): Adjust.
14262         (dwarf2_const_value_data): Adjust.
14263         (dwarf2_const_value_attr): Adjust.
14264         (dwarf2_const_value): Adjust.
14265         (die_type): Adjust.
14266         (die_containing_type): Adjust.
14267         (build_error_marker_type): Adjust.
14268         (lookup_die_type): Adjust.
14269         (guess_full_die_structure_name): Adjust.
14270         (anonymous_struct_prefix): Adjust.
14271         (determine_prefix): Adjust.
14272         (dwarf2_name): Adjust.
14273         (follow_die_ref_or_sig): Adjust.
14274         (follow_die_offset): Adjust.
14275         (follow_die_ref): Adjust.
14276         (follow_die_sig_1): Adjust.
14277         (follow_die_sig): Adjust.
14278         (get_signatured_type): Adjust.
14279         (get_DW_AT_signature_type): Adjust.
14280         (decode_locdesc): Adjust.
14281         (dwarf_decode_macros): Adjust.
14282         (cu_debug_loc_section): Adjust.
14283         (fill_in_loclist_baton): Adjust.
14284         (dwarf2_symbol_mark_computed): Adjust.
14285         (init_one_comp_unit): Don't assign
14286         dwarf2_cu::dwarf2_per_objfile.
14287         (set_die_type): Adjust.
14288
14289 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14290
14291         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14292         <dwarf2_per_objfile>: New field.
14293         (dwarf2_per_objfile): Remove global.
14294         (get_dwarf2_per_objfile): New function.
14295         (set_dwarf2_per_objfile): New function.
14296         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14297         dwarf2_per_objfile.
14298         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14299         (read_abbrev_offset): Likewise.
14300         (read_indirect_string): Likewise.
14301         (read_indirect_line_string): Likewise.
14302         (read_indirect_string_at_offset): Likewise.
14303         (read_indirect_string_from_dwz): Likewise.
14304         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14305         dwarf2_per_objfile.
14306         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14307         (create_all_comp_units): Change objfile parameter to
14308         dwarf2_per_objfile.
14309         (create_all_type_units): Likewise.
14310         (process_queue): Add dwarf2_per_objfile parameter.
14311         (read_and_check_comp_unit_head): Likewise.
14312         (lookup_dwo_unit_in_dwp): Likewise.
14313         (get_dwp_file): Likewise.
14314         (process_cu_includes): Likewise.
14315         (struct free_dwo_file_cleanup_data): New struct.
14316         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14317         set_dwarf2_per_objfile.
14318         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14319         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14320         context, adjust calls.
14321         (dw2_instantiate_symtab): Likewise.
14322         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14323         (dw2_get_cu): Likewise.
14324         (create_cu_from_index_list): Change objfile parameter to
14325         dwarf2_per_objfile.
14326         (create_cus_from_index_list): Get dwarf2_per_objfile from
14327         context, adjust calls.
14328         (create_cus_from_index): Likewise.
14329         (create_signatured_type_table_from_index): Change objfile
14330         parameter to dwarf2_per_objfile.
14331         (create_signatured_type_table_from_debug_names): Change objfile
14332         parameter to dwarf2_per_objfile.
14333         (create_addrmap_from_index): Likewise.
14334         (create_addrmap_from_aranges): Likewise.
14335         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14336         (dw2_setup): Remove.
14337         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14338         context.
14339         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14340         get_dwarf2_per_objfile.
14341         (dw2_forget_cached_source_info): Likewise.
14342         (dw2_map_symtabs_matching_filename): Likewise.
14343         (struct dw2_symtab_iterator) <index>: Remove.
14344         <dwarf2_per_objfile>: New field.
14345         (dw2_symtab_iter_init): Replace index parameter with
14346         dwarf2_per_objfile.
14347         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14348         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14349         (dw2_print_stats): Likewise.
14350         (dw2_dump): Likewise.
14351         (dw2_expand_symtabs_for_function): Likewise.
14352         (dw2_expand_all_symtabs): Likewise.
14353         (dw2_expand_symtabs_with_fullname): Likewise.
14354         (dw2_expand_marked_cus): Replace index and objfile parameters
14355         with dwarf2_per_objfile.
14356         (dw_expand_symtabs_matching_file_matcher): Add
14357         dwarf2_per_objfile parameter and adjust calls.
14358         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14359         adjust calls.
14360         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14361         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14362         adjust calls.
14363         (create_cus_from_debug_names_list): Replace objfile parameter
14364         with dwarf2_per_objfile and adjust calls.
14365         (create_cus_from_debug_names): Likewise.
14366         (dwarf2_read_debug_names): Likewise.
14367         (mapped_debug_names::namei_to_name): Adjust call.
14368         (dw2_debug_names_iterator::next): Likewise.
14369         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14370         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14371         (dw2_debug_names_dump): Likewise.
14372         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14373         (dw2_debug_names_expand_symtabs_matching): Likewise.
14374         (dwarf2_initialize_objfile): Likewise.
14375         (dwarf2_build_psymtabs): Likewise.
14376         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14377         this_cu.
14378         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14379         (read_and_check_comp_unit_head): Likewise.
14380         (read_abbrev_offset): Likewise.
14381         (create_debug_type_hash_table): Likewise.
14382         (create_debug_types_hash_table): Likewise.
14383         (create_all_type_units): Replace objfile parameter with
14384         dwarf2_per_objfile.
14385         (add_type_unit): Add dwarf2_per_objfile parameter.
14386         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14387         with dwarf2_per_objfile.
14388         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14389         (lookup_dwp_signatured_type): Likewise.
14390         (lookup_signatured_type): Likewise.
14391         (read_cutu_die_from_dwo): Likewise.
14392         (init_tu_and_read_dwo_dies): Likewise.
14393         (init_cutu_and_read_dies): Likewise.
14394         (init_cutu_and_read_dies_no_follow): Likewise.
14395         (allocate_type_unit_groups_table): Add objfile parameter.
14396         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14397         (get_type_unit_group): Likewise.
14398         (process_psymtab_comp_unit): Update call.
14399         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14400         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14401         (print_tu_stats): Likewise.
14402         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14403         in void* parameter.
14404         (build_type_psymtabs): Change objfile parameter to
14405         dwarf2_per_objfile.
14406         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14407         passed in void* parameter.
14408         (process_skeletonless_type_units): Change objfile parameter to
14409         dwarf2_per_objfile.
14410         (set_partial_user): Likewise.
14411         (dwarf2_build_psymtabs_hard): Likewise.
14412         (read_comp_units_from_section): Likewise.
14413         (create_all_comp_units): Likewise.
14414         (scan_partial_symbols): Update calls.
14415         (add_partial_symbol): Likewise.
14416         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14417         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14418         (process_queue): Add dwarf2_per_objfile parameter.
14419         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14420         (compute_compunit_symtab_includes): Likewise.
14421         (process_cu_includes): Add dwarf2_per_objfile parameter.
14422         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14423         (process_full_type_unit): Likewise.
14424         (process_imported_unit_die): Update call.
14425         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14426         (read_file_scope): Likewise.
14427         (allocate_dwo_file_hash_table): Add objfile parameter.
14428         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14429         (create_cus_hash_table): Likewise.
14430         (create_dwp_hash_table): Likewise.
14431         (create_dwo_unit_in_dwp_v1): Likewise.
14432         (create_dwp_v2_section): Likewise.
14433         (create_dwo_unit_in_dwp_v2): Likewise.
14434         (lookup_dwo_unit_in_dwp): Likewise.
14435         (try_open_dwop_file): Likewise.
14436         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14437         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14438         cleanup to include a reference to dwarf2_per_objfile.
14439         (open_dwp_file): Add dwarf2_per_objfile parameter.
14440         (open_and_init_dwp_file): Likewise.
14441         (get_dwp_file): Likewise.
14442         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14443         (queue_and_load_all_dwo_tus): Update call.
14444         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14445         data.
14446         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14447         (dwarf2_ranges_process): Likewise.
14448         (dwarf2_get_pc_bounds): Likewise.
14449         (mark_common_block_symbol_computed): Likewise.
14450         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14451         (dwarf2_read_abbrevs): Update call.
14452         (read_partial_die): Use dwarf2_per_objfile from cu.
14453         (find_partial_die): Likewise.
14454         (fixup_partial_die): Likewise.
14455         (read_attribute_value): Likewise.
14456         (read_indirect_string_at_offset_from): Add objfile parameter.
14457         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14458         parameter.
14459         (read_indirect_string_from_dwz): Add objfile parameter.
14460         (read_indirect_string): Add objfile parameter.
14461         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14462         (read_addr_index): Use dwarf2_per_objfile from cu.
14463         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14464         call dw2_setup.
14465         (read_str_index): Use dwarf2_per_objfile from cu.
14466         (get_debug_line_section): Likewise.
14467         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14468         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14469         (new_symbol_full): Use dwarf2_per_objfile from cu.
14470         (build_error_marker_type): Likewise.
14471         (lookup_die_type): Likewise.
14472         (determine_prefix): Likewise.
14473         (follow_die_offset): Likewise.
14474         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14475         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14476         (dwarf2_fetch_die_type_sect_off): Likewise.
14477         (dwarf2_get_die_type): Likewise.
14478         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14479         (get_signatured_type): Likewise.
14480         (get_DW_AT_signature_type): Likewise.
14481         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14482         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14483         (cu_debug_loc_section): Likewise.
14484         (fill_in_loclist_baton): Likewise.
14485         (dwarf2_symbol_mark_computed): Likewise.
14486         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14487         dwarf2_per_objfile.
14488         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14489         parameter.
14490         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14491         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14492         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14493         (set_die_type): Use dwarf2_free_objfile from cu.
14494         (get_die_type_at_offset): Likewise.
14495         (dwarf2_per_objfile_free): Don't assign global variable.
14496         (debug_names) <constructor>: Add dwarf2_per_objfile
14497         parameter, update m_debugstrlookup construction.
14498         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14499         parameter.
14500         <m_dwarf2_per_objfile>: New field.
14501         <lookup>: Use m_dwarf2_per_objfile.
14502         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14503         (psyms_seen_size): Likewise.
14504         (write_gdbindex): Replace objfile parameter with
14505         dwarf2_per_objfile.
14506         (write_debug_names): Likewise.
14507         (write_psymtabs_to_index): Likewise.
14508         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14509         calls.
14510
14511 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14512
14513         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14514         <dwarf2_per_objfile>: New field.
14515         (struct dwarf2_per_cu_data) <objfile>: Remove.
14516         <dwarf2_per_objfile>: New field.
14517         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14518         of objfile.
14519         (create_signatured_type_table_from_index): Likewise.
14520         (create_debug_type_hash_table): Likewise.
14521         (fill_in_sig_entry_from_dwo_entry): Likewise.
14522         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14523         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14524         objfile.
14525         (create_partial_symtab): Access objfile through
14526         dwarf2_per_objfile.
14527         (process_psymtab_comp_unit_reader): Likewise.
14528         (read_comp_units_from_section): Likewise.
14529         (scan_partial_symbols): Likewise.
14530         (add_partial_symbol): Likewise.
14531         (add_partial_subprogram): Likewise.
14532         (peek_die_abbrev): Likewise.
14533         (fixup_go_packaging): Likewise.
14534         (process_full_comp_unit): Likewise.
14535         (process_full_type_unit): Likewise.
14536         (process_imported_unit_die): Likewise.
14537         (dwarf2_compute_name): Likewise.
14538         (dwarf2_physname): Likewise.
14539         (read_import_statement): Likewise.
14540         (create_cus_hash_table): Assign dwarf2_physname instead of
14541         objfile.
14542         (read_func_scope): Access objfile through dwarf2_per_objfile.
14543         (read_lexical_block_scope): Likewise.
14544         (read_call_site_scope): Likewise.
14545         (read_variable): Likewise.
14546         (dwarf2_rnglists_process): Likewise.
14547         (dwarf2_ranges_process): Likewise.
14548         (dwarf2_ranges_read): Likewise.
14549         (dwarf2_record_block_ranges): Likewise.
14550         (dwarf2_add_field): Likewise.
14551         (dwarf2_add_member_fn): Likewise.
14552         (read_structure_type): Likewise.
14553         (process_structure_scope): Likewise.
14554         (read_enumeration_type): Likewise.
14555         (read_array_type): Likewise.
14556         (read_common_block): Likewise.
14557         (read_namespace_type): Likewise.
14558         (read_namespace): Likewise.
14559         (read_module_type): Likewise.
14560         (read_tag_pointer_type): Likewise.
14561         (read_tag_ptr_to_member_type): Likewise.
14562         (read_tag_string_type): Likewise.
14563         (read_subroutine_type): Likewise.
14564         (read_typedef): Likewise.
14565         (read_base_type): Likewise.
14566         (attr_to_dynamic_prop): Likewise.
14567         (read_subrange_type): Likewise.
14568         (read_unspecified_type): Likewise.
14569         (load_partial_dies): Likewise.
14570         (read_partial_die): Likewise.
14571         (find_partial_die): Likewise.
14572         (guess_partial_die_structure_name): Likewise.
14573         (fixup_partial_die): Likewise.
14574         (read_attribute_value): Likewise.
14575         (read_addr_index_from_leb128): Likewise.
14576         (dwarf2_read_addr_index): Likewise.
14577         (dwarf2_string_attr): Likewise.
14578         (lnp_state_machine::check_line_address): Likewise.
14579         (dwarf_decode_lines_1): Likewise.
14580         (dwarf_decode_lines): Likewise.
14581         (dwarf2_start_symtab): Likewise.
14582         (var_decode_location): Likewise.
14583         (new_symbol_full): Likewise.
14584         (dwarf2_const_value_data): Likewise.
14585         (dwarf2_const_value_attr): Likewise.
14586         (dwarf2_const_value): Likewise.
14587         (die_type): Likewise.
14588         (die_containing_type): Likewise.
14589         (lookup_die_type): Likewise.
14590         (guess_full_die_structure_name): Likewise.
14591         (anonymous_struct_prefix): Likewise.
14592         (dwarf2_name): Likewise.
14593         (follow_die_ref_or_sig): Likewise.
14594         (follow_die_offset): Likewise.
14595         (follow_die_ref): Likewise.
14596         (dwarf2_fetch_die_loc_sect_off): Likewise.
14597         (dwarf2_fetch_constant_bytes): Likewise.
14598         (dwarf2_fetch_die_type_sect_off): Likewise.
14599         (dwarf2_get_die_type): Likewise.
14600         (follow_die_sig): Likewise.
14601         (decode_locdesc): Likewise.
14602         (dwarf2_per_cu_objfile): Likewise.
14603         (dwarf2_per_cu_text_offset): Likewise.
14604         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
14605         objfile.
14606         (set_die_type): Access objfile through
14607         dwarf2_per_objfile.
14608
14609 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14610
14611         * valprint.c (converted_character_d): Remove typedef.
14612         (DEF_VEC_O (converted_character_d)): Remove.
14613         (count_next_character): Use std::vector.
14614         (print_converted_chars_to_obstack): Likewise.
14615         (generic_printstr): Likewise.
14616
14617 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14618
14619         * xml-support.h (struct gdb_xml_value): Add constructor.
14620         <value>: Change type to unique_xmalloc_ptr.
14621         (gdb_xml_value_s): Remove typedef.
14622         (DEF_VEC_O (gdb_xml_value_s)): Remove.
14623         (gdb_xml_element_start_handler): Change parameter type to
14624         std::vector.
14625         (xml_find_attribute): Likewise.
14626         * xml-support.c (xml_find_attribute): Change parameter type to
14627         std::vector and adjust.
14628         (gdb_xml_values_cleanup): Remove.
14629         (gdb_xml_parser::start_element): Adjust to std::vector.
14630         (xinclude_start_include): Change paraeter type to std::vector
14631         and adjust.
14632         * btrace.c (check_xml_btrace_version): Likewise.
14633         (parse_xml_btrace_block): Likewise.
14634         (parse_xml_btrace_pt_config_cpu): Likewise.
14635         (parse_xml_btrace_pt): Likewise.
14636         (parse_xml_btrace_conf_bts): Likewise.
14637         (parse_xml_btrace_conf_pt): Likewise.
14638         * memory-map.c (memory_map_start_memory): Likewise.
14639         (memory_map_start_property): Likewise.
14640         * osdata.c (osdata_start_osdata): Likewise.
14641         (osdata_start_item): Likewise.
14642         (osdata_start_column): Likewise.
14643         * remote.c (start_thread): Likewise.
14644         * solib-aix.c (library_list_start_library): Likewise.
14645         (library_list_start_list): Likewise.
14646         * solib-svr4.c (library_list_start_library): Likewise.
14647         (svr4_library_list_start_list): Likewise.
14648         * solib-target.c (library_list_start_segment): Likewise.
14649         (library_list_start_section): Likewise.
14650         (library_list_start_library): Likewise.
14651         (library_list_start_list): Likewise.
14652         * tracepoint.c (traceframe_info_start_memory): Likewise.
14653         (traceframe_info_start_tvar): Likewise.
14654         * xml-syscall.c (syscall_start_syscall): Likewise.
14655         * xml-tdesc.c (tdesc_start_target): Likewise.
14656         (tdesc_start_feature): Likewise.
14657         (tdesc_start_reg): Likewise.
14658         (tdesc_start_union): Likewise.
14659         (tdesc_start_struct): Likewise.
14660         (tdesc_start_flags): Likewise.
14661         (tdesc_start_enum): Likewise.
14662         (tdesc_start_field): Likewise.
14663         (tdesc_start_enum_value): Likewise.
14664         (tdesc_start_vector): Likewise.
14665
14666 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14667
14668         * extension.h (struct xmethod_worker) <clone>: Remove.
14669         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
14670         Remove.
14671         (python_xmethod_worker::clone): Remove.
14672         * valops.c (find_overload_match): Use std::move instead of
14673         clone.
14674
14675 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14676
14677         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
14678         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
14679         <free_xmethod_worker_data>: Remove.
14680         <get_matching_xmethod_workers>: Chance VEC to std::vector.
14681         <get_xmethod_arg_types>: Remove.
14682         <get_xmethod_result_type>: Remove.
14683         <invoke_xmethod>: Remove.
14684         * extension.c (new_xmethod_worker): Remove.
14685         (clone_xmethod_worker): Remove.
14686         (get_matching_xmethod_workers): Return void, pass std::vector by
14687         pointer.
14688         (get_xmethod_arg_types): Rename to...
14689         (xmethod_worker::get_arg_types): ... this, and adjust.
14690         (get_xmethod_result_type): Rename to...
14691         (xmethod_worker::get_result_type): ... this, and adjust.
14692         (invoke_xmethod): Remove.
14693         (free_xmethod_worker): Remove.
14694         (free_xmethod_worker_vec): Remove.
14695         * extension.h (enum ext_lang_rc): Move here from
14696         extension-priv.h.
14697         (struct xmethod_worker): Add constructor and destructor.
14698         <data>: Remove.
14699         <value>: Remove.
14700         <invoke, clone, do_get_result_type, do_get_arg_types>: New
14701         virtual pure methods.
14702         <get_arg_types, get_result_type>: New methods.
14703         (xmethod_worker_ptr): Remove typedef.
14704         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
14705         (xmethod_worker_vec): Remove typedef.
14706         (xmethod_worker_up): New typedef.
14707         (invoke_xmethod): Remove.
14708         (clone_xmethod_worker): Remove.
14709         (free_xmethod_worker): Remove.
14710         (free_xmethod_worker_vec): Remove.
14711         (get_xmethod_arg_types): Remove.
14712         (get_xmethod_result_type): Remove.
14713         * valops.c (find_method_list): Use std::vector, don't use
14714         intermediate vector.
14715         (value_find_oload_method_list): Use std::vector.
14716         (find_overload_match): Use std::vector.
14717         (find_oload_champ): Use std::vector.
14718         * value.c (value_free): Use operator delete.
14719         (value_of_xmethod): Rename to...
14720         (value_from_xmethod): ... this.  Don't assign
14721         xmethod_worker::value, take rvalue-reference.
14722         (result_type_of_xmethod): Adjust.
14723         (call_xmethod): Adjust.
14724         * value.h: Include extension.h.
14725         (struct xmethod_worker): Don't forward-declare.
14726         (value_of_xmethod): Rename to...
14727         (value_from_xmethod): ... this, take rvalue-reference.
14728         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
14729         (struct python_xmethod_worker): ... this, add constructor and
14730         destructor.
14731         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
14732         (gdbpy_free_xmethod_worker_data): Rename to...
14733         (python_xmethod_worker::~python_xmethod_worker): ... this and
14734         adjust.
14735         (gdbpy_clone_xmethod_worker_data): Rename to...
14736         (python_xmethod_worker::clone): ... this and adjust.
14737         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
14738         temporary vector.
14739         (gdbpy_get_xmethod_arg_types): Rename to...
14740         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
14741         (gdbpy_get_xmethod_result_type): Rename to...
14742         (python_xmethod_worker::do_get_result_type): ... this and
14743         adjust.
14744         (gdbpy_invoke_xmethod): Rename to...
14745         (python_xmethod_worker::invoke): ... this and adjust.
14746         (new_python_xmethod_worker): Rename to...
14747         (python_xmethod_worker::python_xmethod_worker): ... this and
14748         adjust.
14749         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
14750         Remove.
14751         (gdbpy_free_xmethod_worker_data): Remove.
14752         (gdbpy_get_matching_xmethod_workers): Use std::vector.
14753         (gdbpy_get_xmethod_arg_types): Remove.
14754         (gdbpy_get_xmethod_result_type): Remove.
14755         (gdbpy_invoke_xmethod): Remove.
14756         * python/python.c (python_extension_ops): Remove obsolete
14757         callbacks.
14758
14759 2018-01-05  Pedro Alves  <palves@redhat.com>
14760
14761         PR gdb/18653
14762         * common/signals-state-save-restore.c
14763         (save_original_signals_state): New parameter 'quiet'.  Warn if we
14764         find a custom handler preinstalled, instead of internal erroring.
14765         But only warn if !quiet.
14766         * common/signals-state-save-restore.h
14767         (save_original_signals_state): New parameter 'quiet'.
14768         * main.c (captured_main_1): Move save_original_signals_state call
14769         after option handling, and pass QUIET.
14770
14771 2018-01-05  Pedro Alves  <palves@redhat.com>
14772
14773         * spu-tdep.c (spu_catch_start): Pass
14774         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
14775
14776 2018-01-05  Pedro Alves  <palves@redhat.com>
14777
14778         PR gdb/22670
14779         * ada-lang.c (literal_symbol_name_matcher): New function.
14780         (ada_get_symbol_name_matcher): Use it for
14781         symbol_name_match_type::SEARCH_NAME.
14782         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
14783         it down instead of assuming symbol_name_match_type::FULL.
14784         * block.h (block_lookup_symbol): New parameter 'match_type'.
14785         * c-valprint.c (print_unpacked_pointer): Use
14786         lookup_symbol_search_name instead of lookup_symbol.
14787         * compile/compile-object-load.c (get_out_value_type): Pass down
14788         symbol_name_match_type::SEARCH_NAME.
14789         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
14790         symbol_name_match_type::FULL.
14791         * cp-support.c (cp_get_symbol_name_matcher): Handle
14792         symbol_name_match_type::SEARCH_NAME.
14793         * infrun.c (insert_exception_resume_breakpoint): Use
14794         lookup_symbol_search_name.
14795         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
14796         * psymtab.c (maintenance_check_psymtabs): Use
14797         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
14798         * stack.c (print_frame_args): Use lookup_symbol_search_name and
14799         SYMBOL_SEARCH_NAME.
14800         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
14801         if symbol_name_match_type::SEARCH_NAME.
14802         (lookup_symbol_in_language): Pass down
14803         symbol_name_match_type::FULL.
14804         (lookup_symbol_search_name): New.
14805         (lookup_language_this): Pass down
14806         symbol_name_match_type::SEARCH_NAME.
14807         (lookup_symbol_aux, lookup_local_symbol): New parameter
14808         'match_type'.  Pass it down.
14809         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
14810         (lookup_symbol_search_name): New declaration.
14811         (lookup_symbol_in_block): New 'match_type' parameter.
14812
14813 2018-01-05  Pedro Alves  <palves@redhat.com>
14814
14815         PR gdb/22670
14816         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
14817         ada_lookup_symbol.
14818         (ada_lookup_symbol): Reimplement in terms of
14819         ada_lookup_symbol_list, bits factored out from
14820         ada_lookup_encoded_symbol.
14821
14822 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14823
14824         * ada-exp.y (write_object_renaming): When subscripting an array
14825         using a symbol as the index, pass the block in call to
14826         ada_lookup_encoded_symbol when looking that symbol up.
14827
14828 2018-01-05  Jerome Guitton  <guitton@adacore.com>
14829
14830         * ada-lang.c (ada_array_length): Use ada_index_type instead of
14831         TYPE_INDEX_TYPE.
14832
14833 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14834
14835         * ada-lang.c (ada_to_fixed_value_create): Add handling of
14836         the case where VALUE_LVAL (val0) is not lval_memory.
14837
14838 2018-01-05  Xavier Roirand  <roirand@adacore.com>
14839
14840         * ada-valprint.c (print_optional_low_bound): Handle
14841         character-indexed array printing like boolean-indexed array
14842         printing.
14843
14844 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14845
14846         * NEWS: Create a new section for the next release branch.
14847         Rename the section of the current branch, now that it has
14848         been cut.
14849
14850 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14851
14852         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
14853         * version.in: Bump version to 8.1.50.DATE-git.
14854
14855 2018-01-03  Xavier Roirand  <roirand@adacore.com>
14856
14857         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
14858         Add field.
14859         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
14860         Add field.
14861         (default_exception_support_info) <catch_handlers_sym>: Add field.
14862         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
14863         (ada_exception_name_addr_1): Add "catch handlers" handling.
14864         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
14865         Update all callers.
14866         (create_excep_cond_exprs) <ex>: Add parameter.
14867         (re_set_exception): Update create_excep_cond_exprs call.
14868         (print_it_exception, print_one_exception, print_mention_exception)
14869         (print_recreate_exception): Add "catch handler" handling.
14870         (allocate_location_catch_handlers, re_set_catch_handlers)
14871         (check_status_catch_handlers, print_it_catch_handlers)
14872         (print_one_catch_handlers, print_mention_catch_handlers)
14873         (print_recreate_catch_handlers): New function.
14874         (catch_handlers_breakpoint_ops): New variable.
14875         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
14876         Add parameter.  Add "catch handler" handling.
14877         (ada_exception_sym_name, ada_exception_breakpoint_ops):
14878         Add "catch handler" handling.
14879         (ada_exception_catchpoint_cond_string): Add "catch handler"
14880         handling.
14881         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
14882         call.
14883         (catch_ada_handlers_command): New function.
14884         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
14885         operations structure.
14886         (_initialize_ada_language): Add "catch handlers" command entry.
14887         * NEWS: Document "catch handlers" feature.
14888
14889 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14890
14891         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
14892         account when creating the array type of the slice.
14893         (ada_value_slice): Likewise.
14894
14895 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14896
14897         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
14898         New enum value.
14899         (create_array_type_with_stride): Add byte_stride_prop parameter.
14900         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
14901         New parameter.  Update all callers in this file.
14902         (array_type_has_dynamic_stride): New function.
14903         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
14904         of arrays with dynamic byte strides.
14905         * dwarf2read.c (read_array_type): Add support for dynamic
14906         DW_AT_byte_stride attributes.
14907
14908 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14909
14910         * dwarf2read.c (read_unspecified_type): Treat
14911         DW_TAG_enumeration_type DIEs from Ada units as stubs.
14912
14913 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14914
14915         Update copyright year range in all GDB files.
14916
14917 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
14918
14919         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
14920         and gdb/testsuite/gdb.base/step-line.c.
14921
14922 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14923
14924         * copyright.py (main): Dump the contents of
14925         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
14926         even if BY_HAND is empty.
14927
14928 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14929
14930         * top.c (print_gdb_version): Update Copyright year in version
14931         message.
14932
14933 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14934
14935         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
14936
14937 For older changes see ChangeLog-2017.
14938 \f
14939 Local Variables:
14940 mode: change-log
14941 left-margin: 8
14942 fill-column: 74
14943 version-control: never
14944 coding: utf-8
14945 End: